Lära mig programmering. Vilket språk att börja med?

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
Användarvisningsbild
Housepainter
EF Sponsor
Inlägg: 1318
Blev medlem: 19 juli 2006, 18:50:38
Ort: Borås

Lära mig programmering. Vilket språk att börja med?

Inlägg av Housepainter »

Kära elektronikforumister. Jag har börjat tröttna på min nuvarande yrkesbana och har börjat fundera på att lära mig något nytt. Jag har börjat snegla mot den ganska vida benämningen Systemutvecklare. Men detta innebär 2-3 år på högskola, och som tvåbarnsfar med en fru som bara jobbar halvtid känner jag inte att jag hoppar i båten med studielån och mindre inkomster hur som helst. Jag vill börja med att känna mig för om det är så att det är något för mig först.

Jag har nu i ett par veckor på min fritid börjat traggla igenom tutorials om c#, och håller för närvarande på att ta mig igenom 30 Days of Code på sidan http://www.hackerrank.com. Min tidigare erfarenhet av att koda är ytterst begränsad och jag har bara hållt mig till väldigt simpla projekt med Arduino. Häromkvällen så läste jag någonstans där någon skrev något om att c# inte var ett bra språk att börja med, och då började jag tvivla på detta. Har jag börjat i fel ände?

Jag kan tänka mig att det finns flera här som arbetar som systemutvecklare eller har annan värdefull input i ämnet. Vad säger ni, vart skall man börja? Än så länge vill jag mest testa på att lära mig på egen hand och testa mig fram lite.

Frågan är vad som är vettigast att kunna. Vad efterfrågar marknaden? Jag har inte riktigt stakat ut någon inriktning som jag vill ta, men det känns som att om man börjar någonstans så kan man ändå ganska enkelt lära sig något annat med en del vilja och hård panna.

Jag har som sagt börjat lite med c#. Men det finns ju en hel del andra språk. Python har jag läst skall vara något som efterfrågas allt mer. Java används en hel del. Det är lite djungel över det när man inte är så insatt.

Så ni som vet. Vart skall man börja? Skall jag fortsätta att lära mig c# eller är det lika bra att byta språk nu? Hur började ni? Vad efterfrågar marknaden?
Det är nästan så att jag har så många frågetecken att jag har svårt att formulera frågorna. Jag vill bara sätta igång nu för nu är jag så sugen på en ny karriär.
Senast redigerad av Housepainter 11 november 2018, 20:43:50, redigerad totalt 1 gång.
JanErik
Inlägg: 3118
Blev medlem: 11 februari 2008, 17:15:58
Ort: Vasa, Finland

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av JanErik »

Iaf verkar min Alma Mater köra mycket Python idag. På min tid var det Java. Dock har ju Python sina egenheter med indentering, avsaknad av typer osv. Och Java är en återvändsgränd tror jag.

Dock handlar det inte om att lära sig ett språk utan att lära sig programmera.
Janson1
Inlägg: 1338
Blev medlem: 1 december 2016, 09:06:02
Ort: Marks Kommun

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av Janson1 »

Jag började med Arduino för lite drygt två år sedan då jag hade ett tilltänkt användningsområde. För mig tog det ca ett halvt år innan jag fick till nåt vettigt själv... Men när man väl fattat "tänket" så släpper proppen. Arduino som du också har programmerat i bygger väl på C programmering men sedan med egen kod specifikt för just Arduinon. En arbetskamrat till mig hade programmerat i Python och klarade sen Arduinon ganska rakt av. Jag tror som JanErik skrev, det gäller att lära sig att programmera, sedan blir nog allt lite lättare inom programmeringsvärlden?
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av arvidb »

Precis: det handlar inte om att lära sig ett språk utan om att lära sig programmera. Sen kan olika språk vara olika bra på att lära ut olika aspekter av programmering. C till exempel (inte C#) tvingar dig att förstå minneshantering och datatyper. Python "hoppar över" denna kurs helt kan man väl säga (men du behöver fortfarande kunna det för att skriva ett bra Python-program). Däremot bör du förstå vad som menas med objektorientering för att ha nytta av Python. (Man kan skriva Python-kod utan att använda sig av objektorientering; jag har sett Pythonkod bestående av två "klasser" där den ena innehöll fält för alla variabler som användes i programmet och den andra innehöll all kod, men såna monstrositeter gör ju ingen glad...)

Så testa lite olika språk och se till att lära dig dessa principer:
* Sekventiell programmering - alltså hur bryter man ner ett problem till en rutin med sekventiella instruktioner? Programmeringens "kärna" kan man väl säga.
* Minneshantering. Hur lagras data i en dator?
* Datatyper. Varför är de bra att ha?
* Objektorientering. Varför vill man kapsla in data och koden som arbetar på den, och hur gör man?
Användarvisningsbild
Housepainter
EF Sponsor
Inlägg: 1318
Blev medlem: 19 juli 2006, 18:50:38
Ort: Borås

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av Housepainter »

Jag har tänkt hoppa över biten med minneshantering ett tag och mest koncentrera mig på att få in rätt tänk för att lösa problemen med hur jag får en kod som gör vad den skall, men inte bara det utan också på ett enkelt och smidigt sätt.
Jag märker det när jag har löst de enkla problemen på 30 day code challenge och sedan kollar hur andra löst samma problem, att jag krånglar till det en del. Det finns alltid mycket mer eleganta (och framför allt kortare) koder man kan skriva. Men jag blir bättre på det för varje kod jag skriver, även om det bara är några rader.

Men tycker ni att jag skall fortsätta med C#, eller finns det någon "enklare" väg att gå. Och med enklare menar jag inte en väg med mindre ansträgning, utan en väg där man lär sig på ett lättare sätt och får fart på kunskaperna och får lite vind i seglen.
Findecanor
Inlägg: 982
Blev medlem: 2 juli 2010, 23:04:07

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av Findecanor »

Marknaden efterfrågar att du ska vara under tretti, nyutexaminerad ingenjör med tio års erfarenhet av precis de esoteriska system som de använder, vad det nu är, och ha ett jobb som systemutvecklare just nu som du inte önskar något annat än att hoppa av från, vilket du kan göra utan vidare.
När du har nått över 40-strecket och blivit arbetslös utan att ha något att gå till direkt så är din kärriär över, så försök att hitta en tangent (som t.ex. gruppledare) eller en stabil anställning på lång sikt innan dess, (t.ex. inom offentlig förvaltning). De sämsta arbetsplatserna är de som är mest i ropet, för de tror alltid att gräset är grönare på andra sidan och kommer inte att välja dig om du inte har någon speciell exceptionell kunskap som de söker.

...

En bra systemutvecklare kan lite av varje, och har lätt att lära sig och anpassa sig. Det kommer man att behöva göra vad för arbetsplats man än kommer till. Så det är den bästa egenskap du kan behöva.
Du kommer alltid att behöva arbeta med referens över standardbiblioteket/systemet/ramverket framför dig, vad det än är. De är så pass komplexa.
Python, C# och Java är väl OK att lära sig programmera i... men räkna aldrig med om att någonsin kunna ett språk utan och innan (men påstå förstås att du gör det! Rekryterare är inte intellektuella personer). Kolla också in andra språk som t.ex. Erlang och Smalltalk för att få en lite bredare syn på saker och ting. Alla dessa har också ett ytterligare språk gemensamt: SQL (även för vissa större embedded-grejer). Sen bör du också i alla fall kika på maskinkod och lära dig O()-notation.
Du måste också lära dig den djupare betydelsen av vad "software engineering" innebär. Det innefattar versionkontroll, testmetoder, kravspecifikation, agil metodik etc.
Användarvisningsbild
Housepainter
EF Sponsor
Inlägg: 1318
Blev medlem: 19 juli 2006, 18:50:38
Ort: Borås

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av Housepainter »

Ja det är så sant. Du skall vara ung men ha ett halvt arbetslivs erfarenhet.

Jag förstår att det är mycket att lära sig, men nu handlar det mest om att komma igång och lära sig att tänka programmering. Jag har drömt en hel del om if-statements och for-loopar om nätterna.
:lol:
Som tur är så har jag lätt att anpassa mig och att lära. Jag är väldigt vetgirig och försöker att lära mig så mycket jag kan om allt möjligt.
Zkronk
Inlägg: 1423
Blev medlem: 23 augusti 2005, 16:44:36
Ort: Uppsala

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av Zkronk »

Python är en snabbare språngbräda till att producera program som faktiskt gör lite saker :)

Och hackerrank.com har ganska så knepiga uppgifter, i många fall handlar det nästan mer om att träna på läsförståelse än själva programmeringen.
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av arvidb »

Ha! Minst 1/3 av jobbet i ett normalt programmeringsprojekt är att dra ur folk vad det egentligen är de vill ha gjort. Så läsförståelse, och att kunna identifiera motstridiga krav och komma med förslag på lösningar, är en väldigt stor del av yrket!
Användarvisningsbild
Housepainter
EF Sponsor
Inlägg: 1318
Blev medlem: 19 juli 2006, 18:50:38
Ort: Borås

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av Housepainter »

Hehe, ja viss kan det vara lite klurigt att tolka uppgifterna på hackerrank, men jag har sett det mer som arvidb skriver, en del i arbetet, att försöka greppa uppgiften och förstå vilket mål som skall nås.

Funderar på att lägga en omröstning i första inlägget. "vilket språk skall jag börja med?". Mina alternativ såhär långt är C#, Python och Java. Vad mer skulle platsa på listan?
Användarvisningsbild
4kTRB
Inlägg: 18283
Blev medlem: 16 augusti 2009, 19:04:48

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av 4kTRB »

Assembler och gärna strukturerad assembler då lär du dig från grunden. Parameterannrop på stacken eller mha register. Whileloopar och villkor. Sedan kan du göra massa kul experiment med lcd-displayer och ad-ingångar. Där skulle jag börja!
Användarvisningsbild
Hobbyisten
Inlägg: 2531
Blev medlem: 3 december 2017, 22:55:25

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av Hobbyisten »

I den bästa av världar efterfrågar man kunskaper istället för examenspapper, och kanske ett nytänk är på gång ?! En kvinnlig vän som hade eget webdesignföretag visste att jag kunde lite HTML och frågade om jag ville jobba åt henne. Allt är möjligt.
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av arvidb »

4kTRB: Assembler? :humm: De saker du listar (parameteranrop på stacken vs register o.s.v.) är ju väldigt bra att kunna om man ska skriva en kompilator. Men för applikationsutveckling, eller ens embedded? Njae? Hela grejen med maskinoberoende språk är ju att man inte behöver ha koll på det där utan kan lämna det till kompilatorn (eller interpretern, om det inte är ett "förkompilerat" språk).
Användarvisningsbild
Icecap
Inlägg: 26105
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av Icecap »

Mycket beror ju på vilken väg du vill gå.

För att lära sig att programmera skulle jag alla gångar välja C (inte C# skiten) och en ųC att testa på i början.
Pascal går bra också, det skiljer i grunden minimalt mellan C och Pascal.

Det viktigaste är ju att lära sig lösa problemen i något programmeringsspråk istället för att fokusera på språket.
Användarvisningsbild
Hobbyisten
Inlägg: 2531
Blev medlem: 3 december 2017, 22:55:25

Re: Lära mig programmering. Vilket språk att börja med?

Inlägg av Hobbyisten »

Är inte C++ en vidareutveckling av C, och nåt man kan skriva fullskaliga användarvänliga program i, samtidigt som man kan gå ner på bitnivå och även skapa kompilatorer i det ?!
Skriv svar