tisdag 14 december 2010

Fyra molntjänster för den frilansande IT-konsulten

Efter att ha arbetat ett par år som oberoende IT-konsult inom .NET-utveckling har jag testat flera olika stödapplikationer och -tjänster för både mitt dagliga arbete och den oundvikliga administrationen. Här tänkte jag dela med mig av några tips som kan vara intressanta för den som föredrar att hålla sin verktygslåda lätt och smidig genom att utnyttja "molnet".

Google Apps
Google erbjuder webbaserad e-post, kalender, dokumenthantering och mycket mer till ett väldigt överkomligt pris - nämligen gratis. Vill man ha tillgång till lite mer avancerade inställningar kan man köpa premiumversionen vilket kostar 50 USD (cirka 350 kr) per år. Värt att nämna är att e-posttjänsten (Gmail) är riktigt snabb och smidig - lätt den bästa webbmail jag använt. Kalendern är också klockren, och det fungerar fint att skicka mötesinbjudningar till kunder och partners som använder exempelvis Microsoft Exchange/Outlook.

En faktor som skiljer Google Apps från Googles "vanliga" tjänster för privatpersoner är att man alltid utgår från ett eget domännamn. Ett sådant kostar omkring en hundralapp per år och kopplas enkelt ihop med Google Apps-kontot i registreringsprocessen. Det är också fullt möjligt att exempelvis ha en webbsida hos ett webbhotell men e-posten hos Google; man måste inte samla allt på ett ställe.

Google Apps-tjänsterna är som sagt webbaserade vilket innebär att man kommer åt dem över nätet med hjälp av webbläsaren. Däremot finns det "offlinestöd" i moderna webbläsare som Google Chrome vilket låter en jobba utan internetanslutning, vilket kan vara smidigt om man exempelvis jobbar "i fält" utan 3G-täckning och behöver kolla upp kontaktuppgifter eller liknande.

Harvest
När man jobbar som konsult är det förstås helt centralt att hålla reda på den tid man lägger på olika kunder och projekt. Till en början klarar man sig bra med ett kalkylblad (exempelvis via Google Docs), men allt eftersom antalet kunder växer får man lägga allt mer tid på tråkig (och onödig) administration om man inte har ett ordentligt systemstöd.

Efter ungefär ett år av frilansande började jag söka efter någon form av onlinetjänst för time-tracking och fastnade till slut för Harvest. För 12 USD (cirka 85 kr) per månad får man tillgång till ett överskådligt, smidigt och snabbt webbgränssnitt där man kan lägga upp kunder, projekt och uppgiftskategorier. Systemet är enkelt att använda men samtidigt kraftfullt - det är exempelvis fullt möjligt att tillämpa olika timtaxor per kund, projekt eller uppgiftstyp. Man kan registrera tid antingen i efterhand eller låta virtuella "tidtagarur" hålla reda på den i realtid.

Förutom att räkna timmar sköter man enkelt sin fakturering via Harvest. Fakturorna kan antingen laddas ner i PDF-format, skrivas ut, e-postas eller betalas direkt över internet vilket öppnar för många betalningsmöjligheter för kunderna. Självklart kan man anpassa hur fakturorna ska se ut, använda svensk valuta och liknande. Fungerar grymt bra.

När man väl har testat att använda ett "riktigt" system för hantering av tid och fakturering kommer man ha mycket svårt att gå tillbaka till kalkylblad och klipp-och-klistrande i dokumentmallar. Kostnaden motiveras enkelt med besparingen man gör på minskad administration. Att all data lagras "i molnet" är en fördel i och med att man inte behöver ta något eget ansvar för säkerhetskopiering eller liknande.

Jungle Disk
När man har en egen firma och jobbar med IT kommer man oundvikligen att samla på sig en hel del filer som man behöver ha på ett säkert ställe. Detta ställer krav på en vettig rutin för säkerhetskopiering, och det finns många olika strategier man skulle kunna tänka sig för att lösa detta. Jag har valt att göra det enkelt för mig och använder därför en molnbaserad backuptjänst, Jungle Disk.

Jungle Disk består av en klientprogramvara man installerar på de datorer som ska omfattas av säkerhetskopieringen (fungerar på Linux, Mac och Windows) plus själva lagringstjänsten som man egentligen aldrig behöver bry sig om - alla ens filer sparas på en (eller troligen flera) servrar någonstans i världen och man betalar bara för det utrymme man använder. Säkerhetskopieringen sker automatiskt i bakgrunden enligt ett schema man själv definierar.

Jungle Disk erbjuder flera olika paketlösningar med något olika funktionsuppsättningar. Jag använder det de kallar "Desktop Edition" eftersom det innehåller möjlighet att synka filer mellan datorer. Denna lösning har en månadsavgift på 3 USD + 0,15 USD per Gb lagringsutrymme (första 5 Gb gratis). I mitt fall brukar räkningen landa på några tior.

Synkfunktionen är värd att nämna för sig eftersom den är så smidig: man ställer helt enkelt in vilka mappar som ska hållas synkroniserade mellan datorerna, sedan sköter programvaran resten. Så fort en fil skapas, ändras eller tas bort uppdateras avbilden i molnet och propageras ut till alla berörda datorer. I praktiken innebär det att jag kan skapa ett dokument på min stationära dator, skriva några rader, spara, stänga av, åka ut till en kund, öppna min bärbara och direkt fortsätta jobba där jag slutade. Datorerna behöver inte vara igång samtidigt vilket jag tycker är en stor fördel. Funktionen liknar den populära tjänsten Dropbox, med skillnaden att har större kontroll över vilka mappar som ska synkas och kan synka olika strukturer på olika datorer.

Förutom genom klientprogramvaran även kan komma åt sina filer från en (gratis) iPhone-applikation samt via webben. Det är möjligt att lagra filerna i krypterad form och man kan välja om man vill använda Rackspace eller Amazon S3 som lagringsleverantör.

Kiln On Demand
När man jobbar med mjukvaruutveckling är det viktigt att använda någon form av versionshantering för all den källkod man skriver. Är man konsult tillhandahåller ibland kunden sådana system, men då så inte är fallet behöver man en egen lösning (detta rekommenderas starkt även för hobbyprogrammeraren). Det finns mängder av versionshanteringssystem men det jag fastnat för är Mercurial.

Mercurial (eller HG som det ofta förkortas) är ett så kallat distribuerat versionshanteringssystem, vilket skiljer sig från sin centrala motsvarighet genom att det erbjuder versionshantering både på varje klient (arbetsdator) och (om man vill) på en server. Man kan alltså ladda ner en arbetskopia från servern, jobba på den under en tid med fullt stöd för att brancha, rulla tillbaka och committa lokalt för att sedan till slut merga sina ändringar med huvudgrenen.

Mercurial är gratis programvara och man kan ladda ner och hantera sin egen installation om man vill, men jag har valt att även här satsa på en molnbaserad tjänst: Kiln On Demand. Detta är en lite extra "kryddad" version av Mercurial med särskilt anpassade klientverktyg och ett fint webbgränssnitt som tillhandahålls av det amerikanska företaget Fog Creek Software. Tjänsten finansieras av en månadsavgift, men det finns en student/startup/testversion för team upp till två personer som är helt kostnadsfri.

Fördelen med en molntjänst för versionshantering är att källkoden blir tillgänglig för alla ens datorer oavsett om man sitter ute hos en kund eller hemma, man behöver inte bekymra sig för säkerhetskopiering och man kan välja att ha olika arbetsversioner på respektive dator om man så vill. Plus att man slipper drifta en egen server eller lägga tid på att konfigurera själva systemet - det bara funkar.

Det finns en mängd gratiskomponenter som underlättar arbete med Mercurial/Kiln, bland annat en schysst Windowsklient och ett lika schysst Visual Studio-plugin.

Inga kommentarer:

Skicka en kommentar