Programmeringsspråk och tillämpningar /omskolning

Permalänk
Medlem

Programmeringsspråk och tillämpningar /omskolning

Hej, jag går i tankarna på att skola om mig och gå ifrån min nuvarande inriktning (energi) till (data) under min föräldraledighet, känns det möjligt? Har 5 år på ingenjörsutbildning men endast läst grundläggande programmeringskurser och i dessa endast stött på teoretiska problem med ”givna svar”. Förenklat tex:

Skriv en kod i Python som skriver ut ”spam and eggs” fem gången med hjälp av en for loop:

i=0 for i <5: print(’spam and eggs’) i+=1

När jag spanar lite på framtida jobb så står det ju ofta som krävande kunskaper ”Python,Java, javascript, C” eller vad det nu kan vara för tjänst men sen står det exempelvis, ”applicerad kunskap inom big data/webbutveckling/vadsomhelst”

Hur lär jag mig denna applicerade kunskap utan att redan ha jobbat med det i exempelvis skolprojekt? Tips?

I väntan på grafikkort till datorn har jag börjat lära mig språken i sig med en app på telefonen och försöker köra ca 4h/dag. Appen jag använder är SoloLearn till iOS och har fungerat bra för mig hittills men tipsa gärna om något annat om ni anser det bättre?

Så kort och gott, jag är föräldraledig i max 1 år till, känns det rimligt att gå från riktigt basic till konkurrenskraftig på arbetsmarknaden på den tiden med max 4h lärotid per dag?
Hur långt kommer man på att endast kunna språket i sig men inte ha applicerat det i riktiga livet något?
Hur skaffar jag mig i så fall denna applicerade kunskap inom språket jag väljer när jag inte har någon ”beställare”?

Ledsen för en lite lång text men all hjälp uppskattas enormt om du läst hela vägen hit

Jocke

Visa signatur

Ghost Louqe S1 -- X570 I AORUS PRO -- AMD Ryzen 7 3700X
NH-L12S Fläktmod -- Corsair Vengeance PRO 32GB 3200 MHz CL16
MSI RTX 2070 Super Ventus -- Corsair SF600
Corsair Force MP510 960GB M.2 -- WD Black SN750 NVMe 1TB M.2

Permalänk
Medlem

Tjena Jocke,
Jag började för ca 3 år sedan och skolade om mig från ekonom, märkte ganska snabbt att kod var 10x roligare & mer användbart.
Det är svårt att ge ett konkret svar på hur lång tid det tar innan man blir produktiv, men här är några tips från mig som ändå fick jobberbjudanden 1 år efter att jag började koda:
1. Börja med en webbstacken (Javascript, html, css och ett backendspråk som tex. Python).
2. Lägg ner allt som har att göra med att öva genom appar och dylikt, du bör köpa lite kurser på udemy, få grunderna och sedan börja skapa egna projekt. Försök hitta något som du själv tycker är intressant, ännu bättre om det har faktisk potential (jag driver några sidor som drar in lite pengar atm, de flesta är polerade versioner av sidor som jag gjorde för att öva)
3. Låt inte vissa programmeringsspråk döda din glädje. Det jag menar är att många börjar med Java, C# eller C++, det blir lätt extremt mycket regler och "best practices" som du alltid ska ha koll på. Respektera faktumet att du kommer behöva beakta reglerna & best practice, men bry dig inte speciellt mycket i början. I början ska du bara ha kul och väcka passionen för att koda genom projekt.
4. Sluta tro att du ska lära dig allt på 3 månader, det kommer ta dig 1-2 år innan du är bekväm att kalla dig utvecklare, eller kanske mer till och med. Ta en sak i taget, det gör inget om du inte har varenda feature eller grej implementerad i dina tidiga projekt.
5. BÖRJA, sluta jämföra språk hit och dit (jag skulle dock som sagt rekommendera javascript & python, det är dock aldrig fel att skapa lite förståelse för C, C++ och sedan testa lite mer strukturerade språk som C#)

Språken är inte speciellt relevanta i längden, men det är helt naturligt att bygga en preferens för det ena över den andra. Jag avskyr. tex C# men älskar javascript&python, i slutändan kan dem oftast åstadkomma samma sak och är endast verktyg.

Sammanfattningsvis: På 1 år kan du få en bra grund & förmodligen göra en del projekt, huruvida du blir kapabel till att bli anställd är omöjligt att säga. Din examen hjälper dig dock, så det är inte orimligt. I slutändan handlar det om en enda sak - gillar du att koda? tycker du att det är kul att se kod rulla förbi i konsolen, kod som du vet att du själv skrivit? glädjer det dig att folk går in på din hemsida och får nytta av den? Pengar är irrelevant (som många MVP's på sweclockers rådgav mig om för några år sedan), passionen är viktigast. Pengarna kommer efter.

/Thorvald

Permalänk
Medlem
Skrivet av Thorvald:

Tjena Jocke,
Jag började för ca 3 år sedan och skolade om mig från ekonom, märkte ganska snabbt att kod var 10x roligare & mer användbart.
Det är svårt att ge ett konkret svar på hur lång tid det tar innan man blir produktiv, men här är några tips från mig som ändå fick jobberbjudanden 1 år efter att jag började koda:
1. Börja med en webbstacken (Javascript, html, css och ett backendspråk som tex. Python).
2. Lägg ner allt som har att göra med att öva genom appar och dylikt, du bör köpa lite kurser på udemy, få grunderna och sedan börja skapa egna projekt. Försök hitta något som du själv tycker är intressant, ännu bättre om det har faktisk potential (jag driver några sidor som drar in lite pengar atm, de flesta är polerade versioner av sidor som jag gjorde för att öva)
3. Låt inte vissa programmeringsspråk döda din glädje. Det jag menar är att många börjar med Java, C# eller C++, det blir lätt extremt mycket regler och "best practices" som du alltid ska ha koll på. Respektera faktumet att du kommer behöva beakta reglerna & best practice, men bry dig inte speciellt mycket i början. I början ska du bara ha kul och väcka passionen för att koda genom projekt.
4. Sluta tro att du ska lära dig allt på 3 månader, det kommer ta dig 1-2 år innan du är bekväm att kalla dig utvecklare, eller kanske mer till och med. Ta en sak i taget, det gör inget om du inte har varenda feature eller grej implementerad i dina tidiga projekt.
5. BÖRJA, sluta jämföra språk hit och dit (jag skulle dock som sagt rekommendera javascript & python, det är dock aldrig fel att skapa lite förståelse för C, C++ och sedan testa lite mer strukturerade språk som C#)

Språken är inte speciellt relevanta i längden, men det är helt naturligt att bygga en preferens för det ena över den andra. Jag avskyr. tex C# men älskar javascript&python, i slutändan kan dem oftast åstadkomma samma sak och är endast verktyg.

Sammanfattningsvis: På 1 år kan du få en bra grund & förmodligen göra en del projekt, huruvida du blir kapabel till att bli anställd är omöjligt att säga. Din examen hjälper dig dock, så det är inte orimligt. I slutändan handlar det om en enda sak - gillar du att koda? tycker du att det är kul att se kod rulla förbi i konsolen, kod som du vet att du själv skrivit? glädjer det dig att folk går in på din hemsida och får nytta av den? Pengar är irrelevant (som många MVP's på sweclockers rådgav mig om för några år sedan), passionen är viktigast. Pengarna kommer efter.

/Thorvald

Tack för ett så utförligt svar. Som svar på sista frågan absolut, jag njuter verkligen av att se mina egna program. Jag har inget större intresse för att bara tjäna mer pengar och omskolningen är endast baserad på passion och inte för att jag vill upp i lön

Några funderingar, jag har börjat med Python men föreslår du att jag ska dra igång några kurser i javascript först för att sen återgå till Python eller spelar den ordningen mindre roll?

Jag har tittat på Udemy kurser innan och det ser lovande ut, har du något förslag på någon du kanske gjorde? Appen får duga i dagsläget tills GPUn kommer. Men jag kanske ska skaffa en laptop? Så det går att koda på andra platser än hemma.

Visa signatur

Ghost Louqe S1 -- X570 I AORUS PRO -- AMD Ryzen 7 3700X
NH-L12S Fläktmod -- Corsair Vengeance PRO 32GB 3200 MHz CL16
MSI RTX 2070 Super Ventus -- Corsair SF600
Corsair Force MP510 960GB M.2 -- WD Black SN750 NVMe 1TB M.2

Permalänk
Medlem
Skrivet av LeJoke:

Tack för ett så utförligt svar. Som svar på sista frågan absolut, jag njuter verkligen av att se mina egna program. Jag har inget större intresse för att bara tjäna mer pengar och omskolningen är endast baserad på passion och inte för att jag vill upp i lön

Några funderingar, jag har börjat med Python men föreslår du att jag ska dra igång några kurser i javascript först för att sen återgå till Python eller spelar den ordningen mindre roll?

Jag har tittat på Udemy kurser innan och det ser lovande ut, har du något förslag på någon du kanske gjorde? Appen får duga i dagsläget tills GPUn kommer. Men jag kanske ska skaffa en laptop? Så det går att koda på andra platser än hemma.

Bra

Jag skulle kanske börja med Javascript och ta python när du är redo att börja krångla med backend/server-side, om du nu är intresserad av webbutveckling så brukar detta vara den naturliga ordningen.
En liten parantes är dock att du absolut kan använda Javascript som backend genom NodeJS, så det är fullt möjligt att skippa python och endast köra javascript. Det skadar dock inte att pröva Python tillsammans med ramverk såsom Django & Flask. Django kan vara gött att testa för att förstå vad ett ramverk är.

Angående kurser så har jag för mig att Brad Traversy har en del bra kurser inom javascript&python, försök att först få lite teori inom javascript och hur allt hänger ihop i webutveckling. Förstå skillnaden mellan klassiska webapplikationer och vad som numera är populärt (tex. SPA-applikationer).

Laptop är väl gött att ha, men jag skulle ändå fixa en bra setup hemma med stor skärm. På sikt bör du ha en jobbdator med linux, vilket är något du bör försöka vänja dig vid lite. Du behöver inte bli expert på att sitta i linuxmiljöer, men lär dig grunderna.
Har du familj så rekommenderar jag dock absolut att fixa en laptop så du kan få lugn och ro. Programmering kräver att du kan sätta dig in i problem över ett flertal timmar och vara djupt fokuserad.

Permalänk
Medlem

Som Thorvald är inne på så är det viktigare att lära sig koncept än att kunna koda utantill, framförallt i början. JavaScript är nog en bra grund, framförallt om du kan tänka dig att bli webbutvecklare. Börja med lite HTML och CSS och bygg sedan på med JS. Börjar det kännas enkelt? Köp en udemy kurs i NodeJS och vips så har du snart byggt grunden till en modern webbplats

Permalänk
Medlem
Skrivet av evirob:

Som Thorvald är inne på så är det viktigare att lära sig koncept än att kunna koda utantill, framförallt i början. JavaScript är nog en bra grund, framförallt om du kan tänka dig att bli webbutvecklare. Börja med lite HTML och CSS och bygg sedan på med JS. Börjar det kännas enkelt? Köp en udemy kurs i NodeJS och vips så har du snart byggt grunden till en modern webbplats

Ja ska man syssla med webb så är ju JavaScript en självklarhet, och vad gäller jobbmarknaden så finns det väl ändå rejält mycket mer jobb än för Python.
Python känns jättehypat men vad är det för typ av jobb det kan ge egentligen, data-analys och AI typ?

Permalänk
Avstängd

Hade jag varit dig hade jag satsat på C# eller Java. Inte för att de är så bra men de används mycket i branschen. Egentligen spelar ju inte språket så stor roll i början, det viktiga är att man lär sig koncepten liksom, men koncepten i C#/Java är ju ganska standard och det finns sjukt mycket resurser för den som vill fördjupa sig på egen hand. Men kan förstås hoppa på C/C++ direkt också, men tröskeln är högre och i allmänhet så används inte det lika mycket längre på grund av att det är mer komplext och lättare att göra fel, förutom en del specifika applikationer förstås.

JS är absolut värt att lära sig om man vill jobba med webb, men det är ju ett moving target på ett helt annat sätt än vanliga programmeringsspråk då det sällan är ren JS man jobbar med utan några specifika ramverk som oftast hinner ersättas innan man har hunnit lära sig det ordentligt.

Python är populärt för att det är lätt att komma in i, och det är ju absolut en fördel. Man lär sig koncepten där också och det finns en massa resurser. Samtidigt är min uppfattning att Python är vad som används av folk som inte riktigt kan programmera för att göra enkla och snabba lösningar på problem eller för att demonstrera koncepten. På mitt företag är det flera produktägare, projektledare och liknande som har grundläggande python-kunskaper och det hjälper ju dem en del i förståelse och så, men utvecklarna jobbar ju i C# mestadels, och Angular för frontend.

Permalänk
Medlem

Om du är inne på frontend-utveckling (klienten, oftast det du som användare ser på en webbplats) så kommer du sannolikt att stöta på ramverk som företag frågar efter, kan vara Angular, React, VueJS osv osv.

Alla dessa ramverk kör i grund och botten JavaScript, även om du skulle koda i t.ex. Typescript.
Stor del av dessa ramverk använder sig av de fördefinerade JavaScript funktioner som finns tillgängliga.

Så för webbplatser är kunskaper i JavaScript, html och CSS A och O oavsett ramverk.

Gällande lite mer renodlade programmeringsspråk, Python, Java osv har det egentligen inte så stor betydelse vilket du lär dig.
Bemästrar du ett programmeringspråk, du besitter du förmodligen kunskapen för att relativt enkelt kunna lära dig ett till.

Python brukar vara populärt för nybörjade, jag personliga lärde mig Java från början och har inte förrän nyligen börjat sätta mig in i Python för att hjälpa en vän med sina studier. Vill inte påstå att det tog mig många timmar innan jag åtminstone grundläggande förstod hur programmering i Python fungerar.

Finns ju även utvecklare som arbeterar i hela stacken, d.v.s kodar backend tjänsterna, databaskopplingar och klienten.

Visa signatur

Stationär: Core i9 13900k | Asus X790 ROG Strix Gaming-F | 32GB DDR5 | RX 7900 XT | Lian Li PC-O11 dynamic evo
Laptop: Macbook Air | Apple M1

Permalänk
Medlem

Jag hade börjat med att lista ut vad du helst vill arbeta med.
Gillar du frontend/design? Eller är du kanske mer av en backend-person som får tänka på hur man skall koppla ihop allting, lagra data och dylikt?

Jag läser Kandidatprogrammet i Datavetenskap, vill du lära dig lite mer åt backend-hållet så kan du skicka PM så kan jag dela med mig av några av de labbarna (mindre program) som vi hade som första uppgifter då vi lärde oss att programmera. Får du i alla fall direkt något att sätta dig in i på en rimlig nivå. Dock är detta baserat på att du lär dig C, som är väldigt mycket mer lågnivå än Python.

Visa signatur

10700K | NVIDIA RTX 3080

Permalänk
Medlem

Hej tack för alla bra svar! Har gått och funderat mycket idag på vad jag vill göra egentligen och ska väl säga att helt ärligt har jag ingen aning... applikationerna känns ju ändlösa och jag tror att det kanske blir något jag märker längre fram. Jag vet att jag tycker det är kul med programmering och har haft svårt att slita mig från Python om kvällarna senaste dagarna. Jag kommer nog börja med grundläggande kunskaper och applikationer inom Python/Backend då och sedan pröva mig på frontend med JS. (Även om @Thorvald tipsade om precis tvärtom haha).

Köpte ett begagnat 770 så jag kan dra igång datorn iaf i väntan på 3000 kortet och planerar att börja nu med Udemy och en Python kurs. Sen får vi se vad det bär men jag gissar att fullstack kunskaper med JS knappast är dåligt.

Eller tycker ni att det kan vara värt att köra båda simultant? Typ variera från dag till dag mellan Javascript och Python för att låta det jag lärt mig ”gro” lite i bakhuvudet och inte kanske helt korvstoppa.

Visa signatur

Ghost Louqe S1 -- X570 I AORUS PRO -- AMD Ryzen 7 3700X
NH-L12S Fläktmod -- Corsair Vengeance PRO 32GB 3200 MHz CL16
MSI RTX 2070 Super Ventus -- Corsair SF600
Corsair Force MP510 960GB M.2 -- WD Black SN750 NVMe 1TB M.2

Permalänk
Medlem
Skrivet av LeJoke:

Hej tack för alla bra svar! Har gått och funderat mycket idag på vad jag vill göra egentligen och ska väl säga att helt ärligt har jag ingen aning... applikationerna känns ju ändlösa och jag tror att det kanske blir något jag märker längre fram. Jag vet att jag tycker det är kul med programmering och har haft svårt att slita mig från Python om kvällarna senaste dagarna. Jag kommer nog börja med grundläggande kunskaper och applikationer inom Python/Backend då och sedan pröva mig på frontend med JS. (Även om @Thorvald tipsade om precis tvärtom haha).

Köpte ett begagnat 770 så jag kan dra igång datorn iaf i väntan på 3000 kortet och planerar att börja nu med Udemy och en Python kurs. Sen får vi se vad det bär men jag gissar att fullstack kunskaper med JS knappast är dåligt.

Eller tycker ni att det kan vara värt att köra båda simultant? Typ variera från dag till dag mellan Javascript och Python för att låta det jag lärt mig ”gro” lite i bakhuvudet och inte kanske helt korvstoppa.

Låter som en rimlig plan att börja köra lite python för att lära sig koncepten inom programmering, det är vanligt att börja så. När du sen vill bli lite mer praktisk & köra mer motiverande projekt så kan du hoppa över till web & testa på javascript och kombinera. Sen som många andra nämnt finns det oerhört mycket jobb inom C# och Java, Python är väsentligt mer ovanligt inom webutveckling men har andra användningsområden inom data science och dylikt (jag jobbar dock med python inom web, så det går). Javascript är dock mer universellt.
Lycka till, det kommer vara en mycket svår resa med många highs&lows, du kommer kämpa med självförtroendet, men ge inte upp! Programmering är svårt, det kräver övning, övning övning, som allt annat i livet. Jag finns i DM om du behöver råd nån gång!