Gå til innhold

Et år uten Jobb i IT Bransjen....er det bare å finne på noe annet å gjøre?


Anbefalte innlegg

Videoannonse
Annonse

Dette er velmente råd (mye av dette er flisespikkeri, men det er litt som å ta på seg en pen skjorte på jobbintervju, og ikke en med sennepflekker). Jeg har bare tatt for meg ting som virkelig slår meg når jeg ser på koden (og som kanskje folk som ansetter også ser). Det er ikke alle feil jeg tar for meg, men de som ser ganske ille ut. Nå virker jeg veldig kritisk, men det er ikke så ille som denne posten får det til å se ut til. Det jeg kommenterer på er hovedsakelig skjønnhetsfeil som de fleste nyutdannede gjør, men det er likevel greit å få dem luket ut. Igjen, tenk på det som å pynte seg litt ekstra for et jobbintervju. 

 

Du viser derimot at du kan kode, og at du forstår det viktige i GUI-design i både C# og Java. Det er bra. Du har fortsatt mye å lære, deriblant bedre seperasjon av kode. Har vurdert å lese en bok i Design Patterns mens du søker?

 

Om Github-repoene generelt (disse to er kanskje de viktigste):

 

  • Jeg finner ingen README.md på noen av prosjektene. Lag en kort README.md som forklarer hva prosjektet gjør, kanskje et screenshot som du tar med, og lett beskrivelse av hvordan man kjører og kompilerer. Bruk Markdown for å formatere pent. README.md skal altså være helt i toppen av repoet.
  • Jeg finner heller ingen lisens. Legg til en passende lisens på hver prosjekt (les deg opp på forskjellen mellom si BSD/MIT og GPL. For disse prosjektene som kun er lekeprosjekter, ville jeg bare valgt MIT). I Github har de ferdige lisenstemplates. 

Generelt om koden: Det er veldig mange enkle formateringsfeil i koden (blanding av tabs vs. spaces, manglende mellomrom der det skal være mellomrom, og så videre). Jeg ser at du bruker IntelliJ for Java og jeg antar  du bruker VisualStudio for C#. Begge disse har autoformatering, bruk den! 

 

Og som nevnt over: Det virker ikke som om noen av disse prosjektene er særlig store eller gjør særlig mye. De viser at du behersker det grunnleggende, men de mangler det store salgsmomentet. Se forslaget i innlegget over, eller vurder å lage et program til en hobby du har. Liker du for eksempel å trene? Vurder å lage en treningsapp (ja, det finnes kjempemasse av dem allerede, men likevel).  Lag et program som er relatert til noe du brenner for! Matlaging? Lag en oppskriftskatalog. Etc etc.

'

Om TicTacToe:

  1. Filnavn kalt "From1.*"  er en stor turn-off. Gi dem et beskrivende navn (og hold det til engelsk). 
  2. Ikke legg .exe-filer, og generelt filer som blir generert under kompilering,  i git-repoer med mindre du har en veldig god grunn til å gjøre det. Det vil si, slett mappene "bin"  og "obj", disse blir generert under kompilering og har ingenting i versjonskontroll å gjøre. Hvis du vil gi ut prosjektet ditt, bruk "release" featuren til github og legg ved binærfiler der (og pass for guds skyld på at du gir ut "Release" og ikke "Debug"!)
  3. Form1.cs rundt linje 60 har du masse if-tester som gir samme resultat, og det virker som om du kan rydde opp litt, kanskje med en enkel for-loop som sjekker alle tilfeller. Jeg hadde nok vurder å legge inn tekst-boksene i en to-dimensjonal array slik at du kan referere til dem som board[j] eller liknende. 
Du har en empty catch i Form1.cs rundt 111. Dette er et stort nei nei. Ikke svelg exceptions med mindre du har en veldig, veldig god grunn, legg i det minste inn en kommentar for hvorfor du bare svelger exceptionen i dette tilfellet. I TicTacToe har du altså mappa "TicTacToe/TicTacToe/TicTacToe", dette ser ikke helt bra ut for å være ærlig.  Jeg bruker C# svært sjeldent, men hovedregelen er vel at man skal bruke camlCaseForVariabelNavn, og ikke underscores slik du bruker her. Det hele blir litt rotete når metodenavn har camelCase og lokale variabelnavn har under_scores. Du er ikke konsistent når du bruker { med if og enkeltlinjer. Jeg ville lagt det inn overalt for å være konsistent.

 

Mortage:

  1. Engelsk navn på repo, norske navn på filer, engelsk kode. Gi filene nye engelske navn.
Variabelformatering i java: PascalCase for klasser, camelCase for variabelnavn og metodenavn. Variabelnavn skal ikke begynne med stor bokstav.  Pass litt på formatering (de fleste IDEer har autofomatering, bare bruk den). Filene "ser ikke ut", det ser ut som om du har mikset tabs med spaces. I Java er hovedregelen at indentation er 4 mellomrom, hold deg til det og la IDEen ta seg av det hele. Det skal være mellomrom rundt =, metodeparametere skal ha mellomrom etter komma, og så videre.   GridBagConstraints gbc blir deklarert for hele objektet Grensesnitt, men blir bare brukt lokalt i metodene. Lag en egen instans for hver metode, det du gjør nå er dårlig praksis, siden du kan risikere at en metode setter verdier i  gbc som ikek skla være der for andre. du har to variable "jp" og "jp2", jeg ville skrevet ut hva disse skal representere (eg. "interestRateInformationPanel") Kost på deg de ekstra bokstavene du trenger til å gjøre variabelen K om til "controller" Skriv ut txt til text; Jeg ville også vurdert om du ikke skulle skrive ut jbl og btn

 

Contact:

  1. Samme som TicTacToe: Form1.* sier ikke så mye om hva dette gjør, ikke legg binærfiler i repo (bin og obj)
Form1.cs linje 74 har du en HARDKODED PATH TIL EN DATABASE. Dette ser så utrolig stygt ut. Få den inn som en konfigurasjonsparameter eller liknende.  Form1.cs linje 80 lager du SQL-statements selv, og det er sikkert fint å vise at du kan SQL også, men jeg ville vurdert å bruke et eget lag over for å skjule SQLen, og hvis ikke, i det minste pass på at brukerinput er trygt for SQL (hva skjer hvis txtFName.Text er noe ala "); DROP TABLE NameTable"? Form1.cs linje 38: Her sjekker du at input er riktig, jeg ville vurdert å splitte hver enkel sjekk inn i en egen metode ala "isValidPhoneNumber" osv (det finnes enda penere måter å gjøre dette på, men la oss holde det litt enkelt). Dessuten deklarerer du int parsedNr på toppen, men du bruker det kun et par skop ned.  Det er liknende feil i de andre filene (spesielt SQL-spørring), og du har hardkoded pathen til databasen to ganger såvidt jeg kan se. 

 

BirthDateRegister

 

  1. Igjen her har du binærfiler i repo (.class). De kan du med fordel fjerne. (out/production/...)
Mange av de samme kommentarene fra Mortage går igjen: Variabelnavn, formatering, og GridBagConstraints som kan være lokal variabel i hver metode.  I Grensesnitt. java linje 9 har du  "public      int j;" dette ser ganske ille ut. Du har altså en global teller for hele objektet!? Og antall mellomrom der ser heller ikke bra ut i java Mye blanding av norsk og engelske navn Du har norsk tekst i felt, jeg ville vurdert å lest meg opp på hvordan du støtter flere språk i java , så kan du støtte flere språk uten at du trenger å ha norsk i koden (og med alle de problemer ikke-ascii-tekst i kode alltid medfører på et eller annet tidspunkt)

 

Fotball:

 

  1. Mange kommentarer fra Mortage og BirthDateRegister gjelder her også
Du har norske tegn i variabelnavn. dette ville jeg aldri våget for å være ærlig. ("spørsmål"). Hold deg til engelsk. Du har også en del global variabelnavn i Grensensitt jeg ville kvittet meg med (

 
    int MedlemNr = 0;
    int tall = 0;
 
GitPorto:
  1. Har "Git" noe med dette repoet å gjøre, eller kalte du det bare "GitPorto" fordi det var på git? Hvis dette er tilfellet ville jeg gitt det nytt navn til bare "Porto"
orderWindow er en klasse og skal ha stor forbokstav. Igjen blander du norks og engelsk.

Du kan nok med fordel legge til en .gitignore for språket du programmerer i for å unngå at binærfiler osv. blir lagt til. Github.com har en egen liste for hvert språk. 

Så er det håpløst?

Lenke til kommentar
Gjest Slettet+5132

Så er det håpløst?

 

Absolutt absolutt ikke. Fra koden er det faktisk veldig mye håp. Som sagt, du kan åpenbart programmere. 

 

Som jeg skriver er dette skjønnhetsfeil veldig mange nyutdannede gjør. Se på det som om å komme på et jobbintervju med bustete hår som står ut alle veier, feil oppknappa skjorte med majonesflekker,  og hvite flekker på jeansbuksene. Du kan være en topp programmør selv om du kommer slik på intervju, men det gjør et dårlig førsteinntrykk, og hvis de allerede har flere kandidater omtrent like gode, velger de heller den andre som ikke kom med majonesflekker på skjorta.

 

Tingene jeg kommenterte er småting en lærer seg raskt. Det er ikke noe du nødvendigvis lærer i studiet, men er noe som er viktig når man jobber sammen med andre. 

 

EDIT: Men mitt hovedråd er egentlig som flere har nevnt: Prøv å lage et program med litt mer dybde. Du kan for eksempel ta for deg en programmeringsoppgave fra UiO (eg. Sudoku-obligen fra INF1010), eller lag et program for noe du brenner for (en eller annen hobby eller interesse). 

Endret av Slettet+5132
Lenke til kommentar

Absolutt absolutt ikke. Fra koden er det faktisk veldig mye håp. Som sagt, du kan åpenbart programmere. 

 

Som jeg skriver er dette skjønnhetsfeil veldig mange nyutdannede gjør. Se på det som om å komme på et jobbintervju med bustete hår som står ut alle veier, feil oppknappa skjorte med majonesflekker,  og hvite flekker på jeansbuksene. Du kan være en topp programmør selv om du kommer slik på intervju, men det gjør et dårlig førsteinntrykk, og hvis de allerede har flere kandidater omtrent like gode, velger de heller den andre som ikke kom med majonesflekker på skjorta.

 

Tingene jeg kommenterte er småting en lærer seg raskt. Det er ikke noe du nødvendigvis lærer i studiet, men er noe som er viktig når man jobber sammen med andre. 

 

EDIT: Men mitt hovedråd er egentlig som flere har nevnt: Prøv å lage et program med litt mer dybde. Du kan for eksempel ta for deg en programmeringsoppgave fra UiO (eg. Sudoku-obligen fra INF1010), eller lag et program for noe du brenner for (en eller annen hobby eller interesse). 

begynner på et ny prosjekt nå og må notere ned det du skriver. Tror lage meg selv en type regelbok på hvordan jeg skriver kode og bruke den

Lenke til kommentar

Det er jobber som ikke er direkte IT jobber men som kan kreve it kunnskaper. I IT selskaper er det og mange som jobber uten it utdannelse men er it konsulenter. It er heller ikke det samme som programmering.

 

Men hvis det er programmerer du vil bli ville jeg satser på det. Når du først blir litt god og får en fot innenfor er du gull.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...