News:

No significant change

Main Menu

@FT: The last real programmer

Started by griffin, January 12, 2013, 19:57:17

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

ft

Och redan i första paragrafen om PHP är vi inne på termer som CLI och att sjösätta sina Hello World via nätverk mot en Raspberry... samt har aktiverat Godwin's lag! :D

Stercus accidit
---
Quando omni flunkus moritatus

bALoO

#25
Perl tycker jag. Du kan leka loss på raspberryn om du vill eller så installera Strawberry Perl i Windows och kör lokalt. Oavsett om du väljer Perl, C# eller något annat trevligt språk så kommer du inte undan behovet att förstå utvecklingsmiljön. Kör du Perl så slipper du fundera över kompileringsbiten iaf.  Såhär skulle din första session kunna se ut efter installationen av Strawberry perl http://strawberryperl.com/

Starta kommandotolken
Skriv in
  perl -e "print 'Hello World!';"
och tryck sen retur för att se texten Hello World! skrivas ut i fönstret.

Intel i5-4690K -  ASUS Z97-P - 2x4096MB DDR3 - Radeon HD7970

griffin

Vad ni pratar om är att lösa specifika problem. PHP och Perl är jättebra för den typen av problem. Men skolspråk? Nej. Varför?

Några lösryckta problem med det:

- Hur lära ut vad en datatyp är och innebär när man kan göra saker som '$x="1"; $y=1+$x'
- Hur lära ut vad skillnaden mellan syntaktiskt fel, körfel eller tolka felmeddelanden när man får resultatet "Internal Server Error" som ända ledtråd (innan man vet var man skall kika då)
- Hur lära ut vad skillnaden mellan HTML och PHP går, när man kan blanda dem friskt i koden. PHP genererar HTML och är grymt på att autoatisera array och stränghantering eftersom det är vad man som mest behöver göra när man genererar HTML.
- Hur lära ut datatyper och strukturer när man aldrig behöver deklarera några eller knappt ta hänsyn till dem.
- Hur lära ut arv när objektorienteringsbiten i PHP helt kan ignoreras. Det känns som mer av en kul grej de pitchade in för att det är poppis med OOP.


Jag räknade till 7 klick/tryck för att skriva, kompilera och exekvera Hello World som en "fullt fungerande" Windows applikation, efter att Visual Studio startats. Exklusive att skriva texten Hello. World. Kan inte se hur en IDE ställer till det?

Återigen, allt handlar om vad man vill göra. Och framför allt hur man definierar "att lära sig programmera". Jag har väl en lite mer "old school" inställning där. Samtidigt ganska pragmatisk. Om man har en Raspberry P och vill leka med den, kan PHP eller Perl kanske vara perfekta val för att göra det man vill med sin dator. Och givet att man har koll på hur man får igång Raspberryn och hanterar den biten, behöver stegen till att lösa sina första problem i PHP eller Perl inte vara överdrivet många. Men har man lärt sig att programmera på det? Inte om ni frågar mig. Löst problem, lärt sig saker. Ja. Programmerat? Ja, absolut. Men lärt sig programmera? Nej. Typ :) Kan man programmera utan att lära sig att programmera? Hmm.

Det finns för och nackdelar med att integrera språk och utvecklingsmiljö. Jag har jobbat med båda varianterna. En integrerad miljö kan göra saker åt dig - till priset att du kanske inte förstår allt som sker. Samtidigt tar det fokus bort från det som inte har att göra med den problemlösning du skall göra. Exempel: det tog mig många timmar när jag lärde mig PHP att få till ett bra arbetsflöde för att förstå, hitta och åtgärda fel när jag programmerade. Tid som jag t.ex. Visual Studio inte behövt lägga, då felmeddelandet hade tryckts upp i fejset på mig.

Jag lärde mig programmera två gånger. Först själv sen på universitetet. Själv använde jag IDE (Turbo Pascal någon?) och på universitetet genom tolkat språk (SML), och sedan genom att själv kompilera och länka. Nu jobbar jag med att använda en IDE som är oerhört komplicerad (Visual Studio och Eclipse). Det är svårt att rekommendera något utan att veta vad den som vill lära sig något faktiskt vill göra och åstakomma. Valen är så många!
snappahead

Horizon

Vad mycket enklare det var när det endast fanns Basic eller Amiga Basic. :)

Jag läser och försöker förstå det ni skriver, men det tar inte många rader innan ni börjar prata om saker som jag inte fattar ett dugg av, t.ex. länka, kompilera, utvecklingsmiljö, datatyp, autoatisera, stränghantering, arv osv osv. Man blir helt snurrig. Om jag säger så här: Jag vill gå en kurs i "Programmering för nybörjare". Var börjar jag? Finns det inte någonstans där man startar en liknande kurs på t.ex. gymnasiet? Jag får höra mig för lite med lärarkollegor.
We're standing here by the abyss, and the world is in flames
Two star-crossed lovers reaching out, to the beast with many names

griffin

Jag lovade skaka fram lite länkar och läsning, det skall ordnas!

snappahead