TDD met Ruby on Rails
Op de Finalist Developers Blog kan je een artikel van mijn hand over Test Driven Development met Ruby on Rails lezen.
Op de Finalist Developers Blog kan je een artikel van mijn hand over Test Driven Development met Ruby on Rails lezen.
Eric Hodel heeft de firebrigade gesticht om door tinderbox aangestoken gems te signaleren. Tinderbox? Pardon?
In software ontwikkeling is een tinderbox een systeem dat ervoor zorgt dat een gegeven stuk software gebouwd en getest wordt op een serie platformen. Een dergelijk systeem geeft ontwikkelaars de mogelijkheid te zien of, de code die zij geschreven hebben, ook goed functioneert op platformen welke zij niet tot hun beschikking hebben. De bekendste is de tinderbox van Mozilla, welke onder andere verifieert of Firefox wel gebouwd kan worden op alle aangesloten platformen.
Het tinderbox systeem dat Eric Hodel de lucht in heeft gebracht, probeert alle recente gems op rubyforge te bouwen op aangesloten platformen en de bijbehorende test suites te draaien. De resultaten van deze pogingen zijn te vinden op de firebrigade site.
Op dit moment slaagt maar 1 op de 4 projecten, maar dat klinkt veel slechter dan het in werkelijkheid is. Veel gems leveren geen tests mee, maar hebben wel tests. Ook mijn EXIF Reader projectje stond jammerlijk te smeulen maar nu de tests de in gem zitten, mag ik gelukkig brandmeester roepen.
Er is natuurlijk ook een hoop testloze code te vinden op rubyforge, waarschijnlijk vrij veel.. Mijn mening: slecht! Iets meer genuanceerd: Ruby is een waanzinnig platform om op een TDD of zelfs BDD manier te ontwikkelen, laat deze kans op verlichting niet schieten!
Wil je helpen? Zorg dat de gems die je de wereld in geholpen hebt, een goede test suite hebben welke uiteraard slaagt. Heb je geen gems maar wel rekenkracht over of, beter nog, een exotisch platform waar je Ruby op draait? Meld je dan aan als tinderbox!
Uit “20 percent time” van een Google werknemer is MacFUSE ontsproten! Amit Singh heeft de FreeBSD code van het FUSE project geport naar Mac OS X en nu kan er iedereen met zo’n flitsende Mac computer ook zelf file systems maken!
Hopelijk brengt dit weer wat aandacht naar het Ruby project FuseFS en geeft MacFUSE iemand de inspiratie deze library te porten naar de FUSE 2.5 API of hoger zodat ik met Ruby file systems kan bouwen. Ik kan niet wachten tot ik met RailsFS en S3 FS kan spelen, buiten m’n Ubuntu installatie in Parallels.
Voor de blog bij m’n werkgever heb ik een artikel over Phobos, het JavaScript web framework op het Java platform, geschreven.
Both JRuby super hero’s, Charles and Thomas, will be talking about JRuby tomorrow at Stroom Hotel in Rotterdam. Come and find out why having a Ruby interpreter on the Java platform is a “good thing”.
Registration seminar@finalist.com.
Koffie en heerlijke gebak dingetjes met chocolade erop en room erin, hmmmm.. De koffie is goed verzorgd hier bij JavaPolis!
Lees verder → Yay, Antwerpen! Vandaag, morgen en vrijdag op op het conferentie gedeelte van JavaPolis. Het is druk op de converentie vloer in bioscoop Metropolis!
Gevonden via TSS, project gosling. Het lijkt op een poging rake
te doen met Java of wel een build tool in “je moedertaal”.
Maar echt mooi kan je het niet noemen.. Hier een stukje uit de build file van gosling zelf:
@Default @Description("Builds the Gosling project") public void build() { new Javac(this, BUILD_DIR) .setSrcDir("src/java") .addOption("-g") .execute(); new Copy(this) .setDestDir(new File(BUILD_DIR)) .addFileSet(new FileSet(JAVA_SRC_DIR) .addExclude("**/*.java")) .execute(); }
Auw m’n hoofd! Misschien is Java toch niet zo’n goede kandidaat voor het maken van DSL’s? Volgens mij zijn ant build files leesbaarder:
<target name="default"> <javac srcdir="${java.src.dir}" destdir="${build.dir}" debug="true"/> <copy todir="${build.dir}"> <fileset dir="${java.src.dir}" excludes="**/*.java"/> </copy> </target>
Voor rubyenrails.nl heb ik een introductie tot camping geschreven: Proto Prototype.