haukes blog
Saturday, 25/01/2014

Back in the cloud business

In February of 2012 I set up an instance of ownCloud, an selfhostable cloud-solution written in php. It was a good feeling to have it around to store my files, calendars and contacts not needing some service provider I knew too little about to be able to judge if they are trustworthy - like Google, Dropbox, Box.net or Zumo Drive.

When I made the switch to Lumia in December 2012 and shortly afterwards giving Windows a new chance on my laptop, it was easy to switch all of the things I had in my ownCloud to Skydrive and other services provided by Microsoft (yes and sorry, but I consider Microsoft more trustworthy than Google or Apple). All other things just would not work well on a Windows Phone, while Skydrive was well integrated into the operating system.

In December 2013 I switched again - I got my Jolla and there was not a tight binding to Microsoft services at all. I could use the Android apps for those services as Jolla has a compatibility layer for Android, but native applications just work and feel better...

Last week, I reactivated my ownCloud again and was impressed how the software had evolved in few releases and in a short amount of time. Things that annoyed me last time I used it work much better now: Updating was a pain as you needed to replace some files using ftp or ssh and hopefully your server worked afterwards as it did before. Now you can update from within the software - and it worked well without problems!

The services integrate well into my KDE environment and there even is a plugin that will turn your ownCloud into a Mozilla sync server! A newsreader is also available as a plugin. It provides the functionality of Google Reader (which I used before it got shot down) - there even is a excellent client for my Jolla to take my feeds with me!

Short said - I am back in the cloud business - my files are kept on my own server again :-)

Tuesday, 14/01/2014

webOS - on the rise again?

Since LG presented their (cool!) new Smart-TVs powered by webOS, my beloved operating system is trending again. Reviews were positive in general and one must admin that the system looks very promising. In hope to fuel webOS rising again (at least in social media), I have played around with twitter bots on my MSI Windbox running archlinux and created a little bot retweeting things tagged with the webos-hashtag. Due to a bad coincidence of a similar term existing in (Mexican?) slang, there also might be tweets in that timeline not quite covering technology, but hopefully, those are not taking over...

is TV really what webOS-fans want?

Speaking honestly, I am really glad that webOS is not dead yet, so that enyo and openwebOS will live on and receive support by LG. I really could buy a new TV this year and if there will be an affordable device in LG's lineup be sure it will be one of those. But this won't bring back the webOS I fell in love with in 2009 - the system bringing a perfect ui for mobiles and tablets. I cannot see how LG can bring webOS to those kind of device without doing heavy investments in creating a second ui - the one shown at CES (in my personal opinion) does not match the user experience needed for tablets or smartphones.

Sadly, this is exactly what I want: new phones, new tablets, updated os. I feel this is what most of the webOS faithful are waiting for.

new hardware - unlikely?

Bringing webOS devices does not appear to be in focus of LG's product strategy - being a company creating Android-driven devices for quite a while. It would appear more likely that there will be special Android-apps tailored to team up with webOS tvs for remote control, streaming or other things one might think of.

It might depend on how Panasonic and FirefoxOS can hit the market or if Samsung can make an impact with either Android or Tizen on mobile and tv. If those combinations can claim a reasonable market share and attract enough app developers, LG might consider giving webOS a new chance for succeeding in the mobile space. It will also depend on if press and all those tech blogs out there are willing to give new contenders a fair chance when comparing them to Android or iOS - a lot of articles in the past read as if they were written by fanatic fanboys of one of those systems.

Until LG gives an official statement if they will or will not bring webOS back to where it belongs, I can only hold on to my Touchpad and hope for the best...

Saturday, 28/12/2013

My Jolla is here - what's wrong with your smartphone?

In May I have bought a Jolla smartphone preordering option. In August Jolla sent me a nice T-Shirt showing "I am the first one", some stickers and a letter saying "Thank you". I was not sure if I really wanted to get a new smartphone - my Lumia 820 was running fine and I had a whole bunch of webOS-phones ready to run as backups. The mission Jolla was on was nevertheless fascinating, so I wanted to support them.

about Jolla

Jolla is a company made up by former Nokia employees - the ones that were responsible for creating the great Nokia N9 Meego-based smartphone. They teamed up to keep the idea of the N9 alive and build a new phone with a refined and gesture-based operating system - the ui is nearly build from scratch. If you want to know more about Jolla, there are tons of articles about their journey on the net.

But now back to the real story: The more details about the Jolla phone became available, the more I knew I would get the phone once it was ready to be shipped.

Ordered. Paid. Shipped! FedEx delivered the phone on the 23rd of December - what a great christmas present! I swapped the SIM from Lumia to Jolla the same day and used it as my main device since then.


SailfishOS - the operating system powering the Jolla - is labeled as beta release but already gives you a great user experience. Swiping feels natural after only a few hours. Today, I am having trouble to use other devices like my HP Touchpad or my Lumia. Pushing buttons feels unintuitive in most situations now...

The ui is great, the most important applications for my personal use are already available although there are some limitations. For overcoming those, Jolla has built-in compatibility for Android applications. You can have full terminal access to the device and do whatever you think is best for optimizing the underlying Linux. Jolla developers are also working hard to improve the system - after only one month of public availability, Sailfish has already seen two major updates. The community around the product is very active - you can get help on Twitter, irc and a few days ago, Jolla has opened a community site at together.jolla.com where users can ask and answer questions - there are many users and many excellent answers after only a short time the platform is online.


The hardware is designed with users in mind - it is not about specs, there are many devices more powerful with better screen resolution. The phone feels great when holding it, it is light and has a good grip thanks to the backcover, which Jolla calls the other half. The battery lasts very long for a device of this class: With my normal daily usage - Twitter, Whatsapp, some surfing, emails and few phone calls - my Lumia (as well as my Pre3 before that) had to be charged every day - many times even more than that. After six days with my Jolla, I had it on the charger only 3 times. I could go more than two days with a fully charged phone. I need to see how this evolves, but to date, this is amazing!

an awesome phone - go and buy yours!

After the first week of usage, I can only recommend the Jolla to all of you. Sure, there are only few native apps to date, but Android apps can jump in until those applications are in the Jolla harbour - the Sailfish app store. I think Jolla is not only about technology, but more about a community movement to create a true alternative to the known players in the smartphone market. If Jolla can succeed in terms of staying in the market for some years to come, there might be a European company that can bring true innovation (especially if they continue working as passionate as they did until now) once again.

So now you should really hop over to the Jolla Store and get yours!

Saturday, 23/11/2013

Two days running with FirefoxOS

When the first devices running Mozilla mobile operating system were announced, I must admit I was a bit disappointed - low end devices, non-emotional hardware design, software still running in alpha status. On the bright side, this also meant it would be inexpensive to try out the new system on real hardware!

In Germany, Congstar announced the availability of the Alcatel Onetouch Fire for the end of October 2013, so I ordered one of those - in green, to match my Linux desktop theme. Two days ago, it was delivered to me, and I was anxious to put a SIM in and give it a shot as my daily driver for some time. Today, I stopped using it again and went back to my Nokia Lumia 820.

FirefoxOS is just not there yet

There are quite a few reasons I have put the device aside, general usability and speed were non of them. The systems felt quite fluent, apps did start fast, I was able to get my contacts and calendar up in no time.

The trouble began when I wanted to add my personal mail account. I am running my own mail server, using an self-signed certificate to make it a bit more secure. Using this setup is not supported in FirefoxOS - currently, there is no way to add your own certs to the device, also, you cannot ignore the security risk, you even cannot run the account without TLS or SSL. So, no mails for me, huh? Adding my Gmail or outlook.com-account was painless, though...

One thing I really got used to was contact synchronization. Palm integrated this feature and called it Synergy, Android, WP and iOS implemented something similar in later versions of the systems. FirefoxOS is aiming at converts from feature phones. I cannot imagine those people would not like their contacts to be synchronized?!?

Next problem was app installation. I loved Project Macaw on webOS, fortunately there is a rewrite - macaw-enyo - using enyojs that will also run on FirefoxOS. This app is a priviledged app as it needs to make xhr-calls to Twitter. It is not on the Marketplace yet. Priviledged apps cannot be installed as hosted apps. Packaged apps can only be installed from a custom server if the app is not a priviledged one. Come on Mozilla, this is ridiculous!

I managed to install is using the FFOS simulator after fiddling around many hours. But this is far too complicated for the average user (which has just dropped his feature phone to get the cool apps on a smartphone).

hardware is not just about specs

The Alcatel runs ok. You can use it for a long time when the battery was fully charged, I had good connection speed and making calls was fun as the phone is smaller and lighter than my previous phones (Lumia 820, Pre3, Pre2, Pre+, Pre-, Nokia 2120...). The device is cheap (or "affordable" as others might say) and it feels cheap. This would be fine with me, but it also looks cheap. My parents taught me this was not important at all, but nevertheless I care about this kind of thing. Especially since there are other devices out there that are only some Euros more in pricing, but do not look as if they have been priced like that.

waiting for the next update

I will put the device aside and give it another try with every update Mozilla will deliver. I remember webOS was not perfect when the first versions were available, although it was more mature than FirefoxOS is to date...

Sunday, 17/11/2013

Creating a simple app for FirefoxOS

Finally I could spend some time to play around with FirefoxOS - I have ordered an Alcatel One Touch Fire (colored green, of course) and am awaiting its delivery.

I have put up a simple and small app project, creating a cartoon reader for my favorite strip - "Dilbert" by Scott Adams. It has little features. I wanted to start playing around with HTML5-apps and also tried to estabish a development environment using harpjs. When thinking about starting this, I wanted to use enyojs which is targeting web-applications built for cross-plattform deployment. After setting up the bootplate, I found myself thinking the app I wanted to create was a little too small to bring in a full-fledged javascript framework, so I started over using just plain javascript.

I have put the source code up on my github. It is lacking documentation and needs some refinements and features. I will use it to get into web app development, so it might grow into a more usable experience in the coming months...

Wednesday, 06/11/2013

webOS - now what's next?

I am a die-hard user of Palm webOS from the start - I got a Palm Pre on its release day here in Germany and also got a Pre+, a Pre2, a HP Veer, Touchpad and a HP Pre3. After HP killed webOS, I also grabbed a Palm Pixi+ and another Pre as backup devices. Even though it sounds crazy, I have spent a lot of money on a discontinued operating system running on hardware which looks pretty dated in 2013. Still, I love to use my Touchpad. The ui is still awesome, the user experience in the system and most apps are something I am missing with current systems. Still, the keyboard of the Touchpad is unmatched (just my personal view).

Last year in December my Pre3 died. It was horrible. I could not resist getting a more current model, so I ordered a Nokia Lumia 820 running Windows Phone 8. It is a cool device. The operating system shows that you do not need to copy from others to build a great user experience, the hardware is great - yes, its Nokia, so I should not need to mention that. The system runs fast and smooth, there are a lot of apps and many things important to me are built into the system - people hub, skydrive integration, a fast mail-client. Nevertheless the system just does not feel right to me, so I am always looking for alternatives. I will not run Android or iOS due to 'religious reasons', so there are only a handful of options left.

I had high hopes in the BB10 devices coming from Blackberry. The OS looks great and took a lot of inspiration from webOS imho. It has a lot of nice features and app support seems to be sufficient for my needs. The devices, on the other side, were rather disapponting (for me). Z10 and Q10 have decent design, but they are way too huge. Although having the same screen size as my Lumia, they look like small tablets, so I did not get comfortable with them (as I feel my Lumia already is a bit too large).

FirefoxOS looks very promising - running on hardware with low specs and tightly integrating with the web, coming on a number of cheap devices. Many elements of the ui seem familiar from other systems like Symbian, Android or Meego. I do not know yet if this is working out for me personally, for a lot of other people it will do so for sure. On the plus side, closing an app by swiping it to the top of the screen is very appealing for a user of webOS, as well as sticking to web technology as far as possible. Now that these devices are available in Germany, I will check out the system in daily use - the phones are really very cheap even when compared to other low-end smartphones running Android or the Nokia Asha-series.

Then, there is SailfishOS running on a soon-to-come device built by Jolla. I would have loved to own a Nokia N9 - it just was not available in Germany officially - so this device is very tempting. The OS is looking impressive so far, taking new routes in user experience that seem to be very intuitive. I have reserved myself a preorder-number and will see if I can get a device as it arrives at the end of the year or the start of next year.

Until then, I will use my Lumia and take some stints with the Pre2 or the Veer. Sadly, I have now hopes in new webOS hardware coming from HP or LG...

And what about tablets? This is an even more complicated field. There are little true competitors to my Touchpad - assuming I do not want to use iOS or Android. If there would be a small tablet featuring mobile broadband connectivity running e.g. Windows 8.1, I could give it a try. I have no sightings of this by now, though.

Tuesday, 05/11/2013

adding a simple tag cloud

After having my blog running with harpjs for about a week and having pushed the basic structure to github for everybody to use as they wish (if they wish to...), I found it would be great to organize my tags in a tag cloud rather than showing them in an unhandy list - as the amount of tags used grows, this list view is not useful at all to anybody (unless you are searching the page with the browsers built-in search functionality). I still have the list style active on my archived blog in German if you like to see an example.

Getting inspired by the great posting on creating a sitemap by Kevin Saliou, I thought it should not be too hard doing something similar to create a tag cloud. This is the first (and current) solution I came up with:

(As I am still pretty new to javascript, there probably are a lot of things that can be done better or more elegant - even in these few lines of code. Sorry for this...)

h2 tag cloud
- var data = public.posts.data;
- var tags = {};
- for (var name in data) {
-        if (name[0] != '_') {
-            var ts = data[name].tags;
-            for (var i in ts) {
-                tags[ts[i]] = tags[ts[i]] === undefined ? 1 : tags[ts[i]] += 1;
-            }
-        }
- }

- var sortedTags = {};
- var helperArray = [];
- var maxAppearances = 0;
- for (var i in tags) {
-     helperArray.push(i);
- }

- helperArray.sort(function randOrd(){
-        return (Math.round(Math.random())-0.5);
-    });
- for (var i in helperArray) {
-     sortedTags[helperArray[i]] = tags[helperArray[i]];
-     maxAppearances = maxAppearances < tags[helperArray[i]] ? tags[helperArray[i]] : maxAppearances;
- }
    each index, tag in sortedTags
        - var fontSize = (1.6 * ((index - minimum_apearances_for_tagcloud_greater_than)/(maxAppearances - minimum_apearances_for_tagcloud_greater_than)));
        if (fontSize > 0)
            - var tagClass = "tc" + fontSize.toFixed(1).replace('.', '');
            a(href='/tags/' + tag.toLowerCase().replace(/ /g,''), title='#{ index }', class='#{ tagClass }') #{ tag } 

I simply iterated over the tags defined in my _data.json-file for each post and sum them up in a new object. Next I am pushing the content to an array and use a small function to randomize the order of tags for displaying. Before doing a standard calculation for retrieving the target style of a tag in the tag cloud, the (randomly sorted) array content is pushed to a new object. As you can see, using three collections to perform this task is not ideal. It is - as I wrote before - my first take on solving this 'issue'.

I have declared some style definitions in my less-file to make the visual differentiation according to the count of appearances of tags. Also, I set up the global harp variable minimum_apearances_for_tagcloud_greater_than to be able to easily adjust the minimum number of usages of a tag to be included in the cloud as the overall count of tags goes up.

This is how the result looks like (for the tags used on my German blog):

tag cloud

show all posts