<?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>Aphög &#187; Datorer</title>
	<atom:link href="http://markatta.com/johan/blog/category/data/datorer/feed/" rel="self" type="application/rss+xml" />
	<link>http://markatta.com/johan/blog</link>
	<description>Veganism, teknik, data och lite annat trams.</description>
	<lastBuildDate>Sun, 11 Apr 2010 09:42:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Scrum</title>
		<link>http://markatta.com/johan/blog/2009/05/21/scrum/</link>
		<comments>http://markatta.com/johan/blog/2009/05/21/scrum/#comments</comments>
		<pubDate>Thu, 21 May 2009 20:35:13 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Datorer]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/?p=401</guid>
		<description><![CDATA[Jag skrev tidigare om några av problemen med mjukvaruutveckling och lovade att jag skulle berätta om scrum &#8211; den &#8220;lättrörliga&#8221; utvecklingsprocess som vi jobbar enligt. I det här inlägget tänker jag försöka skriva en liten introduktion till scrum. Jag har också tänkt att fortsättningsvis skriva inlägg om scrum och de för och nackdelar som jag [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://markatta.com/johan/blog/wp-content/uploads/2009/05/bild-8.png" alt="bild-8" title="bild-8" width="74" height="94" class="alignright size-full wp-image-407" />Jag skrev tidigare om <a href="http://markatta.com/johan/blog/2009/05/09/mjukvaruutveckling/">några av problemen</a> med mjukvaruutveckling och lovade att jag skulle berätta om scrum &#8211; den &#8220;lättrörliga&#8221; utvecklingsprocess som vi jobbar enligt. I det här inlägget tänker jag försöka skriva en liten introduktion till scrum. Jag har också tänkt att fortsättningsvis skriva inlägg om scrum och de för och nackdelar som jag upplevt under ett och ett halvt år med scrum.</p>
<p>Scrum är uppbyggt kring begreppet <i>sprint</i>. En sprint är en period på två till fyra veckor som upprepas om och om igen. Varje iteration innehåller utveckling, tillbakablickar och förbättring. Tanken är att man efter varje period får en verklighetskoll på att man gör rätt saker, det kunderna vill ha och har möjlighet att reagera på om man gör fel snabbt. Hela tiden försöker man också förbättra hur man utvecklar mjukvara genom att ha former för att fånga upp sådant som fungerar dåligt.</p>
<p>På pappret är scrum utöver sprinten tre roller, tre artifakter och fyra olika sorters möten. Vi börjar med rollerna:</p>
<dl>
<dt>teamet</dt>
<dd>
<p>Sju personer plus minus två som utför själva utvecklingen. Teamet skall vara &#8220;korsfunktionellt&#8221; och innehålla all kompetens som behövs för utvecklingen: t.ex. testare, kodare och grafiker.</p>
<p>Teamet jobbar tillsammans med produkten och det är viktigt att uppnå en känsla av gemensamt ansvar för utvecklingen. Man får aldrig säga &#8211; det går dåligt för att han eller hon är så dålig. Att någon saknar kompetens är ett gemensamt problem som måste lösas genom kunskapsspridning och utbildning.</p>
</dd>
<dt>scrum master</dt>
<dd>
<p>En person som är ansvarig för att hjälpa teamet att vara så produktivt som möjligt. Det kan handla om att undanröja olika typer av hinder och störningar på arbetsplatsen allt från tekniska problem till chefen som kommer och stör med frågor i tid och otid. Scrum mastern är också ansvarig för att teamet förstår scrum och att processen fungerar. Kan vara en i teamet, men det finns både för och nackdelar med det.</p>
</dd>
<dt>produktägare</dt>
<dd>
<p>Den person som är ansvarig för att rätt delar av produkten utvecklas i rätt ordning och omfattning (mer om det strax). Skall ha koll på kundnytta, affärsnytta, företagets strategi och baserat på det prioritera.</p>
</dd>
</dl>
<p>Artefakterna då. Lite skum term men i princip handlar det om vilka dokument och saker man faktiskt producerar. Tre stycken:</p>
<dl>
<dt>product backlog</dt>
<dd>
<p>Produktägaren ordnar all funktionalitet som skall in i produkten i ganska övergripande &#8220;backlog items&#8221; i en lång lista. Varje item skall vara ett tvärsnitt genom applikationen som utvecklas och handla om en slutanvändarfunktion &#8211; en bra form är <a href="http://en.wikipedia.org/wiki/User_story">userstories</a>.</p>
<p>Listan är sorterad på en prioritetspoäng på varje item, inga item får ha samma prioritet. De saker som är överst skall vara mer detaljerade och kortare än de lägre prioriterade items:en i listan. Syftet är att lägga tid på att utreda detaljer så nära själva utvecklingen som möjligt.</p>
</dd>
<dt>sprint backlog</dt>
<dd>
<p>I början av varje sprint plockar teamet åt sig så mycket arbete från toppen av produktbackloggen som de tror att de tillsammans kommer klara av att få färdigt under sprinten. De backlog items de plockat åt sig placeras i en prioritetssorterad lista där saker inte får tas bort eller läggas till under sprinten.</p>
<p>Under sprinten jobbar sedan teamet tillsammans med att färdigställa varje item. Ett item skall aldrig vara reserverat för en utvecklare i teamet &#8211; &#8220;pinpointat&#8221;. Tanken är att undvika flaskhalsar när någon blir sjuk eller inte är tillgänglig.</p>
</dd>
<dt>produkten</dt>
<dd>
<p>Det viktigaste så klart. Produkten man utvecklar. Kodbasen och det man &#8220;bygger&#8221; produkten av skall vara i sådant skick att man kan göra en ny version till kund i slutet av varje sprint.</p>
</dd>
</dl>
<p>Och så mötena. Alla möten är &#8220;<i>timeboxade</i>&#8221; vilket innebär att de har en fast längd, om mötet drar ut på tiden så skall man ändå avbryta det efter timeboxen och lära sig till nästa gång att man pratade för mycket detaljer eller inte såg till att mötet flöt på bra. De tre mötena är:</p>
<dl>
<dt>sprintplaneringsmöte</dt>
<dd>
<p>Första dagen på sprinten, teamet och produktägaren. Mötet har två delar, först går teamet och produktägaren igenom de högst prioriterade sakerna i produktbackloggen, teamet ställer frågor om saker de behöver veta för att upskatta hur lång tid varje backlogitem tar att implementera.</p>
<p>Den andra delen av mötet går ut på att teamet delar upp varje backlog item i mindre och mer tekniskt orienterade delar: tasks. När teamet uppskattat tiden det tar att uföra ett item så har produktägaren möjlighet att &#8220;scopa&#8221; om det &#8211; dela upp det i mindre delar och prioritera ned vissa. Produktägaren får däremot inte kräva att teamet gör ett item snabbare genom att tumma på kodkvalité och liknande.</p>
</dd>
<dt>daily scrum</dt>
<dd>
<p>En gång varje dag under sprinten har man ett femtonminutersmöte där varje person i teamet besvarar frågorna &#8220;<i>vad har du gjort sedan senaste mötet</i>&#8220;, &#8220;<i>vad kommer du göra tills imorgon</i>&#8221; och &#8220;<i>vad har förhindrat dig från att vara optimalt produktiv</i>&#8220;.</p>
<p> Det är bara scrum master och teamet som får prata på detta möte men andra är välkomna att vara med och lyssna. Om några i teamet behöver diskutera något ytterligare bestämmer man en mötestid på detta möte.</p>
</p>
</dd>
<dt>sprint review</dt>
<dd>
<p>I slutet av varje sprint skall en handgriplig demo genomföras där varje funktion som är klar skall visas på en dator för alla de som kan vara intresserade. Kunder och chefer får vara med på detta möte, teamet, scrum mastern och produktägaren skall vara med. Bara sådana backlog item som är helt klara får demonstreras här, ett item som saknar någon del räknas inte som klart och måste vara med i en till sprint för att vara klart.</p>
</dd>
<dt>sprint retrospect</dt>
<dd>
<p>På det här mötet så går scrum mastern och teamet igenom vad som varit dåligt och bra under sprinten, vilka beslut man tagit, vilka störningar man haft och vad man skall förbättra nästa sprint. En bra grej eftersom saker som går dåligt ofta kan vara jobbiga att ta upp &#8211; det blir lättare att ta upp känsliga problem i ett konkret forum än att bara resa sig upp en dag och säga dem rakt ut.</p>
</dd>
</dl>
<p>Många utvecklingsprocesser försöker vara detaljerade och innehålla en kokbokslösning på alla aspekter av hur man bedriver mjukvaruprojekt. Scrum lämnar istället ganska många dörrar öppna och man måste i princip alltid anpassa processen efter de speciella krav som finns i varje företag. Nästa scruminlägg tänker jag ägna åt att berätta lite detaljer om scrumimplementationen på min arbetsplats.</p>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2009/05/21/scrum/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mjukvaruutveckling</title>
		<link>http://markatta.com/johan/blog/2009/05/09/mjukvaruutveckling/</link>
		<comments>http://markatta.com/johan/blog/2009/05/09/mjukvaruutveckling/#comments</comments>
		<pubDate>Sat, 09 May 2009 16:04:30 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Datorer]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/?p=390</guid>
		<description><![CDATA[Inom mjukvaruutveckling så finns ett jätteproblem: en extremt liten del av alla projekt lyckas. Oftast blir mjukvaran en kund beställt klar men väldigt sällan i tid &#8211; mjukvaruutveckling är extremt komplicerat och det är i princip omöjligt att förutsäga hur lång tid delar av ett program tar att skriva i förväg. Ett annat problem är [...]]]></description>
			<content:encoded><![CDATA[<p>Inom mjukvaruutveckling så finns ett jätteproblem: en extremt liten del av alla projekt lyckas. Oftast blir mjukvaran en kund beställt klar men väldigt sällan i tid &#8211; mjukvaruutveckling är extremt komplicerat och det är i princip omöjligt att förutsäga hur lång tid delar av ett program tar att skriva i förväg. Ett annat problem är att mjukvaran blir klar men faktiskt inte är vad kunden förväntat sig &#8211; eftersom mjukvara är så pass komplext är det svårt att få kommunikationen att fungera. En tredje variant är att mjukvaran blir klar i tid men att utvecklingsföretaget gör en stor förlust eftersom så mycket mer resurser gått åt till projektet än man förväntat sig.</p>
<p><img src="http://markatta.com/johan/blog/wp-content/uploads/2009/05/okunskap.png" alt="projekt och okunskap" title="projekt och okunskap" width="247" height="250" class="aligncenter size-full wp-image-391" /><br />
Det mest bisarra är att man under hela mjukvaruindustrins existens inte verkar hittat något sätt att komma runt detta. Man kanske saltar sin tidsuppskattning på något sätt för att ta höjd för att man gissat fel, (säg t.ex. att man alltid multiplicerar hur lång tid det tar med 2).</p>
<p>Ett annat problem är att när man håller på med ett stort mjukvaruprojekt så kanske inte det en kund ville ha från början är samma sak som de vill ha ett år senare när det är klart. Ändå gör man först en förstudie och försöker mycket detaljerat dokumentera exakt vad man vill ha &#8211; vad man kallar för kravspecifikation. Denna dokumentation skall man sedan kunna använda som &#8220;bevis&#8221; för att beställningen är färdig. Utöver att världen är föränderlig är det mycket svårt att lyckas fånga varenda detalj man vill ha på papper. Det är möjligt att uppfylla en kravspec exakt men ändå ha skrivit ett system som är helt oanvändbart &#8211; ett något raljerande exempel: &#8220;det stod att man skulle kunna skicka mail, inte att det skulle gå utan att trycka på tio knappar och sedan snurra ett varv med händerna över huvudet&#8221;. </p>
<p>En kravspec kan också göra att man får en situation där kund och utvecklare är som motparter istället för att som det egentligen är de faktiskt har ett gemensamt mål som allt blir bäst om de hjälps åt att nå (en situation jag upplevt själv).</p>
<p>När kunden lagt två månader på att skriva ett jättedokument om exakt vad de vill ha finns en risk att man som utvecklare stänger in sig med dokumentet och kodar på för glatta livet. Ett år senare släpper man sin produkt och det visar sig att man feltolkat hälften av kraven totalt. &#8220;Att man skall kunna skicka mail&#8221; betyder ju inte att <strong>alla</strong> skall det, det är ju självklart! &#8220;Det kan ju inte ta en halvtimme att visa sitt banksaldo&#8221; &#8211; &#8220;Det stod inget om hur lång tid det fick ta&#8221;.</p>
<p>På min arbetsplats (<a href="http://www.databyran.se">Databyrån</a>) har vi sedan ett och ett halvt år tillbaka (tror jag) arbetat enligt ett <a href="http://sv.wikipedia.org/wiki/Agile">&#8220;lättrörligt&#8221; eller &#8220;agilt&#8221;</a> arbetssätt som kallas Scrum. Jag är en av initiativtagarna men att vi arbetar på detta sätt är ganska väl förankrat i hela företaget. I framtiden tänker jag skriva och berätta mer om Scrum och hur det löser de problem jag nu beskrivit och fler.</p>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2009/05/09/mjukvaruutveckling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arrrgh. Trasig hårddisk!</title>
		<link>http://markatta.com/johan/blog/2008/12/14/arrrgh-trasig-harddisk/</link>
		<comments>http://markatta.com/johan/blog/2008/12/14/arrrgh-trasig-harddisk/#comments</comments>
		<pubDate>Sun, 14 Dec 2008 12:25:39 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Datorer]]></category>
		<category><![CDATA[Gnäll]]></category>
		<category><![CDATA[Data]]></category>
		<category><![CDATA[hårddisk]]></category>
		<category><![CDATA[trasig]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/?p=299</guid>
		<description><![CDATA[Hårddisken som vi har (hade) all musik och film på har gått sönder. Typ 40 gb musik puts väck sådär bara. Eftersom det var så mycket data hade vi ingen backup på det. Hårddisken täcks av någon utökad garanti men jag hade hellre fått köpa ny hårddisk och behållt musiken om jag fått välja. Sitter [...]]]></description>
			<content:encoded><![CDATA[<p>Hårddisken som vi har (hade) all musik och film på har gått sönder. Typ 40 gb musik puts väck sådär bara. Eftersom det var så mycket data hade vi ingen backup på det. Hårddisken täcks av någon utökad garanti men jag hade hellre fått köpa ny hårddisk och behållt musiken om jag fått välja. Sitter med ett hårddiskräddningsprogram och försöker rädda något men det ser inte så lovande ut:</p>
<div class="codesnip-container" >katatonia mnt # ddrescue /dev/sda /mnt/blackdisk/rescue.img</p>
<p>Press Ctrl-C to interrupt<br />
rescued:         0 B,  errsize:  42698 MB,  current rate:        0 B/s<br />
   ipos:    42698 MB,   errors:       1,    average rate:        0 B/s<br />
   opos:    42698 MB<br />
Copying data&#8230;</p></div>
<p>Jaja. Det är väl bara att sätta sig och börja rippa om hela skivsamlingen dårå. :P</p>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2008/12/14/arrrgh-trasig-harddisk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Komma åt JBoss caller principal från icke-EJB</title>
		<link>http://markatta.com/johan/blog/2008/09/23/komma-at-jboss-caller-principal-fran-icke-ejb/</link>
		<comments>http://markatta.com/johan/blog/2008/09/23/komma-at-jboss-caller-principal-fran-icke-ejb/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 16:01:45 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Datorer]]></category>
		<category><![CDATA[Data]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[jboss]]></category>
		<category><![CDATA[JEE]]></category>
		<category><![CDATA[jobb]]></category>
		<category><![CDATA[programmering]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/?p=275</guid>
		<description><![CDATA[Jag lovade ju Joga att skriva ett inlägg om vad jag gör på jobbet, dessutom är det här något jag letat efter en lösning på väldigt länge så det kanske kan vara någon till nytta: Vi har i vår applikation jag jobbar med en JPA-lyssnare som vi vill skall sköta spårbarheten, när en entitet blir [...]]]></description>
			<content:encoded><![CDATA[<p>Jag lovade ju Joga att skriva ett inlägg om vad jag gör på jobbet, dessutom är det här något jag letat efter en lösning på väldigt länge så det kanske kan vara någon till nytta:</p>
<p>Vi har i vår applikation jag jobbar med en JPA-lyssnare som vi vill skall sköta spårbarheten, när en entitet blir insertad eller uppdaterad i databasen skall det slängas med en tidsstämpel och användarnamn på användaren som ändrade/skapade entiteten. Normalt är man ju i en sessionsböna och kan komma åt användaren med <i>getCallerPrincipal()</i> på en injicerad <i>EjbContext</i> men eftersom vi är i en pojo så kan vi inte komma åt vår principal den vägen.</p>
<p>Lyssnaren ser ut såhär:</p>
<div class="codesnip-container" >
<div class="codesnip"><span class="kw2">public</span> <span class="kw2">class</span> Spårbarhetslyssnaren <span class="br0">&#123;</span><br />
&nbsp; @PreUpdate<br />
&nbsp; <span class="kw2">public</span> <span class="kw4">void</span> föreUpdate<span class="br0">&#40;</span>SpårBarEntitet entitet<span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; Subject caller = <span class="br0">&#40;</span>Subject<span class="br0">&#41;</span> PolicyContext.<span class="me1">getContext</span><span class="br0">&#40;</span><span class="st0">&#8220;javax.security.auth.Subject.container&#8221;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?q=allinurl%3ASet+java.sun.com&#038;bntl=1"><span class="kw3">Set</span></a> principals = caller.<span class="me1">getPrincipals</span><span class="br0">&#40;</span>SpecialPrincipal.<span class="kw2">class</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; SpecialPrincipal principal = <span class="br0">&#40;</span>SpecialPrincipal<span class="br0">&#41;</span> principals.<span class="me1">iterator</span><span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">next</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; entitet.<span class="me1">s</span>ättVemSomGjordet<span class="br0">&#40;</span>principal.<span class="me1">getVemSomGj</span>ört<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
</div>
<p>Men när jag körde så fick jag NullPointerException eftersom getContext inte behagade returnera någonting. Efter mycket letande hittade jag en diskussion på en JBoss-mailinglista där det visade sig att man måste specificera säkerhetsdomän även för modulen som innehåller entiteterna/lyssnaren. Vi hade tidigare bara specat detta för vårt affärslogiklager eftersom det bara är det som innehåller remote-ejb:er.</p>
<p>Så, glöm inte att sätta upp security-domain i en jboss.xml för den modul som innehåller entiteter/fasadbönor/lyssnare om du inte har dem i samma modul som dina remotebönor.</p>
<p>Bit i den du, Joga!</p>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2008/09/23/komma-at-jboss-caller-principal-fran-icke-ejb/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Obegripligt problem med apples wifi</title>
		<link>http://markatta.com/johan/blog/2008/08/31/obegripligt-problem-med-apples-wifi/</link>
		<comments>http://markatta.com/johan/blog/2008/08/31/obegripligt-problem-med-apples-wifi/#comments</comments>
		<pubDate>Sun, 31 Aug 2008 11:39:45 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Datorer]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[laptop]]></category>
		<category><![CDATA[nätverk]]></category>
		<category><![CDATA[wifi]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/?p=260</guid>
		<description><![CDATA[Häromdagen när jag höll på och muckade med nätverket så slutade mitt trådlösa nätverkskort (Airport Express) i min Macbook Pro att fungera. Det hände inget när jag klickade på symbolen på menyraden och jag kunde inte slå på det genom nätverksinställningarna. När jag kollade i loggarna så dök det upp ett sådant här varje gång [...]]]></description>
			<content:encoded><![CDATA[<p>Häromdagen när jag höll på och muckade med nätverket så slutade mitt trådlösa nätverkskort (Airport Express) i min Macbook Pro att fungera. Det hände inget när jag klickade på symbolen på menyraden och jag kunde inte slå på det genom nätverksinställningarna.</p>
<p>När jag kollade i loggarna så dök det upp ett sådant här varje gång jag försökte slå på det trådlösa nätverkskortet:</p>
<div class="codesnip-container" >2008-08-24 21.43.18 SystemUIServer[137] Error: airportd MIG failed = 1 ((os/kern) invalid address)  (port = 26651)</div>
<p>Sökte lite på google utan att hitta något. Startade om macbooken ett par gånger utan att problemet löstes. Jag testade att stoppa och starta interfacet med <i>ifconfig</i> i en terminal och då började nätverket fungera igen (en1 är mitt wifi-kort):</p>
<div class="codesnip-container" >sudo ifconfig en1 down<br />
sudo ifconfig en1 up</div>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2008/08/31/obegripligt-problem-med-apples-wifi/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Listig kryptering av alla mail i OsX</title>
		<link>http://markatta.com/johan/blog/2008/08/27/listig-kryptering-av-alla-mail-i-osx/</link>
		<comments>http://markatta.com/johan/blog/2008/08/27/listig-kryptering-av-alla-mail-i-osx/#comments</comments>
		<pubDate>Wed, 27 Aug 2008 14:59:17 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Datorer]]></category>
		<category><![CDATA[Data]]></category>
		<category><![CDATA[kryptering]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[säkerhet]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/?p=265</guid>
		<description><![CDATA[Efter att Robins dator blev stulen häromdagen har jag gått och funderat på hur sjukt jobbigt det vore om jag råkade ut för samma sak. Själva datorn är ju inte så speciellt jobbig att ersätta, eftersom det är min jobbdator så skulle det säkert lösa sig ganska snabbt. Det som däremot är jobbigt är ju [...]]]></description>
			<content:encoded><![CDATA[<p>Efter att Robins dator blev stulen häromdagen har jag gått och funderat på hur sjukt jobbigt det vore om jag råkade ut för samma sak. Själva datorn är ju inte så speciellt jobbig att ersätta, eftersom det är min jobbdator så skulle det säkert lösa sig ganska snabbt. Det som däremot är jobbigt är ju saker på hårddisken som är av mer privat karaktär. Jag sparar t.ex. en massa lösenordsmail från olika webplatser i mailen. </p>
<p>Om någon stal datorn och hade pc-körkort är det ju inte helt omöjligt att de vet hur man startar datorn med t.ex. en linux-cd och får tillgång till allt på hårddisken, även om de inte kan klura ut inloggningslösenordet. I OsX finns ju file-vault som krypterar hela ens hemkatalog, men jag har rätt mycket data där t.ex. virtuella maskiner på tiotals gigabyte som jag inte har något intresse av att kryptera.</p>
<p>Jag läste lite på nätet och upptäckte en typ av skivavbildsfiler som finns i OsX 10.5 som skapar ett filsystem i en katalog med &#8220;band&#8221; om 8Mb var. När en fil i skivavbilden ändrats är det bara det band som filen ligger i som ändras och det gör att det funkar fint med backup. Med vanliga filsystem i filer så ändras ju hela filen så att backupen måste innehålla hela filsystemet vid varje backuptillfälle.</p>
<p><div id="attachment_266" class="wp-caption alignleft" style="width: 160px"><a href="http://markatta.com/johan/blog/wp-content/uploads/2008/08/screen1.png"><img src="http://markatta.com/johan/blog/wp-content/uploads/2008/08/screen1-150x150.png" alt="Bundlen ser ut som en fil i findern" title="sparse bundle i finder" width="150" height="150" class="size-thumbnail wp-image-266" /></a><p class="wp-caption-text">Bundlen ser ut som en fil i findern</p></div> Hursomhelst, så här gjorde jag. Först skapade jag med <b>Skivverktyg</b>et en &#8220;sparse bundle&#8221; (som var översatt till &#8220;glest paketerad skivavbild&#8221;) krypterad med 256 bitar. Bundlen placerade jag i ~/Secure.sparsebundle jag gav den dessutom volymnamnet Secure. </p>
<p>När Sedan såg jag till att Mail.app var nedstängt. Skivverktyget hade redan automatmonterat det krypterade filsystemet, annars hade jag kunnat dubbelklicka på det för att montera det. Monteringspunkten är /Volumes/Secure. Jag flyttade helt sonika mails datakatalog från ~/Library/Mail till /Volumes/Secure/Library/Mail och sedan skapade jag en symlänk från den nya platsen till ~/Library/Mail</p>
<div class="codesnip-container" >$ mkdir /Volumes/Secure/Library<br />
$ mv ~/Library/Mail /Volumes/Secure/Library/Mail<br />
$ ln -s /Volumes/Secure/Library/Mail ~/Library/Mail</div>
<p>Sedan startade jag Mail.app igen och vips så var datat krypterat utan att Mail vet om det. Det jag saknar nu är något sätt att automatmontera Secure-filsystemet när jag loggar in.</p>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2008/08/27/listig-kryptering-av-alla-mail-i-osx/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tjyvar och banditer</title>
		<link>http://markatta.com/johan/blog/2008/08/25/tjyvar-och-banditer/</link>
		<comments>http://markatta.com/johan/blog/2008/08/25/tjyvar-och-banditer/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 19:53:01 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Datorer]]></category>
		<category><![CDATA[laptop]]></category>
		<category><![CDATA[rackartyg]]></category>
		<category><![CDATA[stöld]]></category>
		<category><![CDATA[tjyvar]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/?p=262</guid>
		<description><![CDATA[På mitt jobb har vi flyttat tillfälligt eftersom de renoverar våra lokaler. Så första dagen efter semestern (för både mig och Robin) så var det någon som tog sig in när vi fikade och stal robins laptop och mobiltelefon. Min laptop stod på skrivbordet brevid så jag kom undan med blotta förskräckelsen. Robin hade dessvärre [...]]]></description>
			<content:encoded><![CDATA[<p>På mitt jobb har vi flyttat tillfälligt eftersom de renoverar våra lokaler. Så första dagen efter semestern (för både mig och Robin) så var det någon som tog sig in när vi fikade och stal robins laptop och mobiltelefon. Min laptop stod på skrivbordet brevid så jag kom undan med blotta förskräckelsen. Robin hade dessvärre rätt mycket saker på laptophårddisken som han inte hade backup på :/</p>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2008/08/25/tjyvar-och-banditer/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Blogga från ifån</title>
		<link>http://markatta.com/johan/blog/2008/08/10/blogga-fran-ifan/</link>
		<comments>http://markatta.com/johan/blog/2008/08/10/blogga-fran-ifan/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 09:57:58 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Datorer]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/2008/08/10/blogga-fran-ifan/</guid>
		<description><![CDATA[Det finns ett någorlunda smidigt blogprogram till iPhone för blog-webapplikationen jag använder. Jag här precis fått det att funka så det här är första inlägget jag skriver från telefonen!]]></description>
			<content:encoded><![CDATA[<p>Det finns ett någorlunda smidigt blogprogram till iPhone för blog-webapplikationen jag använder. Jag här precis fått det att funka så det här är första inlägget jag skriver från telefonen!</p>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2008/08/10/blogga-fran-ifan/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Time Capsule/Time Machine sanslöst långsamt</title>
		<link>http://markatta.com/johan/blog/2008/07/20/time-capsuletime-machine-sanslost-langsamt/</link>
		<comments>http://markatta.com/johan/blog/2008/07/20/time-capsuletime-machine-sanslost-langsamt/#comments</comments>
		<pubDate>Sun, 20 Jul 2008 14:13:14 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Datorer]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/2008/07/20/time-capsuletime-machine-sanslost-langsamt/</guid>
		<description><![CDATA[Jag köpte en ny hårddisk igår för att byta ut den i min laptop. Läste tillbaka den gamla hårddiskens innehåll till den nya från vår Time Capsule utan några problem. Det tog ett par timmar men sedan var datorn precis som om inget hänt (nästan, den var snabbare) Det tråkiga är att när den nu [...]]]></description>
			<content:encoded><![CDATA[<p>Jag köpte en ny hårddisk igår för att byta ut den i min laptop. Läste tillbaka den gamla hårddiskens innehåll till den nya från vår Time Capsule utan några problem. Det tog ett par timmar men sedan var datorn precis som om inget hänt (nästan, den var snabbare)</p>
<p>Det tråkiga är att när den nu skall göra första backupen från den återlästa hårddisken så fattar den inte att det är samma filer som redan finns på backuphårddisken så den måste göra en ny full backup, typ 50 Gb. När jag drar igång så går det med 500 Kb/s vilket skulle leda till att det blir klart om en vecka eller så.</p>
<p>Jag upptäckte att det är spotlight (indexerings och sökverktyget i OsX) som är problemet, att den indexerar (eller vad den nu gör) samtidigt som den kopierar. Efter att ha lagt till både min laptophårddisk och time-machine backupdisken till spotlights lista över platser att inte söka på så går överföringen upp från runt 500 Kb/s till ungefär 10 Mb/s.</p>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2008/07/20/time-capsuletime-machine-sanslost-langsamt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Få squeezecenter att spela m4a-filer från iTunes plus</title>
		<link>http://markatta.com/johan/blog/2008/07/12/fa-squeezecenter-att-spela-m4a-filer-fran-itunes-plus/</link>
		<comments>http://markatta.com/johan/blog/2008/07/12/fa-squeezecenter-att-spela-m4a-filer-fran-itunes-plus/#comments</comments>
		<pubDate>Sat, 12 Jul 2008 15:04:35 +0000</pubDate>
		<dc:creator>johan</dc:creator>
				<category><![CDATA[Datorer]]></category>
		<category><![CDATA[Musik]]></category>

		<guid isPermaLink="false">http://markatta.com/johan/blog/2008/07/12/fa-squeezecenter-att-spela-m4a-filer-fran-itunes-plus/</guid>
		<description><![CDATA[Köpte en katatoniasingel som jag ville spela på squeezeboxen men det gick inte något vidare. För att få det att fungera måste man trans-koda filerna till wav, mp3 eller flac. Installera först en fräsh version av faad2 och se till att det finns på PATH för squeezebox (jag kör ju gentoo så i mitt fall [...]]]></description>
			<content:encoded><![CDATA[<p>Köpte en katatoniasingel som jag ville spela på squeezeboxen men det gick inte något vidare. För att få det att fungera måste man trans-koda filerna till wav, mp3 eller flac. Installera först en fräsh version av faad2 och se till att det finns på PATH för squeezebox (jag kör ju gentoo så i mitt fall typ &#8220;emerge faad2&#8243;). Sedan måste redigera squeezecenters <b>convert.conf-fil</b> (på gentoo /etc/squezecenter/convert.conf) för att först ta bort de rader som använder mov123 för formatet mov och sedan lägga till raderna nedan:</p>
<div class="codesnip-container" >
<div class="codesnip"># Transcoding for AAC files.<br />
mov flc * *<br />
&nbsp; &nbsp; <span class="re0"><span class="br0">&#91;</span>faad<span class="br0">&#93;</span> -q -w -f <span class="nu0">2</span> $FILE$ | <span class="br0">&#91;</span>flac<span class="br0">&#93;</span></span> -cs &#8211;totally-silent &#8211;compression-level-<span class="nu0">0</span> &#8211;endian little &#8211;sign signed &#8211;channels <span class="nu0">2</span> &#8211;bps <span class="nu0">16</span> &#8211;sample-rate <span class="nu0">44100</span> -</p>
<p>mov mp3 * *<br />
&nbsp; &nbsp; <span class="re0"><span class="br0">&#91;</span>faad<span class="br0">&#93;</span> -q -w -f <span class="nu0">2</span> $FILE$ | <span class="br0">&#91;</span>lame<span class="br0">&#93;</span></span> &#8211;resample <span class="nu0">44100</span> &#8211;silent -q $QUALITY$ -b $BITRATE$ -x -r &#8211;</p>
<p>mov wav * *<br />
&nbsp; &nbsp; <span class="re0"><span class="br0">&#91;</span>faad<span class="br0">&#93;</span></span> -q -w -f <span class="nu0">2</span> $FILE$</div>
</div>
<p>Observera att det inte skall vara några radbrytningar i [faad]-raderna.</p>
]]></content:encoded>
			<wfw:commentRss>http://markatta.com/johan/blog/2008/07/12/fa-squeezecenter-att-spela-m4a-filer-fran-itunes-plus/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
