Gamebuster schreef op donderdag 17 april 2014 @ 14:11:
Zijn
er al fans van Go(lang) hi
er? Gebruikt iemand het hi
er in productie? Waarvoor? Wat zijn je bevindingen tegenov
er bijv. Ruby, Java, C, C++, enz qua productiviteit, p
erformance, community, beschikbare libraries & frameworks, enz
Wij (vooral ik een collega nu, maar binnen kort al we
er een extra) zijn sinds kort bezig om de basis te maken voor een (in de toekomst) behoorlijk uitgebreide API.
Flink ond
erzoek gedaan (zijn al jaren aan het oriënt
eren op de acht
ergrond), paar pogingen gedaan, oa in C++, gekeken naar Java & .NET, mensen aangenomen die in PHP en Symfony aan de slag zijn gegaan.. Maar ik bleef het niet optimaal vinden. Of het was te ingewikkeld om op lange t
ermijn te ond
erhouden zond
er 4 man extra, of het was qua p
erformance niet top.. Eigenlijk altijd wel wat.
Paar weken geleden kwam Go in het vizi
er, paar dagen ingelezen en toen maar de knoop doorgehakt: Dat ging het worden.
Reden eigenlijk wat hi
er gezegd wordt: Je hoort
er eigenlijk alleen goede dingen ov
er 
Dat
er nog niet veel libraries zijn valt wel mee, althans, ik ben ook gewend aan het veel zelf moeten maken, dus voor Go zijn
er voor mijn doen heel veel libraries. Voordeel is dat ik vind dat de "community"
erg open is, libraries worden door veel mensen aangepast en van commentaar voorzien, dus wat
er is, dat w
erkt ook wel.
Tot nu toe dus eigenlijk alleen maar lof, we zitten nog in een beginfase, maar tot nu toe gaat alle w
erk veel snell
er dan v
erwacht. Golang heeft als doel dat het leuk moet zijn om
erin te programm
eren en ik dacht "Het zal wel".. Maar ik zit al regelmatig met een smile omdat het onv
erwacht poepsimpel is om bepaalde dingen te doen, makkelijke implementatie van maps, int
erfaces, type switches, goroutines, channels en functie-types om maar wat te noemen.
We moeten nog de echte grote stukken gaan schrijven, maar krijg daar een goed gevoel bij, vooral omdat het w
erken met concurrency-achtige vraagstukken zo diep in de basis van de taal zit. Zek
er omdat wij een applicatie gaan bouwen die van een hele hoop bronnen informatie gaat ontvangen en opvragen en die informatie we
er naar eindgebruik
ers en d
erde partijen moet gaan communic
eren worden dingen als channels en goroutines heel aantrekkelijk en leuk. M
erkte tijdens een kleine test dat ik op 15 minuten tijd een probleem had opgelost waar ik e
erst makkelijk een halve dag mee bezig kon zijn met threads en mutexen en een communcatie-pipe
erbij...
Dus je kan heel makkelijk heel algemene code maken. We m
erken nu al dat we beginnen met functies van 20-30 regels en
er na een paar dagen opeens nog maar 10 regels ov
erblijven als je een beetje me
er gewend bent.
Groot voordeel is dat de le
ercurve
erg laag is zov
er, heb zelf
ervaring met wat C, C++ en Java en senior in Xbase, maar m
erk dat ook pure script-mensen als PHP
ers het goed begrijpen binnen een paar weken.
Ben wel nog
erg benieuwd naar de p
erformance in de praktijk, binnen een paar weken gaat een klein project live, dus dan wordt het kijken of de beloftes waar worden gemaakt. Moet zeggen dat het voor ied
ereen spannend is als je een Apache/NginX webs
erv
er gewend bent en zelfs dat v
ervalt door de ingebouwde net/http s
erv
er in één binary...
Groot voordeel voor ons is dus wel die enkele file, geen dependencies of grote upgrades, vorige v
ersie t
eruzetten is één proces sluiten en de vorige we
er opstarten..
Zelfs dingen als PostgreSQL connection pooling kunnen we voorlopig even laten vallen zov
er we kunnen zien, wordt zov
er ik kan lezen en testen keuring door Go gedaan voor elke goroutine..
Dus ik heb nog geen productie-
ervaring, maar ben wel razend enthousiast aan het worden, mede door de communtiy en de ze
er held
ere uitleg ov
er waarom ze dingen doen zoals ze het doen.
Zal lat
er vast nog wel me
er concrete
ervaringen delen