Logo
Ramme
Ramme

Archive for the 'Ruby' Category

WatiN

Thursday, January 11th, 2007

Jeremy D. Miller kan i dag informere om at det nå eksisterer en .net versjon av watir (uttales “water”), nemlig watin (uttales “what-in”). Disse produktene/biblotekene lar deg automatisere web testing.., med henholdsvis Ruby og .net.

Jeg har foreløpig brukt watir til helt enkle automatiseringsoppgaver, men kanskje watin kan få litt mer fart på selve test-utviklingen.., skal definitivt ta en titt på dette.

Et par uttalelser om WatiN:

“… it feels like it should have shipped out of the box with Visual Studio Team Edition for Software Testers.”

Bruce McLeod
Principal Consultant for Devtest Pty Ltd.
www.devtest.com

“What a great tool!!! We are using it with CruiseControl.Net. We run roughly 1k tests each build.”

David Strickland

Vice President of Development

Swingvote, LLC

En oppsummering av ukas viktigste saker..

Tuesday, March 28th, 2006

De mest interessant linkene som har poppet opp i min feed-leser de siste dagene..

Først, en historie som virkelig illustrerer hvor HÅPLØS IDIOT det går an å være. Her er linken til en mailutveksling om en feil-konfigurert webserver og trusler om å ringe FBI. LINK! Ta deg tid til å lese denne, det er helt utrolig…

Mere morro; jeg følger med på Dilbert bloggen, og i My Opinions Part II svarer Scott Adams på en haug med spørsmål fra leserne. LINK!

Rails versjon 1.1 ble lansert i dag. For dem som ikke vet det så er Rails webutviklings-rammeverket for Ruby (som ASP.NET for .NET plattformen) - og det er helt konge - en helt ny måte å bygge web på! En bunch med nye features for dem som liker AJAX, web services m.m. Installerte Rails i helgen, men nå er det altså på tide å oppgradere. LINK!

I’ll take Static Typing for $800, Alex. er et interessant innslag i debatten rundt static vs. dynamic typing, noe jeg særlig har blitt interessert i etter at jeg har prøvd ut Ruby. LINK!

Here’s an Idea: Let Everyone Have Ideas forteller om hvordan et firma har tatt inovasjon til nye høyder ved å gjøre intern ideskaping til et aksjespill. Noe å prøve ut - eller videreutvikle? LINK!

Så en liten video - har du lyst til å se noen sprettne folk så må du se Matrix Dance. LINK!

Og til slutt - du har kanskje sett det før, men dette historiske innslaget får meg alltid til å humre i skjegget. LINK!

Er du ellers interessert i å se hva jeg sparer på av linker, så finner du mine bookmarks på http://del.icio.us/tormaroe

Unit-teste web applikasjoner med Ruby..

Wednesday, March 22nd, 2006

Har lest og testet Ruby i hele fem dager nå - og er helt frelst. Jeg har også funnet et område hvor jeg garantert kommer til å benytte Ruby i jobben (om ikke min kommende arbeidsgiver har investert i noe fancy greier da).., nemlig enhetstesting av web UI! Watir er et bibliotek til Ruby som lar deg helautomatisere IE, og støtte for flere browsere kommer. Du kan også (med litt jobb) plugge unit tester du lager i ruby/watir inn i NUnit, om du skulle ønske det.

Uttalelser folk har kommet med etter å ha oppdager Watir:

“I’ve been trying to find the Holy Grail of Automated Web UI Testing….
And the one I’m currently enamored with is Watir.”
— Scott Hanselman

“I wanted to run around my office dancing and celebrating.” — Beth Ferguson

For mer om Ruby, se mine tags..

Jeg surfer ganske mye på ulike programmeringssider for tiden, og oppdaget da denne litt morsomme siden for oss nerder: 99-bottles-of-bear.net! Her kan du se den kjente øl-sangen implementert i forskjellige språk på (p.t.) 927 ulike måter.

Og da fikk jeg forresten lyst til å vise mitt siste program.., ikke et eksempel på hvor lesbar Ruby kode er akkurat - har har jeg forsøkt å obfuskere litt:

# party game
a,b,c=1,7,70;def d(i,b)print i.to_s=~/#{b}/||i.modulo(b)==0?
“ukek!n “.gsub(/(.)(.)/,’\2\1′):i.to_s+” “end;(a..c).each
{|i| d(i,b)};(c-1).downto(a){|i| d(i,b)}

Noen som ser hva dette programmet gjør? Send inn forslag…

Jakten på den røde rubin

Tuesday, March 21st, 2006

“This is your last chance. After this, there is no turning back. You take the blue pill - the story ends, you wake up in your bed and believe that C# is the only way to code. You take the red pill - you stay in Wonderland and I show you how different, simple and interesting code can really be.”

Ruby

Jeg har tatt den røde pillen, og takker Morten Brudvik for tipset. Etter å ha programmert i endel år nå så merker jeg at interessen for selve kodingen har stagnert. Jeg er opptatt av god arkitektur, og det er mange spennende disipliner i .NET verdenen, men jeg merker at jeg har blitt litt sløvet i måten å tenke kode på - the C# way blir litt ensformig i lengden faktisk - og jeg bestemte meg derfor for å utfordre meg selv litt.

Jeg har derfor begynt å lære meg Ruby; ett litt anderledes språk som på nostalgisk vis fører meg tilbake til Universitets-dagene og Unix-livet. På samme måte som C# er det basert på populære språk og erfaringer (i Ruby’s tilfelle Ada, Perl, Smalltalk, Python, Lisp m.m.), men forsøker å gå et steg videre og adressere svakhetene i disse språkene. Etterhvert som jeg leser meg opp på Ruby så slår det meg at mange av de unike elementene i Ruby har paralelle elementer i C# som er løsninger på svakheter i C++ og Java.

Filosofien bak Ruby er å gjøre programmereren lykkelig ved å fjerne mengden av “manuelt arbeid” under kodingen, og være minst mulig “overraskende” i sin virkemåte. Det er et objektorientert språk - ALT er objekter - og bruker “dynamic typing”, en feature jeg faktisk aldri har sett nytten av før nå. Det som er helt nytt for meg er bruken av kodeblokker som parametre til funksjoner. Se for deg kode hvor du i nesten hvert eneste metodekall sender med et delegat til en funksjon som metodekallet kjører. Det er veldig fjernt fra sånn som vi er vant til å tenke i C-verden, men det er faktisk veldig elegant.

Selv om Ruby er et såkalt skriptspråk, så påstås det at det kan brukes til det meste. NASA bruker det til å kjøre simuleringer, så da må det jo være kult. Ellers brukes det mye til behandling av data, netverks- og systemadministrasjon, web applikasjoner osv. For meg blir det nok aldri noen erstatning for C# og .NET rammeverket, og ikke for mine arbeidsgivere heller. C# er bedre på å strukturere større prosjekter, men som er sekundærspråk for å utføre mindre oppgaver som f.eks. automatisering av repetetive oppgaver eller parsing/transformering av data, så er Ruby ypperlig for meg. 10 linjer i TextPad som det tar 5 minutter å skrive gjør samme jobben som et prosjekt i .NET som det tar en halvtime å opprette, kode og kompilere. For ikke å snakke om hvor lett det er å gjøre endringer.

Men først og fremst får Ruby meg til å tenke.., til å tenke nytt. Kanskje vil dette også inspirere meg til å ta opp igjen arbeidet med neurale nettverk og kunstig intelligens, hvem vet..?! Og så er det jo veldig kult da (på en veldig nerdete måte, jeg vet)!

Ramme
Ramme
Footer
LogoRight
Ramme
Ramme
Kjempekjekt innhold:






View Torbjrn Mar's profile on LinkedIn
Min profesjonelle profil / cv finner du på linked in



Ramme
Ramme