<?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>Webbgaraget</title>
	<atom:link href="http://www.webbgaraget.se/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.webbgaraget.se</link>
	<description>Webbyrå i Uppsala som gillar WordPress och användarvänliga system</description>
	<lastBuildDate>Tue, 18 Jun 2013 12:02:38 +0000</lastBuildDate>
	<language>sv-SE</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5</generator>
		<item>
		<title>Håll pulsen uppe med WordPress 3.6 nya Heartbeat API</title>
		<link>http://www.webbgaraget.se/2013/06/18/hall-pulsen-uppe-med-wordpress-3-6-nya-heartbeat-api/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hall-pulsen-uppe-med-wordpress-3-6-nya-heartbeat-api</link>
		<comments>http://www.webbgaraget.se/2013/06/18/hall-pulsen-uppe-med-wordpress-3-6-nya-heartbeat-api/#comments</comments>
		<pubDate>Tue, 18 Jun 2013 12:01:18 +0000</pubDate>
		<dc:creator>Anders</dc:creator>
				<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2567</guid>
		<description><![CDATA[I den kommande versionen av WordPress (version 3.6, som planerades att släppas den 20 maj men tyvärr ännu inte letat sig ut) har man implementerat något som kallas för <a title="#23216 (Create &#34;WP Heartbeat&#34; API) – WordPress Trac" href="http://core.trac.wordpress.org/ticket/23216">Heartbeat API</a>. Idag ska jag gå igenom denna nya företeelse lite kort och visa vilka möjligheter det kan medföra dig som WordPress-utvecklare. ]]></description>
				<content:encoded><![CDATA[<p>I den kommande versionen av WordPress (version 3.6, som planerades att släppas den 20 maj men tyvärr ännu inte letat sig ut) har man implementerat något som kallas för <a title="#23216 (Create &quot;WP Heartbeat&quot; API) – WordPress Trac" href="http://core.trac.wordpress.org/ticket/23216">Heartbeat API</a>. Idag ska jag gå igenom denna nya företeelse lite kort och visa vilka möjligheter det kan medföra dig som WordPress-utvecklare. Eftersom API:et fortfarande är i sin linda och WordPress 3.6 är i betastadiet, kommer jag inte idag gå in närmare på exakt hur du utnyttjar Heartbeat API.</p>
<p>Den nya versionen kommer med en hel del nya funktioner. Ett exempel är inläggslås (post locking) som innebär att när en administratör går in och redigerar ett inlägg så sätts ett lås på det. Låset hindrar då andra administratörer från att redigera samma inlägg. Ett annat exempel är att man vid inaktivitet i redigeringsvyn får upp ett varningsmeddelande om att man snart blir automatiskt utloggad. Dessa funktioner kommer som i ett led i att göra det säkrare för dig som administratör att undvika att förlora nedlagt arbete med ett inlägg.</p>
<p>De nya funktionerna, och även den vidareutvecklade funktionen för autosave av inlägg, baseras på att servern har kontinuerlig kontakt med respektive administratörs klient. Syftet med Heartbeat API är just att simulera en aktiv anslutning mellan klient och server.</p>
<p style="padding-left: 30px;"><em>&#8221;The purpose of this API is to simulate bidirectional connection between the browser and the server. Initially it will be used for autosave, post locking and log-in expiration warning while a user is writing or editing.&#8221;</em></p>
<p>Konceptet som Heartbeat API är utvecklat kring kallas för <em>polling</em>. Istället för att servern har en aktiv anslutning till respektive klient hela tiden, skickar varje klient med jämna mellanrum en uppdatering till servern och säger &#8221;Här är jag&#8221;. Eller med andra ord: Klienten skickar pulssignaler till servern för att tala om att den fortfarande lever. När klienten skickar sin pulssignal kan servern skicka tillbaka data. När data returneras triggas ett event hos klienten. Dessa event kan kärnfunktioner och plugin lyssna på för att utföra arbete när eventen triggas.</p>
<p>Möjligheten till att använda <a title="WebSocket - Wikipedia, the free encyclopedia" href="http://en.wikipedia.org/wiki/WebSocket">WebSockets</a> för att åstadkomma aktiv anslutning mellan server och klient har varit uppe till diskussion hos teamet bakom Heartbeat API. Man kom dock fram till att tekniken än så länge är för ny och att den ännu inte stöds av tillräckligt många webbservrar. Därför blev polling-lösningen den väg man valde att gå.</p>
<p>Heartbeat API är en kombination av PHP- och JavaScript-API:er. Det har tillkommit ett antal WordPress-hookar för att exempelvis redigera frekvensen på pulsslagen eller skicka med data vid inkommande pulsslag. Dessutom tillkommer de event på klientsidan som jag nämner ovan. Dessa finns tillgängliga för att ditt JavaScript ska kunna bli notifierad vid inkommande pulssvar.</p>
<h2>På vilket sätt tänker DU utnyttja Heartbeat API?</h2>
<p>Det ska bli intressant att se vilka användningsområden vi utvecklare kan se med detta API, förutom de som nu initialt implementeras i WordPress 3.6. Mike Hansen på <a title="All about the Heartbeat coming in WordPress 3.6" href="http://www.mojo-themes.com/2013/04/wordpress-is-alive/">The Mojo Blog</a> föreslår exempelvis att kommentarsflödet för ett inlägg kan uppdateras automatiskt allt eftersom kommentarer inkommer. En annan idé skulle vara en widget som visar i realtid hur många användare som är inloggade på sajten.</p>
<p>Din WordPress-sajt kommer snart få eget liv – hur tänker du utnyttja det?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/06/18/hall-pulsen-uppe-med-wordpress-3-6-nya-heartbeat-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>En studie av Apples sajt för Mac Pro</title>
		<link>http://www.webbgaraget.se/2013/06/11/en-studie-av-apples-sajt-for-mac-pro/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=en-studie-av-apples-sajt-for-mac-pro</link>
		<comments>http://www.webbgaraget.se/2013/06/11/en-studie-av-apples-sajt-for-mac-pro/#comments</comments>
		<pubDate>Tue, 11 Jun 2013 16:38:09 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Inspiration]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2542</guid>
		<description><![CDATA[Igår meddelade Apple att de hade jobbat på en ny Mac Pro, som ska släppas under hösten. Arbetshästen, som används vid video- och ljudproduktioner har inte uppdaterats på länge, så meddelandet var nog välkommet hos många. Förutom nyheten släppte Apple även en presentationssida av den nya datorn. Jag har studerat den närmare och tänkte berätta [...]]]></description>
				<content:encoded><![CDATA[<p>Igår meddelade Apple att de hade jobbat på en ny <a href="www.apple.com/mac-pro/">Mac Pro</a>, som ska släppas under hösten. Arbetshästen, som används vid video- och ljudproduktioner har inte uppdaterats på länge, så meddelandet var nog välkommet hos många. Förutom nyheten släppte Apple även en presentationssida av den nya datorn. Jag har studerat den närmare och tänkte berätta några highlights.</p>
<h2>Kombinerar CSS3 och film för att visa animationer</h2>
<p>Hela sajten är en så kallad &#8221;one page website&#8221;. Besökaren kan navigera mellan olika sektioner, steg för steg. Vanligast på sådana sajter är att man får scrolla mellan sektionerna. Här har Apple valt att animera övergångarna med en kombination av CSS3 och film. När besökarne inleder en scroll transformeras bildobjekten. Du kan själv testa genom att dra upp och ned några pixlar. När användaren har scrollat tillräckligt långt, tar ett filmklipp över. Detta klipp är övergången till nästa sektion.</p>
<p>Det är en snygg lösning. Problemet är dock att du måste vänta på att filmen har spelats färdigt till du kan navigera tillbaka. Tröskelvärdet för när animationen ska sätta igång är något lågt.</p>
<h2>Ingen vanlig scroll</h2>
<p>När klippet är slut visas en vanlig container med nästa sektions innehåll. Dock har den sektionen aldrig, i layouten, legat under den föregående. Istället har den varit osynlig och visas nu i fullskärmsläge. Det innebär att någon scrollbar aldrig uppträder. Denna scrollbar hade varit ett hinder i att göra de snygga övergångarna. Den hade ju flyttat sektionen i höjdled vid scroll, vilket hade inneburit konstiga hopp i animationen. Istället detekteras scroll med logik i ett JavaScript, som agerar motor för övergångarna.</p>
<h2>Anpassning av datamängd</h2>
<p>Apple verkar onekligen ha tänkt på datamängden. Filmklippen levereras sammanfogade i ett klipp, som i sin tur finns i olika storlekar beroende på besökarens plattform. Klippet verkar väga 18.6MB för vanliga desktop-användare.</p>
<p>Vad de väger på min iPhone har jag inte tagit reda på. Även om klippet är ganska stort påverkar det inte sidladdningen nämnvärt. Det behöver nämligen inte laddas klart innan sajten kan visas, eftersom man kan räkna med att besökaren inte navigerar fortare mellan sektionerna än vad som behövs.</p>
<p>Som vanligt lyckas Apple inte bara imponera på sina fanboys, utan även mig som frontend-utvecklare med sina sajter. Den här är inget undantag. Jag har inte sett den här typen av one page-design tidigare och hoppas fler anammar den. Förhoppningsvis ser någon till att göra den fullt fungerbar även för användare utan JS med. I Apples fall är sajten bara en tom, svart ruta&#8230;</p>
<p><a href="http://www.apple.com/mac-pro/"><img class="aligncenter size-medium wp-image-2546" alt="apple-mac-pro" src="http://www.webbgaraget.se/wp-content/uploads/2013/06/apple-mac-pro-580x335.png" width="580" height="335" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/06/11/en-studie-av-apples-sajt-for-mac-pro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Olika typer av budskap kräver olika typer av story</title>
		<link>http://www.webbgaraget.se/2013/06/07/olika-typer-av-budskap-kraver-olika-typer-av-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=olika-typer-av-budskap-kraver-olika-typer-av-story</link>
		<comments>http://www.webbgaraget.se/2013/06/07/olika-typer-av-budskap-kraver-olika-typer-av-story/#comments</comments>
		<pubDate>Fri, 07 Jun 2013 13:27:42 +0000</pubDate>
		<dc:creator>Lisa Kriga</dc:creator>
				<category><![CDATA[Storytelling]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2519</guid>
		<description><![CDATA[Jag skriver en serie blogginlägg som handlar om hur du kan använda storytelling för ditt företag, kanske för texter på hemsidan. I mitt förra inlägg skrev jag om hur du bygger upp din berättelse, och i detta sista inlägg i serien (för denna gång) tänker jag nu alltså ta upp hur du anpassar den beroende [...]]]></description>
				<content:encoded><![CDATA[<p>Jag skriver en serie blogginlägg som handlar om hur du kan använda storytelling för ditt företag, kanske för texter på hemsidan. I <a title="Så bygger du upp din berättelse" href="http://www.webbgaraget.se/2013/05/24/sa-bygger-du-upp-din-berattelse/">mitt förra inlägg</a> skrev jag om hur du bygger upp din berättelse, och i detta sista inlägg i serien (för denna gång) tänker jag nu alltså ta upp hur du anpassar den beroende på vilket budskap det är du vill föra fram. Observera att jag här skriver om hur man skriver en text, men det går att applicera även på muntliga berättelser.</p>
<h2>Vem talar du med?</h2>
<p>Det här hör väl egentligen inte till just detta avsnitt, men jag tar upp det ändå eftersom att det är en så viktig del i skapandet av din text. Vem är det du riktar ditt budskap till? Vem ska förstå och vem ska känna igen sig i det du skriver? Vem vill du påverka med din text?</p>
<p>Handlar din text om något tekniskt avancerat men riktar sig till en okunnig läsare så bör du inte svänga dig med en massa tekniska termer, utan använda ord som även en okunnig läsare kan förstå. Det handlar inte om att visa hur duktig du är på det du gör – det handlar om att få läsaren att förstå.</p>
<h2>Budskap avgör story</h2>
<p>När du skriver din text bör du vara på det klara med varför du skriver din text. Vill du berätta om vem ditt företag är? Vill du uppmana till förändring? Vill du främja samarbete? Beroende på vilket ditt budskap är behöver du lägga upp din story på olika sätt.</p>
<p>Här följer en kort sammanställning över de vanligaste berättelsetyperna. Dessa är tagna ur boken The Leader’s Guide to Storytelling, skriven av <a title="Länk till Steve Dennings hemsida" href="http://www.stevedenning.com/site/Default.aspx" target="_blank">storytelling-gurun Stephen Denning</a>. Det är en bra bok att läsa för dig som är intresserad av att veta mer. Jag avslutar varje berättelsetyp med lite egna reflektioner kring användandet av denna.</p>
<h3>Uppmana till förändring &#8211; the springboard story</h3>
<p>En vanlig anledning till att man berättar en story är att man vill uppmana till förändring. Man behöver få åhöraren att visualisera och genomföra den stora förändring som behövs. Enligt Denning bör man då använda det han kallar ”a springboard story”, en språngbrädeberättelse.</p>
<p>Språngbrädeberättelsen handlar om någon som har genomfört en liknande förändring som man själv står inför, gärna nyligen. Berättelsen har ett lyckligt slut, men även ett alternativt (dåligt) slut med vad som skulle ha hänt om inte förändringen genomfördes.</p>
<p>Den har en ensam huvudperson som åhörarna kan identifiera sig med. Det som är viktigt här är att det inte ska vara för mycket detaljer i berättelsen, det distraherar läsaren från sin egen utmaning.</p>
<p>Är du ledare för anställda och ni står inför exempelvis en omorganisation kan berättelsen alltså handla om ett annat företag som genomgått en liknande omorganisation, hur bra det gick för dem efter detta och vad som skulle ha hänt om de inte genomförde omorganisationen.</p>
<p>Detta används även ofta i reklam och vissa tv-program. Ta till exempel viktminskningsprogram á la Biggest Looser där man visar hur de mådde före och efter, berättar hur personen kämpat och hur det skulle ha varit om personen inte hade gått ned i vikt (besök hos läkaren som berättar om en dyster framtid om inget görs). Det får mig alltid att vilja börja äta bättre, träna mer och bli hälsosammare.</p>
<h3>Kommunicera vem du är</h3>
<p>För att en person ska följa dig behöver denne lita på dig, och för att lita på dig behöver denne känna dig. Du behöver alltså kommunicera ut vem du är.</p>
<p>En sådan story handlar ofta om en händelse i personens liv som visar på styrka eller sårbarhet &#8211; och som visar vad talaren lärde sig av händelsen.</p>
<p>Till skillnad från föregående berättelsetyp har en sådan här berättelse ganska mycket (meningsfulla) detaljer och kontext. Detta gör att man bör se till att läsaren har tid att ta till sig berättelsen.</p>
<p>Vid första anblick kan man tänka sig att detta främst är relevant för ledare som behöver vinna sina anställdas tillit, vilket också är fokus i boken. Men jag tror att det är minst lika viktigt att som enskild person på ett företag vinna sina kunders tillit.</p>
<p>Jag har till exempel två favoritmäklare (en i Stockholm där jag bodde förut och en i Gävle), och det som utmärkte just dem var dels att de var ärliga och dels att de bjöd på sig själva. De berättade om sitt eget liv, vilket gjorde att de blev mänskliga och lite mer ”vänner” än ”person i kostym och slips”.</p>
<h3>Kommunicera vem företaget är</h3>
<p>På samma sätt som du behöver ha en persons tillit för att kunna leda denna, behöver ditt företag (och du) kundernas tillit för att de ska köpa av dig. Och på samma sätt behöver de då känna ditt företag &#8211; vilka värderingar och vilken kundservice det har. Ditt företag ger kunderna ett löfte.</p>
<p>Denna story skapas ofta av kunderna själva, och sprids via ”word-of-mouth”, eller så sprids den via produkterna själva. Det viktigaste här är att när man har bestämt sig för sitt företags ”löfte” till kunderna &#8211; så håller man det!</p>
<p>Se till exempel Body Shop som skapade sitt starka varumärke utan vanlig annonsering. De låter sina produkter tala för sig själva med naturliga, icke-djurtestade, ingredienser förpackade i enkla återvinningsbara förpackningar. Dessutom är de starkt engagerade i miljöfrågor, använder små lokala producenter och mycket mer.</p>
<p>Man kommunicerar alltså inte nödvändigtvis sitt löfte uttryckligen i ord, utan man kan som sagt även visa den genom sina produkter och sitt agerande.</p>
<h3>Överföra värden</h3>
<p>Ett område där storytelling är väldigt effektivt är när man ska överföra värden för att skapa tydliga regler. I dessa berättelser använder man sig ofta av liknelser som utspelar sig i någon generell historisk tid samt att man även här använder sig av väldigt lite, relevant, kontext. Fakta i berättelsen kan vara hypotetisk, men den måste vara trovärdig.</p>
<p>Man kan, och bör, självklart även använda detta i kommunikationen med kunderna. Jag kan ta en text jag själv skrev till mitt (fd) företags hemsida som exempel. För att föra fram vad jag menade med värdeordet hållbarhet skrev jag följande:</p>
<blockquote><p>&#8221;När min man skulle köpa en varm och skön tröja för någon vinter sedan hittade han en tröja i ull som han tyckte jättemycket om. Den var dessutom på REA! Men även då kostade den 800 kr då den var av ett märke med bättre kvalitet.</p>
<p>Efter lite dividerande kom vi dock fram till att detta köp skulle bli mer hållbart än om han skulle köpa en billig tröja med sämre kvalitet. Långsiktigt skulle det dyrare köpet vara bättre både för plånboken och miljön – och säkert även arbetsförhållandena.</p>
<p>Det är detta som jag strävar efter: att bidra till ett hållbart samhälle genom att erbjuda äkta hantverk som värnar om såväl natur som medmänniskor. Att du dessutom vet exakt vem som gjort din vara ser jag dessutom som ett stort plus!&#8221;</p></blockquote>
<p>Det är självklart även extremt viktigt att du lever som du lär. Skulle jag skriva ovanstående text och sedan sälja billiga smycken som går sönder efter några användningar skulle det inte vara mycket värt.</p>
<h3>Främja samarbete</h3>
<p>Denning säger att man kan främja samarbete genom att skapa ett gemensamt berättande kring en grupps oroligheter och mål. Man kan då börja med en gruppmedlems berättelse, som bör vara rörande nog att inspirera andra att berätta sina berättelser. På detta sätt bygger man upp en känsla av samhörighet genom sitt delade perspektiv.</p>
<p>Detta handlar dock främst om muntligt berättande så det är inget jag går in mer på här.</p>
<h3>Tämja djungeltrumman</h3>
<p>Rykten och skvaller finns i alla organisationer. Ignorerar du dessa riskerar de att skada företaget och distrahera personalen eller externa investerare.</p>
<p>För att möta ryktet kan du använda dig av en story som får det att verka osant eller orimligt. Du kan här använda dig av enkel satir för att underminera ryktet, ryktets skapare eller sig själv. Men håll dig ifrån illvilligt förlöjligande vilket kan få motsatt effekt – med all rätt.</p>
<p>Är ryktet däremot sant, eller troligt, kan du inte göra så mycket mer än att erkänna ryktet, sätta det i perspektiv och gå vidare.</p>
<p>Jag tar ett exempel från boken, fritt översatt till svenska.</p>
<blockquote><p>Under 1992 års presidentkampanj i USA attackerade president George H. W. Bush obevekligt Hillary Clinton för att han ansåg henne olämplig som Landets första dam (First Lady, aka presidentens fru). Detta baserade han på att hon medgett att hon inte hade ägnat sitt vuxna liv till att baka kakor. Vita husets attack avslutades dock när Clintons kampanj svarade med följande: ”George Bush isn’t running for President – apparently he’s campaigning to become First Lady”.</p></blockquote>
<h3>Dela kunskap</h3>
<p>Massor av den kunskap som finns i företag finns endast i de anställdas huvuden. Den är inte nedskriven någonstans utan kommuniceras genom berättelser.</p>
<p>En sådan berättelse, där målet är att dela kunskap, skiljer sig från vanliga berättelser genom att de saknar hjälte och intrig. De handlar mer om problem och hur (och varför) man löste dem – eller inte löste dem.</p>
<p>I berättelsen hittar man en beskrivning av problemet, omständigheterna, lösningen och förklaringen. Detta ger berättelsen en ganska negativ ton och fokusen på detaljer för varför någonting fungerade gör att berättelsen är ganska ointressant för en utomstående.</p>
<p>Samlar man in dessa berättelser är det viktigt att de sprids, och att de sprids på ett sätt så att de faktiskt används. Mängder med information som inte används gör ungefär lika mycket nytta som den som är fast i enskilda individers tankar.</p>
<h3>Leda in i framtiden &#8211; dela dina visioner</h3>
<p>Genom att berätta en story kan man få människor att känna sig bekanta och bekväma med framtiden som berättas, för att på så sätt förenkla förändringsprocessen.</p>
<p>Detta är dock en väldigt svår story att klara av. Man måste ge lyssnaren/läsaren nog information för att de ska kunna föreställa sig framtiden så som man vill, men inte för mycket detaljer som kan tänkas förändras och därmed bli felaktiga. Storyn måste kunnas omformas i mottagarens tanke vartefter tiden går.</p>
<p>Ett alternativ till denna story är den berättelse som uppmanar till förändring (the springboard story).</p>
<h2>Text för webben</h2>
<p>En sista sak jag vill poängtera är att det är två helt skilda saker att berätta dessa storys muntligt och skriftligt (även om ovanstående gäller för båda), och det är två helt olika saker att skriva för print och att skriva för webb.</p>
<p>När du ska skriva texter till din hemsida behöver du tänka på exempelvis att hålla texten kort, ha relevanta rubriker, skriva det viktigaste först och lyfta fram viktig information på rätt sätt.</p>
<p>Du kan läsa mer i <a title="Länk till pdf fil med internetguiden Skriva för webben." href="https://www.iis.se/docs/Att_skriva_for_webben_-_webb_2_.pdf" target="_blank">internetguiden Skriva för webben av Erik Geijer (pdf-fil)</a>.</p>
<h2>Nå fram med ditt budskap</h2>
<p>Enligt Stephen Denning är en av de saker som skiljer storytelling från vanligt berättande att storytelling har ett tydligt syfte. Du berättar inte om ditt företag bara för att roa, utan har ett syfte med att berätta om det. Du vill att de ska lita på dig, och i längden bli din kund.</p>
<p>Se till att få ut det mesta av din text genom att se till målgrupp, typ av budskap, forum för texten – och för guds skull, lev som du lär!</p>
<h2>Nästa inlägg</h2>
<p>Det var det sista inlägget om storytelling för denna gång. Har du några bra exempel på användning av storytelling, har du använt det själv, har du frågor eller är du intresserad av att veta mer? Skriv gärna en kommentar, eller hör av dig!</p>
<p>I nästa inlägg kommer jag att skriva om WordPress-pluginet WooCommerce, tills dess får ni njuta av sommaren som äntligen infunnit sig!</p>
<p>Och så ett citat av Blake Mycoskie, VD på Tom&#8217;s Shoes:</p>
<div>
<blockquote><p><em>&#8221;I realized the importance of having a story today is what really separates companies. People don’t just wear our shoes, they tell our story. ”</em></p></blockquote>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/06/07/olika-typer-av-budskap-kraver-olika-typer-av-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ha dina typsnitt i molnet med Sky Fonts</title>
		<link>http://www.webbgaraget.se/2013/06/04/spara-typsnitten-i-molnet-med-sky-fonts/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=spara-typsnitten-i-molnet-med-sky-fonts</link>
		<comments>http://www.webbgaraget.se/2013/06/04/spara-typsnitten-i-molnet-med-sky-fonts/#comments</comments>
		<pubDate>Tue, 04 Jun 2013 14:13:25 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[Verktyg]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2494</guid>
		<description><![CDATA[Google Fonts är en stor tillgång för mig när jag designar för webben. Jag tycker att det fungerar otroligt smidigt då jag kan vara säker på att texten faller väl ut på hemsidan och att de inte har några invecklade användarvillkor att ta hänsyn till. I skrivande stund finns det över 600 typsnitt i Googles bibliotek [...]]]></description>
				<content:encoded><![CDATA[<p><a title="Google Fonts" href="http://www.google.com/fonts/">Google Fonts</a> är en stor tillgång för mig när jag designar för webben. Jag tycker att det fungerar otroligt smidigt då jag kan vara säker på att texten faller väl ut på hemsidan och att de inte har några invecklade användarvillkor att ta hänsyn till. I skrivande stund finns det över 600 typsnitt i Googles bibliotek – och visst varierar kvalitén – men det finns tillräckligt många bra för att lyfta designen.</p>
<p>Tidigare var man tvungen att manuellt ladda ner typsnitten som man ville använda i designarbetet, vilket egentligen inte har varit något problem – ända tills man insåg att det fanns en bättre lösning.</p>
<h2>Vad är Sky Fonts?</h2>
<p>Sky Fonts är en tjänst som låter dig temporärt installera de typsnitt du vill använda. Använder du flera datorer så synkroniseras de mellan dem. Tidigare var det enbart kopplat till biblioteket <a title="Fonts.com" href="http://www.fonts.com">Fonts.com</a>, där man genom Sky Fonts kunde hyra de typsnitt man ville använda. Men nu finns också en koppling till Google Fonts, vilket öppnade mina ögon för tjänsten. Sky Fonts synkar inte bara teckensnitten mellan datorer, utan ser också till att de är uppdaterade till den senaste versionen.</p>
<p><img class="size-full wp-image-2495 alignright" alt="skyfonts" src="http://www.webbgaraget.se/wp-content/uploads/2013/06/skyfonts.png" width="373" height="210" />Sky Fonts har främst kortat ner ledtiderna, från att man hittar ett typsnitt till det att man kan använda det i ett program. Efter installationen dyker en ikon för programmet upp i menyn hos OSX där man lätt kan se över sitt urval hos Google. Vyn visar hela katalogen ur Google Fonts och genom att klicka på &#8221;Add&#8221; laddas det valda typsnittet ner och installeras  automatiskt.</p>
<p>I framtiden skulle jag också vilja se möjligheten att jobba med typsnitten direkt, utan att behöva ladda ner dem lokalt. En integration i exempelvis Sketch eller Photoshop som låter dig välja direkt ur Googles bibliotek hade varit otroligt smidigt. Jag tror också att det hade fungerat ganska bra, med tanke på att man ständigt är uppkopplad mot internet.</p>
<p>Om du är sugen på att prova Sky Fonts rekommenderar jag att du besöker deras <a title="SkyFonts" href="http://skyfonts.com">hemsida</a> och laddar ner det. Programmet finns både för Mac och PC. Skriv gärna vad du tycker om det i kommentarsfältet.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/06/04/spara-typsnitten-i-molnet-med-sky-fonts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Markera menyval som aktivt när besökaren är inne på en Custom Post Type</title>
		<link>http://www.webbgaraget.se/2013/05/30/markera-menyval-som-aktivt-nar-besokaren-ar-inne-pa-en-custom-post-type/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=markera-menyval-som-aktivt-nar-besokaren-ar-inne-pa-en-custom-post-type</link>
		<comments>http://www.webbgaraget.se/2013/05/30/markera-menyval-som-aktivt-nar-besokaren-ar-inne-pa-en-custom-post-type/#comments</comments>
		<pubDate>Thu, 30 May 2013 08:08:13 +0000</pubDate>
		<dc:creator>Anders</dc:creator>
				<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2397</guid>
		<description><![CDATA[När du utvecklar ett WordPress-tema och använder dig av Custom Post Types har du oftast en single-vy för varje enskilt inlägg. En svårighet med dessa är att det är klurigt att få menyalternativ att markeras som aktivt när man är inne på inlägget. Känner du igen dig?

Idag kommer jag gå igenom två förslag till lösningar på detta, ett som utnyttjar body_class()-metoden och anpassad CSS samt ett där du lägger till ett filter till hooken nav_menu_css_class.]]></description>
				<content:encoded><![CDATA[<p>När du utvecklar ett WordPress-tema och använder dig av Custom Post Types har du oftast en single-vy för varje enskilt inlägg. En svårighet med dessa är att det är klurigt att få menyalternativ att markeras som aktivt när man är inne på inlägget. Känner du igen dig?</p>
<p>Idag kommer jag gå igenom två förslag till lösningar på detta, ett som utnyttjar body_class()-metoden och anpassad CSS samt ett där du lägger till ett filter till hooken <em>nav_menu_css_class.</em></p>
<p>Båda metoderna som jag idag går igenom förlitar sig på att administratören anger en CSS-klass i adminpanelen för det menyval som ska markeras. Det fungerar fint för den här genomgången, men är ärligt talat inte särskilt användarvänligt. I slutet av den här artikeln går jag igenom alternativ till detta som jag tycker är bättre ur administratörens synvinkel.</p>
<h2>Projektmiljö för demonstration</h2>
<p>Till att börja med behöver du en projektmiljö där du kan laborera med de olika metoderna för markering av menyval. Om du är ivrig att få höra om lösningsförslagen kan du hoppa över detta stycke och <a href="#alternativ-1">gå vidare till nästa del</a>.</p>
<p>Jag har tagit en ren WordPress 3.5.1-installation och skapat ett nytt tema. I temats <em>style.css</em> ser jag till att ange hur jag vill att det aktiva menyvalet ska se ut genom att ange regler för <em>.current-menu-item</em>.</p>
<script src="https://gist.github.com/5668670.js?file=style.css"></script><noscript><p>View the code on <a href="https://gist.github.com/5668670">Gist</a>.</p></noscript>
<p>I <em>functions.php</em> registreras en meny som heter &#8221;main-menu&#8221; och en Custom Post Type med namnet &#8221;event&#8221;.</p>
<script src="https://gist.github.com/5668670.js?file=functions.php"></script><noscript><p>View the code on <a href="https://gist.github.com/5668670">Gist</a>.</p></noscript>
<p>Och i <em>header.php</em> ser vi till att skriva ut menyn &#8221;main-menu&#8221;:</p>
<script src="https://gist.github.com/5668670.js?file=header.php"></script><noscript><p>View the code on <a href="https://gist.github.com/5668670">Gist</a>.</p></noscript>
<p>I mitt exempel har jag valt att menyn ska innehålla alternativen &#8221;Start&#8221;, &#8221;Kalender&#8221; och &#8221;Om oss&#8221;. &#8221;Om oss&#8221; ska vara en vanlig artikelsida, &#8221;Kalender&#8221; är tänkt att visa de inlagda eventen och &#8221;Start&#8221;, ja det är startsidan.</p>
<p>Vi skapar sidorna och lägger till respektive menyalternativ. Som jag nämnde tidigare ska vi också använda oss av WordPress funktionalitet för att ange egna CSS-klasser för menyalternativ. För att få tillgång till dessa måste du på adminvyn för menyer kryssa för &#8221;CSS Classes&#8221; under &#8221;Screen Options&#8221; &gt; &#8221;Show advanced menu properties&#8221;.</p>
<p>Här anger vi CSS-klassen &#8221;events&#8221; för kalenderalternativet:</p>
<p><a href="http://www.webbgaraget.se/wp-content/uploads/2013/05/menyalternativ-css-klass.png"><img class="aligncenter size-medium wp-image-2413" alt="menyalternativ-css-klass" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/menyalternativ-css-klass-580x458.png" width="580" height="458" /></a></p>
<p>Går jag in på Kalender-sidan ser menyn ut så här:</p>
<p style="text-align: center;"><img class="aligncenter size-medium wp-image-2415" alt="" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/menyalternativ-kalender-580x496.png" width="580" height="496" /></p>
<p style="text-align: left;">Klickar jag mig vidare till &#8221;Ett kommande event&#8221; blir det dock inget menyalternativ som är markerat, vilket kan vara förvirrande för dig som besökare. Var på sajten har jag egentligen hamnat nu?</p>
<p style="text-align: center;"><img class="aligncenter" alt="" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/menyalternativ-event-ej-markerad-580x496.png" width="580" height="496" /></p>
<p style="text-align: left;"> Målet idag är att få &#8221;Kalender&#8221; att markeras även när man är inne på ett specifikt event.</p>
<h2 id="alternativ-1">Alternativ 1: body_class() och CSS</h2>
<p>Som du ser på rad 11 i header.php ovan anropar jag WordPress inbyggda metod <a title="Function Reference/body class « WordPress Codex" href="http://codex.wordpress.org/Function_Reference/body_class">body_class()</a> i <em>&lt;body&gt;</em>-taggen. Det den metoden gör är att skriva ut ett <em>class</em>-attribut med ett antal klasser som är aktuella för den vy som besökaren är inne på. Om du vill lägga till egna klasser kan du göra det med ett sträng- eller array-argument till body_class().</p>
<p>När besökaren är inne på ett av våra event lägger WordPress automatiskt in body-klassen &#8221;single-event&#8221;. Det gör att vi i vår CSS-fil kan ange att menyalternativet med klassen &#8221;events&#8221; ska markeras som aktivt om det ligger i body-taggen med klassen &#8221;single-event&#8221;</p>
<p>Vi uppdaterar style.css:</p>
<script src="https://gist.github.com/5668670.js?file=style-2.css"></script><noscript><p>View the code on <a href="https://gist.github.com/5668670">Gist</a>.</p></noscript>
<p>Notera rad 11 som just lagts till. Ladda om singelvyn för &#8221;Ett kommande event&#8221; och du får &#8221;Kalender&#8221; markerat som aktivt menyalternativ.</p>
<p><img class="aligncenter size-medium wp-image-2418" alt="" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/menyalternativ-event-markerad.png-580x496.png" width="580" height="496" /></p>
<h2>Alternativ 2: Filtrera menyalternativens klasser med <i>nav_menu_css_class</i></h2>
<p>Vill du istället lösa problemet med PHP-kod går det faktiskt lika bra. Då använder du dig av filterhooken <em><a title="Plugin API/Filter Reference/nav menu css class « WordPress Codex" href="http://codex.wordpress.org/Plugin_API/Filter_Reference/nav_menu_css_class">nav_menu_css_class</a></em>.</p>
<p>Metoder som filtrerar <i>nav_menu_css_class</i> kan ta emot två argument: <em>$classes</em> och <em>$menu_item</em>. Det förstnämnda argumentet är en array med alla CSS-klasser för aktuellt menyalternativ, och argument nummer två är specifikationen av menyalternativet som ett WP_Post-objekt. Returvärdet från filtermetoden ska vara den filtrerade $classes-arrayen.</p>
<p>Det vi vill göra i vår filtermetod är att (1) kolla om vi är inne på en singelvy för event och (2) kolla om aktuellt menyalternativ har klassen &#8221;events&#8221; angiven. Om båda stämmer så lägger till &#8221;current-menu-item&#8221;-klassen till <em>$classes</em>-arrayen så att menyalternativet markeras som aktivt.</p>
<p>Vi återställer den ursprungliga style.css och lägger istället till lite kod i functions.php. Vår uppdaterade functions.php ser ut som följer. Den nya koden ser du från rad 35 och framåt:</p>
<script src="https://gist.github.com/5668670.js?file=current-menu-item-for-single-cpt-functions.php"></script><noscript><p>View the code on <a href="https://gist.github.com/5668670">Gist</a>.</p></noscript>
<h2>Men användarvänligheten då?</h2>
<p>Ja, hur var det nu med användarvänligheten med dessa lösningar? Att förlita sig på att administratören ska hitta Screen Options-knappen, aktivera &#8221;CSS Classes&#8221; och därefter fylla i rätt värde i fältet för CSS-klass är rent utsagt dumt i mina ögon. Alla lösningar som kräver att man lägger till stycken i sin manual tycker jag är ett användarmässigt bakslag.</p>
<p>Jag har sett andra förslag på lösningar där man har hårdkodat kopplingen mellan en posttyp och ett menyalternativ eller artikelsida (exempelvis mot post-ID eller slug), men det är ju ännu sämre än CSS-klasserna. Var ligger modulariteten där?</p>
<p>Andra har föreslagit att ha en inställningsvy för sitt tema där man helt enkelt väljer en artikelsida för respektive posttyp i en dropdownmeny. Här börjar vi närma oss en bra lösning även för en mindre teknisk administratör. Det jag dock inte gillar med den lösningar är att det är en väldigt ologisk placering av en sådan inställning. Ska jag koppla samman en artikelsida med en posttyp gör jag det givetvis hellre i ett metafält för min sida.</p>
<p>I slutändan har jag dock ett sista förslag som jag antar att ett plugin med fördel kan lösa. Vilket problem var det egentligen vi utgick ifrån? Jo, vi vill att ett menyalternativ ska markeras som aktivt när man är inne på en singelvy av en posttyp. Var är det då mest logiskt att en sådan inställning ligger? Givetvis i vyn där du redigerar dina menyalternativ, något i stil med mitt förslag nedan. Du håller väl med?</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-2448" alt="" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/menyalternativ-installning-posttyp2.png" width="549" height="659" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/05/30/markera-menyval-som-aktivt-nar-besokaren-ar-inne-pa-en-custom-post-type/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Så skapar du textfält med wg-meta-box</title>
		<link>http://www.webbgaraget.se/2013/05/28/sa-skapar-du-textfalt-med-wg-meta-box/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sa-skapar-du-textfalt-med-wg-meta-box</link>
		<comments>http://www.webbgaraget.se/2013/05/28/sa-skapar-du-textfalt-med-wg-meta-box/#comments</comments>
		<pubDate>Tue, 28 May 2013 11:28:35 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Guider]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2389</guid>
		<description><![CDATA[Se vår screencast för hur du lägger till textfält i metaboxar i WordPress med wg-meta-box.]]></description>
				<content:encoded><![CDATA[<p>Istället för att guida dig med text till <a title="Webbgaraget/wg-meta-box · GitHub" href="https://github.com/Webbgaraget/wg-meta-box">vårt bibliotek för metafält</a> bjuder vi på en screencast. Det är en kort genomgång av hur du skapar metaboxar med textfält.<br />
<iframe src="http://www.youtube.com/embed/d1aeZzGP3Is" height="326" width="580" allowfullscreen="" frameborder="0"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/05/28/sa-skapar-du-textfalt-med-wg-meta-box/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Så bygger du upp din berättelse</title>
		<link>http://www.webbgaraget.se/2013/05/24/sa-bygger-du-upp-din-berattelse/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sa-bygger-du-upp-din-berattelse</link>
		<comments>http://www.webbgaraget.se/2013/05/24/sa-bygger-du-upp-din-berattelse/#comments</comments>
		<pubDate>Fri, 24 May 2013 09:10:02 +0000</pubDate>
		<dc:creator>Lisa Kriga</dc:creator>
				<category><![CDATA[Storytelling]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2293</guid>
		<description><![CDATA[Jag skriver en serie blogginlägg om grunderna i storytelling, så att du ska kunna komma igång med detta kraftfulla verktyg och börja implementera det på din hemsida. I mitt förra blogginlägg gav jag dig fem mer konkreta tips på grundläggande saker du bör göra och tänka på för att komma igång med storytelling i ditt [...]]]></description>
				<content:encoded><![CDATA[<p>Jag skriver en serie blogginlägg om grunderna i storytelling, så att du ska kunna komma igång med detta kraftfulla verktyg och börja implementera det på din hemsida.</p>
<p>I <a title="5 tips för att komma igång med storytelling" href="http://www.webbgaraget.se/2013/05/10/5-tips-for-att-komma-igang-med-storytelling/">mitt förra blogginlägg</a> gav jag dig fem mer konkreta tips på grundläggande saker du bör göra och tänka på för att komma igång med storytelling i ditt företag.</p>
<p>I detta blogginlägg kommer jag att berätta hur du bygger upp en berättelse, och vad som gör berättelsen bra. Detta kan du sedan använda för att till exempel skriva företagets skapelseberättelse till hemsidan. Mer om vilka olika berättelser du kan använda dig av kommer i nästa inlägg.</p>
<h2>Narratologi &#8211; berättelsens uppbyggnad</h2>
<p>Narratologi är studiet av berättandet och berättandets natur, funktion och struktur. Aristoteles definierade en berättelse så som en serie handlingar och/eller händelser som tillsammans bildar en enhet så att man kan urskilja en början, en mitt och ett slut. Fler har definierat berättelser på liknande sätt, men utöver det har det varit svårt att hitta universella strukturer. Det finns dock fyra element som återfinns i alla berättelser: budskapet, konflikten, rollfördelningen och handlingen.</p>
<h2>Budskapet</h2>
<p>Budskapet, eller berättelsens sensmoral som det också brukar kallas, är det budskap eller kärnvärde som ska förmedlas och förtydligas genom berättelsen. Utan budskap kan du lika gärna låta bli att berätta din historia.</p>
<p>När det handlar om vardagliga berättelser kan det vara till exempel att man inte ska ropa på hjälp om man inte behöver den (pojken och vargen) eller att kärleken övervinner allt &#8211; även döden (Romeo &amp; Julia). I företagandet handlar det mer om att berätta något om ditt företag eller dess produkter.</p>
<p>När du berättar en berättelse om ditt företag, en produkt eller liknande behöver du alltså fundera på vad som är ditt budskap. Vad är det som ska förmedlas via berättelsen? Är det att ditt företag har extremt bra kundservice? Eller kanske att produkten du berättar om är väldigt miljövänlig? Eller något helt annat?</p>
<p>Kom bara ihåg &#8211; <strong>ett</strong> budskap per berättelse!</p>
<h2>Konflikten eller hindret</h2>
<p>Utan konflikt blir det ingen bra historia – bara tråkigt och förutsägbart. Eftersom att människan strävar efter balans och harmoni gör en konflikt att vi vill finna en lösning på problemet, vilket gör att vi agerar. Det är alltså konflikten som för berättelsen framåt. En vanlig konflikt är till exempel kampen mellan det goda och onda, vars kamp förmedlar budskapet till åhörarna. Det kan även handla om ett hinder som måste övervinnas, till exempel att huvudpersonen måste göra något denne inte själv tror att hen kan.</p>
<p>I din berättelse kan en konflikt exempelvis handla om en missnöjd kund (och hur du vänt detta till en nöjd kund) eller motstånd du mött i form av regler, tillstånd, byråkrati, kostnader, resursbrist eller liknande. Ett hinder kan vara hur du övervunnit någon rädsla (till exempel att sälja) för att lyckas, eller kanske hur du fått kämpa för att samla ihop pengar för att kunna starta företaget.</p>
<h2>Rollfördelningen</h2>
<p>För att kunna levandegöra konflikten eller hindret krävs det karaktärer i din berättelse. Det finns sju karaktärer, eller typroller, som används av i stort sett all senare narratologi. Dessa är: skurken, givaren, hjälparen, den eftersökta personen, sändaren, hjälten och antihjälten. I boken Storytelling &#8211; Branding in Practice av Fog et al använder man något andra roller i den så kallade Sagomodellen. Där talar man om motståndare, hjälpare, mål, välgörare, hjälte och förmånstagare.</p>
<p>Flera av dessa roller eller karaktärsdrag kan finnas i en och samma person, eller så kan flera personer ha samma karaktär eller roll. Även djur, företag, känslor eller liknande kan inneha dessa roller.</p>
<p>Här är ett exempel på en företagsberättelse (här översatt till svenska) från ovan nämnda bok:</p>
<blockquote><p>&#8221;Det var en vanlig morgon och människor började dyka upp till jobbet på ett av Amerikas ledande IT-företag. En stor svart limousin körde långsamt upp och parkerade utanför den imponerande entrén. Företagets VD klev ur bilen. Han var en av grundarna till företaget, och som vanligt gick han upp för trapporna till huvudentrén. Han skulle precis gå in genom de stora glasdörrarna när han hörde en röst säga, &#8221;Jag är väldigt ledsen herrn, men jag kan inte släppa in dig utan ett ID.&#8221; Säkerhetsvakten, som hade jobbat för företaget i många år, såg hans chef rakt i ögonen utan att visa några känslor. VD:n var mållös. Han kände lönlöst i sina fickor. Troligen hade han glömt ID-kortet hemma. Han såg ännu en gång på säkerhetsvakten, kliade sig på kinden och funderade. Sen gick han tillbaka till limousinen. Kvar stod säkerhetsvakten &#8211; ovetandes om att han morgonen efter skulle vara befordrad till säkerhetschef.&#8221;</p></blockquote>
<p>Här är säkerhetsvakten både <em>hjälten</em> och <em>välgöraren</em>, VD:n är <em>motståndaren</em>, <em>hjälparen </em>är säkerhetsvaktens engagemang, <em>målet</em> är ett säkert företag där regler upprätthålls och <em>förmånstagaren</em> är företaget och dess anställda.</p>
<p>I din berättelse är hjälten troligen företaget, en anställd, en produkt eller kanske du själv. Motståndaren kan till exempel vara en missnöjd kund, en anställd som inte tror på sig själv, en chef eller liknande. Denna person ska driva berättelsen genom att tvinga hjälten att jobba mot personlig utveckling och att lösa konflikten.</p>
<p>En viktig sak att tänka på när du skapar din berättelse är att de som läser berättelsen behöver kunna känna igen sig i, identifiera sig med och känna empati med dessa karaktärer. Detta gör att du måste vara noga med att redan innan reda ut vem som är din målgrupp.</p>
<h2>Handlingen</h2>
<p>Det finns olika sätt att bygga upp själva handlingen på. Två vanliga sätt är att antingen berätta en sak i taget enligt en stram struktur, eller att dela upp berättelsen i en början, ett klimax (upptrappning av konflikten) och ett slut (konflikten löses).</p>
<p>En mer omfattande berättelse börjar med ett <em>anslag</em> där du ska fånga läsarens uppmärksamhet och hjälten presenteras. Sedan kommer en <em>presentation av konflikten</em> vilket visar riktningen på resten av berättelsen, samt att målet ofta blir tydligt och vi presenteras för motståndaren. <em>Konflikten trappas upp</em> och når snart <em>&#8221;point of no return&#8221; </em>där hjälten tar ett avgörande beslut, för att sedan fortsätta eskalera tills den når sitt <em>klimax</em>. Där konfronterar hjälten motståndaren och konflikten löses (förhoppningsvis), för att historien sedan ska <em>mattas av</em> och avslutas.</p>
<p>Berättelsen behöver inte följa en kronologisk ordning utan kan hoppa i tiden.</p>
<h2>Din berättelse är din</h2>
<p>Det som är så bra med storytelling är att berättelsen är din. Det är inte så troligt att någon annan har varit med om <strong>exakt</strong> samma sak som du, vilket gör det till ett utmärkt sätt att särskilja dig från konkurrenter, även om ni är väldigt lika på andra sätt.</p>
<p>Se till att utnyttja detta och visa vad som har gjort att du och ditt företag är de ni är i dag.</p>
<h2>Denna veckas uppgift och nästa inlägg</h2>
<p>Till nästa inlägg i serien, som kommer den 7 juni, kan du fundera på vilka berättelser du skulle vilja berätta om dig och ditt företag. Ta gärna förra inlägget i serien till hjälp.</p>
<p>I mitt nästa blogginlägg om storytelling, som även blir det sista för denna gången, kommer jag att skriva just om vilka olika sorters berättelser man kan använda sig av inom corporate storytelling. Då kan du se hur du bör anpassa dina berättelser beroende på syftet med den.</p>
<p>Min vana trogen avslutar jag med ett citat, denna gång från Strunk och White som skrev stilguiden The Elements of Style:</p>
<blockquote><p><em>&#8221;Who knows why certain notes in music are capable of stirring the listener deeply,<br />
though the same notes slightly rearranged are impotent?&#8221;</em></p></blockquote>
<h4>Referenser och lästips</h4>
<p>Dennisdotter, E. &amp; Axenbrant, E. (2008). <em>Storytelling &#8211; Ett effektivt marknadsföringsgrepp.</em> Liber AB: Malmö.</p>
<p>Fog, K., Budtz, C., Munch, P. &amp; Blanchette, S. (2010). <em>Storytelling &#8211; Branding in Practice. </em>Samfundslitteratur Press: Frederiksberg C.</p>
<p>Mossberg, L. &amp; Nissen Johansen, E. (2006). <em>Storytelling &#8211; Marknadsföring i upplevelseindustrin.</em> Studentlitteratur AB: Lund.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/05/24/sa-bygger-du-upp-din-berattelse/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Snygga UI-element och mallar i Sketch</title>
		<link>http://www.webbgaraget.se/2013/05/21/snygga-ui-element-och-mallar-i-sketch/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=snygga-ui-element-och-mallar-i-sketch</link>
		<comments>http://www.webbgaraget.se/2013/05/21/snygga-ui-element-och-mallar-i-sketch/#comments</comments>
		<pubDate>Tue, 21 May 2013 10:37:10 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[Inspiration]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2360</guid>
		<description><![CDATA[Jag har i några tidigare inlägg skrivit mig varm om programmet Sketch – ett designverktyg med fokus på webben. Under den senare tiden har jag märkt att fler och fler börjat använda det, med följden att mer gratismaterial har blivit tillgängligt för dess användare. Många förutspår att Sketch kommer att få ett större genombrott sedan [...]]]></description>
				<content:encoded><![CDATA[<p>Jag har i några tidigare inlägg skrivit mig varm om programmet <a title="Sketch | The designer’s toolbox" href="http://www.bohemiancoding.com/sketch/">Sketch</a> – ett designverktyg med fokus på webben. Under den senare tiden har jag märkt att fler och fler börjat använda det, med följden att mer gratismaterial har blivit tillgängligt för dess användare. Många förutspår att Sketch kommer att få ett större genombrott sedan <a title="The future of Adobe Fireworks « Adobe Fireworks" href="http://blogs.adobe.com/fireworks/2013/05/the-future-of-adobe-fireworks.html">nyheten</a> om att Adobe kommer att avveckla Fireworks släpptes. Här kommer några trevliga gratismallar som du kan använda.</p>
<h2>Fresh UI-kit</h2>
<p><img class="aligncenter size-full wp-image-2361" alt="sketch_template_01" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/sketch_template_01.jpg" width="640" height="472" /> Fresh UI-kit är en snygg samling element till för att skapa ett eget användargränssnitt. Här finns knappar, sökfält, sliders och ett väldigt snyggt volymreglage. <a title="Fresh UI Kit for Sketch | Sketch Gems - Premium Design Files for Sketch" href="http://www.sketchgems.com/free-fresh-ui-kit-for-sketch/">Ladda ner  Fresh UI-kit här</a>.</p>
<h2>Wired</h2>
<p><img class="aligncenter size-full wp-image-2366" alt="sketch_template_a" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/sketch_template_a.jpg" width="640" height="348" /> Wired är ett väldigt enkelt – men gediget – wireframepaket, skapat av Mark Collins. Här finns väldigt många element att välja mellan och det är sällan man upptäcker att något saknas när man skapar wireframes med detta paket. Den mjuka framtoningen gör att man kan skapa tydliga wireframes, som också är behagliga att titta på. <a title="Wired by Mark Collins" href="http://yo.pixxel.co/">Ladda ner Wired här</a>.</p>
<h2>Två mallar till iPhone 5</h2>
<p><img class="aligncenter size-full wp-image-2364" alt="iphone-templates-sketch" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/iphone-templates-sketch.png" width="1536" height="600" /> <a href="http://dribbble.com/rojcyk">Denis Rojčyk</a> har skapat en samling användbara mallar för iPhone 5, vilket kan vara användbart när du designar mobila appar och webbsidor. <a title="iPhone 5 Sketch Templates | Sketch Gems - Premium Design Files for Sketch" href="http://www.sketchgems.com/iphone-5-sketch-templates/">Du kan ladda ner Denis mall</a>. Om man gillar att designa appar för iPhone så får man inte heller missa Bryan Clarks uppsättning av UI-element från iOS6. Här finns det mesta från iOS standardutförande, återgivet i Sketch. <a title="An iOS 6 UIKit template for Sketch.app — Bryan Clark" href="https://bryan-clark.squarespace.com/thoughts/ios-6-template-for-sketch">Bryans mall hittar du här</a>.</p>
<p>Det är kul att verktygslådan för oss som använder Sketch växer. Jag blir själv väldigt inspirerad och ska försöka bjuda på lite eget material under de kommande veckorna. Har du tips på något bra UI-kit, eller annat bra så är du självklart välkommen att tipsa om det i kommentarsfältet.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/05/21/snygga-ui-element-och-mallar-i-sketch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Några andra hack från Sthlm Startup Hack</title>
		<link>http://www.webbgaraget.se/2013/05/16/nagra-andra-hack-fran-sthlm-startup-hack/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=nagra-andra-hack-fran-sthlm-startup-hack</link>
		<comments>http://www.webbgaraget.se/2013/05/16/nagra-andra-hack-fran-sthlm-startup-hack/#comments</comments>
		<pubDate>Thu, 16 May 2013 06:05:04 +0000</pubDate>
		<dc:creator>Anders</dc:creator>
				<category><![CDATA[Inspiration]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2314</guid>
		<description><![CDATA[Lördagen den 11 maj satt vi alltså i en kyrka på Skeppsholmen i Stockholm och deltog i STHLM Startup Hack. Vi hackade ihop ett matAPI på tio timmar – men vad hade de andra för sig?]]></description>
				<content:encoded><![CDATA[<p>Lördagen den 11 maj satt vi alltså i en kyrka på Skeppsholmen i Stockholm och deltog i STHLM Startup Hack. Vi <a title="Hur vi lyckades släppa en körbar version av matAPI under Stockholm Startup Hack" href="http://www.webbgaraget.se/2013/05/14/hur-vi-lyckades-slappa-en-korbar-version-av-matapi-under-stockholm-startup-hack/">hackade ihop</a> ett <a title="matAPI" href="http://www.matapi.se">matAPI</a> på tio timmar – men vad hade de andra för sig?</p>
<p><a title="Stockholm Startup Hack - May 11 / 2013 - #SthlmStartupHack" href="http://sthlmstartuphack.com/">Sthlm Startup Hack</a> är ett öppet hack i den mening att det inte finns något speciellt tema eller en bestämd teknik att använda. Det är helt enkelt bara deltagarnas fantasi som kan sätta gränserna. Okej, det och att man har tio timmar på sig.</p>
<h2>Feels.io</h2>
<p><a href="http://www.feels.io"><img class="aligncenter size-medium wp-image-2336" alt="feels.io" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/feels-io-screenshot1-580x298.png" width="580" height="298" /></a></p>
<p><a title="feels.io" href="http://www.feels.io/">Feels.io</a> är en iPhone-app där man tillsammans med vännerna runtomkring sig spelar in korta videoklipp för att fånga stundens känsla.</p>
<p>Jag gillade skarpt det man fick se av appen när laget hade sin presentation. De hade verkligen lyckats ta fram ett tilltalande och snyggt gränssnitt, vilket känns viktigt när funktionaliteten handlar om att förmedla känslor.</p>
<h2>Sunny Runner</h2>
<p><a href="http://instagram.com/p/ZLnHMbG1ts/"><img class="alignright" alt="Skärmdump från dagens hack. Ikoner från #climaticons." src="http://distilleryimage8.ak.instagram.com/21a4664aba6811e2b68a22000a1f9af0_6.jpg" width="214" height="214" /></a></p>
<p>En löpningsapp till mobilen med ett enda syfte: Att tala om för dig vilka dagar det passar dig bäst att sticka ut och springa, sett ur väderlekssynpunkt. Appen kombinerar användarens kilometermål för veckan med väderleksutsikter från <a title="Forecast" href="http://forecast.io/">forecast.io</a>.</p>
<p>Jag tycker det här var en rolig idé, och något som ligger rätt i tiden i och med den tränings- och löpningshype som råder landet runt. Sunny Runner hade kanske några lunchrumsgrannar behövt igår, då de ställde in sin planerade lunchlöpning på grund av några regnskvättar. Själv gillar jag att löpa i lätt regn, så en inställning för väderpreferenser i appen skulle vara att föredra.</p>
<h2>Code Volley</h2>
<p>Laget bakom <a title="Code Volley" href="http://www.codevolley.com/">Code Volley</a> gick till botten med ett problem som varje utvecklare kan ställas inför: Jag behöver få någon att granska min kod, men vem ställer upp? Code Volley löser detta genom att låta användarna genomföra code reviews på varandras kod. Kickern är att du kan bara få en code review om du själv har utfört en åt någon annan.</p>
<p>Det jag gillade främst med det här hacket var deras presentation. På den minut man hade på sig att presentera hann de både måla upp problemet de såg, diskutera lösningsförslag och sedan visa sin lösning på problemet.</p>
<p style="text-align: center"><a href="http://www.codevolley.com"><img class="size-medium wp-image-2330  aligncenter" alt="Code Volley" src="http://www.webbgaraget.se/wp-content/uploads/2013/05/codevolley-screenshot-580x224.png" width="580" height="224" /></a></p>
<p>Detta var tre exempel dragna ur en hel uppsjö av kreativa projekt från SHTLM Startup Hack. Om du vill läsa om fler projekt, ta en titt på <a title="Projects // STHLM Startup Hack 2013 // Hacker League" href="https://www.hackerleague.org/hackathons/sthlm-startup-hack-2013/hacks">Hacker League</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/05/16/nagra-andra-hack-fran-sthlm-startup-hack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hur vi lyckades släppa en körbar version av matAPI under Stockholm Startup Hack</title>
		<link>http://www.webbgaraget.se/2013/05/14/hur-vi-lyckades-slappa-en-korbar-version-av-matapi-under-stockholm-startup-hack/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hur-vi-lyckades-slappa-en-korbar-version-av-matapi-under-stockholm-startup-hack</link>
		<comments>http://www.webbgaraget.se/2013/05/14/hur-vi-lyckades-slappa-en-korbar-version-av-matapi-under-stockholm-startup-hack/#comments</comments>
		<pubDate>Tue, 14 May 2013 11:25:19 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Inspiration]]></category>

		<guid isPermaLink="false">http://www.webbgaraget.se/?p=2303</guid>
		<description><![CDATA[Läs om vår strategi för att bygga matAPI på tio timmar under Stockholm Startup Hack.]]></description>
				<content:encoded><![CDATA[<p>Planen var att på tio timmar sätta ihop ett API med all data ur <a title="Livsmedelsdatabasen - Livsmedelsverket" href="http://www.slv.se/sv/grupp1/mat-och-naring/vad-innehaller-maten/livsmedelsdatabasen-/">Livsmedelsverkets databas</a>. På tio timmar skulle det finnas ett API, en läsbar dokumentation och även en demoapplikation. På tio timmar skulle allt fungera och faktiskt vara så klart att utvecklare kunde använda det. Det lyckades vi med.</p>
<p>Målen för hackathons är inte alltid ett körbart resultat. Ibland passar många team på att lära sig nya tekniker, utveckla sina kunskaper eller bara lattja med koden. Vi ville dock nå fram till en färdig produkt. För att lyckas med det behövde vi identifiera de största hindren och ta oss förbi dem. I det här inlägget tänkte jag berätta om några delar av vår strategi.</p>
<h2>Upprätta en backlog med tydliga och korta aktiviteter</h2>
<p>Planeringen av projektet inleddes med ett möte där vi upprättade en backlog. Vi visste att hela scopet inte skulle kunna täckas, utan såg till att endast ta med de fundamentala funktionerna i v1.0. Andreas utsågs till projektledare. Han förde in alla aktiviteter i loggen. Därefter bestämde vi vilka aktiviteter som skulle ingå. Genom att hålla scopet smalt så att vi kunde ha en releasbar version med några timmars marginal innan deadline. Denna backlog skulle vi även komma att jobba utifrån vid eventuell tid till vidareutveckling.</p>
<h2>Ha en färdig infrastruktur</h2>
<p>Ett sånt här projekt är beroende av en tydlig infrastruktur. I vårt fall är den ganska rudimentär. Vi kör en VPS med webbserver och databas. I vilket fall som helst ville vi ha den på plats innan hackets start. Dessutom behövde vi ha utvecklingsmiljöer på samtliga team-medlemmars datorer. Att sätta upp dem under hacket skulle bara ta onödig tid och leda till frustration om (oftare &#8221;när&#8221;) något krånglade. Fokuset kunde nu istället ligga på aktiviteterna i backloggen.</p>
<h2>Korta och många sprintar för att kunna anpassa planen efter behov</h2>
<p>En planering brukar oftast inte kunna följas slaviskt. Det händer att man behöver prioritera om och eventuellt göra avkall på viss funktionalitet till fördel för annan. Dessutom ville vi hela tiden kunna ha en uppdaterad status av hur nära release vi var. Därför bestämde vi att ha många sprintar som avslutades med gemensam genomgång. Vid avslutet planerade vi även nästkommande sprint.</p>
<p>De tio timmarna delades in i fem sprintar á två timmar. Vår backlog innehöll inga aktiviteter som behövde ta längre tid än så. Ofta är en aktivitets scope subjektivt. Här krävdes den minsta insatsen för att nå målet men samtidigt vara hållbar. Varje sprint avslutades med en genomgång om 15 minuter. Vi presenterade vad varje person hade gjort. Som produktägare kunde Anders prioritera aktiviteterna och välja vilka som skulle göras under nästa sprint. Högst prio hade dock alltid aktiviteterna för v1.0.</p>
<p>Skulle en aktivitet vara för kort för en hel sprint var det bara att vända sig till backloggen för att hitta en ny.</p>
<h2>Internetuppkopplingen gör att man inte kan dela för stor data</h2>
<p>På ett hackathon brukar Internetuppkopplingen inte vara alltför tillförlitlig. Med lokala utvecklingsmiljöer och versionshantering i git behövde vi inte dela stora datamängder med varandra. Det enda som krävde extra mycket bandbredd var databasen med alla näringsvärden. Vi valde att distribuera den via ett USB-minne. När vi skulle deploya till produktionservern fick vi passa på att ta en kopp kaffe när den laddades upp.</p>
<h2>Det finns ingen tid för testning &#8211; låt andra göra det</h2>
<p>Under ett hackathon är man väldigt ivrig att beta av aktivitet för aktivitet och hinner inte testa koden så noga som man skulle önska. Det behöver dock inte vara något problem. Är målsättningen att nå en prototyp gör det inget. I ärlighetens namn var vi också ganska slarviga med testningen. Ingen code review eller unit testing fanns med i planen. Däremot hade vi nytta av att göra en tidig release. Det fanns flera personer ute i cyberrymden som läste vår dokumentation och testade API:t. Redan under minglet hann vi med att träffa <a title="Peter Hellberg (peterhellberg) på Twitter" href="http://www.twitter.com/peterhellberg/">Peter Hellberg</a> som hade skrivit ett <a title="peterhellberg/mat · GitHub" href="https://github.com/peterhellberg/mat">Ruby-gem för API:t</a>. Han hade mycket konstruktiv feedback om både dokumentationen och funktionerna. Vårt tips är alltså att förbereda vänner och bekanta på att vara standby under dagen och beredda att testa.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webbgaraget.se/2013/05/14/hur-vi-lyckades-slappa-en-korbar-version-av-matapi-under-stockholm-startup-hack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
