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
TomasL
EF Sponsor
Inlägg: 45174
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

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

Inlägg av TomasL »

Min lilla åsikt:
Programmering har inget med programspråk att göra, språket är bara ett verktyg för att nå målet.
Programmering är att kunna förstå och bryta ned en uppgift/problem i små beståndsdelar och realisera dem på ett logiskt sätt, så att en dator kan utföra det.
Att lära sig programmering, är att lära sig att tänka och förstå uppgiften/problemet.

När man har realiserat sin uppgift/problem på ett lösbart sätt, så väljer man det verktyg (dvs programmeringsspråk) som är bäst lämpat för uppgiften.

För att kunna skriva ett reglerprogram, måste man förstå/kunna reglerteknik.
För att kunna skriva ett bokföringsprogram, måste man förstå/kunna bokföring.
Osv.
Du blir inte en snickare, bara för att du lärt dig använda en hammare eller en såg.
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 håller med. Du blir inte systemutvecklare av att kunna knacka lite kod.
Dock är det bra att börja med att lära sig lite grunder först, det i sin tur leder sedan till att man vet vad för verktyg man har att lösa problemen med.

Att lära sig att koda är nog egentligen inte den tuffa biten, utan just problemlösningen som du skriver om, att lära sig att bryta upp dessa i mindre bitar. Det är det jag får jobba hårdast på för egen del nu. Jag har rätt bra koll på kodning, men anser att jag har mycket att lära angående att lösa större problem. Men bättre blir man med tid och övning! :tumupp:
janno
Inlägg: 403
Blev medlem: 11 oktober 2009, 07:34:45
Ort: Västerås

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

Inlägg av janno »

En stor sak som är viktig vid all systemutveckling är att känna till det ramverk man har att jobba med. Ex. dotnet, win32, GTK, POSIX, företagsinterna, m.m.
Språket är ju den syntax som ramverket kan användas med. Ju bättre du kan det ramverk du ska använda, desto fortare går det att få saker gjorda och man behöver inte skriva funktioner som kanske redan finns, men man inte känner till.
hummel
Inlägg: 2259
Blev medlem: 28 november 2009, 10:40:52
Ort: Stockholm

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

Inlägg av hummel »

Tidigare var systemerare den som designade systemen, det som nu slentrianmässig kallas programmera. Programmeraren var den som implementerade systemet.
Jax
Inlägg: 42
Blev medlem: 10 december 2018, 16:10:43

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

Inlägg av Jax »

TomasL skrev:Min lilla åsikt:
Programmering har inget med programspråk att göra, språket är bara ett verktyg för att nå målet.
Programmering är att kunna förstå och bryta ned en uppgift/problem i små beståndsdelar och realisera dem på ett logiskt sätt, så att en dator kan utföra det.
Att lära sig programmering, är att lära sig att tänka och förstå uppgiften/problemet.

När man har realiserat sin uppgift/problem på ett lösbart sätt, så väljer man det verktyg (dvs programmeringsspråk) som är bäst lämpat för uppgiften.

För att kunna skriva ett reglerprogram, måste man förstå/kunna reglerteknik.
För att kunna skriva ett bokföringsprogram, måste man förstå/kunna bokföring.
Osv.
Du blir inte en snickare, bara för att du lärt dig använda en hammare eller en såg.
Efter att ha spenderat halva yrkeslivet åt programmering kan jag bara hålla med. Programmering lär man sig med papper och penna där man ritar flödesschemor. Det moderna sättet att göra detta är i ett verktyg som kan rita UML. Helst i flera nivåer där man stegvis bryter ner allt i mindre delar.

Första språket jag kodade i var algol60. Därefter BASIC. Sedan Fortran. Sedan Pascal. Någon kurs i C fanns inte då men det fanns ett par unixkärror vi fick sitta och leka med på fritiden, där kodade jag C. Hemma kodade jag assembler i en 6800. Jag stannade och jobbade på universitetet några år med en del kodande i DEC20 assembler. Lämnade universitetet för att jobba med hårdvarudesign. 17 år senare hamnade jag i en situation där jag bytte till mjukvarudesign igen. Då kodade jag i C som jag då är självlärd i. Lite senare även C++, Python och Verilog där arbetsgivaren ordnade kurser. Jag har sett java och C# och ser inga hinder att snabbt komma in i dem och koda. Det blev inte så mycket av den varan då jobbet var att utveckla program för stora inbyggda system. Med andra ord, jag är urusel på GUI.

Idag som pensionär kodar jag mest C++ då jag ser dess fördelar över C. Allt gör jag i en linuxkärra, jag har inte skrivit en enda rad kod för windows.

TL:DR; Programmering sker på en abstrakt nivå, först när det är klart kodar man lösningen. Vilket språk det är är inte så viktigt om inte målet är högsta prestanda.
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 »

En sak som vi fick höra tidigt i första kursen.
- "Ju tidigare ni börjar koda, desto längre tid kommer det att ta."

Nu gäller det bara att ha med sig det och att planera och lösa problemen innan man börjar koda.
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

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

Inlägg av BJ »

Det här gäller nog mer elektronik + programmering:
Det är inte ovanligt att det man har gjort behöver ändras,
kanske till och med många gånger, för att någon önskar
att det gärna får fungera lite annorlunda.
Det är väl inte alltid stora saker, men det händer ju
att man får ändra i delar av programmet och av
strukturen. Så bara för att man tänker innan så
behöver inte det betyda att det blir så.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45174
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

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

Inlägg av TomasL »

Pseudokod är bra, dvs blanda vanligt språk och kod, för att få fram en logik
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45174
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

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

Inlägg av TomasL »

BJ, elektronik konstruktion är som programmering, först iden, och lösningen i beståndsdelar, därefter schema och simulering och sist skarpt.
Användarvisningsbild
mrfrenzy
Co Admin
Inlägg: 14819
Blev medlem: 16 april 2006, 17:04:10

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

Inlägg av mrfrenzy »

BJ skrev:Det här gäller nog mer elektronik + programmering:
Det är inte ovanligt att det man har gjort behöver ändras,
kanske till och med många gånger, för att någon önskar
att det gärna får fungera lite annorlunda.
Därför är det extremt viktigt att ha en kravspecifikation från "den som önskar" (beställaren) innan man börjar arbeta. Lika viktigt är det att dokumentera vem som betalar för merarbete pga ändringar.
jpalsson
Inlägg: 143
Blev medlem: 20 juli 2012, 13:14:41

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

Inlägg av jpalsson »

mrfrenzy skrev: Därför är det extremt viktigt att ha en kravspecifikation från "den som önskar" (beställaren) innan man börjar arbeta. Lika viktigt är det att dokumentera vem som betalar för merarbete pga ändringar.
Vilket i många fall numera kan vara lika sällsynt och svårt att få fram som rosa enhörningar :-)
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 »

Kravspecen är ju en stor del av arbetet i ett mjukvaruprojekt, så att få en färdig sådan från beställaren innan man börjar arbeta är nog oftast helt orealistiskt. Min erfarenhet är att beställaren ytterst sällan vet exakt vad hen vill ha - snarare handlar det om en väldigt övergripande idé, typ "vi behöver ett program för att styra en maskin". Exakt vad detta program ska göra, och hur, det är något som man får arbeta fram tillsammans med beställaren. Det är väl därför som agila metoder (täta leveranser av testbar men icke-färdig kod) tog över helt från vattenfallsmetoden (först krav, sedan utveckling, sedan testa mot kraven, sedan leverans, o.s.v.).
Användarvisningsbild
mrfrenzy
Co Admin
Inlägg: 14819
Blev medlem: 16 april 2006, 17:04:10

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

Inlägg av mrfrenzy »

Absolut är det så arvidb, det beror ju på hur beställaren önskar arbeta. Vill han ha ett fast pris så krävs också en fast kravspecifikation.

Väldigt ofta får jag uppdrag som inte är definierade i totalpris utan bara en timkostnad och ungefär vad som ska bli gjort, sen gör man löpande avstämningar och justeringar.
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 »

Hehe, alla beställare vill väl ha bugfria program skrivna utan kravspec till fast pris, med start omedelbart och med leverans inom en månad? ;) Gärna då med lösning av något np-komplett problem också. :)

Nej men visst är det så, att det är upp till beställaren.
jpalsson
Inlägg: 143
Blev medlem: 20 juli 2012, 13:14:41

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

Inlägg av jpalsson »

arvidb skrev:Kravspecen är ju en stor del av arbetet i ett mjukvaruprojekt, så att få en färdig sådan från beställaren innan man börjar arbeta är nog oftast helt orealistiskt. Min erfarenhet är att beställaren ytterst sällan vet exakt vad hen vill ha - snarare handlar det om en väldigt övergripande idé, typ "vi behöver ett program för att styra en maskin". Exakt vad detta program ska göra, och hur, det är något som man får arbeta fram tillsammans med beställaren. Det är väl därför som agila metoder (täta leveranser av testbar men icke-färdig kod) tog över helt från vattenfallsmetoden (först krav, sedan utveckling, sedan testa mot kraven, sedan leverans, o.s.v.).
Det här är ju såklart mumma för leverantören, väldigt enkelt att sälja in på samma sätt som sälja prenumerationer på mjukvara istället för licenser.
Dessutom, eftersom man på detta sätt slipper den tråkiga fas som innebär att man måste ha kunskap om
mjukvaruprocessen så kan helt plötsligt "verksamheten" lägga beställningar.
Det enda som krävs är ett ekonomiskt mandat och en idé, resten överlåter man till leverantören
att klura ut.

Nu sitter jag som leverantör och skulle kunna dra stor nytta av detta, men man kan ju fundera hur
det är ställt när personer som normalt är väldigt noggranna och kräver ritningar och specifikationer
i sitt eget arbete (exempelvis konstruktörer inom maskin och bygg eller för den delen revisorer) helt plötsligt
vill starta upp byggandet av mjukvarusystem baserat på 10 rader text i ett mail, och dessutom
är villiga att skjuta till stora summor för lyxen att slippa röra i det själv.

Inte skulle exempelvis en maskinkonstruktör tycka att det var en bra idé att några
killar med vinkelslip och plasmaskärare skulle vara en del av byggnadsprocessen? ;-)
Men, med mjukvara så håller det på att bli helt normaliserat..

Det finns ju också en faktor till, nämligen den att de allra flesta som är heltidsutvecklare
hatar att hela tiden gå och fråga någon "hur tänkte ni här, vad ska hända när man trycker på den här knappen".
Snarare tvärtom, ju närmare back-end man kommer, desto gladare blir de i regel över flödesscheman och lite fylligare förklaringar
så att de ostört kan mata sig igenom dagen.
Skriv svar