“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
Daar al eens gekeken?
Edit: Bij nader inzien ben ik bereid dit topic open te laten, mits er goed onderbouwde replies worden geplaatst (en er dus geen opsomtopic van wordt gemaakt waar willekeurige talen, instituten, boeken of whatever worden geroepen).
Dus: *schraapt keel*
[ Voor 56% gewijzigd door RobIII op 18-12-2007 11:59 ]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
zal voor mij ook geen overbodige luxe zijn om zo'n cursus te volgen. Puur om mijn kennis te borgen/verifieren
Zal eens één van mijn contacten bij een instituut polsen.
Heart..pumps blood.Has nothing to do with emotion! Bored
Moet de cursist na de cursus direct aan de slag kunnen en zelfstandig programma's gaan schrijven of is het meer als aanvulling op iets anders om langzaam de programmeer wereld in te rollen?
Hoe dan ook.. programmeren kun je niet in een 10-delige cursus leren volgens mij
Het probleem is inderdaad vooral dat ik wel cursussen kan vinden maar die zijn echt toegespitst om taal X te leren. Ik vind het belangrijk dat als je begint met programmeren dat je eerst een goede basis krijgt. Tuurlijk moeten ze in een cursus waarschijnlijk 1 taal nemen om de concepten bij te brengen. Maar ze moeten dan zorgen dat je juis niet op het framework richt maar dingen zelf laat doen.
Ik heb zelf HBO Informatica gevolgd en daar had je bijvoorbeeld een vak Datastructuren. Dat werd dan in Java gegeven, maar je moest bijvoorbeeld zelf een simpele implementatie maken van een List of Hashtable.
Door dat soort dingen te doen krijg je een beter inzicht in wat verschillende datastructuren doen. Als je eenmaal een beetje dat inzicht hebt dan kan je zelf wel ( eventueel met behulp van andere cursussen ) een bepaalde taal aanleren aangezien er redelijk hetzelfde idee achter zit.
In dit geval heb ik het dan wel over de "Normale" programmeer hoek en dus niet zozeer over andere paradigma's zoals bijvoorbeeld Functioneel Programmeren ( Al is het helemaal niet verkeerd om dat ook eens gezien te hebben, zodat je ieder geval beseft dat er meerdere wegen naar Rome zijn ).
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
• ANO408 - Object Orientation, RUP and UML 2.0
• MOC2667 - Introduction to Programming
Heart..pumps blood.Has nothing to do with emotion! Bored
Dus gewoon een uitgebreid boek halen is een handige oplossing. En een cursus zou ik zo snel niet weten. Die zijn ook over het algemeen wat duurder dan een algemeen boekje
disjfa - disj·fa (meneer)
disjfa.nl
Ik zal er eens rondkijken. Heb jij ervaringen met die cursussen?TeeDee schreef op dinsdag 18 december 2007 @ 12:28:
Kijk eens bij twice.nl Cursus codes:
• ANO408 - Object Orientation, RUP and UML 2.0
• MOC2667 - Introduction to Programming
Maar wat zijn "goede" boeken voor de basis. Tuurlijk heb je in het begin altijd een klein stukje wat loopjes enzo snel uitlegd. Maar dat is meestal vrij summier.disjfa schreef op dinsdag 18 december 2007 @ 12:32:
Over het algemeen als je een willekeurig programeerboek haalt zijn de eerste hoofdstukken het "algemeen wat is programeren en wat gebeurt er" hoofdstukken. Dus het maakt in princiepe weinig uit wat je zou willen leren. De basis blijft de basis.
Dus gewoon een uitgebreid boek halen is een handige oplossing. En een cursus zou ik zo snel niet weten. Die zijn ook over het algemeen wat duurder dan een algemeen boekjeMaar als eventuele voorbereiding is een boek al geheel geen probleem neem ik aan
Dat een cursus duurder is dat is niet het probleem. Het mag allemaal best wat kosten. Het probleem is dat er zo'n groot aanbod is van allerlei cursussen maar vind daar maar eens een goede cursus tussen voor een beginner.
Een sun of microsoft certificering heb je IMHO niks aan als beginner. Ik denk dat een boek voor inleiding in OO of bijvoorbeeld UML bijvoorbeeld al een mooi begin is, maar een docent die het allemaal mooi in context uit kan leggen heeft denk ik toch wel een hoop meerwaarde.
Ik ben hem aan het downloaden om er eens naar te kijken.Crayne schreef op dinsdag 18 december 2007 @ 12:40:
Op Studentensupport.nl kan je het boek "Inleiding in Programmeren" downloaden in PDF formaat. Dat lijkt me een goede opstap tot wat je collega wil. Daarna kan hij zich gaan toespitsen op specifieke technologieën en de (betaalde) cursussen die daar bijhoren.
[ Voor 12% gewijzigd door Woy op 18-12-2007 12:45 ]
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
Helaas (nog) niet. Wel ervaring met Twice en over het bedrijf an sich geen klachten.rwb schreef op dinsdag 18 december 2007 @ 12:43:
[...]
Ik zal er eens rondkijken. Heb jij ervaringen met die cursussen?
Heart..pumps blood.Has nothing to do with emotion! Bored
Post dan ff de directe link..Crayne schreef op dinsdag 18 december 2007 @ 12:40:
Op Studentensupport.nl kan je het boek "Inleiding in Programmeren" downloaden in PDF formaat. Dat lijkt me een goede opstap tot wat je collega wil. Daarna kan hij zich gaan toespitsen op specifieke technologieën en de (betaalde) cursussen die daar bijhoren.
http://studentensupport.nl/store/product_55_download.aspx
maarreuh... als je er een goeie programmeur aan over wilt houden is een hbo informatica aan te bevelen
brede basis die toepasbaar is in, in principe, iedere programmeertaal.
kan uit je startpost niet zo goed opmaken wat nou be de bedoeling is, wil je die gast gaan opleiden tot (goeie) programmeur, of wil hij (vanuit hobby ofzo?) gewoon er wat meer over leren?
Hoe wil hij het gaan toepassen? alstie alleen maar wat simpele progjes wil kunnen maken om mee te spelen dan komt ie met een goed boek een heel eind en kannie er lekker mee spelen, maar wil je er echt serieus mee aan de slag (professioneel) dan zou ik toch op z'n minst een flinke cursus aanbevelen. (met contacturen, uiteraard)
Mee eens, maar op dit moment is het het nog niet "waard". In de zin van dat ik nog niet weet of het uiteindelijk wat word. Als hij aantoont er echt voor te willen gaan en zelf ook de wens heeft om een HBO opleiding te volgen word dat mischien wel bespreekbaar.Xyzar_ schreef op dinsdag 18 december 2007 @ 12:56:
maarreuh... als je er een goeie programmeur aan over wilt houden is een hbo informatica aan te bevelenkrijg je vakken als OO-modelleren, datastructuren, algoritmiek, nerkwerken, computerarchitectuur, enz.
brede basis die toepasbaar is in, in principe, iedere programmeertaal.
De persoon in kwestie werkt op het moment op de Support afdeling en heeft aangegeven wel geinteresseerd te zijn om meer richting de programmeer kant te groeien. Ik zie hem eerst voorlopig nog geen volwaardig programmeur worden. Maar hij zou in het begin zeker mee kunnen lopen met projecten waar hij andere mensen kan assisteren met bijvoorbeeld simpele tooltjes, of goed afgebakende stukken code.kan uit je startpost niet zo goed opmaken wat nou be de bedoeling is, wil je die gast gaan opleiden tot (goeie) programmeur, of wil hij (vanuit hobby ofzo?) gewoon er wat meer over leren?
Hoe wil hij het gaan toepassen? alstie alleen maar wat simpele progjes wil kunnen maken om mee te spelen dan komt ie met een goed boek een heel eind en kannie er lekker mee spelen, maar wil je er echt serieus mee aan de slag (professioneel) dan zou ik toch op z'n minst een flinke cursus aanbevelen. (met contacturen, uiteraard)
De cursus is dus meer bedoeld om hem een schop in de goede richting te geven, mocht hij er echt mee verder willen zou ik zeker een HBO ( Avond ) opleiding aanraden aan hem. Maar het is mischien wat veel om opeens vanuit het diepe in een HBO opleiding te springen.
Heb net even die PDF doorgebladerd en het ziet er wel leuk uit. Lekker duidelijk alle simpele programmeer basics uitgelegd. Ik zal ook nog eens zoeken voor een goed OO boek waar de basics uitgelegd worden.
[ Voor 18% gewijzigd door Woy op 18-12-2007 13:05 ]
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
Wellicht is dat een insteek richting het programmeren, andere onderwijsinstellingen zullen soortgelijke studies geven.
Ik ben geen voorstander van het "zelf leren programmeren" mbv. een x for dummies boek. Je leert jezelf daardoor ook fouten aan.
Hmm was net bezig dit ook te typenMarchelV schreef op dinsdag 18 december 2007 @ 13:05:
Via de OU kun je korte cursussen krijgen over bijvoorbeeld kennissystemen, hierin zit ook een deel programmeren in een virtuele programmeertaal. Wellicht geeft de OU ook cursussen programmeren in die taal. Eenmaal een programmeertaal onder de knie dan komen de anderen zowat vanzelf.
Wellicht is dat een insteek richting het programmeren, andere onderwijsinstellingen zullen soortgelijke studies geven.
Ik ben geen voorstander van het "zelf leren programmeren" mbv. een x for dummies boek. Je leert jezelf daardoor ook fouten aan.
Zelf volg ik de bachelor opleiding aan het Ou, nu is dat niet wat hier gevraagd wordt maar op het Ou worden ook korte studieprogramma's gegeven.
Een daarvan is de korte cursus "Gecertificeerd javaprogrammeur" (18 maanden), ik heb al een aantal van deze cursussen gedaan in mijn bacherlor programma en moet zeggen dat je ook veel aan de cursus hebt buiten de taal Java, op mijn werk gebruiken we alleen dotnet.
De grondbeginselen van OO worden goed uitgelegd, en daarbij leer je ook een deel UML. Ook een aantal patterns zoals het observer pattern komen aan de orde. Alles onder begeleiding in Amsterdam.
Mocht je willen dan kun je op de studiecentra in diverse plaatsen de cursusboeken inkijken.
*Klik*
(weet niet of het helemaal volgens de regeltjes is om dit hier te posten, maar ik heb een stapel van mijn oude studieboeken in de verkoop staan. o.a. over leren programmeren (OO), en UML, allemaal studieboeken dus, mocht je geïntresseerd zijn: linkje )
http://www.ou.nl/eCache/DEF/1/48/445.html
en
http://www.ou.nl/eCache/DEF/13/290.html
Zal binnenkort eens vragen wat de persoon in kwestie er zelf van denkt om zoiets te doen.
Het is denk wel goed dat een opleidingstraject een redelijk periode duurt. Als je in bijvoorbeeld 2 weken een hele hoop naar je hoofd geslingerd krijgt qua kennis dan leer je er niet echt meer iets van.
Door het over een wat langere tijdspanne te verdelen en ondertussen ook in de praktijk te brengen leer je er IMHO meer van.
[ Voor 36% gewijzigd door Woy op 18-12-2007 14:21 ]
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
2 dagen, dan heb je de eerste calculator binnen..anders moet je een andere werknemer zoeken
http://java.sun.com/docs/.../java/concepts/index.html
Als de persoon in kwestie totaal geen ervaring heeft met programmeren dan lijkt een 'echte' cursus/opleiding mij geschikter dan hem een website met een ik-wil-leren-programmeren tutorial voor te schotelen.
Cursussen van de Open Universiteit kunnen een goed begin zijn en zijn ook niet al te prijzig. Maar ook Sun heeft bijvoorbeeld een basiscursus (Java Programming Language, SL-275) waar uitgebreid over de beginselen van object-oriëntatie wordt gesproken.
Tja er zal mischien wel een leuke calculator uitkomen, maar ik heb niet het idee dat je dan de basis goed door hebt. Je hebt een beetje de begrippen en ideen geleerd, maar je mist dan denk de basis om het in context te plaatsen van een real world applicatievorlox schreef op dinsdag 18 december 2007 @ 18:20:
Ik zou aan mijn werknemer vragen om hier te beginnen.
2 dagen, dan heb je de eerste calculator binnen..anders moet je een andere werknemer zoeken
http://java.sun.com/docs/.../java/concepts/index.html
Het betreft vooral windows en web gebaseerde applicaties. We doen hier ook wel wat embedded dingen, maar het was niet mijn bedoeling hem daar voor te trainen. Dat kan altijd nog op de langere termijn.ludo schreef op dinsdag 18 december 2007 @ 19:58:
Wat is de achtergrond van de medewerker? mbo/hbo/wo/...? Technisch? En wat zou deze persoon voor iets moeten gaan programmeren? Programma's bakken voor microcontrollers vereist andere kennis dan het ontwikkelen van een webapplicatie...
Als de persoon in kwestie totaal geen ervaring heeft met programmeren dan lijkt een 'echte' cursus/opleiding mij geschikter dan hem een website met een ik-wil-leren-programmeren tutorial voor te schotelen.
Cursussen van de Open Universiteit kunnen een goed begin zijn en zijn ook niet al te prijzig. Maar ook Sun heeft bijvoorbeeld een basiscursus (Java Programming Language, SL-275) waar uitgebreid over de beginselen van object-oriëntatie wordt gesproken.
De persoon in kwestie heeft niet echt een technische studie gedaan. Hij heeft wel veel know how in onze branche en weet wel genoeg van techniek. Alleen er is geen ervaring met programmeren. Hij helpt nu af en toe al met een project, maar door te weinig kennis schiet dat nog niet echt op.
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
De eerste cursus legt bijvoorbeeld uit wat programmeren is en wat er voor nodig is, niet de taal maar de manier waarop, op welke manier gaat iemand programmeren, via de waterval structuur of anders, ook geeft het veel voorbeelden en richt het niet alleen op programmeren voor de PC zelf maar ook voor bijvoorbeeld een koffiezetautomaat, met het volgen van deze cursus krijg je een basiskennis van programmeren (basis = basis), de 2e cursus is databases, nu kan iemand mij vertellen waarvoor die geen database gebruikt? ik gebruik ze namenlijk bij alles wat ik maak (alles.. bijna alles dan). een goeie uitleg van wat databases zijn, hoe ze werken en een kort stukje over MySQL.
Na deze 2 cursussen te hebben gevolgd heb je basis kennis van programmeren in het algemeen, daarna kan je je richten op een specifieke taal om die onder de knie te krijgen, ben je daarmee klaar, dan kun je een klant gaan helpen, begeleiden en een goed programma schrijven op de juiste manier (dat is iets waar ik mij heel erg aan erger de laatste tijd, mensen die wel een taal kennen, maar alleen voor eigen gebruik, zet ze naast een klant/vriend dan komen ze nergens meer uit en zal het uiteindelijk produkt 3x bagger zijn.
Nee stel je voor dat je aandacht zou besteden aan de meest fundamentele dingen van programmeren in het algemeen, en specifiek aan dingen die gerelateerd zijn aan de meest voorkomende bugs (overflows/underflows).MisterBlue schreef op zondag 23 december 2007 @ 18:16:
Lekker laagdrempelig, en je wordt niet afgeleid door details als unsigned int datatypes
Ik ben het er volstrekt mee eens met dat je moet beginnen met een omgeving+tutorial die je door de basics begeleid, maar als je daarna wat basisprogramma's hebt geschreven zal je toch echt wel aan de fundamentals moeten, en dat houdt ook in dat je je zal moeten verdiepen in 'details' als wat signed/unsigned is en wat een int is: anders blijf je een baggerprogrammeur die alleen wat code kan reproduceren die ie ooit uit z'n kop heeft geleerd.
Bullshit. In higher-level talen als ruby en python *bestaat* dat onderscheid gewoon niet. Daar hoef je je niet druk te maken om over/underflows omdat je taal ervoor zorgt dat dat goed gaat. Ja, je moet nog steeds opletten met afronding met floats, maar dat behandelen al die tutorials ook welcurry684 schreef op maandag 24 december 2007 @ 00:11:(...) en dat houdt ook in dat je je zal moeten verdiepen in 'details' als wat signed/unsigned is en wat een int is: anders blijf je een baggerprogrammeur die alleen wat code kan reproduceren die ie ooit uit z'n kop heeft geleerd.

De standaard pythontutorial staat trouwens hier; ook voor python geldt dat het een toegankelijke taal is, maar je wordt qua OOP wel redelijk in het diepe gegooid. Niets mis mee, want wat mij betreft is OOP een stuk fundamenteler dan signed/unsigned ints.
Ja, fundamenteler. Niet dichter bij de uitgevoerde code, maar wel fundamenteler voor gestructureerd programmeren, wat wmb een stuk belangrijker is. Wat trouwens volgens mij ook fundamenteel is, maar wat overal wordt overgeslagen, is wiskundig inzicht... gewoon code rammen is eigenlijk helemaal niet zo praktisch.
en verder: Teach Yourself Programming in Ten Years: met alleen een cursus kom je er niet, je zult zelf er ook mee bezig moeten willen... er zijn veel tweedejaars informaticastudenten hier in Leiden die de basis van het debuggen nog niet eens doorhebben

[ Voor 18% gewijzigd door ValHallASW op 24-12-2007 02:16 ]
Het feit dat een hoge taal bepaalde features niet ondersteunt betekent niet dat je je er niet van bewust hoeft te zijn. Ook in Ruby, Python en PHP loont het om low-level inzicht te hebben in wat de computer feitelijk doet bij welke code, omdat je anders vanzelf belabberde performance en security krijgt.ValHallASW schreef op maandag 24 december 2007 @ 00:37:
[...]
Bullshit. In higher-level talen als ruby en python *bestaat* dat onderscheid gewoon niet.
Dat lijkt mij heel sterk? Ik heb nog nooit een programmeertaal meegemaakt die moeiteloos de limitaties van de onderliggende hardware volledig wist te verbergen. Schrijf jij maar eens een Python of Ruby programma die begint met 1 en vervolgens steeds dat getal met 2 vermenigvuldigt en op het scherm zet.Daar hoef je je niet druk te maken om over/underflows omdat je taal ervoor zorgt dat dat goed gaat.
Dat is relatief. Begrip van wat je computer doet is fundamenteel aan programmeren, begrip van wat OOP inhoudt is fundamenteel aan object-oriented programmeren. Als jij C gaat programmeren hoef je niet veel van OOP te snappen. Als je C++ gaat doen zijn ze allebei belangrijk.Niets mis mee, want wat mij betreft is OOP een stuk fundamenteler dan signed/unsigned ints.
Mag Haskell ook?curry684 schreef op maandag 24 december 2007 @ 02:28:
[...]
Dat lijkt mij heel sterk? Ik heb nog nooit een programmeertaal meegemaakt die moeiteloos de limitaties van de onderliggende hardware volledig wist te verbergen. Schrijf jij maar eens een Python of Ruby programma die begint met 1 en vervolgens steeds dat getal met 2 vermenigvuldigt en op het scherm zet.
1
| main = mapM_ (putStrLn . show) (iterate (*2) 1) |
Late edit, maar ik kwam erachter dat print = putStrLn.show, dus substitutie levert:
1
| main = mapM_ print (iterate (*2) 1) |
[ Voor 12% gewijzigd door RayNbow op 01-01-2008 19:41 ]
Ipsa Scientia Potestas Est
NNID: ShinNoNoir
Verwijderd
Enkele jaren later had ik een concreet doel voor ogen voor de back-end van een website. Als je concreet oplossingen voor problemen nodig hebt zul je merken dat je een programmeertaal veel sneller gaat doorgronden. Op een gegeven moment heb je door waar de grenzen van de taal liggen en heb je nauwkeurig idee van wat er mogelijk zou moeten zijn. Het opzoeken van de oplossing is dan net als het opzoeken van een woord in een woordenboek. Boeken zijn dan niet zozeer een middel om het leerproces te begeleiden, als wel een naslagwerk waarin je snel en doeltreffend die informatie opzoekt die je nodig hebt.
Over een opleiding kan ik niet oordelen omdat ik die mbt programmeren nooit gevolgd heb, maar ik kan me voorstellen dat je op een dergelijke opleiding soortgelijke problemen voor je kiezen krijgt als de problemen die je jezelf voorschotelt bij het ontwikkelen van een project.
Tja als je het niet echt in de praktijk brengt is dat lastig. Net zoals je niet kunt leren fietsen zonder het echt te doen.Verwijderd schreef op maandag 24 december 2007 @ 03:15:
Mijn persoonlijke ervaring is dat van scratch beginnen met programmeren om het programmeren behoorlijk stroef kan gaan. Bij het lezen van een boek blijft het allemaal nogal abstract, zelfs als je voorbeelden in de praktijk gaat uitproberen. Ik heb zelf ooit eens een boek over PHP doorgespit en daar is bar weinig van blijven hangen.
Toch denk ik dat je op een goede opleiding beter leert. De persoon die je les geeft stuurt je dan tenslotte bewust op die problemen af en kan je ook aangeven waarom iets wel en niet een goede oplossing is.Enkele jaren later had ik een concreet doel voor ogen voor de back-end van een website. Als je concreet oplossingen voor problemen nodig hebt zul je merken dat je een programmeertaal veel sneller gaat doorgronden. Op een gegeven moment heb je door waar de grenzen van de taal liggen en heb je nauwkeurig idee van wat er mogelijk zou moeten zijn. Het opzoeken van de oplossing is dan net als het opzoeken van een woord in een woordenboek. Boeken zijn dan niet zozeer een middel om het leerproces te begeleiden, als wel een naslagwerk waarin je snel en doeltreffend die informatie opzoekt die je nodig hebt.
Over een opleiding kan ik niet oordelen omdat ik die mbt programmeren nooit gevolgd heb, maar ik kan me voorstellen dat je op een dergelijke opleiding soortgelijke problemen voor je kiezen krijgt als de problemen die je jezelf voorschotelt bij het ontwikkelen van een project.
Als je zelf een project gaat doen kan het zo zijn dat je in het begin al fouten maakt die je achteraf niet makkelijk meer kan herstellen ( Kan natuurlijk ook gebeuren als je wel een opleiding hebt gedaan ).
Programmeren is nou eenmaal meer als een aantal regels code schrijven. Met een beetje logisch inzicht kan iedereen wel leren om een programma te maken wat iets stoms doet als controleren op een palindroom of de fibonacci reekt uitrekenent.
Tuurlijk kan je het ook allemaal zelf wel leren, maar het heeft nou eenmaal veel tijd nodig.
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
Als je het hebt over het beheersen van een machine is het wellicht belangrijk om te weten wanneer je een signed of een unsigned int gebruikt. Voor het oplossen van een probleem bij een klant probeer ik echter in het probleem domein van de klant te denken en dan hebben we het gewoon over een geheel getal.Nee stel je voor dat je aandacht zou besteden aan de meest fundamentele dingen van programmeren in het algemeen, en specifiek aan dingen die gerelateerd zijn aan de meest voorkomende bugs (overflows/underflows).
De meeste problemen met software liggen toch op dit vlak: het niet begrijpen van de klant en vice versa.
Imho zijn algemene best practices (bijv. single point of definition, information expert, high cohesion/low coupling etc.) erg lastig in een korte tijd uit te leggen wanneer de cursist geen basiskennis heeft van programmeren; het doel van deze best practices ontgaat die persoon dan geheel, simpelweg omdat hij nog niet voldoende overtuigd is dat die dingen uberhaupt een probleem kunnen vormen. Pas als je zelf een programmaatje of 3 in elkaar probeert te kloppen, en je merkt dat alles een grote brij begint te worden zonder dat je een idee hebt waarom dat toch steeds gebeurt, dan begin je open te staan voor dit soort concepten.rwb schreef op woensdag 19 december 2007 @ 09:46:
Het betreft vooral windows en web gebaseerde applicaties. We doen hier ook wel wat embedded dingen, maar het was niet mijn bedoeling hem daar voor te trainen. Dat kan altijd nog op de langere termijn.
De persoon in kwestie heeft niet echt een technische studie gedaan. Hij heeft wel veel know how in onze branche en weet wel genoeg van techniek. Alleen er is geen ervaring met programmeren. Hij helpt nu af en toe al met een project, maar door te weinig kennis schiet dat nog niet echt op.
En ja, bij commerciele trainingsinstituten krijg je veelal een hoop informatie in een korte tijd naar binnen geschoven. Dat wil niet zeggen dat je er "dus" niets aan hebt, maar het is vaak wel zaak om ervoor te zorgen dat die persoon in ieder geval redelijke voorkennis heeft om uberhaupt zo'n cursus uit te zitten (liefst iets meer, omdat je de stof dan beter in context kunt plaatsen), en dat diegene daarna ook de tijd heeft om het geleerde meteen uit te proberen.
Stel dat je diegene een cursus als Introduction to C# .NET Programming zou gaan laten volgen. In zo'n geval zou je'm bijvoorbeeld eerst een paar dagen kunnen laten vlooien met C# en een boek, zodat hetgene wat in zo'n cursus uitgelegd wordt in ieder geval al enige context heeft. Tijdens zo'n cursus worden dan de C# taalelementen en de globale principes achter OO programmeren (in dit geval in C#) uitgelegd, en welke faciliteiten .NET je hiervoor biedt.
Het lijkt me dat als diegene dit soort materiaal een beetje onder de knie krijgt, dat je dan pas hoeft te denken aan cursussen die iets met design patterns en best practices van doen hebben.
Overigens bieden de meeste trainingsinstituten ook vaak een mogelijkheid om een orienterend gesprek aan te vragen waarbij ze polsen welke kennis al aanwezig is en wat een geschikte cursus zou zijn om die persoon ook echt wat bruikbaars bij te leren. 't Zal vast niet gratis zijn (nooit gedaan), maar je mag ervan uitgaan dat die mensen wel weten waar ze 't over hebben. 't Zal in ieder geval goedkoper zijn dan iemand op cursus te sturen waarvan ze alles al weten of waar ze niets mee kunnen.
Eerlijk is eerlijk, voor mij is dat lastig te bepalen vanachter een schermpje; ik bedoel, ik heb redelijk wat technische cursussen gevolgd , maar ik ben ook maar gewoon een programmeur, en geen HBO docent.
[ Voor 4% gewijzigd door MrBucket op 29-12-2007 01:27 ]
Zo moeilijk is dat niet hoorcurry684 schreef op maandag 24 december 2007 @ 02:28:
Dat lijkt mij heel sterk? Ik heb nog nooit een programmeertaal meegemaakt die moeiteloos de limitaties van de onderliggende hardware volledig wist te verbergen. Schrijf jij maar eens een Python of Ruby programma die begint met 1 en vervolgens steeds dat getal met 2 vermenigvuldigt en op het scherm zet.
Hier een stukje code
1
2
3
4
| def doubler(i=1): while True: i *= 2 yield i |
Je kunt het met zoiets aanroepen (let wel, deze gaat eeuwig door)
1
2
| for i in doubler(): print i |
[ Voor 9% gewijzigd door Wolfboy op 02-01-2008 18:11 ]
Python zorgt ervoor dat een overflow netjes wordt afgehandeld. Als je een int vermenigvuldigt met een int, dan retourneert dat normaal gesproken een int tenzij het niet in een int past. Bij een overflow krijg je een waarde van het type long:Pulsher schreef op woensdag 02 januari 2008 @ 19:24:
Hij bedoelt dat je dan een overflow krijgt.
>>> import sys >>> sys.maxint 2147483647 >>> type(sys.maxint) <type 'int'> >>> type(sys.maxint*2) <type 'long'>
Dus in de taal Python draait het programma van Wolfboy oneindig lang door.**
** Mits er oneindig veel geheugen in het systeem zit. Zou je echter een theoretische Turing Machine bouwen die Python code kon uitvoeren en je zou het Wolfboy's programma voeren, dan zou het ding oneindig lang draaien.
Ipsa Scientia Potestas Est
NNID: ShinNoNoir
Zoals RayNbow al zegt is de enige error die je kan krijgen een out of memory exceptionPulsher schreef op woensdag 02 januari 2008 @ 19:24:
Hij bedoelt dat je dan een overflow krijgt.
Python heeft geen limieten kwa grootte van getallen, als je aan de max van een int komt zet hij het automatisch om naar long waarmee je geen limiet meer hebt.
Als je dan ook nog eens de boeken van KNUT en Dykstra leest kom je al een heel eind. Al moet je de twee boeken niet mee beginnen.
Ik zou zekers niet met VB of java of zo beginnen.
Dat jij het geleerd hebt in een andere taal is natuurlijk geen teken dat Java of .NET niet geschikt zouden zijn om mee te beginnen. Daar deze talen ook allebei strong typed en Object Oriented zijn.boner schreef op donderdag 03 januari 2008 @ 07:52:
Ik zou zekers niet met VB of java of zo beginnen.
Verder vind ik dit advies ook vrij raar omdat tegenwoordig op zo ongeveer iedere HBO en Uni waarbij programmeren geleerd wordt, wordt gestart met Java.
Maarja, een stukje syntax leren en leren programmeren is een mega groot verschil.
Ik zou eerder voor een wat hoger niveau gaan om te beginnen met programmeren, er is niets frustrerender dan uren/dagen bezig zijn en geen echte vooruitgang te merken. Als je eerst met Java begint (wat relatief eenvoudig te schrijven is) dan kan je daarna eenvoudig de overstap naar C maken om zo ook op lager niveau wat te kunnen doen. Maar dan weet je al wel wat een goede structuur is.boner schreef op donderdag 03 januari 2008 @ 07:52:
Ik zou zekers niet met VB of java of zo beginnen.
Pascal is dan ook ontworpen als leertaal voor gestructureerd programmeren en is daarin heel succesvol geweest. Meestal leerde je in het eerste jaar pascal en in de latere jaren C.boner schreef op donderdag 03 januari 2008 @ 07:52:
ik zelf heb op de HTS leren progammeren in Pascal. Klinkt zwaar ouderwets, maar geeft een prima fundament. Vooral het feit dat pascal een strong typed language is, geeft een basis waar je later veel aan zult hebben.
Helaas is er voor het leren van OO programmeren, geen specifieke taal ontworpen en valt men terug op java.
Ik dacht jaren lang OO te programmeren in java, maar wat ik deed was eerder het goed opdelen van code in verantwoordelijkheden. Pas toen ik met smalltalk aan de slag ging kreeg ik het goed door.
ik kende nisk van VB/VBA etc; toen kwam ik op een stageplek met diverse vragen waarvoor beide soms nodig waren, en dan is het een kwestie van veel lezen en proberen.
Tuurlijk knipt en plakt iedereen wel eens wat code, maar die code dan weer modificeren en onderhouden is de truuk.
Een paar goede boeken (vb6 in 24h etc) hielpen ook enorm.
Voor je het weet maak je kleine zelfstandige programmatjes.
Bovenstaand verhaal gaat ook op voor PHP, daar ben ik tegenwoordig nog wat mee bezig @ work.
Let wel dat VB een dode taal aan het wordne is, als ik nu moest kiezen zou ik voor Vb.Net gaan.
[ Voor 4% gewijzigd door LiquidSmoke op 04-01-2008 10:13 ]
Leuke feature, maar een beetje programmeur mag zich wel in meer dan 1 taal kunnen redden, als je waarden gaat opslaan/communiceren loop je alsnog tegen problemen aan, inzicht in datatypes en datastructuren is en blijft vereist voor performance/security/software design redenen, enzovoorts enzovoorts.RayNbow schreef op woensdag 02 januari 2008 @ 21:23:
Dus in de taal Python draait het programma van Wolfboy oneindig lang door.
Ik zeg niet dat hogere talen waarin je 'minder vaak' (ja, voorlopig imo nog niet 'nooit') aan de machine hoeft te denken niet nuttig kunnen zijn. Maar kennis van standaard datatypes is altijd nuttig. En als het je een noemenswaardige tijd kost om bijvoorbeeld het begrip signed/unsigned tot je te nemen kan je maar beter meteen stoppen met programmeren.
Te aardig verwoord. VB6 IS dood. Als je VB.Net kan, kan je ook, wellicht met een klein beetje opzoekwerk, iets in een bestaand VB6 project aanpassen/fixen. Als je nu nog voor VB6 kiest voor een nieuw project mag je wel een hele goede reden hebben.LiquidSmoke schreef op vrijdag 04 januari 2008 @ 10:13:
Let wel dat VB een dode taal aan het wordne is
[ Voor 18% gewijzigd door Voutloos op 04-01-2008 10:44 ]
{signature}
Ik weet niet waarom je mijn post eruit pikt, maar goed...
Ik beweer nergens dat een programmeur slechts 1 taal hoeft te kennen. Ik ben het wel eens met het feit dat het goed is voor iemands ontwikkeling om meerdere programmeerparadigma's te kennen.Leuke feature, maar een beetje programmeur mag zich wel in meer dan 1 taal kunnen redden,
Over de feature, het is niet zo maar "leuk", maar de long datatype in Python is er voor een bepaalde reden. Python's doel is niet om low-level system software te schrijven, maar om scripts en user applicaties te schrijven, waarbij low-level details zoals de woordgrootte van de onderliggende machine niet belangrijk zijn.
Inzicht in datastructuren is ook belangrijk en het weten welke datatypen er al in een bepaalde taal zitten en hoe deze zich gedragen is ook belangrijk, anders begrijp je de betekenis van een programma niet.als je waarden gaat opslaan/communiceren loop je alsnog tegen problemen aan, inzicht in datatypes en datastructuren is en blijft vereist voor performance/security/software design redenen, enzovoorts enzovoorts.
Echter, dit betekent niet dat je per se de onderliggende hardware moet kennen.
Maar wat versta je onder standaard datatypes? Datatypes zijn afhankelijk van de taal waarin je programmeert.Ik zeg niet dat hogere talen waarin je 'minder vaak' (ja, voorlopig imo nog niet 'nooit') aan de machine hoeft te denken niet nuttig kunnen zijn. Maar kennis van standaard datatypes is altijd nuttig.
Het begrip signed/unsigned is ook geen moeilijk begrip, maar het is niet een detail dat in een programmeertaal hoeft worden opgenomen. Waarom moet een taal het onderscheid kennen tussen een datatype dat alleen positieve getallen kan beslaan en een type dat zowel positieve als negative getallen kan bevatten?En als het je een noemenswaardige tijd kost om bijvoorbeeld het begrip signed/unsigned tot je te nemen kan je maar beter meteen stoppen met programmeren.
Als je low-level software schrijft in een low-level taal en waarbij het gebruikte geheugen en het benodigde aantal cycles van belang is, dan heeft 't nut om het onderscheid te maken.
Echter, wat als ik in een high-level taal schrijf, wat heb ik aan het verschil tussen signed en unsigned? Misschien zeg je dan dat het handig is zodat je alleen bepaalde waardes kunt toestaan, zoals in het onderstaande, simpele voorbeeld:
1
2
3
| unsigned int abs(signed int value) { /* computation here */ } |
Maar nu we in de context van een high-level taal zitten, waarom wil je alleen signed/unsigned in je taal opnemen? Als we toch high-level zitten, kunnen we gaan spreken over domeinen. Een high-level taal zou dan veel meer hebben aan iets als het volgende:
1
2
3
| function f (x : int[10,..>) : int[0,10] { // computation here } |
Om nu terug te keren naar het onderwerp van de draad: leren programmeren is eigenlijk niets anders dan het leren van een bepaald model van rekenen. De talen als C/Java/etc. hebben een sequentieel, imperatief rekenmodel. In zo'n model worden zogenaamde statements achtereenvolgens uitgevoerd en na elk statement kan de toestand van de wereld zijn veranderd (het tijdaspect in dit model is belangrijk, zie ook bijv. deze lecture).
Naast talen met dit model bestaan er ook functionele en logische talen, waar in de functionele taal expressies worden gereduceerd door het invullen van de actuele parameters in de body van de functie en waar in de logische taal geprobeerd wordt om clauses waar te maken.
Een programmeur hoeft dus niet de details van de hardware waar hij op werkt te kennen om te kunnen programmeren. Veel high-level programma's kunnen alsnog met pen en papier geschreven en worden uitgevoerd, zonder dat het op een echte machine wordt uitgevoerd. Een programma is niets anders dan een berekening die de invoer afbeeldt op een uitvoer.
Dit gezegd hebbende, het is natuurlijk niet zinloos als programmeur om je kennis te verbreden en je te verdiepen in computerarchitecturen. Het is natuurlijk bijv. wel handig om te weten wat een stack is om meer te begrijpen wat een 'out of stack' fout nu precies inhoudt.
Ipsa Scientia Potestas Est
NNID: ShinNoNoir

Ik doe bij deze wel meteen een poging om de discussie weer bij het onderwerp te brengen.
Mijn zus heeft een vrij brede administratieve werkervaring, vooral met de MS Office suite. Ze heeft voor een bedrijf een Access applicatie gebouwd, vooralsnog zonder uitgebreide scripting, gewoonweg een datamodel ontworpen, tabellen en koppelingen aangelegd, procedures en mogelijkheden uitgelegd en daarmee bij haar klant de organisatie naar tevredenheid op de rit gezet.
Dat werk was deels nieuw voor haar, maar ze vond het leuk om te doen, en wil meer gaan doen op dit gebied. Ze heeft tijd en geld gereserveerd voor een bijscholing die haar meer achtergrondkennis biedt om kleinschalige oplossingen te bouwen (database ontwerp & scripting) voor het MKB.
Ik heb haar geadviseerd om te beginnen met twee cursussen:
- Beginselen van programmeren (basisbegrippen, werken met procedurele en object-georiënteerde structuren enzovoort, niet te hoogdravend en niet al teveel toegespitst op een taal).
- Praktische toepassing (Access met VBA).
Het eerste punt vond ik belangrijk omdat ik denk dat ze beter een open benadering kan houden t.a.v. de mogelijkheden die ze in haar werk tegenkomt, als het bv. voor een project beter is dat er een SQL back end, of een web based oplossing, een Servoy front end of whatever wordt gebruikt, dan moet ze ook daarmee overweg kunnen, of in ieder geval genoeg structuur erin terug kunnen herkennen om doeltreffend te kunnen samenwerken met specialisten op dat gebied. Bovendien zie ik haar nog wel eens switchen naar een andere taal, hetzij binnen .NET, of om een custom oplossing tegen een open source project als SQL-Ledger aan te plakken, of om haar scripting te porten naar een concurrerend Office pakket. Voor dat soort dingen is het prettig als je naast VB ook wat Javascript gezien hebt, wat kennis hebt van objectgericht werken, door die bagage herken je het nodige terug in PHP, ASP, Perl, Python of whatever.
Als iemand, in aanvulling op de eerder aangehaalde tips, ervaringen weet te melden met zo'n entry-level cursus, een link heeft naar een onafhankelijke overzichts-website, of boeken wil aanraden, zou ik het fijn vinden als je het hier vermeldt*
* Conform modbreak aan 't begin:
RobIII schreef op dinsdag 18 december 2007 @ 10:35:
Dit is géén opsomtopic. Als je een instituut/boek/cursus noemt, onderbouw dan ook waarom. [..]
Vaak zie je dat dit wordt gecombineerd met Small Business Server vanwege Exchange <--> outlook en de intregratie met de rest van de office lijn (sharepoint).
Voor veel bedrijven is het gebruik van webservers vaak net een stapje te ver en hebben vaak erg snel het idee elke keer bij jouw terug te moeten komen als er problemen zijn. Veel mensen zijn wel vetrouwd met Office en voelen zich daar pretigger bij.
Bij bedrijven groter dan 50 werknemers wordt het een ander verhaal, maar die zullen vaak juist in zee gaan met een Microsoft Partner.
Dus om te beginnen zou ik aanraden eerst de focus op Office en Sharepoint te houden en pas later in het 'diepe' programmeer werk te storten.
If it isn't broken, fix it until it is..
Dan kan je veel beter je geld uitgeven/besparen aan een goed boek, een "oefenproject" en dan gaan! Voor de coaching misschien een ervaren collega of iemand uit de omgeving strikken. Er zijn echter op het web ook prima studiemogelijkheden vaak gratis. Ik ken iig 2 goede:
De cattledrive op www.javaranch.com en deze op gebied van web2.0/ajax: http://www.javapassion.co...Basics__Development_Tools
En van w3schools is een hoop te halen etc. etc.
When some people work at a place for ten years they get ten years of experience, other people work at a place for ten years and get one year of experience ten times.
[ Voor 115% gewijzigd door ? ? op 25-01-2013 09:52 ]
Precies, met een basis ding als een array, en de bijbehorende structuren om met de elementen in die array wat uit te vreten, leer je wel met een object model omgaan en methoden toepassen. Dat zoiets in OOP terugkomt zie je later wel.era.zer schreef op vrijdag 07 maart 2008 @ 17:15:
Gewoon een cursus geven voor echte beginners waar de nadruk absoluut niet ligt op OO-zaken, maar op de basis: een array enzEn weten dat het jaren gaat duren vooraleer hij iets deftig zal programmeren.
BTW: heb zelf geen IT opleiding, ben autodidact

Combinatie van gerichte coaching en veel aanvullende zelfstudie is inderdaad wel effectief denk ik. Mijn zus heeft echter wel een bedrag voor cursussen gekregen als 'afscheidscadeautje' van haar laatste dienstbetrekking en wil dat uiteraard zo effectief mogelijk besteden.jAnO! schreef op vrijdag 07 maart 2008 @ 16:43:
In mijn ervaring zijn cursussen bij Twice of Vijfhart en dat soort toko's eigenlijk weggegooid geld. Komt erop neer dat je 5 dagen 250,- per dag betaald voor een kroketje bij de lunch, een uitgeprint boek en een docent die de cursus zelf ook een keer gedaan heeft en met een beetje geluk wat extra opdrachten die niet in het boek staan.
Dan kan je veel beter je geld uitgeven/besparen aan een goed boek, een "oefenproject" en dan gaan! Voor de coaching misschien een ervaren collega of iemand uit de omgeving strikken. Er zijn echter op het web ook prima studiemogelijkheden vaak gratis...
De Office pakketten bieden inderdaad een prettige onafhankelijke positie voor de klant, als de datakoppelingen maar goed gelegd zijn dan werkt het wel, specifieke overzichten maken en gegevens exporteren kunnen de meeste klanten zelf.Niemand_Anders schreef op vrijdag 07 maart 2008 @ 16:37:
Voor veel bedrijven is het gebruik van webservers vaak net een stapje te ver en hebben vaak erg snel het idee elke keer bij jouw terug te moeten komen als er problemen zijn. Veel mensen zijn wel vetrouwd met Office en voelen zich daar pretigger bij.
Maar mijn zus werkt wel met web based Exact bijvoorbeeld, en ik heb nog een order lopen met SQL Ledger, en ik kan me voorstellen dat zij ook daarmee te maken krijgt, of bijvoorbeeld een koppeling met een webshop moet kunnen leveren (oscommerce of zo). Beetje algemene kennis leek me daarom wel prettig. In praktische zin kan ze zelf nog rustig even binnen het Visual Basic wereldje blijven steken, maar als een cursus daarvoor alleen maar Access, Word en Excel als omgeving gebruikt, dan lijkt het mij wat beperkt.
Die kende ik vanuit mijn wereldje (Linux, MacOSX) bijvoorbeeld amper, terwijl het zo te zien een handig platformpje kan zijn voor een indirecte datakoppeling naar een CMS website. Uit dit soort mogelijkheden de best toepasbare kunnen vinden zal een belangrijk deel van mijn zus haar werk worden, dus vandaar dat een wat bredere inzichtelijke aanvulling wel gewenst is denk ik.[..] Sharepoint [..]
Verwijderd
Geen ervaring met Twice of Vijfhart, maar erg goede ervaringen met U2U! Docenten die weten waar ze 't over hebben, en meer, cursusopbouw waar goed over is nagedacht en die goed is uitgewerkt, en goed en duidelijk cursusmateriaal.jAnO! schreef op vrijdag 07 maart 2008 @ 16:43:
In mijn ervaring zijn cursussen bij Twice of Vijfhart en dat soort toko's eigenlijk weggegooid geld. Komt erop neer dat je 5 dagen 250,- per dag betaald voor een kroketje bij de lunch, een uitgeprint boek en een docent die de cursus zelf ook een keer gedaan heeft en met een beetje geluk wat extra opdrachten die niet in het boek staan.
Wel een paar nadeeltjes...
- Ze zitten in Brussel, niet handig als je iets in de buurt van bv. Assen of Alkmaar zoekt
- Microsoft technologie only, met de nadruk op .NET
- Geen nadeel voor mij, maar ze doen niet of nauwelijks aan beginnerscursussen
M'och, .NET is op zich best een geschikte omgeving om snel te kunnen leren heb ik 't idee, maar zelf werk ik er niet mee dus ik kan er niet alles over zeggen. Hoe zit dat trouwens als je eigenlijk eerst wil focussen op VBA voor Access? De code opbouw onder VB.NET en VBA is niet helemaal uitwisselbaar, zie ik op deze pagina. Maar voor 'best practices' is het wel goed om kennis te nemen van VB.NET, ik zie dat je de object hiërarchie in VB.NET strikter moet aangeven. De Visual Basic 2008 Express Edition die je gratis kunt downloaden, biedt dat genoeg voor de voorbereiding en ondersteuning van de cursussen?Verwijderd schreef op vrijdag 07 maart 2008 @ 20:13:
- Microsoft technologie only, met de nadruk op .NET
En wat is daar zozeer een nadeel van?Verwijderd schreef op vrijdag 07 maart 2008 @ 20:13:
[...]
Wel een paar nadeeltjes...
- Microsoft technologie only, met de nadruk op .NET
Omdat je daarmee wordt binnengezogen in het domein van decurry684 schreef op zaterdag 08 maart 2008 @ 15:07:
[Microsoft technologie only, met de nadruk op .Net]
En wat is daar zozeer een nadeel van?
Ehrm... kuch... ik bedoel...
Waarom zou je (zonder verdere context) je een proprietary technologie eigen maken als er open (standaarden/source) alternatieven beschikbaar zijn?
[ Voor 27% gewijzigd door Herko_ter_Horst op 08-03-2008 18:49 ]
"Any sufficiently advanced technology is indistinguishable from magic."
Mmm... is het niet redelijk inwisselbaar, je kunt toch na even aan .NET gesnuffeld te hebben toch ook wel verder in mono, Xcode, of in whatever welke scripting API waarmee je aan de slag wilt gaan?Herko_ter_Horst schreef op zaterdag 08 maart 2008 @ 18:47:
Waarom zou je (zonder verdere context) je een proprietary technologie eigen maken als er open (standaarden/source) alternatieven beschikbaar zijn?
Het zou natuurlijk wel een blamage zijn voor een opleidingsinstituut als ze gaan lopen verkondigen dat de wereld ophoudt buiten .NET, want dan krijg je weer een generatie ontwikkelaars die zo'n tunnelvisionair inzicht hebben dat ze met alles wat 'anders' is niet kunnen werken. Maar ik neem aan dat een beetje serieuze trainer die het IT-nieuws zo nu en dan bijhoudt wel op de hoogte is van open standaarden en cross-platform ontwikkeling.
Namens m'n zus bedankt voor de tipCrayne schreef op dinsdag 18 december 2007 @ 12:40:
Op Studentensupport.nl kan je het boek "Inleiding in Programmeren" downloaden in PDF formaat. Dat lijkt me een goede opstap tot wat je collega wil. Daarna kan hij zich gaan toespitsen op specifieke technologieën en de (betaalde) cursussen die daar bijhoren.
Verwijderd
Herko_ter_Horst schreef op zaterdag 08 maart 2008 @ 18:47:
[...]
Waarom zou je (zonder verdere context) je een proprietary technologie eigen maken als er open (standaarden/source) alternatieven beschikbaar zijn?

.NET is van MS, ja, en dus is het per definitie slecht

Terwijl je er net zo goed kunt in leren programmeren als in Java. Leren programmeren heeft helemaal niets te maken met het leren van een bepaalde taal / framework / api / whatever.
Alleen is het beter om, bij het leren programmeren, de beschikking te hebben over een hulpmiddeltje: een programmeertaal. En of dat nu Pascal, Java, C# is, dat maakt niet uit. Het zijn de principes die van belang zijn.
C# is trouwens gestandardiseerd bij ECMA
https://fgheysels.github.io/
Jouw argumentatie versterkt m.i. mijn punt alleen maar: omdat de taal een hulpmiddeltje is bij het leren programmeren kun je net zo goed beter een open, multi-platform taal kiezen om mee te beginnen.
"Any sufficiently advanced technology is indistinguishable from magic."
Als je het er dan toch mee eens bent, dat de taal slechts een hulpmiddel is, waarom doet het er dan toe of je een open source - multiplatform taal kiest, of niet ? (C# is trouwens ook multi-platform
Wat is het verschil ? Of je nu bepaalde principes leert in taal X of Y, dat doet er toch niet toe ?
https://fgheysels.github.io/
Dat verschil is er niet. Het is alleen de vraag met hoeveel complexiteit je een beginner wilt opzadelen. Een IDE als VS.Net of Eclipse is voor iemand die net begint met programmeren waarschijnlijk heel intimiderend omdat er zo ontzettend veel mogelijkheden worden gepresenteerd.whoami schreef op zondag 09 maart 2008 @ 19:33:
Wat is het verschil ? Of je nu bepaalde principes leert in taal X of Y, dat doet er toch niet toe ?
Als het je echt puur om het programmeren gaat is een zo kaal mogelijke omgeving waarschijnlijk het beste, en dan is een andere omgeving dan .Net wellicht iets in het voordeel omdat deze wat meer command line georiënteerd zijn (brede generalisatie). Een kale omgeving leidt minder af omdat er gewoon minder mogelijkheden gepresenteerd worden, en het legt de focus ook puur op het schrijven van code. Dat een gevorderde programmeur stapels hulpmiddelen gebruikt om zijn/haar werk sneller/beter/leuker te doen is in die fase van het leren nog niet zo relevant.
Voor een echte beginner kan het heel leerzaam zijn om een paar keer handmatig de hele cyclus te doorlopen van schrijven, compileren (evt linken) en uitvoeren. Dat leert iemand meteen wat voor acties een IDE allemaal uitvoert als je op Build klikt.
Op Java fora kom je veel vragen tegen van allerlei studenten die bezig zijn met een semester Java en het valt me op hoeveel GUI gerelateerde vragen daar altijd bij zitten. Dat is typisch het soort cursus dat je zou moeten mijden als beginner omdat je dan vaak meer bezig bent met het uitzoeken van hoe je een EventListener aan een button hangt dan met het leren beheersen van een taal met de achterliggende principes.
With the light in our eyes, it's hard to see.
Ik zou aanraden om een applicatie te maken die objecten gebruikt die in het echt ook objecten zijn. Zoals dobbelstenen, kaarten etc. Je kunt dan iets als Yahtzee of Patience maken. Als beginner is het makkelijker als je een koppeling met echte objecten kunt maken.UlyssesNL schreef op dinsdag 18 maart 2008 @ 13:39:
Ik heb dit topic even doorgelezen en heb al veel info opgenomen maar toch heb ik nog een aantal vraagjes. Ik wil dus ook leren programmeren. Vroeger hadden wij een commodore 64 en ik heb vele uurtjes daarachter gezeten om zelf programmtjes in basic te schrijven. Tevens heb ik op school basis kennis PASCAL gehad (de eindopdracht was een programmatje schrijven die aan de hand van ingevoerde waardes een afstand berekende dus dat was niet zo bijzonder). Nu wil ik graag python of java leren alleen het probleem is ik heb geen idee waar te beginnen. Volgens mij kan ik beter niet direct proberen iets geavanceerd te schrijven. Dus mijn vraag is wat voor soort applicatie zou ik mee kunnen starten om met OO te beginnen. Mocht er een cursus aan te pas komen wil mijn baas dat vast wel betalen maar het is nu nog meer voor mijn eigen hobby.
"The test of a work of art is, in the end, our affection for it, not our ability to explain why it is good." - Stanley Kubrick | Trakt
Dank je ik kan inderdaad wel een soort Yahtzee applicatie proberen te maken.Chester schreef op dinsdag 18 maart 2008 @ 13:44:
[...]
Ik zou aanraden om een applicatie te maken die objecten gebruikt die in het echt ook objecten zijn. Zoals dobbelstenen, kaarten etc. Je kunt dan iets als Yahtzee of Patience maken. Als beginner is het makkelijker als je een koppeling met echte objecten kunt maken.
Ik zal mij er vanavond eens even in verdiepen.
De voordelen zijn dus dat je alles op je eigen tempo aanleert, dat je toch een permanente, volwaardige ondersteuning krijgt van mensen die opgeleid zijn om zaken aan te brengen bij anderen en als ik me niet vergis krijg je op het einde van de rit zelfs nog een diploma.
Het zou me verbasen moest dit concept nog niet in Nederland bestaan.
[ Voor 5% gewijzigd door Big Womly op 18-03-2008 13:58 ]
When you talk to God it's called prayer, but when God talks to you it's called schizophrenia
Dit bestaat zeker weten wel.mbsaerens schreef op dinsdag 18 maart 2008 @ 13:58:
Op Karel De Grote Hogeschool in Antwerpen (België) hebben ze een e-learning lokaal. Het princiepe is als volgt: Je schrijft je in als student op de school, je volgt geen lessen, maar je probeert op eigen houtje jezelf alles aan te leren. Kom je op een punt dat je het niet meer snapt of dat je vast zit, kan je ten alle tijde hulp vragen aan de docenten van die school.
De voordelen zijn dus dat je alles op je eigen tempo aanleert, dat je toch een permanente, volwaardige ondersteuning krijgt van mensen die opgeleid zijn om zaken aan te brengen bij anderen en als ik me niet vergis krijg je op het einde van de rit zelfs nog een diploma.
Het zou me verbasen moest dit concept nog niet in Nederland bestaan.
Volgens mij heeft de LOI ook de optie tot zelfstudie maar toch contact met leraren.
"Any sufficiently advanced technology is indistinguishable from magic."
Ik denk dat je het beste even naar de boekhandel kunt rennen en daar eenboek van de plank trekken met een titel als Java in 24 uur of Java for dummies. Dergelijke boeken behandelen naast OO vaak ook best practices, data access en andere zaken. Zeker voor populaire talen zoals Java, C#, PHP, Python en ruby zijn zoveel artikelen en tutorials online te vinden dat je eigenlijk altijd wel verder komt.UlyssesNL schreef op dinsdag 18 maart 2008 @ 13:39:
Ik heb dit topic even doorgelezen en heb al veel info opgenomen maar toch heb ik nog een aantal vraagjes. Ik wil dus ook leren programmeren. Vroeger hadden wij een commodore 64 en ik heb vele uurtjes daarachter gezeten om zelf programmtjes in basic te schrijven. Tevens heb ik op school basis kennis PASCAL gehad (de eindopdracht was een programmatje schrijven die aan de hand van ingevoerde waardes een afstand berekende dus dat was niet zo bijzonder). Nu wil ik graag python of java leren alleen het probleem is ik heb geen idee waar te beginnen. Volgens mij kan ik beter niet direct proberen iets geavanceerd te schrijven. Dus mijn vraag is wat voor soort applicatie zou ik mee kunnen starten om met OO te beginnen. Mocht er een cursus aan te pas komen wil mijn baas dat vast wel betalen maar het is nu nog meer voor mijn eigen hobby.
En mocht je daarna nog steeds met vragen of problemen zitten, dan kun je altijd nog hier een berichtje plaatsen.
If it isn't broken, fix it until it is..
Ik heb plannen met een vriend om ,zodra ik fatsoenlijk kan programmeren, een game te ontwikkelen.
Ik moest meteen denken aan Java, het lijkt mij makkelijker te leren en later ook makkelijker om over te stappen naar andere talen die ik wil kennen: C#, C++, Objective-C.
Ik heb al wat ervaring met PHP.
Zou iemand mij kunnen vertellen met welke ik het best kan beginnen om binnenkort een game te ontwikkelen? Dus deze talen wil ik zeker leren kennen: Java, C++, C#, Objective-C.
Het lijkt me logisch om nu te kiezen tussen Java en C++.
Sorry hoor, maar 'teach yourself x in 24 hours' boeken zijn behoorlijk waardeloos. Je zal hooguit een paar noties meekrijgen.Niemand_Anders schreef op dinsdag 18 maart 2008 @ 14:28:
[...]
Ik denk dat je het beste even naar de boekhandel kunt rennen en daar eenboek van de plank trekken met een titel als Java in 24 uur of Java for dummies. Dergelijke boeken behandelen naast OO vaak ook best practices, data access en andere zaken. Zeker voor populaire talen zoals Java, C#, PHP, Python en ruby zijn zoveel artikelen en tutorials online te vinden dat je eigenlijk altijd wel verder komt.
En mocht je daarna nog steeds met vragen of problemen zitten, dan kun je altijd nog hier een berichtje plaatsen.
In dit geval ga ik mee met dit artikel.
(Is blijkbaar offline, dus via google cache.
Ik denk dat het het beste is dat je eerst leert programmeren (ongeacht de taal; maar dus principes aanleert, datastructuren, methodieken, bepaalde manieren van denken, ... en dit allemaal toepast mbhv eender welke moderne programmeertaal.Zou iemand mij kunnen vertellen met welke ik het best kan beginnen om binnenkort een game te ontwikkelen? Dus deze talen wil ik zeker leren kennen: Java, C++, C#, Objective-C.
Na een paar jaar zou ik dan eens kijken hoe je die kennis kan toepassen om een game te maken (en daarbij niet uit het oog verliezen dat een game maken wel meer kennis & skills vereist dan enkel programmeer-kennis / kunde).
[ Voor 23% gewijzigd door whoami op 18-03-2008 15:49 ]
https://fgheysels.github.io/
Verwijderd
C++ zou ik af laten vallen. Kost enorm veel tijd om iets voor elkaar te krijgen en vaak kan Java en C# het tegenwoordig nog beter en sneller.
Als je eenmaal wat verder bent is het goed om eens wat C++ te doen en eens wat met een functionele taal voor je begripvorming en volledigheid, maar om te beginnen, Java of C#. En niet teveel laten genereren.
Keuze tussen Java en C# moet je een beetje op gevoel maken. Het één is niet beter dan het ander, maar ik denk wel dat de één zich beter thuis voelt bij een Microsoft-aanpak en de ander meer bij the Java-way
[ Voor 15% gewijzigd door Verwijderd op 18-03-2008 20:37 ]
Ook die boeken hebben hun nut wel, maar niet als primaire leerbron. Imho zijn die boeken meer voor mensen die al programmeerervaring hebben en er een extra syntax bij willen leren. Let wel dat ik met opzet syntax zeg in plaats van programmeertaal, een volledige taal leren zal niet lukken met zo'n boek.whoami schreef op dinsdag 18 maart 2008 @ 15:47:
[...]
Sorry hoor, maar 'teach yourself x in 24 hours' boeken zijn behoorlijk waardeloos. Je zal hooguit een paar noties meekrijgen.
In dit geval ga ik mee met dit artikel.
(Is blijkbaar offline, dus via google cache.
Ik ben het verder overigens volledig met je eens
Waarschijnlijk zou ik op dit moment adviseren om te beginnen met een dynamische taal zoals Ruby of Python aangezien het je wel de structuren en ideeen achter programmeren kunnen aanleren maar het vereist nog niet direct dermate veel kennis dat het frustrerend word om ook maar iets werkend te krijgen. Als dat soort talen eenmaal goed lukken kan je eens iets als Java en daarna C proberen.
*cough*Verwijderd schreef op dinsdag 18 maart 2008 @ 20:35:
Je moet sowieso leren in een programmeertaal waar je ontzettend veel inform
C++ zou ik af laten vallen. Kost enorm veel tijd om iets voor elkaar te krijgen en vaak kan Java en C# het tegenwoordig nog beter en sneller.
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.
Verwijderd
gebasseerd op een artikel waarvan ik geen zin heb om het nog terug te zoeken met dat Java 3D best efficiënt is en vaak minder bugs bevat dan wanneer je hetzelfde niveau probeert te bereiken met C++.
Verder is het natuurlijk verschillend en kies je voor verschillende situaties verschillende talen, maar het is wel zo dat waar je 5 jaar geleden nog voor C++ zou kiezen je vandaag de dag in sommige gevallen beter voor Java kunt kiezen.
De JVM die er tussen zit is met de laatste versie praktisch verwaarloosbaar qua performance. Bugs zijn nooit verwaarloosbaar.
Ja C++ is veel over te vinden, maar voor Java en C# geldt dat ook.
[ Voor 14% gewijzigd door Verwijderd op 19-03-2008 18:32 ]