<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Keep on Balping &#187; Programering</title>
	<atom:link href="http://blog.balp.nu/category/programering/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.balp.nu</link>
	<description>Balp Skiver Om allt och alla...</description>
	<lastBuildDate>Fri, 25 Mar 2011 21:53:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Canned Ubuntu: Review</title>
		<link>http://blog.balp.nu/2008/08/canned-ubuntu-review/</link>
		<comments>http://blog.balp.nu/2008/08/canned-ubuntu-review/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 15:52:48 +0000</pubDate>
		<dc:creator>Balp</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[operating systems]]></category>
		<category><![CDATA[Personligt]]></category>
		<category><![CDATA[Programering]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[cola]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.balp.nu/?p=125</guid>
		<description><![CDATA[I dag sprang jag till min förvåning på Ubuntu inne på Coop, förpackningen förvånade mig lite. Hade inte sett någon pressrelease om en "canned" unbuntu version. På baksidan av förpackningen finns en beskrivning av vad unbuntu betyder, "I am beacause we are", inte riktigt det samma som de haft på webbsidan tidigare. Vid närmare studier [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_127" class="wp-caption alignright" style="width: 236px"><a href="http://blog.balp.nu/wp-content/uploads/2008/08/ubuntu.jpg"><img class="size-medium wp-image-127" title="ubuntu can" src="http://blog.balp.nu/wp-content/uploads/2008/08/ubuntu-226x300.jpg" alt="A can of ubuntu" width="226" height="300" /></a><p class="wp-caption-text">A can of ubuntu</p></div>
<p>I dag sprang jag till min förvåning på Ubuntu inne på Coop, förpackningen förvånade mig lite. Hade inte sett någon pressrelease om en "canned" unbuntu version. På baksidan av förpackningen finns en beskrivning av vad unbuntu betyder, "I am beacause we are", inte riktigt det samma som de haft på webbsidan tidigare. Vid närmare studier av denna release märks att det snarare är ett komplement till den tidigare 8.04 är en ny release. Denna Ubuntu Cola, är nog mest tänkt att användas medan den andra produkten kör för att utöka användandet. Utan detta cola tillskott kan man utnyttja 8.04 kanske runt 16 timar per dag, men sedan fallen man samman i en hög. Tillsätter man massor med Ubuntu Cola kan man dock komma upp till runt 20 timmar om dagen helt klart en värdefull addering.</p>
<p>Hur står sig då Ubuntu i förhålllande till konkurensen? Det finns två huvud konkurenter, Coca Cola och Jolt Cola. Tyvärr måste jag säga att det är här som svagheten ligger smaken. Den är närmast som det onämnbara alternativet myck sötare än Coca Cola. Det är skumt att det kan bli så, man får hoppas att det kommer en patch snart som fixar till detta använbarhets problem. Den nuvarande produkten är på grund av detta skönherts problem i praktiken helt oanvänbar.</p>
<img src="http://blog.balp.nu/?ak_action=api_record_view&id=125&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.balp.nu/2008/08/canned-ubuntu-review/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vad säger utvecklare?</title>
		<link>http://blog.balp.nu/2008/02/vad-sager-utvecklare/</link>
		<comments>http://blog.balp.nu/2008/02/vad-sager-utvecklare/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 13:04:06 +0000</pubDate>
		<dc:creator>Balp</dc:creator>
				<category><![CDATA[Programering]]></category>

		<guid isPermaLink="false">http://blog.balp.nu/2008/02/vad-sager-utvecklare/</guid>
		<description><![CDATA[IDG, rapporterar som sogeti's blog där Sofia skriver en toplista med citat från utvecklare. Kanske lite kort och lite mer kommentarer kanske skulle behövas till de olika kommentarerna. Det känns lite som om kommunikation med en inte helt insatt projektledning och eller en mycket filtrerad kund. 1. Konstigt! Jag vad annars, så klart det är [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.idg.se/2.1085/1.144557">IDG, rapporterar</a> som <a href="http://blogg.sogeti.se/webbociationer/">sogeti's blog</a> där Sofia skriver en <a href="http://blogg.sogeti.se/webbociationer/2008/02/topplista-med-c.html">toplista med citat från utvecklare</a>. Kanske lite kort och lite mer kommentarer kanske skulle behövas till de olika kommentarerna. Det känns lite som om kommunikation med en inte helt insatt projektledning och eller en mycket filtrerad kund.<br />
1. Konstigt!<br />
Jag vad annars, så klart det är konstigt att saker men testat inte fungerar, eller i alla fall saker man tror sig testat och tror sig förstå hur det hänger ihop.</p>
<p>2. Det har ju fungerat förut.<br />
Med andra ord, när gick det sönder?</p>
<p>3. Det är bara några småsaker som skall fixas.<br />
Man kännetr till vad som är fel och kan fixa det snart, det kommer nog inte att störa din tidsplan kan jag få ta det ni nästa släpp i ställer för att missa det för att sitta i kris möte.</p>
<p>7. Men jag har ju inte ändrat något i den modulen!</p>
<p>8. Jo, det blir klart innan dess.<br />
Samma som tre egentligen, visar tydligt på i vilken kommunikation det sker.</p>
<p>11. Jag är nästan klar!<br />
12. Jodå, bara jag får införa de sista ändringarna!<br />
13. Det tar tid.<br />
14. Man kan inte testa allt.<br />
Detta är imho tydliga exempel på att man kräver att få saker levererade strax innan de är klara. Sedan vet man ju att allt inte kan testas, en grundläggande kust i test skall ge den insikten. Man kan inte testa så att något blir felfritt. Det kommer alltid att finnas problem kvar.</p>
<p>16. Jag trodde jag hade fixat det.<br />
Ytterligare ett tecken på för stressad och fel designad miljö, TDD bör göra en del för att minska dessa problem, man inte allt.</p>
<p>17. Egentligen fungerar det bra, fast det inte verkar så.<br />
18. Förutom att det inte funkar, hur verkar det?<br />
Ganska bra och roligt under ett utveckling steg, tyder också på att man saknar ett helt klart mål. Vilken inte direkt förvånar mig.</p>
<p>Jag saknade saker som:<br />
Vad sa du att du gjorde?<br />
Hur lyckades du med det?<br />
Kan du ta det igen?</p>
<p><a href="http://blog.balp.nu/wp-content/uploads/2008/02/project_life_cycle.GIF" title="Project life cycle"><img src="http://blog.balp.nu/wp-content/uploads/2008/02/project_life_cycle.thumbnail.GIF" alt="Project life cycle" /></a></p>
<img src="http://blog.balp.nu/?ak_action=api_record_view&id=83&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.balp.nu/2008/02/vad-sager-utvecklare/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Second life .19 windlight + Nicholaz (updated III)</title>
		<link>http://blog.balp.nu/2008/02/second-life-19-windlight-nicholaz/</link>
		<comments>http://blog.balp.nu/2008/02/second-life-19-windlight-nicholaz/#comments</comments>
		<pubDate>Wed, 06 Feb 2008 05:41:29 +0000</pubDate>
		<dc:creator>Balp</dc:creator>
				<category><![CDATA[Nicholaz]]></category>
		<category><![CDATA[Programering]]></category>
		<category><![CDATA[Second Life]]></category>

		<guid isPermaLink="false">http://blog.balp.nu/2008/02/second-life-19-windlight-nicholaz/</guid>
		<description><![CDATA[I'm looking into the windlight drop on svn and with it some parts of the 1.19-RC0 and how Nicholaz patches fits, so far i have seen some minor compile problems show up, line NULL being change to bool in one place, one patch then been applied to the code (2684_leak_cleanup_layoutstack.patch, need to check what the [...]]]></description>
			<content:encoded><![CDATA[<p>I'm looking into the windlight drop on svn and with it some parts of the 1.19-RC0 and how <a href="http://nicholaz-beresford.blogspot.com/2007/11/patches-for-homebrews.html" title="Nicholaz outdated patch comments.">Nicholaz</a> patches fits, so far i have seen some minor compile problems show up, line NULL being change to bool in one place, one patch then been applied to the code (2684_leak_cleanup_layoutstack.patch, need to check what the JIRA sais), and one combination (1857_apr_thread_mutex_nested.patch and 1857_cache_uploaded_textures_v0.82.patch)  causing big problems. With much work ahead of me this being a busy work week, I'm not sure i have it out soon, but one could hope.</p>
<p>Status update: the build crashes at start up. I can't say if that's from patches of something that differs from the released code in 79185 (svn code is 79315 but compiles to the name 78429). The svn code without changes crashes in the same way as the balp build... I Guess the relesed code now would be awsome to have.</p>
<p>Status update: New release from linden labs with missing xml files should fix the problem (Robin Cornelius) reported success, my build succeeded but i still need to run home to be able to test it.</p>
<img src="http://blog.balp.nu/?ak_action=api_record_view&id=71&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.balp.nu/2008/02/second-life-19-windlight-nicholaz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debatt utan heder</title>
		<link>http://blog.balp.nu/2008/02/debatt-utan-heder/</link>
		<comments>http://blog.balp.nu/2008/02/debatt-utan-heder/#comments</comments>
		<pubDate>Mon, 04 Feb 2008 15:32:20 +0000</pubDate>
		<dc:creator>Balp</dc:creator>
				<category><![CDATA[Pirate Bay]]></category>
		<category><![CDATA[Programering]]></category>
		<category><![CDATA[upphovsrätt]]></category>
		<category><![CDATA[Yttrandefrihet]]></category>

		<guid isPermaLink="false">http://blog.balp.nu/2008/02/debatt-utan-heder/</guid>
		<description><![CDATA[Det var länge varit dags att bemöta Anders Ekströms artikel i sydsvenskan. Där han försöker syna oss gapiga bloggare argumentation. Men för att syna den behöver man sätta sig in och förstå argumenten, annars framstår man bara som ignorant. Jag har inte tid att gå igenom alla argument och studera dem i detalj, men titta [...]]]></description>
			<content:encoded><![CDATA[<p>Det var länge varit dags att bemöta <a href="http://sydsvenskan.se/kronikorer/andreasekstrom/article292145.ece">Anders Ekströms artikel i sydsvenskan</a>. Där han försöker syna oss <a href="http://swartz.typepad.com/texplorer/2008/02/vad-anti-pirate.html" title="Oscar Swartz, gaping bloggare nummer 1">gapiga bloggare</a> argumentation. Men för att syna den behöver man sätta sig in och förstå argumenten, annars framstår man bara som ignorant. Jag har inte tid att gå igenom alla argument och studera dem i detalj, men titta på:</p>
<blockquote><p><span class="standardarticlebody"><strong>Skivförsäljningen gynnas av att fler får kännedom om musiken.</strong><br />
Skivaffärernas nedläggningar talar ett annat språk. Argumentet har också övergivits.</span></p></blockquote>
<p>Klart skivaffärer läggs ned, så sker med dyk-butiker, och massa annan detaljhandel där antingen det är dyrt eller näthandeln är en riktigt konkurrent. Trots detta visar <a href="http://johannanylander.blogspot.com/2008/01/rapport-kulturskymning-instlld.html">Johanna Nylander</a> att antalet sålda musikenheter, fy vad trist det låter, ökat med 19% sedan 2002. Men vist på grund av skivbutikernas tillkortakommande, så tappar de i marknad.</p>
<blockquote><p><span class="standardarticlebody"><strong>Fildelning är inte stöld, eftersom inget fysiskt föremål tas från någon annan.</strong><br />
Det här argumentet är det i särklass mest vulgära.</span></p></blockquote>
<p>Nej, detta är det viktigaste, och om man inte förstår detta kan man lika gärna lägga ned att diskutera upphovsrätt, och dess utformning. Vi som försöker ändra på upphovsräte blir bemötta med att det är stöld. Nej det är inte stöld, det är något annat. Efter som det inte är samma sak man man inte behandla det lika. Jag tror de flesta håller med om att gå in i en butik och sno en skiva och ladda ned den från en hemsida. Oavsett om den som lagt ut det på hemsidan betalt upphovsrättmannen eller inte. Att lägga ut den är snarast som att sälja piratkopior på ett märkes vara. Inte heller detta är stöld, har någon sin varit stöld, eller jämförbart med stöld. Om det är rätt eller fel att göra, det är en annat fråga. Men båda sidor borde enkelt kunna enats om vilket brott det handlar om. Vad problemet består i.</p>
<p>Upphovsrättsskyddet idag är oproportionerligt använt, lägger man ett antal miljarder på att forska fram ett läkemedel kan man få man 20 års skydd, 10 av dessa går åt innan man kan få sälja produkten. Varje år som går får man betala bra för att behålla patentet, detta efter att man är tvungen att lägga ut runt 100.000 innan det är registrerat. Skriver man ett blogg inlägg som detta, får man i sämsta fall 70 års skydd, om du dör direkt efter du skrivit det. Detta utan att du behöver göra något. Nu har i sig patenskydden i dag problem och till och med stora problem. Framför allt i kontrollen av nyskapande och att det inte är en trivial fortsättning av tidigare idéer, detta kan man diskutera mycket om. Jag tycker mig också sätt likande ändringar i hur man tolkar upphovsrätt på programvara. Kanske är detta något som kommer av att tekniken blir mer komplex och juristerna inte kan hänga med, i tekniken. Deras expertis ligger ju inom något vi tekniker har för lite tid att hänga med inom.</p>
<p>Läs även andra bloggares åsikter om <a href="http://bloggar.se/om/upphovsr%E4tt" rel="tag">upphovsrätt</a>, <a href="http://bloggar.se/om/pirat" rel="tag">pirat</a>, <a href="http://bloggar.se/om/anti-pirat" rel="tag">anti-pirat</a>, <a href="http://bloggar.se/om/fildelning" rel="tag">fildelning</a></p>
<img src="http://blog.balp.nu/?ak_action=api_record_view&id=69&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.balp.nu/2008/02/debatt-utan-heder/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Pirate bay</title>
		<link>http://blog.balp.nu/2008/02/pirate-bay/</link>
		<comments>http://blog.balp.nu/2008/02/pirate-bay/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 11:17:50 +0000</pubDate>
		<dc:creator>Balp</dc:creator>
				<category><![CDATA[Pirate Bay]]></category>
		<category><![CDATA[Programering]]></category>
		<category><![CDATA[Yttrandefrihet]]></category>

		<guid isPermaLink="false">http://blog.balp.nu/?p=68</guid>
		<description><![CDATA[Där kom det, det vi alla väntat på, åtalet mot Pirate bay. Fyra personer, är åtalade för "Medhjälp till brott mot upphovsrättslagen", samt "FÖRBEREDELSE TILL BROTT MOT UPPHOVSRÄTTSLAGEN". Skall man tyda att åklagaren skrek ut den andra punkten som den är allvarligare? Hela åtalet är mycket av ett skämt, Tyvärr ett extremt dyrt skämt för [...]]]></description>
			<content:encoded><![CDATA[<p>Där kom det, det vi alla väntat på, <a href="http://www.idg.se/polopoly_fs/1.143041!stamningsansokanpb.pdf" target="_blank">åtalet</a> mot <a href="http://thepiratebay.org/">Pirate bay</a>. <a href="http://www.idg.se/2.1085/1.143008">Fyra personer, är åtalade för</a> "<a href="http://www.e24.se/branscher/ittelekom/artikel_224389.e24">Medhjälp till brott mot upphovsrättslagen</a>", samt "FÖRBEREDELSE TILL BROTT MOT UPPHOVSRÄTTSLAGEN". Skall man tyda att åklagaren skrek ut den andra punkten som den är allvarligare?  <a href="http://www.kvp.se/kronikorer/larslindstrom/1.1028853/grundarna-tjanar-miljoner-pa-pirate-bay">Hela</a> åtalet <a href="http://www.dn.se/DNet/jsp/polopoly.jsp?d=3130&amp;a=738543&amp;rss=1401">är mycket av ett skämt</a>, Tyvärr ett extremt <a href="http://sydsvenskan.se/nojen/article297799.ece">dyrt skämt</a> för oss svenskar, <a href="http://www.svd.se/kulturnoje/nyheter/artikel_827981.svd">här kan man tala om</a> att slösa på <a href="http://blog.balp.nu/?p=32">skattepengar</a>. Trots att man <a href="http://news.google.se/news?hl=sv&amp;ncl=1135180021&amp;topic=e">jobbat 20 månder</a> med faller, och haft massa poliser, en stab av jurister och stora lobby <a href="http://www.kvp.se/kronikorer/larslindstrom/1.1028853/grundarna-tjanar-miljoner-pa-pirate-bay">organisationer </a>bakom sig. Klarar man inte av att lista vilka upphovs rätts brott det skulle vara, man hävdar att det funnits ett spel från Blizzard Entertainment Inc, som hette ”World of Warcraft- Invasion”, för nedladdning. Borde inte <a href="http://www.idg.se/2.1085/1.143118">Monique Wadsted</a>, som företräder Blizzard, och är säker på att kommer att åka i fängelse ha koll på vad hennes klient har gjort för spel? Om hon inte vet vad det heter? Hur kan hon vara trovärdig i att veta att det är rätt spel? Likadant är det med "Sophi Solmanis" för vi gissa att det är "Sophie Zelmani" det handlar om, IPFI missar ved artisten de företräder heter. Skulle jag ha ett sådant kontrakt där mina chefer gick till domstol i mitt namn och inte kunde stava det skulle jag byta jobb. Vist <a href="http://www.nyteknik.se/nyheter/it_telekom/internet/article63626.ece">jag är </a>ordblind, jag kan inte stava, men även jag har gränser.</p>
<p>Dessutom har <a href="http://www.frihetfildelningfeminism.se/">Johanna Nylander</a> i veckan kommit ut men en rapport från <a href="http://www.timbro.se/bokhandel/books.asp?isbn=9175665245">timbro</a> om hut kulturen utvecklas i Sverige. Där hon rent kvantitativt räknar på hur kulturlivet utvecklats sedan 1999, till i dag, spännande siffror då det rör den tid som pirate bay och fildelningen spridit sig in till var mans hem. Antalet personer som går på bio minst var 6:te månad är på en rekord nivå. Antalet sålda skivor och filmer är på rekord nivå, <a href="http://http://www.antipiratbyran.com/index.htm?id=debatt">trots detta klagar</a> branschen på att de inte har tillräckligt hårda lagar till sitt skydd. Skickar fram poppis namn som <a href="http://www.expressen.se/kronikorer/lizamarklund/1.1021135/skapa-sjalva-lata-parasiter">Liza Marklund</a>, för att förklara för oss hur det ligger till hur mycket hon förlorar, under 1990 såldes 17,6 miljoner nya böcker 2006 var det 22,7 miljoner, Totalt gick det från 33,8 till 41,4 miljoner böcker, då var ändå 1990 ett ganska bra år över snittet på hela 90 talet.</p>
<p>Läs även andra bloggares åsikter om <a href="http://bloggar.se/om/Pirate+Bay" rel="tag">Pirate Bay</a>, <a href="http://bloggar.se/om/%E5tal" rel="tag">åtal</a>, <a href="http://bloggar.se/om/Yttrandefrihet" rel="tag">Yttrandefrihet</a>, <a href="http://bloggar.se/om/kultur" rel="tag">kultur</a>, <a href="http://bloggar.se/om/Liza+Marklund" rel="tag">Liza Marklund</a></p>
<img src="http://blog.balp.nu/?ak_action=api_record_view&id=68&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.balp.nu/2008/02/pirate-bay/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dokumentera, del II</title>
		<link>http://blog.balp.nu/2007/08/dokumentera-del-ii/</link>
		<comments>http://blog.balp.nu/2007/08/dokumentera-del-ii/#comments</comments>
		<pubDate>Fri, 10 Aug 2007 16:20:38 +0000</pubDate>
		<dc:creator>Balp</dc:creator>
				<category><![CDATA[Programering]]></category>

		<guid isPermaLink="false">http://blog.balp.nu/?p=40</guid>
		<description><![CDATA[Dags för del två i kod och dokumentations serien. Tänkte ägna denna åt den första av mins principer närhet. Med närhet menar jag att kod och dokumentation bör vara så nära varandra som möjligt. Ju närmare desto större chans att man läser, reflekterar och uppdaterar dokumentationen. Ju enklare det är att uppdatera ju större chans [...]]]></description>
			<content:encoded><![CDATA[<p>Dags för del två i kod och dokumentations serien. Tänkte ägna denna åt den första av mins principer närhet. Med närhet menar jag att kod och dokumentation bör vara så nära varandra som möjligt. Ju närmare desto större chans att man läser, reflekterar och uppdaterar dokumentationen. Ju enklare det är att uppdatera ju större chans att den är korrekt. Detta leder också till att dokumentationen lever med kod och produkt och inte blir något som hanteras i efter hand. Det finns ett antal olika sätt att komma fram till en sådan situation. Jag föredrar att jobba med dokumentation i källkoden framför annan dokumentation. Många språk idag har stöd för detta i någon form, javadoc, pydoc eller likande. Finns detta är det det uppenbart bästa att jobba med finns det inte kan man titta på <span class="link-external"><a href="http://sourceforge.net/projects/doxygen/">doxygen </a></span>det det är enkelt och har fungerat i många projekt.</p>
<p>Det är också viktigt att man ser till att använda och uppdatera dessa kommentarer på ett bra sätt när man jobbar i den.</p>
<img src="http://blog.balp.nu/?ak_action=api_record_view&id=40&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.balp.nu/2007/08/dokumentera-del-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AI?</title>
		<link>http://blog.balp.nu/2007/08/ai/</link>
		<comments>http://blog.balp.nu/2007/08/ai/#comments</comments>
		<pubDate>Fri, 03 Aug 2007 16:12:07 +0000</pubDate>
		<dc:creator>Balp</dc:creator>
				<category><![CDATA[Journalistik]]></category>
		<category><![CDATA[Programering]]></category>

		<guid isPermaLink="false">http://blog.balp.nu/?p=34</guid>
		<description><![CDATA[En liten rolig nyhet från ny teknik. Inte för att man bör lägga någon betydelse i ordet förstå eller gilla. Jag är dessutom säker på att det finns hundratals chatter-bottar som skrattar vid vissa tillfällen. Andra bloggar om: programmering, AI, lingvistik]]></description>
			<content:encoded><![CDATA[<p class="plain">En liten <span class="link-external"><a href="http://www.nyteknik.se/art/51652">rolig nyhet från ny teknik</a></span>. Inte för att man bör lägga någon betydelse i ordet förstå eller gilla. Jag är dessutom säker på att det finns hundratals chatter-bottar som skrattar vid vissa tillfällen.</p>
<p>Andra bloggar om: <span class="link-external"><a href="http://bloggar.se/om/programmering" rel="tag">programmering</a></span>, <span class="link-external"><a href="http://bloggar.se/om/AI" rel="tag">AI</a></span>, <span class="link-external"><a href="http://bloggar.se/om/lingvistik" rel="tag">lingvistik</a></span></p>
<img src="http://blog.balp.nu/?ak_action=api_record_view&id=34&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.balp.nu/2007/08/ai/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Test Driven Utveckling (del II)</title>
		<link>http://blog.balp.nu/2007/07/test-driven-utveckling-del-ii/</link>
		<comments>http://blog.balp.nu/2007/07/test-driven-utveckling-del-ii/#comments</comments>
		<pubDate>Sat, 28 Jul 2007 15:59:21 +0000</pubDate>
		<dc:creator>Balp</dc:creator>
				<category><![CDATA[Programering]]></category>

		<guid isPermaLink="false">http://blog.balp.nu/?p=20</guid>
		<description><![CDATA[I den förra delen av denna mini-kurs i TDD skapade vi ett test fall och lite kod till denna, nu är det dags att fortsätta. Våra unit-tester är gröna, i sig är det bättre att lämna programmet i rött, då har man en automatiskt bokmärke på vad man håller på med. Dags att titta på [...]]]></description>
			<content:encoded><![CDATA[<p class="plain">I den förra delen av denna mini-kurs i TDD skapade vi ett test fall och lite kod till denna, nu är det dags att fortsätta. Våra unit-tester är gröna, i sig är det bättre att lämna programmet i rött, då har man en automatiskt bokmärke på vad man håller på med. Dags att titta på vad vi har, kunna få strängen i modersmålet ser ut att fungera, jag her en test som fungerar. Jag kommer inte direkt på något mer som behöver kontrolleras så jag tittar på nästa krav direkt i stället. Kunna få texten i det främmande språket. Testen borde vara mycket lik den för modes målet men med den del skillnader, t.ex. will jag inte ha "God dag" som svar, och jag vill ha en annan metod att anropa, getForeign(). Testen blir:</p>
<p><a title="more" name="more"></a></p>
<pre>	public void testForegin() {
		final String nativeString = "God dag";
		Glossary godDag = new Glossary(nativeString);
		assertEquals("Konnichiwa", godDag.getForeign());
	}</pre>
<p>Detta kompilerar inte måste lägga till en funktion i "Glossary". Återigen absolut enklaste möjliga kod.</p>
<pre>	public String getForeign() {
		return "Konnichiwa";
	}</pre>
<p>Så nu skall allt vara grönt igen. Även här ser vi att vi har upprepat kod, lite snabb refactoring tar bort detta. Jag ser också att testNative() och testForegin() delar på en hel del kod, lika bra att flytta ut den. GlossaryTest blir nu:</p>
<pre>/**
 * Tests for Glossary.
 *
 * - Should be able to get string in native language
 * - Should be able to get string in foregin language
 * - Should be possible to compare both sting with input
 *
 */

package se.arnholm.tdd;

import junit.framework.TestCase;

public class GlossaryTest extends TestCase {
	final String nativeString = "God dag";
	final String foregin = "Konnichiwa";
	final Glossary godDag = new Glossary(nativeString, foregin);

	public void testNative() {
		assertEquals(nativeString, godDag.getNative());
	}

	public void testForegin() {
		assertEquals(foregin, godDag.getForeign());
	}
}</pre>
<p>och Glossary:</p>
<pre>package se.arnholm.tdd;

public class Glossary {
        private String nativeString;
	private String foreignString;

        public Glossary(String nativeName, String foreignName) {
                nativeString = nativeName;
                foreignString = foreignName;
        }

        public String getNative() {
                return nativeString;
        }

	public String getForeign() {
		return foreignString;
	}
}</pre>
<p>Det tredje kravet att det skall vara möjligt att kolla indata mot båda strängarna är jag inte säker längre på vad jag tänkte mig, så jag får gå tillbaka till kunden. Fråga och diskutera hur det är tänkt att fungera. Diskunionerna leder fram till att det skall kunna gå att jämföra en inskriven text (String) med datat in glosan. Något som i alla fall ganska bra går för tillfället. Så jag lämnar det utan att göra någon mer test. Där med är klassen klar till det kommer nya krav.</p>
<img src="http://blog.balp.nu/?ak_action=api_record_view&id=20&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.balp.nu/2007/07/test-driven-utveckling-del-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Test Driven utveckling (del 1)</title>
		<link>http://blog.balp.nu/2007/07/test-driven-utveckling-del-1/</link>
		<comments>http://blog.balp.nu/2007/07/test-driven-utveckling-del-1/#comments</comments>
		<pubDate>Thu, 26 Jul 2007 15:07:33 +0000</pubDate>
		<dc:creator>Balp</dc:creator>
				<category><![CDATA[Programering]]></category>

		<guid isPermaLink="false">http://blog.balp.nu/?p=15</guid>
		<description><![CDATA[Att utveckla test drivet borde vara en självklarhet, trots detta är det många som skriver koden från andra hållet. Att först skriva vad som behöveher göras och där efter skriva så det görs måste vara vettigare än tvärt om. Jag tänkte här göra ett liten exempel på hut det fungerar och bygga ut det. med [...]]]></description>
			<content:encoded><![CDATA[<p class="plain">Att utveckla test drivet borde vara en självklarhet, trots detta är det många som skriver koden från andra hållet. Att först skriva vad som behöveher göras och där efter skriva så det görs måste vara vettigare än tvärt om. Jag tänkte här göra ett liten exempel på hut det fungerar och bygga ut det. med kommentarer och annat runt hur jag kodar. Grunderna i Test Driven Utveckling (TDD i fortsättningen från Test Driven Development) är att man jobbar i tre faser, Röd, Grön, Refactor. Jag kommer att ha lite exempel i java, det var ett tag sedan jag jobbade full fart i java så det kanske ser knepigt ut i bland.</p>
<p>Det första stegat är att skapa en test för det vi vill göra. Jag har bestämt mig att börja titta på en program frö glos förhör. Jag hoppar över mycket av det som behövs antar att det fungerar och tittar på en klass som hanterat en glosa. Jag kommer just nu på tre saker en sådan klass behöver kunna.</p>
<ul>
<li>Visa glosan i modersmålet.</li>
<li>Visa glosan i det främmande språket.</li>
<li>Jämföra det inskrivna med båda orden.</li>
</ul>
<p>Det fösta steget är att skapa klasserna, jag tänger jobba med eclipse som utvecklings miljö idag, det ger mig lite skillnader i hut jag jobbar för att få effektiv hjälp.<br />
<a name="more"></a>Första steget är att skapa den klassen som skall hålla glosan. "New &gt; Class" kalla den för Glossary, Eclipse skapar nu en källkod fil, för denna klass:</p>
<pre>package se.arnholm.tdd;

public class Glossary {

}</pre>
<p>Sedan skapar vi en unit test för denna klass höger klicka på filen eller classen i "Package Explorer" och "New &gt; JUnit Test Case". Vi får ny en ganska tom unittestfil. Jag brukar tycke det är brav att skriva in vilkat krav jag tycker jag på klassen här.</p>
<pre>/**
 * Tests for Glossary.
 *
 * - Should be able to get string in native language
 * - Should be able to get string in foregin language
 * - Should be possible to compare both sting with input
 *
 */

package se.arnholm.tdd;

import junit.framework.TestCase;

public class GlossaryTest extends TestCase {

}</pre>
<p>Nu är det dags att böjra skapa tester, jag skriver in en test testNative() som jag tror kan ta det första behovet.</p>
<pre>	public void testNative() {
		assertEquals("God dag", godDag.getNative());
	}</pre>
<p>Detta kompiklerar inte als men nu skal vi slita på eclipse styrkor, klicka på fel symbolen, Välj "Create Local Variable" och skriv om typen "Object" till "Glossary". Vi får ett nytt fel. Klicke igen och välj "Create method 'getNative()' in type 'Glossary'". "Public String" ser ut som en bra start. Ett fel kvar i GlossaryTest.java, godDay variablen är inte deklarerad. Lägg till " = new Glossary()" i deklarationen. spara och all skall kompiera, vår test funktion är nu.</p>
<pre>	public void testNative() {
		Glossary godDag = new Glossary();
		assertEquals("God dag", godDag.getNative());
	}</pre>
<p>Dags att testa. Höger klicka på filen, "Run as &gt; JUnit test". Det blev rött, dags att fixa felet. klicka på felet i listan och editorn kommer att visa var felet uppstod i test fallet. Ser ut som om getNative() returnerade &lt;null&gt; i stället för "God Dag". Och fixa til det öppna getNative() funktionen (tryck F3), jepp det står return null det är ju fel. Ta bort todo kommentaren och skriv in det vi vill ha, med andra ord, return "God dag"; Kör testen igen det bör bli grönt, bra det fungerar. Dags för lite refactoring. Vi upprepar data från UnitTest faller i koden, inte helt prefekt. Genom i ett par olika steg bryta ut "God dag" strängen in Glossare mot något som kommer från construktorn får vi följande enkla kod.</p>
<pre>public class Glossary {
	String nativeString;
	public Glossary(String nativeName) {
		nativeString = nativeName;
	}

	public String getNative() {
		return nativeString;
	}

}</pre>
<p>Och test faller ät nu:</p>
<pre>public class GlossaryTest extends TestCase {
	public void testNative() {
		final String nativeString = "God dag";
		Glossary godDag = new Glossary(nativeString);
		assertEquals(nativeString, godDag.getNative());
	}

}</pre>
<p>Kört testen igen  och se hur det är grönt. Vi har nu skapat ett första test fall.</p>
<img src="http://blog.balp.nu/?ak_action=api_record_view&id=15&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.balp.nu/2007/07/test-driven-utveckling-del-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

