Nederlands (NL-nl)English (United Kingdom)
Verslag Coding Dojo
Gepubliceerd door freek   

Dit verslag is geschreven door Mark Giesen. Bedankt Mark!

Woensdag 6 januari kwamen 19 Martial Coding Artists samen in de Dojo van Marktplaats in Amsterdam. Een perfect bereikbare locatie, tenminste als het niet net was gaan sneeuwen. De volgende dag bleek uit mails en krant dat precies de tijd die wij bij Marktplaats doorbrachten mensen gewoonweg vast stonden op o.a. de A10, rondom ons heen. Wij merkten net wat extra drukte en waarschuwingen bij aankomst, maar nadat wij eenmaal uitgevochten en geborreld waren, waren de wegen ook weer redelijk begaanbaar en had dus alleen de rest van de wereld daar last van gehad.

Eigenlijk kwamen we natuurlijk voor de pizza's en cola en daar was in ruime mate in voorzien van vegetarisch tot carnivorisch, behalve die zonder kaas. Op donderdag hebben nagenoeg alle medewerkers van Marktplaats nog een koude punt als lunch kunnen nuttigen.

Als je denkt dat dit een paar man zijn voor zo'n site-je, think again. Daar zit een grote zaal vol mensen. Van ontwikkelaars tot sales en nog veel meer. Altijd erg leuk om een nieuw bedrijf te kunnen bekijken en dan helemaal zo'n bedrijf dat iedereen kent. Leuk ook om te horen over de wilde plannen met Hadoop, MapReduce en GigaSpaces, bijna jammer dat ik geen Javaan ben.

Nadat wij genoeg hadden van de pizza's zijn we aan de Dojo begonnen. Willem van den Ende, Marc Evers en Rob Westgeest (ofwel de mannen van QWAN) hadden een RandoriKata voorbereid. Eigenlijk een onmogelijke naam, omdat Randori en Kata precies de twee tegengestelde methodieken zijn in Japanse martial arts. Een Kata is een strak gechoreografeerde oefening die heel vaak wordt uitgevoerd waardoor je daar steeds beter in wordt. Randori daarentegen betekent letterlijk "chaos nemen" en staat juist voor de vrijheid van het niet volgen van kata's. Toch is het een goede naam gebleken. Er wordt namelijk een applicatie ontwikkeld in zeer korte iteraties. Deze avond was een iteratie vijf minuten, veel iteratiever kun je het niet krijgen. Iedere iteratie moest er eerst door de man achter de knoppen een falende test geschreven worden die vervolgens door de co-piloot werkend moest worden gemaakt, TDD dus. Zolang er met de test gewerkt werd kon de hele groep invloed uitoefenen op de te bouwen test en dus op de te bouwen functionaliteit. Zodra deze falende test netjes faalde draaide de prioriteit om naar het fixen van de falende test. Over design mocht niet meer worden getwist, alleen over hoe die test zo snel mogelijk werkend moest worden gemaakt. Zodra de vijf minuten om waren werd één van de ontwikkelaars gewisseld en begonnen we weer van voor af aan. Zo zie je goed de Kata: test schrijven en implementeren. Ook Randori was goed te zien in de discussie van de groep en door het steeds wisselen van toetsenist. Dit allemaal met babysteps om het wel binnen 5 minuten af te kunnen ronden. Dit leverde wel wat discussie op. Een babystep is de meest kleine volgende stap richting einddoel. Het lijkt soms alsof je je hoofd moet uitschakelen omdat je het gevoel hebt dat je best weet wat de volgende 3 steps zijn en die wil je in één keer doen. Het consequent doorvoeren levert wel eenvoudige keuzes op, eenvoudig terugdraaien en weinig ingewikkelde discussies. Aan de andere kant bekruipt je toch het gevoel dat je onnodig klein bezig bent en dat het sneller moet kunnen.

Wat leren we hier nu van? Dit was mogelijk de interessantste vraag van de avond. Voor mij persoonlijk was het vooral de taal Ruby. Voor mij bijna volledig nieuw en volgens de kenners van vanavond hebben we alles de revue laten passeren, dus nu ben ik ook een Ruby crack. Ergens in m'n achterhoofd knaagt wat twijfel, maar dat laat ik natuurlijk nooit meer merken. Zolang ik er geen project in hoef te doen.... Vooral het onderdeel "NIET discussiëren" was voor sommigen de grote les van de avond. We hebben het dan niet eens over of ze gelijk hadden of niet, maar over regels kunnen volgen en meningsverschillen inslikken als de tijdsdruk daarom vraagt.

Andere leerden vooral van de verschillende keuzes die mensen maken of dat TDD helpt of juist tegenzit in zo'n omgeving. Voor weer anderen was de Coding Dojo techniek an sich de grote winst en zien ze zichzelf dit gebruiken in hun dagelijks leven om een moeilijk probleem te tackelen of om bepaalde principes in een groep in de vingers te krijgen. Tot slot de Babysteps, voor m'n gevoel zijn die een beetje ondergesneeuwd die avond, maar misschien waren er ook wel veel lessen. Ik ben benieuwd of je dit principe een keer in een echt project een paar weken kan doorvoeren om te zien of het bijdraagt aan snelheid en accuratesse.

Zo heeft iedereen deze avond er wel iets uit gehaald wat van waarde is. Of dat precies is wat de voorbereiders er hoopten in te leggen weet ik niet, maar met zoveel winst mag het in ieder geval een geslaagde avond genoemd worden. Na nog een paar afzakkertjes in bar/restaurant Dauphine zijn we allen weer een stukje slimmer huiswaarts gegaan.


     

De sourcecode voor deze nieuwe Pacman kata vind je terug op http://github.com/mostalive/pacman




 
Verslag Retrospective 2 december 2009
Gepubliceerd door Arne Timmerman   

Woensdagavond 2 december verzamelden 18 ridders uit het gilde van Nederlandse softwareontwikkelaars zich voor de laatste keer van dit jaar aan een grote ronde tafel (met scherpe hoeken) om het afgelopen jaar te evalueren. In een inspirerende ruimte boven het centraal station van Utrecht werden er, volgens sommigen een aantal deuren verwijderd van bekende ministers als Maxime Verhagen (zeker weten?) en Hirsch Ballin, ervaringen uitgewisseld en standpunten verdedigd omtrent het onderwerp: Retrospective 2009.

Na een maaltijd en een korte kennismakingsronde ging de avond, mogelijk gemaakt door Wantit, van start. Er werd een ambitieuze doelstelling neergezet waarin iedere ridder aan het woord zou komen om zijn hoogtepunten uit het jaar 2009 toe te lichten en voorspellingen voor het jaar 2010 uit de doeken te doen. De strakke tijdsplanning bleek helaas niet haalbaar: na de pauze was het rondje gevorderd tot wel 5 van de 18 deelnemers. Hoewel de doelstelling wellicht niet helemaal is gehaald, is erop deze avond volop gediscussieerd over een scala aan onderwerpen.

De belangrijkste ontwikkelingen in het softwarevakgebied van het afgelopen jaar lijken zich in Nederland sterk te begeven op het vlak van kwaliteit en verbreding. Klanten onderkennen meer en meer een sterkere hang naar kwaliteitszin ten aanzien van software en zijn in mindere mate gefocust op blinde targets. De wereldwijde opkomst van agile software ontwikkelmethodes is in het afgelopen jaar doorgedrongen tot de grotere Nederlandse bedrijven: Scrum is een methode die door veel ontwikkelaars in de afgelopen jaren (succesvol) is toegepast. Hoewel deze verbreding zich doorzet blijft het beloningssysteem binnen softwarebedrijven achter: de waardering is gefocust op de korte termijn, en bijvoorbeeld niet op een beloning van lagere onderhoudskosten in de toekomst.

Softwareontwikkelaars lijken zich in 2009 meer te willen verbreden en spelen met nieuwe talen. De opkomst van (dynamische) talen op de Java Virtual Machine draagt hieraan bij, maar ook Microsoft lijkt zich met F# duidelijk te willen begeven in het functionele paradigma dat weer in opkomst is. Het is de vraag of al deze groei aan talen bijdraagt aan betere software. De keuze voor een taal is misschien soms een kwestie van smaak en is ondergeschikt aan het daadwerkelijk probleem: een klant die goede software verlangt. Wat dat laatste betreft wordt certificering als een zwaktepunt onderkend. Iedereen kan zichzelf een programmeur noemen en ondanks certificering voor bijvoorbeeld Java, .NET of Scrum is er in ons vakgebied geen tuchtcommissie. 

De technieken die zich in dit jaar sterk hebben ontwikkeld zijn: alternatieven voor de SQL database, programmeren op grafische processoren, Cloud computing en Distributed Domain Driven Design. Het lijkt erop dat de SQL-database aan terrein verliest. Hoewel er in veel softwareprojecten nog altijd direct wordt gegrepen naar een dergelijk oplossing voor opslag zien we dat document-georiënteerde databases in opkomst zijn, denk aan CouchDB. Overal om ons heen zien we daarnaast dat Cloud computing een sterke ontwikkeling doormaakt: Chrome OS is hierin een voorbeeld. De administratie van softwaresystemen lijkt hiermee te veranderen: het onderhoud van hardware wordt ondergebracht bij grote hosts, de configuratie van software komt op het bordje van de ontwikkelaar.

Een blik op het aanstormende jaar 2010 laat zien dat de huidige trends zich zullen voortzetten. Er wordt veel verwacht van Lean softwareontwikkeling, andere (eigenlijk oude) programmeerparadigma's zoals functioneel programmeren, andere vormen van dataopslag, maar ook bijvoorbeeld de herintreder Objective-C dat al stamt uit de jaren '80 (iPhone ontwikkeling). Hoewel Model Driven Development grote stappen naar volwassenheid leek te maken, wordt er verwacht dat deze ontwikkeling wordt afgeremd door het besluit van Microsoft om Oslo om te dopen tot SQL Server Modelling. 

 
Presentaties Community Day
Gepubliceerd door Arne Timmerman   

Het is inmiddels alweer een bijna een week geleden dat een groep van ongeveer 80 software ontwikkelaars uit Nederland zich verenigden in de kelders van VX Company op de Devnology Community Day. Een dag met presentaties, workshops en discussies waarin volop kennis werd gedeeld over alles wat met software te maken heeft. Als je er deze dag niet bij kon zijn, of juist nog eens wat materiaal terug wilt lezen, dan kun je in deze blogpost (of direct op het SlideShare event) de presentaties nog eens rustig bekijken.

Op het moment van schrijven zijn nog niet alle presentaties van deze dag gepubliceerd. De sprekers die hun presentatie niet in het lijstje zien staan roepen we dan ook op om het materiaal te delen met de community en ze op te sturen naar dit e-mailadres of te publiceren in het eerder genoemde SlideShare event.

 
<< Begin < Vorige 11 12 13 14 15 16 17 18 19 20 Volgende > Einde >>

Pagina 19 van 30

Bijeenkomsten

Prijzen sponsors

JetBrains logo



Foto's

Bekijk alle foto's van Devnology op Flickr.

Waarom bijeenkomsten?

Bijeenkomsten van Devnology zijn erop gericht enthousiaste ontwikkelaars bijeen te brengen om kennis en ervaring uit te wisselen, te discussiëren en te netwerken - geek to geek.

Over ons

Vanuit Devnology willen wij vooral kijken naar concepten binnen software ontwikkeling. Als zich nieuwe ontwikkelingen voordoen zullen we vooral kijken naar het concept erachter en deze in een breed kader van eerdere technieken en/of bestaande platformen plaatsen. Lees meer...