11
Nov 08

Shoppen lanserad (på lemoncurd.se alltså)!

Många sena kvällar senare är Lemoncurd-shoppen lanserad!

Hela webbplatsen består av två olika WordPress-installationer, en till shoppen och en till “vanliga sajten”.

Shop-bloggen använder pluginen WP e-Commerce (3.6.8 RC1). Dessutom använder “Storleksguidenpluginen wp-Table (som egentligen inte är testat för WP versioner >2.5 men trots det funkar bra).

Vid första anblick verkade eCommerce vara helt perfekt men det finns en del brister. Beroende på hur kräsen man är tar det olika mycket tid att fixa. Jag har ändrat så pass mycket att det inte är enkelt att uppgradera rakt av ifall det kommer nya versioner vilket är tråkigt. Här är några saker som tagit tid:
– Svenska språkstödet var dåligt. Jag har förbättrat och lagt till mycket men det är fortfarande inte komplett. Hade varit mycket bättre att börja med engelska-filen och översätta än att börja med den svenska som jag gjorde. Då hade strukturen blivit bättre. (Här är aktuell SV_sv.php.)
– Vissa ord saknas i översättningen. Antingen får man översätta dom i koden eller så skapar man taggar och lägger in i språkfilen. Jag har skickat in lite förslag i eCommerce-forumet men ingen har nappat ännu.
Thickbox används för bildvisningen men även den saknar språkstöd och måste översättas i koden.
– Svenska moms-hanteringen fungerar inte bra, det går inte att visa ett pris inklusive moms (för att vid utcheckningen särredovisa momsen). Antingen visas ex. moms eller totalpriset ink. moms. Det är synd eftersom kvitton ska innehålla momsbeloppet. Får se ifall någon köpare hör av sig om det..
– Mail som skickas med automatik saknar sidfot och åäö fungerar inte (i alla epostklienter). Förmodligen enkelt att fixa om man kan php bra.

Nämnda punkter är relativt lätta om än tidskrävande att snygga till. Det som tagit mer tid och kraft är att arkitekturen brister. Exempelvis finns det ett (1) mail som skickas när betalningen är mottagen, och det är samma mail oavsett om det är kortbetalning eller betalning som verifieras manuellt (plusgiro i det här fallet). Det hade varit mycket bättre om hela shoppen hade varit event-baserad så att olika händelser hade triggat olika actions. Till exempel:
– Betalning mottagen via kort -> skicka mail 1A (bekräftelse på mottagen betalning).
– Paketet lämnat till Posten -> skicka mail 3B (paketet är skickat)
och så vidare… I dagsläget skickas två olika mail, ett med betalningsinstruktioner ifall man väljer Plusgiro-betalning, och ett inköpskvitto, oavsett betalform. Men i gränssnittet bakom kulisserna finns det många status-nivåer: Order Received, Accepted Payment, Job Dispatched, Closed Order och det hade varit logiskt att kunna trigga händelser på varje förändring i flödet.

Vidare hade det varit bra att kunna växla bilder beroende på olika varianter av en produkt, till exempel att en grå tröja visas grå men om man ändrar till vit så blir bilden vit. Icke möjligt!

Shoppen håller reda på antalet produkter också så när något tar slut så blir alternativet gråmarkerat och “Slut på lagret” på produktsidorna. Men det fungerar bara om det finns en (1) variation… Det är bara några t-shirtar som har en variation (storlek), alla andra plagg har två (storlek och färg) och där minskar inte lagret vid beställning. En bugg som rapporterats in för tre månader sedan men inte åtgärdats.

Apropå communityt kan man säga att det är aktivt men trevande. Många är liksom jag “php-copy-and-pastare” och inte tillräckligt duktiga på att lösa problem och rätta fel. Jag har alltså hittat flera saker som andra haft problem med men som är olösta.

Men nu lite positiva intryck också!

– Shoppen fungerar!
– Den blev snygg och enkel (smaksak, kommentera gärna..)
– Det finns möjlighet både för plusgiro-inbetalning och kortbetalning (via Paypal). Det är ingen fast kostnad att använda Paypal som betalningsmotor och den rörliga kostnaden för en kortbetalning på 200 kr är c:a 10 kronor. eCommerce och Paypal skickar transaktionen mellan sig så godkända betalningar rapporteras som godkända i eCommerce omedelbart. Ganska coolt faktiskt! Paypal har dessutom en testmiljö (sandbox.paypal.com) där man kan sätta upp testkonton och verifiera att allt funkar, kostnadsfritt. Hög tröskel men funkar. Vid lanseringen ändrar man sen en inställning och sen är det live. (Om Paypal har jag en del annat att säga också men det får bli en annan gång.)
– Licenskostnad = 0 kr. Svårslaget…

Eftersom jag inte byggt någon shop tidigare eller med annan plattform kan jag inte säga hur eCommerce står sig i förhållande till annat. Det borde finnas bättre php-shoppar därute, men jag tror inte det finns något bättre som integrerar så bra till WordPress. Och integreringen är en fördel, både när det gäller themes, tillgängliga pluginer och sen lite allmänt struktur, administrering och sånt.

Jag har lagt väldigt mycket tid på shoppen – att lära mig hur den funkar, att anpassa, att få betalningar att fungera och så vidare. Nu funderar jag på nästa steg vilket vore att sätta upp en eller fler shoppar till. Jag har lagt ner alldeles för mycket tid för att nå fram till den första shoppen, nummer två kommer gå betydligt fortare. Kanske tar jag tag i mitt pepparkvarnsprojekt…. Fler förslag?

Förresten, alldeles nyss trillade första beställningen in! Yiiiiiiihaaa!!!!!


21
Oct 08

Att bygga en webbshop

För att sälja barnkläder online behövs en webbshop. Viktiga egenskaper (förutom produkthantering, priser och allt som hör dit) i det här fallet var möjlighet att påverka designen så mycket som möjligt, snabb uppstart och låg fast kostnad. Jag hittade dels olika leverantörer som har färdiga “shop-hotell” man hyr in sig på men de kändes dyra och trubbiga. Sen tittade jag lite på osCommerce som verkar bra och gedigen men lite för hög tröskel. Men open source och stort community, inte att underskatta.

Fastnade för WP eCommerce som är en plugin till WordPress. Väl spritt, stor community, använt och beprövat. Färdiga kopplingar till Paypal och Google Checkout för kortbetalning och open source och gratis.

Nu när jag jobbat lite med det så tycker jag det är en bra produkt som funkar över förväntan. Mer funktionalitet än jag räknat med men som är användbar, till exempel att man kan sätta olika priser på olika storlekar, skapa olika variationer på samma produkter och lagerhantering som tar bort produkter när lagret är slut.

En påtaglig brist var att den svenska översättningen var gammal och saknade mycket innehåll. Så nu har jag för första gången börjat arbeta med att faktiskt stoppa tillbaka lite arbete i en produkt jag använder (bortsett från rekommendationer, tips, licenser och gåvor och sånt). Det är lite halvpilligt och jag har inte gått igenom hela produkten ännu men är en bit på väg. Sidor före översättning ser ut ungefär så här (klicka på bilden för förstoring i nytt fönster):
Före översättning
Den sidan kan jag jämföra med det engelska originalet:
På engelska
och sen uppdaterar jag de ord som saknas i språkfilen:
BBEdit
Sen är det bara ladda upp språkfilen och ladda om sidan så ser det förhoppningsvis bättre ut:
På svenska

Här är min svenska språkfil: SV_sv.php.zip (som innehåller ungefär 130 rader mer än den svenska språkfilsom ingår i produkten). Lägg den i “wp-content/plugins/wp-shopping-cart/languages/” och aktivera i inställningar i eCommerce för att använda den.

Att bara översätta rakt av är enkelt, de problem jag stöter på är bland annat:
– allt har inte språkstöd (till exempel att ta bort en produkt ur korgen heter “Remove” och finns inte i språkfilen)
– lite innehåll i bekräftelsemailet och meddelandet på webbsidan efter köp ligger samma variabler men behöver olika teckenkodning (någonstans blir det fel alltså)
– Hanteringen av moms är inte riktigt anpassad till Sverige. Antingen visas priset inkl. moms och då syns inte moms till någonstans eller så visas det utan moms och då läggs moms på vid köpet. Jag hade föredragit att moms ingår men momsdelen redovisas på kvitto och i kassan.
– Rörig översättningsfil: ingen direkt ordning, vare sig strukturellt (jämfört med sajtens sidor) eller bokstavsordning. Såhär i efterhand hade det nog varit klokt att börja med den engelska originalfilen och börja översätta där.

Så sammanfattningsvis, hur går det med shoppen? Jag tror det kommer bli riktigt bra när det är klart men det är ganska mycket arbete, dels med översättning och dels med allt pill som uppstår när man lägger in produkter, priser, provkör, kopplar på betalningar etc. Fler sena kvällar alltså….men här är en tjuvtitt:

Jag tror också att produkten är helt lämpad för den här typen av innehåll och shoppen kommer kunna ligga uppe utan någon fast kostnad (förutom webbhotell). Och shop nummer två kommer gå betydligt snabbare att sätta upp när man är bekant med produkten.


14
Oct 08

Joost i webbläsaren

Idag har Joost relanserat sig som webbplats istället för att vara en applikation som tidigare. Inte konstigt eftersom det är en hög tröskel att behöva ladda ner en separat applikation i förhållande till att surfa in på en webbsida (tänk Youtube.com osv).

Filmformatet Flash används, utseendet påminner mycket om Hulu men innehållet är betydligt fattigare. Ganska många sociala funktioner: synliga profiler med programhistorik (här är min sida), grupper, vad tittar andra på, mest sett och så vidare.

Hulu har klivit fram som det bästa alternativet med mycket innehåll och ett enkelt, tydligt gränssnitt med låg instegströskel. Deras innehåll kommer till stor del från ägarna/investerarna NBC och Fox. Största bristen för oss européer är att det är US-only än så länge. Joost backas av CBS men väldigt lite av deras innehåll når Joost. Enligt tidigare rapporter fick CBS kalla fötter redan för ett halvår sedan när de märkte att applikationen inte fick det genombrott som förväntats.

Joost hade ett stort försprång med innehållsavtal, en teknisk plattform som fungerade och många nya annonsformat. Men publiken ville ha något annat: en ännu enklare lösning direkt i webbläsaren och riktigt bra innehåll.

Joost-spelaren är lagd på is nu. När jag startar den går den igång, kör en programuppdaterare men meddelar att jag redan har den senaste versionen och efter splashscreenen blir hela skärmen svart. Sen händer inget mer.

Förhoppningsvis blir det bättre fart på webb-Joost. Nu måste de börja med att jaga ikapp försprånget konkurrenterna har.

Uppdatering 21:53
Jag fick upp en enkät (som jag inte orkade fylla i) där Joost vill veta hur jag uppfattar den nya tjänsten.


12
Oct 08

Inte bara föräldraledig………


Annika (min fru) arbetade under kvällar och övriga luckor under föräldraledigheten med att ta fram en egen kollektion (eller ja, tre faktiskt) barnkläder. Skissa, rita, designa, hitta mönsterkonstruktör, hitta tyger, hitta tygtryckare, hitta tillverkare, hitta resår, hitta brodyrfirmor, hitta transporter och mycket mycket mer. Oavsett hur det går så kan vi säga att kläderna blev jättefina, passformen blev perfekt och kvaliteten blev hög. Nu är första sändningen levererad.

Kläderna går under namnet Lemoncurd.

Webbsidan blev klar i torsdags. Powered by WordPress, html/css av stjärnan Martin Andersson (japp, all html validerar) och design av Annika själv. En webbshop är på gång och dröjer förhoppningsvis inte alltför länge (byggs med WP-eCommerce). I väntan på det kan man signa upp för att få mail när shoppen är tillgänglig.

Inspirationssidan ger en bra bild av vad som finns. Visst har ni barn i bekantskapskretsen som behöver julklapp eller present framöver? Eller egna? Kläderna finns i storlekar mellan 62-116 cl beroende på modell. Upplagan är liten så ni lär inte springa på fler barn med samma outfit. 5% av intäkterna går till olika välgörande ändamål. Mer om det och kläderna finns på hemsidan så kila dit och titta. Och kom tillbaka om några veckor och handla. Vill ni tycka till eller veta något mer så maila annika@lemoncurd.se. Glada tillrop, förslag kommentarer och idéer uppskattas mycket!

Här är några kommentarer som dykt upp hittills:

“Gillar designen. 70-talet möter nutid.”
“Jag vill ha en varg-tröja! Hur beställer man?”

Mina personliga favoriter är byxorna i Stripe (längst ner på sidan, eller i bilden på det här inlägget) som är gjorda av samma grova tyg som arbetskläder för vuxna. Tål slitage bra och ger grym fart i rutschkanan.


07
Oct 08

Lite tänk runt drift och framtiden

Inför framtiden (med mer open source, ständigt mer IT-beroende, mer “moln-leverantörer” etc.) kommer IT-folk behöva tänka nytt.

Jag söker efter en ny typ av bolag: teknikbolag som arbetar med webbplattformar runt drift och utveckling. Hjälpa till att modernisera plattformar och applikationer genom att använda de möjligheter och erbjudanden som finns på nätet och “i molnet”.

– Äger ingen egen infrastruktur
– Hög kunskapsnivå och nyfikna på vad som väntar runt hörnet
– Få personer som delar mycket kunskap och kan varandras lösningar
– Inte ha ambitioner att växa, utan att bli ännu skarpare och bättre
– Fötterna i open source-myllan
– Hanterar utveckling och drift (av plattformar, inte nödvändigtvis webbutveckling)
– Ingen specifik helpdesk/jour/supportorganisation: vid larm är det direkt någon med rätt kunskap som agerar

Varför då:
– Alldeles för många vet alldeles för lite om vad som är möjligt nuförtiden. Många företag behöver modernisera sig och istället för att lägga pengar på licenser och stora “löser allt”-produkter kan man arbeta med mindre, specialiserade lösningar som man använder som pusselbitar.
– Små snabbfotade konkurrenter/startups/kloka företag arbetar redan så, och gör det med framgång.
– Mindre byråkrati och snabbare kommunikationsvägar behövs. Färre nivåer.
– Ju större företag ju lägre medelnivå på kompetensen.

Med kreditkort kan man idag skaffa sig all tänkbar lagrings och datorkraft. Det är inte längre nödvändigt (eller ens fördelaktigt att äga och serva sin egen hårdvara). De här personerna ska inte byta hårddiskar som kraschar eller sitta och skruva i datorhallar, de ska sitta tillsammans med utvecklare. Att hantera IT-infrastruktur kommer gå samma väg som elkraft: det finns i sladden, du behöver inte bry dig om hur.

Det behövs ett stabilt personberoende; 5-10 personer som delar på några kunder/uppdrag. Inte mer. Full öppenhet och kontakt däremellan, inga mellanhänder. Bra dokumentation som delas mellan bolaget och kunden. Alla ser samma larm- och övervakningssystem (dashboard). Nya kunder endast om det får plats i befintlig organisation, inte genom att växa i antal huvuden.

Bara arbeta med en viss typ av kunder eller uppdrag och vara bäst på det.

Inse att “så har vi alltid gjort tidigare” inte längre fungerar.

I den traditionella värld jag kommer ifrån har vi mycket kvar att lära. Vilka arbetar redan så här?


05
Oct 08

The Infrastructure Rules

Apropå tillgänglighet, mjukvara och hårdvara och hur Google bygger sina plattformar (från sidan 129 i The Search):

Google garnered impressive word of mouth among their users for one reason: it worked. Not only did its PageRank algorithms produce delightfully relevant results, but they did it with impressive speed, and the service never showed signs of buckling under the exponential growth it was experiencing.

Page and Brin had their Stanford-era frugality to thank for this robustness. Because the pair had to scrape for every machine they could find to support the early service, they were forced to optimize Google to run over off-the-shelf parts: cheap hard drives, cheap memory chips, and cheap CPUs. Instead of buying heavy mainframe artillery from the likes och IBM or Fujitsu, Brin and Page created a small army of foot soldiers: a massively parallel formation of cheap processing and storage. The beauty of the system was that it scaled: the more computers you threw at it, the more robust it became. And when a component broke down, no problem; you simply swapped it out. The system itself could never fail: there were simply too many individual parts, none of which depended entirely on the others.

Googles tre principer för “scalability“:

Cheap
The key to Google’s competitive strategy is that they have the cheapest compute, network and storage (CNS) in the industry.

Embrace failure
Cheap also means things break. And when you’ve got several million servers, lots of things break every day. Get over it. Google expects failure and builds recovery into the software layer that connects the cheap kit.

Architect for scale
Architecting for scale leverages cheap CNS to give Google the lowest-cost growth as well. Competitors such as Yahoo, who rely more on standard EDC products, can do the same things as Google, but it costs them about 10x in capital expense and several times the operations expense.


23
Sep 08

Lite mer Amazon (databaser den här gången)

Nytt mail från Amazon värt att uppmärksamma (det förra skrev jag om för några dagar sen): den här gången mailar de om att EC2 (Elastic Compute Cloud) har stöd och full support för Oracle- och MySQL-databaser. Så det är egentligen bara att ta fram kreditkortet och skapa en användare och sen bygga sin datalagring i molnet. Några fördelar är: hög tillgänglighet, betala för förbrukning, säkerhet, stöd för replikering, failover och backup, stor skalbarhet och alltså full support från leverantörerna. Integrerar också med övriga tjänster från Amazon. Och förhoppningsvis bättre licensvillkor från Oracle?

Jag gillar mycket att det är enkelt skruva upp kapaciteten och sen slippa allt vad hårdvara innebär. Bara de två argumenten är tunga.


18
Sep 08

Bygg backupsajt med Amazon (eller bygg en sajt..)

Amazon har börjat outa sina planer innan de har något att visa (alltså pre-beta) för det goda syftet att låta kunder veta vad som är på gång och därmed ge bättre möjligheter att integrera deras tjänster.

Idag fick jag mail om att de runt årsskiftet släpper “AWS Content Delivery Service“. Enkelt förklarat ger det möjligheter att med Amazons enorma kapacitet sprida det innehåll man redan har lagrat i deras tjänst S3 (Simple Storage Service), alltså vanlig webbserverleverans.

Genom ett API-anrop så gör man innehållet (i S3) tillgängligt i deras deliverynät som sen kan hämtas av slutanvändarna. Fördelarna är bland annat att de har enorm kapacitet spridd över världen (nåja, tre kontinenter iallafall) och att betalningsmodellen är pay-as-you-go.

Från början är det bara http, på sikt kan man tänka sig olika streaming-lösningar också.

Jag har ofta varit med om kapacitetsbrister på webbplatser och kan se två stora möjligheter: att avlasta vid trafiktoppar eller att hantera en sekundär-/backup-/nödsajt ifall den primära sajten av någon anledning är otillgänglig.

Det Amazon gör är i princip inget nytt (liknande lösningar finns redan hos andra leverantörer) men bit för bit bygger de en arkitektur som finns tillgänglig med ett vanligt kreditkort (utan uppstartskostnader, långa avtalstider eller inlåsningar) och väldokumenterade API:er. Och med enorm kapacitet.

Slutsats: Steget till att bygga en sekundärsajt tillgängligt (genom DNS-ompekning) där man har aktuella kopior av sin sajt speglade håller på att krympa. Speciellt eftersom det är dyrt med sekundärsajter som behöver full (eller mycket) kapacitet men bara används när något smäller.

Metainformation: Jag har ett S3-konto där jag tänkte lagra undan “viktiga filer” som jag än så länge bara lekt med. Men varje månad drar Amazon pengar från mitt betalkort för det utnyttjade utrymmet och trafiken.


Mail från Amazon, kommer en gång per månad. 9 cent för september, ouch…

Så här ser prislistan ut för lagring:

$0.18 per GB-Month of storage used

Data Transfer
$0.100 per GB – all data transfer in

$0.170 per GB – first 10 TB / month data transfer out
$0.130 per GB – next 40 TB / month data transfer out
$0.110 per GB – next 100 TB / month data transfer out
$0.100 per GB – data transfer out / month over 150 TB


25
Aug 08

Lokala, snabbaste nyheterna

Det är ganska naturligt att nyhetsorganisationer och telegrambyråer tvingas följa mikrobloggar (Jaiku, Twitter, Pownce etc.) som nyhetskälla framöver. Idag görs det nog i bästa fall manuellt och genom att reportrar själva är aktiva deltagare.

I torsdags hade vi strömavbrott på Kungsholmen. Jag skickade iväg en Jaik inom en minut men jag var inte ens snabbast (läses nerifrån och upp):

(Skärmdump från 22.35, rätt tid = 17.30.)

Inom en minut fanns det alltså – bara inom mitt nätverk – tre rapporter om strömavbrott på Kungsholmen. Och rapporter om andra delar av Stockholm som inte var drabbade.

17.47 hade SvD.se en artikel om strömavbrottet och 18.02 även DN.se.

Fortum hade på kvällen den här informationen:

Informationen på Jaiku var snabb och geopositionerad (sker i vissa fall med automatik, till exempel om man uppdatera Jaiku i en Nokiatelefon).

Det är ganska enkelt att sätta upp bevakningar på “jordbävning”, “skottlossning”, “trafikolycka” på respektiv sajt och få notifieringar (sök till exempel Twitter efter “earthquake”) för att komma igång. För en mer komplett nyhetsövervakning krävs arbete med filtrering och aggregering av inlägg, notifieringar och larm, koppla upp sig med API:er etc.

Twitter har redan många exempel på hur långt före övrig nyhetsrapportering deras användare är.

Och har man väl fått till insamlingen så kan man erbjuda det motsatta också – trycka ut relevanta nyheter till rätt personer.