UserVoice

Stack Overflow successfully uses UserVoice to get feedback and suggestions on new features or bugs to be fixed. The Stack Overflow team has so far completed 1831 (!) requests. Pretty impressive.

I believe that any company, that lives on the web or outside it, and takes their business seriously needs to communicate openly with their customers. It is a sign of strength to publish good as well as not so good feedback on your own web site. It’s a mystery to me that so few companies actually do this.

If often email or call the customer support department with questions or suggestions. So far I have never been offered the ability to follow my particular issue through their system. At best, you’ll get: “I will forward this to the development team”. At best! It’s a shame that the only staff member who will ever communicate directly with a customer also seems to be the person with the least to say about the products and services offered.

Until a few days ago Sprend had only its simple feedback forum. From now, we also have a UserVoice forum, go check it out at sprend.uservoice.com.

Posted in Uncategorized | Comments Off

First AdSense Check

Today we got our first AdSense check, for 1004.15 SEK ($124)!

It has been claimed that ads are the only successful micro payment system. I tend not to agree. Successful yes, but it’s more of a nano payment system.

Posted in Uncategorized | 2 Comments

Greek

We have a new language, Greek! It’s our first non-latin script language and it feels good. :-)

To be honest the current language handling doesn’t scale. Each new language adds an extra link on the front page. That will look really bad when we have ten or more languages. As well, a language specific feedback page is automatically added. We need to reduce the number of feedback pages to the languages we actually know, that is English, Swedish, Norwegian, Danish and Croatian.

Under the hood we have a few performance issues due to increasing traffic. Now that’s the kind of problem we want to have. I’m not really complaining.

Posted in new release | Comments Off

Sprend is released

Last night, until 11 o’clock, I played a tennis match. After pocketing the match ball I went home to finally deploy Sprend. It was a Jurassic Park moment: “65 million years in the making”. Or at least that’s what it felt like. The original plan was to rename the site one year ago. But now we’re there. I went to bed at 4 in the morning. Phew.

The deployment of the new app went okay. I had to do a database upgrade as well, adding a field and an index, and updating the MySQL database engine to InnoDB. The automatic db upgrade caused a little hickup, and I had to run the sql by hand in stead. No big deal. I had obviously tested my auto-upgrade on a different version of MySQL – pretty stupid.

So what’s new? The name. Four languages. Some under-the-hood bugfixing to enhance stability.

This means that skickafilen.se is no more than an alternative domain name to get to the site. Actually, the site has five domain names: sprend.com, sprend.se, sprend.no, skickafilen.com and skickafilen.se. Sooner or later there will be as many sprend.* domains as there or google.* domains.

Posted in new release | 1 Comment

In English

From now on this blog will be written in English. It seems natural as the site changes name from skickafilen.se (=sendthefile.se) to sprend.com.

Posted in Uncategorized | Comments Off

Exjobbare?

Jag nätverkade på Connect Västs frukostmöte i morse. Det handlade om Ostron och var riktigt intressant (fast kanske inte för det här projektet). Själva träffen anordnades på Chalmersområdet, och efter lite minglande har jag börjat fundera på om inte exjobbare, trots allt, kan vara rätt personer för Sprend. Om inte annat är studenter vana vid att leva på små slantar. Genom att erbjuda exjobbare en uppgift kan man hitta personer som kan fortsätta i Sprend efter examen.

 

Det som oroat mig med just exjobbare är att dom kanske inte är självgående, måste ledas vilket kräver mycket tid, och har fokus på att avsluta sin utbildning (i stället för att göra en bra jobb för Sprend). Dom farhågorna kvarstår, fast hade jag hittat en klon på mig själv som just skulle göra exjobb så hade jag lätt anlitat honom. Jag hade också själv hoppat på ett sådant förslag om någon kommit med det till mig när jag letade exjobb.

 

Så kanske…

 

Posted in Uncategorized | Comments Off

Konferenskul

Här kommer en glad och i mina ögon skrämmande nyhet: I i januari har jag fått en 20-minuters-slot på JFokus på temat "I want YOU for my $10 billion web project". Gissa vilket projekt jag snackar om. Jag kallsvettas redan, men det skall bli kul.

 

Var på Øredev i tisdags och onsdags och trivdes som fisken i vattnet. Det var min första riktiga konferens och det var skitkul och träffa på kända och okända nördar. Wow, varför har jag inte gjort detta förut (jo, jag vet varför, det kostar massor med pengar och förlorad fakturering och kräver övertalning av existerande uppdragsgivare).

 

Annars har jag, ångestfyllt, flytt IntelliJ och (återigen) uppdaterat min affärsplan inför Connects Språngbräda på tisdag. Det har dock redan gett resultat eftersom jag nu tror på reklamfinanisering i mycket högre grad än förut. Dessutom får jag god presentationsträning inför framtida uppgifter i talarstolen.

Posted in Uncategorized | Comments Off

Sprend på flera språk

Skickafilen är äntligen påväg att byta namn till Sprend. I samband med detta översätter vi sajten till ett antal språk, till att börja med norska, engelska, franska, tyska och kroatiska.

Eftersom det var mitt första försök att översätta en webbapplikation var jag tvungen att läsa på lite grann om hur man går tillväga i javavärlden. Jag läste om ResourceBundles och propertiesfiler och hittade åtminstone tre problem med det traditionella sättet att hantera språk.

  1. Det klassiska problemet att propertiesfiler bara stöder 8859-1. I mitt fall skulle inte flera kroatiska bokstäver fungera.
  2. Propertiesfilen laddas via en klassladdare vilket tydligen leder till strul i en webbmiljö.
  3. Separata filer för varje språk gör det svårare för översättaren.

Den bästa lösningen är antagligen att stoppa in alla strängar i databasen. Då löser man problem 1 och 2 ovan. Ett webbgränssnitt för att redigera alla strängar är en elegant lösning på problem 3.

Men nu har jag inte all tid världen till snygga lösningar, så jag gjorde på ett lite enklare sätt. Genom att lägga alla språk i samma xml-fil, ladda in den via Properties.loadFromXML() och ange sökvägen direkt, löser man alla tre problem. I lite mer detalj gjorde jag så här:

  1. Jag tog propertiesfilen vi redan skapat, som var i traditionellt format, och gjorde fem kopior.
  2. Därefter adderade jag språkkoden till samtliga strängar i respektive fil, tex för svenska: upload.message => upload.message.sv.
  3. Innehållet i alla filer satte jag ihop till en stor propertiesfil.
  4. Filen konverteras till xml via liten javasnutt som låter Propertiesklassen först läsa in denna fil, och därefter spara den i xml.
  5. Resultatet klistrade jag sedan in i Excel. Excel? Ja, för att enkelt kunna sortera en kolumn, vilket placerar alla översättningar av samma sträng tillsammans.

Formatet blir så här:

<entry key=”upload.message.en”>Message:</entry>


<entry key=”upload.message.de”>translate-de</entry>


<entry key=”upload.message.fr”>translate-fr</entry>


<entry key=”upload.message.hr”>translate-hr</entry>


<entry key=”upload.message.nb”>Melding:</entry>


<entry key=”upload.message.sv”>Meddelande:</entry>



(för denna nyckel saknas som synes fortfarande översättningar till några språk)

Inladdningen av strängarna gör jag med följande kod:

translatedStrings = new Properties();
String realPathToTextPropertiesXml = request.getSession().getServletContext().
getRealPath(“/i18n/text.properties.xml”);
translatedStrings.loadFromXML(new FileInputStream(realPathToTextPropertiesXml));

Jag tycker det funkar bra, än så länge. En nackdel kan vara att filen med översättningar är läsbar utifrån, vilket kanske inte passar alla applikationer. Ett annat mindre problem hänger ihop med översättare som jobbar parallellt och att alla språk finns i samma fil. Det översatta materialet måste mergas ihop men det går att hantera med Subversion om man har tungan rätt i mun.

Posted in kodning | Comments Off

Mentor

Jag har skaffat mig mentorer i form av killarna bakom disruptive.nu. Poppe och jag hade ett intressant snack på Wayne’s Coffee, medan mina barn såg till att ingenting störde oss. Mer än dom själva såklart. ;-)

Efter detta uppmuntrande samtal tycker jag (fortfarande) att Sprend är på rätt väg. Peter hade en del konstruktiv kritik bland annat av behovet av en riktigt vision.

Jag försöker undvika läsa deras blogg. Den är så intressant att jag fastnar där i stället för att göra nytta i mitt projekt.

Posted in entreprenör, nätverkande | Comments Off

Seriöst entreprenörskap

I mina tappra försök att bli en seriös entreprenör skall jag nu genomföra en Språngbräda hos Connect Väst. Dom har imponerande statistik för företag som gått igenom Språngbrädan: hälften får riskkapital och hälften anställer minst en person. Det är säkerligen nyttigt för mig och affärsplanen att gå igenom denna process, och jag hoppas det är värt tiden som krävs. Egentligen är jag mest nyfiken på dom kontakter som jag kan knyta när jag väl skuttat över skranket.

Jag har anmält mig till Venture Cup Väst för att dra nytta av workshopen Teamsammansättning. Jag tänker dock inte delta i tävlingen; är det inte bättre att koncentrera sig på sitt projekt än att tävla om bästa affärsplan? Affärsplanen har ju knappast något egenvärde.

Webbdagarna var intressanta, om än inte så nördiga som jag önskat, och några kontakter tog jag som är värda att följa upp.

Posted in entreprenör | Comments Off