[OT] Bra bok för introduktion till programmering?

PerJ

Aktiv medlem
[OT] Bra bok för introduktion till programmering?
Har en 15-åring som nu söker teknisk inriktning till gymnasiet efter sommaren. Han har ingen erfarenhet av programmering (inte jag heller). Kurslitteraturen antydde C++, Java, PHP och liknande. Någon som har tips på en bra bok som passar för att introducera en 15-åring i den världen. Gärna up to date, och på svenska.
 
[OT] Bra bok för introduktion till programmering?
Bok?

Det var oldschool :)


Överlag så lär man sig programmering 10x snabbare (kanske 100x) genom att öva själv. Det är precis som matte, man måste göra det själv för att förstå. Alltså - titta på andras exempel och sedan försök själv.
 
[OT] Bra bok för introduktion till programmering?
Problemet med svenska är väl att ganska lite annat kommer att vara på svenska i det ämnet.

Annars har jag inga särskilt konstruktiva förslag. Vi använde knappt våra böcker de tre programmeringskurser jag läste på gymnasiet (vilket inte var så många år sen). Den praktiska kunskapen kom av bra övningar snarare än läsning så någon praktiskt inriktad bok snarare än en tjock teorilunta är nog mer lärorikt. Teorin kan man lära sig när man har lite grepp om det praktiska. Språk känns inte allt för noga på den nivån men Java är rätt vanligt i skolan.

Programmering är annars ganska allmänbildande och förståelse på konceptnivå är rätt lätt att få glädje av. Jag är ekonom men sitter och duttar i kod en del för att kontrollera beräkningar.
 
[OT] Bra bok för introduktion till programmering?
Ja - glöm svenskan. All programering (och allt naturvetenskapligt för den delen) är på engelska. Så om han inte är bra på engelska satsa stenhårt på det också.
 
[OT] Bra bok för introduktion till programmering?
C

Finns en bra bok på svenska - vägen till C. Annars finns det fler böcker på engelska och massor och åter massor av onlinekurser. Jag antar att det är julklapp du letar efter, så den boken kan jag rekommendera som referens.

Vill han köra hardcore finns det assembler, vilket faktiskt är lättare än man kan tro vid blotta anblicken. Och väldigt lärande/fostrande för hur systemet fungerar. Alltid användbart speciellt för en blivande teknolog.

C++, Java och andra högnivå OOP-språk tycker jag att han kan vänta med åtminstone tills grunderna finns där.

Ett annat alternativ som kanske lockar mer är nog Python. Lätt och snabbt att komma igång med.


Det är en sak att kunna hacka ihop "kommandon" i en fil, kompilera och lyckas få det att funka, mot att programmera på riktigt.
 
[OT] Bra bok för introduktion till programmering?
Vad ni gör, häng inte upp er på vilket språk. Det viktiga är att det är roligt. Allt annat är ointressant.
Just nu är jag pepp på https://www.meteor.com/ just nu. Mest för att det blir mycket med liten insats.
Tveksamt om det är optimalt för att lära sig men det är nog inget högnivåspråk som ger stor utdelning per skriven rad kod.
 
[OT] Bra bok för introduktion till programmering?
Modern C++ är rätt komplext att lära sig från scratch. Men C89 är busenkelt. Så börja där. Sen kör på C++ direkt. Alla andra språk som används idag är bara hittepå.
 
[OT] Bra bok för introduktion till programmering?
C++ är bara hittepå. Det får mig närmast att tänka på tjocka byråkratiska luntor. Det blir bara sämre varje gång det utökas, eftersom ingenting tas bort, vilket lätt resulterar i håriga skogar av olika slags C++. Om man blir grym på C++ kan man göra allt och får säkert jobb, men frågan är hur kul man har?

Färre krångliga dumheter att haka upp sig på och ett språk där man är mer produktiv är mycket roligare i början? (Tänker mig att Python eller JavaScript är lämpliga val.) PHP är väl inte heller direkt väldesignat.

C är väl också bra, det är viktigt att lära sig hur minneshantering fungerar, och vad statisk typning innebär t.ex. Och det finns roliga projekt, t.ex. med microcontrollers.
Det finns en bra kurs på MIT open courseware: http://ocw.mit.edu/courses/electric...-practical-programming-in-c-january-iap-2010/
 
[OT] Bra bok för introduktion till programmering?
meffe skrev:
-------------------------------------------------------
> C++ är bara hittepå. Det får mig närmast att
> tänka på tjocka byråkratiska luntor. Det blir
> bara sämre varje gång det utökas, eftersom
> ingenting tas bort, vilket lätt resulterar i
> håriga skogar av olika slags C++. Om man blir
> grym på C++ kan man göra allt och får säkert
> jobb, men frågan är hur kul man har?

Det är kul att göra riktiga saker.

> Färre krångliga dumheter att haka upp sig på
> och ett språk där man är mer produktiv är
> mycket roligare i början? (Tänker mig att Python
> eller JavaScript är lämpliga val.) PHP är väl
> inte heller direkt väldesignat.

Mmm. Dynamiska typosäkra skitspråk. Underbart.

> C är väl också bra, det är viktigt att lära
> sig hur minneshantering fungerar, och vad statisk
> typning innebär

Då skall man passa sig för C89, modernare C är OK, men den används sällan i verkligheten (för, surprise.. C++).


C89 för grunderna, sen direkt hoppa på enklare C++ med RAII.
 
[OT] Bra bok för introduktion till programmering?
Om vi pratar enkla nybörjaspråk vill jag också slå ett slag för C Shell. Finns ju inbyggt i Linux Red Hat t.ex.

(Ok, ok om ni är petimeter så är det tcsh men det är överkurs på den här nivån)
 
[OT] Bra bok för introduktion till programmering?
Fredrik80 skrev:
-------------------------------------------------------
> Om vi pratar enkla nybörjaspråk vill jag också
> slå ett slag för C Shell. Finns ju inbyggt i
> Linux Red Hat t.ex.

Tonåringar är självmordsbenägna som det är.
 
[OT] Bra bok för introduktion till programmering?
underscore skrev:
-------------------------------------------------------
> Fredrik80 skrev:
> --------------------------------------------------
> -----
> > Om vi pratar enkla nybörjaspråk vill jag
> också
> > slå ett slag för C Shell. Finns ju inbyggt i
> > Linux Red Hat t.ex.
>
> Tonåringar är självmordsbenägna som det är.

Vilken töntig kommentar...

Klart att C shell funkar, likväl som bash om han vill "komma igång".
 
[OT] Bra bok för introduktion till programmering?
grump skrev:
-------------------------------------------------------
> underscore skrev:
> --------------------------------------------------
> -----
> > Fredrik80 skrev:
> >
> --------------------------------------------------
>
> > -----
> > > Om vi pratar enkla nybörjaspråk vill jag
> > också
> > > slå ett slag för C Shell. Finns ju inbyggt
> i
> > > Linux Red Hat t.ex.
> >
> > Tonåringar är självmordsbenägna som det
> är.
>
> Vilken töntig kommentar...
>
> Klart att C shell funkar, likväl som bash om han
> vill "komma igång".

Komma igång med vad? Flytta filer med horribel notation? Bättre att koda ett eget skal isf i enkel C89, vilket i princip krävs för att förstå hur skiten fungerar.
 
[OT] Bra bok för introduktion till programmering?
GoranS skrev:
-------------------------------------------------------
> Brainfuck. ;-)

Brainfuck är faktiskt inte dåligt alls att börja med. Väldigt enkelt och utmanande :)
 
[OT] Bra bok för introduktion till programmering?
Fast lisp finns det väl trots allt människor som skrivit hyggligt vettiga saker i. Brainfuck känns som ett rent akademiskt språk.
 
[OT] Bra bok för introduktion till programmering?
underscore skrev:
-------------------------------------------------------
> GoranS skrev:
> --------------------------------------------------
> -----
> > Brainfuck. ;-)
>
> Brainfuck är faktiskt inte dåligt alls att
> börja med. Väldigt enkelt och utmanande :)

Mm, jag misstänker att det stora flertalet skulle ledsna på programmering om de skulle börja där.
 
[OT] Bra bok för introduktion till programmering?
Strålande input - tack för det! Dom där youtube-klippen gör nog susen. För jag antar att dom inte finns på VHS ;-) ?
 
[OT] Bra bok för introduktion till programmering?
GoranS skrev:
-------------------------------------------------------
> underscore skrev:
> --------------------------------------------------
> -----
> > GoranS skrev:
> >
> --------------------------------------------------
>
> > -----
> > > Brainfuck. ;-)
> >
> > Brainfuck är faktiskt inte dåligt alls att
> > börja med. Väldigt enkelt och utmanande :)
>
> Mm, jag misstänker att det stora flertalet skulle
> ledsna på programmering om de skulle börja där.

Jepp.

Stalltipset är att börja med C89 och köra grafikprogrammering omgående.
 
[OT] Bra bok för introduktion till programmering?
PerJ skrev:
-------------------------------------------------------
> Strålande input - tack för det! Dom där
> youtube-klippen gör nog susen. För jag antar att
> dom inte finns på VHS ;-) ?

Nej, bara betamax.
 
[OT] Bra bok för introduktion till programmering?
underscore skrev:
-------------------------------------------------------
> Jepp.
>
> Stalltipset är att börja med C89 och köra
> grafikprogrammering omgående.


Fast bara om han är självmordsbenägen...
 
[OT] Bra bok för introduktion till programmering?
Om man ska vara lite allvarlig så tror jag inte att man ska hänga upp sig jättemycket på vilket språk man börjar med så länge det är hyggligt enkelt att göra lite kul saker. Tillfredsställelsen över att få något man själv funderat ut att snurra är den bästa moroten att vilja gå vidare tror jag. Och mellan många språk finns klara överlapp så kan man ett är det ofta lättare att lära sig ett till än att börja från scratch.
 
[OT] Bra bok för introduktion till programmering?
underscore skrev:
-------------------------------------------------------
> grump skrev:
> --------------------------------------------------
> -----
> > underscore skrev:
> >
> --------------------------------------------------
>
> > -----
> > > Fredrik80 skrev:
> > >
> >
> --------------------------------------------------
>
> >
> > > -----
> > > > Om vi pratar enkla nybörjaspråk vill jag
> > > också
> > > > slå ett slag för C Shell. Finns ju
> inbyggt
> > i
> > > > Linux Red Hat t.ex.
> > >
> > > Tonåringar är självmordsbenägna som det
> > är.
> >
> > Vilken töntig kommentar...
> >
> > Klart att C shell funkar, likväl som bash om
> han
> > vill "komma igång".
>
> Komma igång med vad? Flytta filer med horribel
> notation? Bättre att koda ett eget skal isf i
> enkel C89, vilket i princip krävs för att
> förstå hur skiten fungerar.


Visst, jag håller med om att det är "bättre" att lära sig C på riktigt. Men du är faktiskt riktigt patetisk som dissar allt som inte just Du har som favvo. Gläd dig istället åt att fler väljer den ljusa sidan oavsett vägen dit.. släpp sargen och slappna av :)
 
[OT] Bra bok för introduktion till programmering?
grump skrev:
-------------------------------------------------------
> underscore skrev:
> --------------------------------------------------
> -----
> > grump skrev:
> >
> --------------------------------------------------
>
> > -----
> > > underscore skrev:
> > >
> >
> --------------------------------------------------
>
> >
> > > -----
> > > > Fredrik80 skrev:
> > > >
> > >
> >
> --------------------------------------------------
>
> >
> > >
> > > > -----
> > > > > Om vi pratar enkla nybörjaspråk vill
> jag
> > > > också
> > > > > slå ett slag för C Shell. Finns ju
> > inbyggt
> > > i
> > > > > Linux Red Hat t.ex.
> > > >
> > > > Tonåringar är självmordsbenägna som det
> > > är.
> > >
> > > Vilken töntig kommentar...
> > >
> > > Klart att C shell funkar, likväl som bash om
> > han
> > > vill "komma igång".
> >
> > Komma igång med vad? Flytta filer med horribel
> > notation? Bättre att koda ett eget skal isf i
> > enkel C89, vilket i princip krävs för att
> > förstå hur skiten fungerar.
>
>
> Visst, jag håller med om att det är "bättre"
> att lära sig C på riktigt. Men du är faktiskt
> riktigt patetisk som dissar allt som inte just Du
> har som favvo. Gläd dig istället åt att fler
> väljer den ljusa sidan oavsett vägen dit..
> släpp sargen och slappna av :)

Jag är inte patetisk. Jag är korrekt.
 
[OT] Bra bok för introduktion till programmering?
Jag har läst en hel del olika språk. Kan man tänka sig Java så är Bruce Eckels Thinking in Java väldigt bra. Tycker nog att det är den bästa bok jag har läst som introduktionsbok. Den finns dessutom gratis på nätet. Vill man ha lösningarna till övningarna så kostar det en liten slant.

Har läst några böcker på svenska, men de är oftast ganska översiktliga och håller inte samma kvalitet som de engelska. tycker jag.
 
[OT] Bra bok för introduktion till programmering?
> > Färre krångliga dumheter att haka upp sig på
> > och ett språk där man är mer produktiv är
> > mycket roligare i början? (Tänker mig att
> Python
> > eller JavaScript är lämpliga val.) PHP är
> väl
> > inte heller direkt väldesignat.
>
> Mmm. Dynamiska typosäkra skitspråk. Underbart.

Mest för att miljön är roligare. Bättre kanske är att gå på native iOS eller Android-appar som steg 2.
Jag skulle inte kalla dem skitspråk, iaf inte python, ruby.
Om man gillar att bolla med data och sen göra nåt snyggt av det finns det mycket kul i Python.

Dessutom blir det gärna bra struktur på programmen. Finns inget värre än att jobba med gammal spaghettikod som nån lite för grön har skrivit nåt lite för stort i PHP :/

> > C är väl också bra, det är viktigt att
> lära
> > sig hur minneshantering fungerar, och vad
> statisk
> > typning innebär
>
> Då skall man passa sig för C89, modernare C är
> OK, men den används sällan i verkligheten (för,
> surprise.. C++).
>
>
> C89 för grunderna, sen direkt hoppa på enklare
> C++ med RAII.

Japp modern c++ är trevligt, med en modern kompilator osv. Men håller fast vid att det är ett (onödigt) komplicerat språk, och tja mer tålamodsprövande kanske. Kanske därför man blir väl skolad av det å andra sidan?
 
[OT] Bra bok för introduktion till programmering?
underscore skrev:
-------------------------------------------------------
> grump skrev:
> --------------------------------------------------
> -----
> > underscore skrev:
> >
> --------------------------------------------------
>
> > -----
> > > grump skrev:
> > >
> >
> --------------------------------------------------
>
> >
> > > -----
> > > > underscore skrev:
> > > >
> > >
> >
> --------------------------------------------------
>
> >
> > >
> > > > -----
> > > > > Fredrik80 skrev:
> > > > >
> > > >
> > >
> >
> --------------------------------------------------
>
> >
> > >
> > > >
> > > > > -----
> > > > > > Om vi pratar enkla nybörjaspråk vill
> > jag
> > > > > också
> > > > > > slå ett slag för C Shell. Finns ju
> > > inbyggt
> > > > i
> > > > > > Linux Red Hat t.ex.
> > > > >
> > > > > Tonåringar är självmordsbenägna som
> det
> > > > är.
> > > >
> > > > Vilken töntig kommentar...
> > > >
> > > > Klart att C shell funkar, likväl som bash
> om
> > > han
> > > > vill "komma igång".
> > >
> > > Komma igång med vad? Flytta filer med
> horribel
> > > notation? Bättre att koda ett eget skal isf
> i
> > > enkel C89, vilket i princip krävs för att
> > > förstå hur skiten fungerar.
> >
> >
> > Visst, jag håller med om att det är "bättre"
> > att lära sig C på riktigt. Men du är
> faktiskt
> > riktigt patetisk som dissar allt som inte just
> Du
> > har som favvo. Gläd dig istället åt att fler
> > väljer den ljusa sidan oavsett vägen dit..
> > släpp sargen och slappna av :)
>
> Jag är inte patetisk. Jag är korrekt.

Inte direkt va, det handlar om att få killen att lära sig förstå paradigdmen imperativt. Då spelar det mindre roll vad för språk exakt. Nästa steg är att förstå nästa paradigdm som kan vara funktionella språk. Nästa objektorienterade språk och så slutligen logiska språk. Om han nu vill lära sig programmering på riktigt. Det sämsta man kan göra för att skapa sig en förståelse är att sätta igång och hacka t.ex C++ utan att från början förstå vad det handlar om från en högre abstraktion. Finns tillräckligt med fulkod som blandar det ena med det andra, världen behöver inte mer av den varan ;-)
 
[OT] Bra bok för introduktion till programmering?
Ja - python är bra! :)

Men jag tycker nog att man ska gå på c++ och java rätt snart.

Man kan säga vad man vill om c++ men ska man bara kunna ETT språk i hela världen så är det f'n i mig c++ som gäller. Like it or not. Det är ett väldigt kraftfullt språk, om än inte det enklaste. Men börjar man ung kanske man blir bra?

Java verkar Sveriges gymnasium och högskolor ha en speciell kärlek för, vet inte varför egentligen. Men ska man nu plugga är det väl bäst att rätta in sig i leden.
 
[OT] Bra bok för introduktion till programmering?
Ja isåfall är java att föredra, eller smalltalk. Som sagt så finns det tillräckligt många "c++-programmerare" som inte fattar enkel OOD.
 
[OT] Bra bok för introduktion till programmering?
grump skrev:
-------------------------------------------------------
> underscore skrev:
> --------------------------------------------------
> > Jag är inte patetisk. Jag är korrekt.
>
> Inte direkt va, det handlar om att få killen att
> lära sig förstå paradigdmen imperativt. Då
> spelar det mindre roll vad för språk exakt.
> Nästa steg är att förstå nästa paradigdm som
> kan vara funktionella språk. Nästa
> objektorienterade språk och så slutligen logiska
> språk. Om han nu vill lära sig programmering på
> riktigt. Det sämsta man kan göra för att skapa
> sig en förståelse är att sätta igång och
> hacka t.ex C++ utan att från början förstå vad
> det handlar om från en högre abstraktion. Finns
> tillräckligt med fulkod som blandar det ena med
> det andra, världen behöver inte mer av den varan
> ;-)

Många kloka ord! Vill man bli en duktig programmerare så är det programmering man skall lära sig och inte ett enskilt språk.
 
[OT] Bra bok för introduktion till programmering?
s skrev:
-------------------------------------------------------
> grump skrev:
> --------------------------------------------------
> -----
> > underscore skrev:
> >
> --------------------------------------------------
>
> > > Jag är inte patetisk. Jag är korrekt.
> >
> > Inte direkt va, det handlar om att få killen
> att
> > lära sig förstå paradigdmen imperativt. Då
> > spelar det mindre roll vad för språk exakt.
> > Nästa steg är att förstå nästa paradigdm
> som
> > kan vara funktionella språk. Nästa
> > objektorienterade språk och så slutligen
> logiska
> > språk. Om han nu vill lära sig programmering
> på
> > riktigt. Det sämsta man kan göra för att
> skapa
> > sig en förståelse är att sätta igång och
> > hacka t.ex C++ utan att från början förstå
> vad
> > det handlar om från en högre abstraktion.
> Finns
> > tillräckligt med fulkod som blandar det ena
> med
> > det andra, världen behöver inte mer av den
> varan
> > ;-)
>
> Många kloka ord! Vill man bli en duktig
> programmerare så är det programmering man skall
> lära sig och inte ett enskilt språk.

+1

C++ är ju som sagt väldigt kraftfullt, men det skapar fler problem än det löser. Svårdebuggat och lätt att introducera fel av misstag.
Om man väljer att skriva sin applikation i C++ ska man ha en jäkligt bra anledning.
 
[OT] Bra bok för introduktion till programmering?
theBrand skrev:
-------------------------------------------------------
> C++ är ju som sagt väldigt kraftfullt, men det
> skapar fler problem än det löser. Svårdebuggat
> och lätt att introducera fel av misstag.

Fel. Du är diskvalificerad från denna tråd.
 
[OT] Bra bok för introduktion till programmering?
Du har inte funderat på att köpa något arduinokit eller pickit eller så, för att få en mer praktisk koppling? Det kan vara lättare att motivera sig om man ser att det händer något i praktiken. Dessutom finns det en hel hög exempelprojekt att hitta på nätet.
 
[OT] Bra bok för introduktion till programmering?
C++ som första språk idag är ganska dumt då det är kraftfullt men kräver väldigt mycket av den som programmerar. Lite för enkelt att ta bekväma genvägar som skapar mer problem än don löser i slutändan.

Varför inte prova med Java finns hur mycket som helst på nätet. Scheme är ett annat skolspråk för den som vill lära sig programmera, den praktiska användningen är dock begränsad.
 
[OT] Bra bok för introduktion till programmering?
Fredrik80 skrev:
-------------------------------------------------------
> Överlag så lär man sig programmering 10x
> snabbare (kanske 100x) genom att öva själv. Det
> är precis som matte, man måste göra det själv
> för att förstå. Alltså - titta på andras
> exempel och sedan försök själv.

+1. Titta på http://www.codecademy.com/ och https://www.coursera.org/courses?query=software development&categories=cs-programming tex. Kanske den här https://www.coursera.org/course/codeyourself som introduktion till ämnet?
 
[OT] Bra bok för introduktion till programmering?
Lillskeden skrev:
-------------------------------------------------------
> Ingen som nämnt ada eller fortran än vad jag kan
> se? :)

När jag pluggade i mitten av 80-talet så var det Pascal som gällde. Men vi lärde oss Fortran, Cobol, Prolog, Lisp, PDP11-assembler och lite C. Men Erlang då?
 
[OT] Bra bok för introduktion till programmering?
JLarsson skrev:
-------------------------------------------------------
> Lillskeden skrev:
> --------------------------------------------------
> -----
> > Ingen som nämnt ada eller fortran än vad jag
> kan
> > se? :)
>
> När jag pluggade i mitten av 80-talet så var det
> Pascal som gällde. Men vi lärde oss Fortran,
> Cobol, Prolog, Lisp, PDP11-assembler och lite C.
> Men Erlang då?

Facebooks Chatfunktion är skriven i Erlang om jag inte missminner mig, så Erlang är lite hett ändå ;)
 
[OT] Bra bok för introduktion till programmering?
Har inget boktips tyvärr, men det viktigaste är väl att han tycker det är skoj, och då är mitt tips att börja titta på lite enkel app-programmering i Java/Android. Ganska enkelt att komma igång med faktiskt och det är en grym wow-faktor att bygga sin egen app i telefonen!

Skippa C++ det var 20 år sedan någon använde det i praktiken.

PHP är rörigt, ostrukturerat och svårbegripligt, dålig introduktion till programmering.
 
[OT] Bra bok för introduktion till programmering?
Java och Android api måste väl ändå vara nåt av de bättre appliceringarna att börja med. Hyffsat enkelt att bygga något lite roligare i som man kan använda sig av och som man dessutom väldigt lätt kan visa upp för familj och vänner.
 
Tillbaka
Topp