Viser innlegg med etiketten Ruby. Vis alle innlegg
Viser innlegg med etiketten Ruby. Vis alle innlegg

torsdag 17. april 2014

Gosu

Har kommet noen steg videre med FireIsRuby prosjektet mitt, og lagt til ett grafisk grensesnitt, takket være Gosu rammeverket.
FireIsRuby med grafisk grensesnitt.

søndag 6. april 2014

FireIsRuby

I forbindelse med mine første spede steg i å lære meg Ruby, har jeg laget en Ruby port av ett tidligere Mono/C# prosjekt, FireIs. Det er en veldig enkel Tetris klone, som (per nå) kjører i ett terminalvindu.

FireIs var også ett prosjekt som jeg startet for å sette meg inn i ett nytt programmeringsspråk. Den gang var det C# jeg holdt på å lære meg. Ettersom jeg hadde holdt mye på med PHP fra tidligere, plukket jeg opp C# rimelig snart. Det hjelper også at C# som er statisk og kompilert språk, gir mye tilbakemelding fra IDE verktøy mens man programmerer. Men med Ruby tas avgjørelsene mens programmet kjører, og man får mindre hjelp fra støtteverktøyene. Selv i ett lite prosjekt som FireIsRuby, hadde ingen av verktøyene jeg prøvde ut, god kjennskap til klassene utenfor filen jeg arbeidet i. Det gjorde feilsøking til en mer mental øvelse enn det jeg er vant med fra C# (Visual Studio og ReSharper). Jeg antar at forskjellene oppleves som mindre så snart jeg slipper å slå opp i Ruby dokumentasjon så ofte.

torsdag 27. februar 2014

Why's Poignant Guide to Ruby

Utvilsomt den mest originale utviklerboken jeg har vært borti. Når jeg leser denne, er jeg ikke sikker på om jeg leser ett kunstverk eller en bok om Ruby. Artisten kan jeg ikke si noe om, annet enn at han går under navnet "why the lucky stiff".

Her er ett YT klipp som fint illustrerer galskapen:


Why's Poignant Guide to Ruby kan leses her.

lørdag 8. februar 2014

Kontinuerlig testing

I Linux kan inotifywait benyttes for å kjøre unit tester hver gang kildefil blir lagret. Følgende kommando sjekker kildefolder for endringer, og starter ett skript som gir tilbakemelding om feilede tester.

$ while inotifywait -r -e modify *.rb; do ruby path_to_enlightenment.rb; done

Kommandoen for å starte testene varierer naturligvis. I dette tilfellet kjører jeg gjennom Ruby Koans oppgaver, som kan lastes ned herI Ubuntu finner vi inotifywait kommandoen i pakken inotify-tools.

$ sudo apt-get install inotify-tools

Bildet illustrerer kontinuerlig tilbakemelding i terminalvinduet til venstre.

søndag 2. september 2012

Ruby Koans

Jeg holder på å lære meg litt Ruby og i den forbindelse kom jeg over "Ruby Koans".

Det er en forfriskende måte å lære seg ett nytt programmeringsspråk på. Man starter en "unit-test" og Koan skriptet sjekker om du har klart alle testene. Om du har gjort feil, stopper skriptet opp og man må gå inn å rette feilen. I terminalen får man oversikt over progressjonen og hvilken fil og linje feilen oppstod på.

Reglene er enkle. I de fleste oppgavene bytter man ut to underscores "__" med riktig verdi, eller man bytter ut tre underscores "___" dersom man skal fylle inn unntaksfeil. På noen oppgaver må man skrive koden selv, som vist i skjermbildet. Hele tiden får man progresjon fra lett mot vanskeligere.

Nå tilbake til Ruby Koans.. har ennå noen tester igjen å fullføre. ^__^