2012-07-29

Openness has little to do with it

[Cross posted from my newer blog dgoemans.wordpress.com]


Recently there's been a lot of talk about piracy on Android. This came after Madfinger Games dropped Dead Trigger's Android price to $0 citing piracy as the reason. A day or two after, a developer by the name of Matt Gemmell wrote a post criticizing Android for how open it is and how its openness drives piracy. Along with that came some bad reporting, implying that Matt Gemmell was a developer for Madfinger Games. In my opinion, openness has little to do with it and there are some things that need to be cleared up here.

Piracy happens on iOS

There seems to be a lot of misinformation about Android piracy. It happens, and I don't doubt that piracy rates on Android are much higher than on iOS, but that doesn't mean that iOS is invulnerable. The developer of FingerKicks, a popular iOS game, had a pretty horrible experience too. "FingerKicks has sold only 1163 legitimate copies but there are at least 15,950 pirated copies being played on a regular basis on Apple’s Game Center" [link]. That's about the same figure we heard from the Dead Trigger devs. All you need is a jailbroken iPhone, and jailbreaking an iPhone is easier than installing a custom ROM on my Nexus S - the device for OS hackers.
Then there was the story recently about a Russian hacker who managed to redirect iOS in-app purchases through his own server. Apparently this didn't even require a jailbroken iOS device, and it was very simple to setup. The Next Web reported that "30,000+ in-app purchases have been made through Borodin’s service" [link].
iOS is not free of this, and despite being a closed system, piracy is still a big deal.

Users who paid that much money for a phone don't need to pirate.

Ye I said it. The iPhone is a luxury product. As is the Samsung Galaxy SIII. People who paid upward of $500 cash or $150 on contract for a phone are less likely to have an issue paying $1 for an app. Apple's business model is, to a large extent, one of vendor lock in, so most users are used to paying extra money for Apple services and products. Sure, they make high quality, attractive looking products, but those come at a premium price. I sure wouldn't go and sully my beautiful top of the range smart phone with pirated products, potentially containing malware. We also shouldn't forget that while Apple's iPhone 4S costs $199 on contract, Samsung's Galaxy Y costs $159 on prepaid. Android has a much wider range of users, from the ones who can afford apps to show off how rich they are, to tech savvy teens who don't have access to their parent's credit cards...

Google's market still requires a credit card in most countries.

iTunes has considerably better payment options. Until recently Google Play lacked paid market support for most countries. There are many cases where people pirate, not because they don't want to pay, but because they don't have a legal way of getting the app ( or music or movies or TV show ). This phenomenon is relatively common. For example, Game of Thrones was one of the most watched TV shows around the world this past year, especially in countries where it wasn't being broadcast. While Google Play might have a paid market in the Netherlands, it doesn't have payment options. The Netherlands is one of those odd countries where people generally don't have credit cards. I know many people with Android phones who don't have paid access to the Play store. I see iTunes vouchers in my local super market, but never Google Play vouchers. Google need to work at this.

Google is doing something.

Although OS updates are slow on Android ( this deserves another post lamenting device manufacturers ), Android 4.1 automatically encrypts all applications and generates a per device key for each application. Google realise that piracy is easy on Android, so they're trying things to make it more difficult. It may not be enough, and I still think they should focus more on increasing payment options globally, but it's a step forward.

Freemium generates more money on all mobile platforms.

Free to play and Freemium games generate more money on average on mobile platforms. Developing mobile games with a standard cash-on-sale business model is no longer advised by many analysts. Nicholas Lovell has publish much about this, and in my own experience in the mobile games industry, I agree with him. Going free isn't automatically bad. Freemium works around piracy for the most part, and generates more revenue than paid apps. It's the way forward and I respect Madfinger for trying it in an industry of peer pressure not to. Hopefully they'll see the benefits of Freemium and build their next games around it.

Open has little to do with it

I see many issues here, but openness is not one of them. Openness means that it's easier for the 1% of technical users to install custom operating systems and hack their phones. That 1% is not the 90% that Madfinger points out. Openness just gives users choice of where to get their apps from ( legally ) and what apps they use for every function on their device. Openness gives developers aren't locked into an OS and a programming language. Openness is what allows device manufacturers to develop phones with hardware keyboards, massive screens and styli. Openness is what allows for $150 Android devices, which you can easily give your kids so they can use WhatsApp.

Payment options and the fact that we're comparing different socio-economic groups are two of the major monetization influencing differences between the platforms. iOS isn't some sacred perfect platform free of piracy, and it's closed nature may mean that there are more security vulnerabilities, like the in-app purchase one, that we don't even know about. Neither platform is perfect, and much work is going into improving both.

2012-07-07

A week in Ubuntu: The good, the bad and the ugly



[This is cross-posted from my new, more general blog at WordPress]

I used to be a Linux user, all the time. Then the mass exodus to Ubuntu and Gnome started happening. And Windows 7, which was a very solid OS. As a KDE user, feeling sidelined at the lack of deep OS integration that Gnome was getting in Ubuntu, I was at a crossroads. I tried to love Ubuntu, but never could. Ubuntu always disliked something of my hardware - which openSUSE didn't seem to mind. Kubuntu never felt well put together, not like Ubuntu. So I left it behind, bought a great notebook with Windows 7 pre-installed, and stuck to that.. for 3 years. Over a week ago, I decided to give Ubuntu another shot. Here's how that went.

The Good
Some things about the OS are great. Ubuntu has come a long way, as has Linux, and desktop Linux may still have a bright future, especially with Steam on the way.
Installation of Ubuntu is amazing. It's easier than any other OS I've tried. This has always been the case. Good on Canonical knowing that if it wasn't this easy, people wouldn't even try.
The OS is fast, bootup is quick, everything is responsive. The experience feels very optimized. There wasn't a point where I thought, damn this might lock up, or that I might be taxing the system by opening Inkscape, Gimp and Spotify at the same time.
Unity desktop is stable, and does exactly what it should. All of the demos, with the HUD and launcher are exactly as expected. This is something I could really get used to, and hope to see all desktop environments going this way. I know Windows 8 does something similar, but without the HUD for alt+key combinations - something that's really awesome.
Gnome 3 is actually a really nice desktop environment. I've heard so much hate about it, and although I can see why, I don't agree. It's quick, stable, and customizable. The extensions are ridiculously easy to install, and the only thing I couldn't find is a button taking me to the extensions site. The extension installer even worked out of the box in Chromium.
This deserves its own point, although this aplies to Linux in general. I could change the desktop. This is something I still love about Linux, and it'll always have a place in my heart. Even if Unity itself isn't customizable, I don't have to use it. I could install Gnome, XFCE, KDE, LXDE, or even - something that I still have a soft spot for - Enlightenment.
Apps on Linux are just getting better. Geany is great for editing PHP and Python. Eclipse always felt more native on Linux than on Windows. Spotify ( since I have a premium account ) worked like a charm. I even managed to develop a Spotify extension using only the Linux version. The games selection in the Software Center is looking much better too, with some top premium games. And with Steam and Unity 3D ( the engine ) support coming, that will only get better.
My laptop is a Dell XPS 17, with an Optimus chipset. Something that's been in the media lately for NVidia's lack of official Linux support. It turns out, there's a project called bumblebee, which works surprisingly well. Once I followed instructions, things were working great. The little 3D sample app, GLXSpheres, went from 1,6 fps - using the intel card - to about 180 fps - using the 555M my laptop packs. I tried a few 3D games, without a problem. I even played some levels of Swords and Soldiers, a port of the Xbox/PS3/Steam version. This is where Linux shines, if NVidia won't support it officially, someone will find a way.

The Bad
Before installing bumblebee, Ubuntu decided to use Unity 2D instead of the full blown default 3D experience. It was still really quick, but it had some quirks that made me install Gnome 3. It was only after I installed Gnome 3, I realised that my 3D drivers weren't active, because I kept booting into Gnome Classic. This may have sullied my Unity experience - which it did to some extent - so I tried full blown Unity again. I still went back to Gnome 3.
Unity in general hasn't won me over. I dislike single menu bar and the side dock. I've written about this before. Basically, the dock becomes annoying for me to use if there are more apps on there than it is high. I also find global menu bars annoying - this argument is roughly how I feel about it. I generally dislike the way OS X deals with window management, and since they're adopting OS X style standards, I dislike that. Sure, it's  an opinion, and some people might like it, but I don't and if Ubuntu is going the way of the Mac, that will make sure I never use Unity as a default desktop - which thankfully in Linux you can.
Gnome 3 is pretty good, but I'm disappointed by the lack of a default window list/manager as quick as that in other desktops. I installed the Window List extension, which has worked around the lack of space on the bar. That said, this extension works well, but not something I'd recommend for the beginners.
I was pretty disappointed to find Gimp 2.6 in the repository. One of the reasons I wanted to use Linux was for this. It's a shame since 2.8 is now stable for a few months already and I'd have expected it to be up streamed into the repo.

The Ugly
Something that really got me angry was the default notifications in Ubuntu. I had forgotten about this from my previous attempts at learning to use Unity, but it actually makes me lose my patience. I use my laptop - which is my main computer - for several things. It's my primary development environment, my internet browser, and my primary means of chatting. The fact that you can't click on the notifications means that for me to respond to chat messages, I have to either multitask ( 2 clicks ) or go to an annoying menu at the top of the screen and select the chat that the notification came from ( 2 clicks ). It even goes to the extent of blurring the notification when you mouse over it, almost taunting the user, "I know you want to click on this, but you can't". That actually made me find and install an alternate notification system, which integrated so poorly with Unity that I installed Gnome 3 instead. It turns out that this notification system is like this by design. That fact annoyed me even more. Every OSes notifications are becoming more functional, I only hope Canonical wake up to this soon.
Something more directly related to Empathy - the chat client - was that every time I woke up my laptop, I had to redo my 2 step verification on my Google account. That meant, logging into my account in the browser, regenerating a new per app password and entering it into the client. As a default chat client, this is very annoying. Linux users normally have higher security than other OS users, so the fact that this bug wasn't fixed before release is amazing. I found a bug report for it over a year old. It seems like a minor thing, but having to come home from work every day to re-enter a password behind 2 walls of authentication is not acceptable usability. Sure there were work-arounds, and other apps like Pidgin, but I was tired of fighting the OS defaults.
I have a Logitech Performance MX mouse. I paid good money for it to do some serious gaming. It's a great wireless mouse with a darkfield laser - so I can use it on reflective surfaces. I probably won't replace it any time soon and if then, only with something similar. The problem is that Ubuntu keeps forgetting it. It happened 3 times in 1 week. I'll start up, and the mouse won't work. It requires me to unplug the usb adapter for it and plug it back in. Add that to the previous hassle, and starting up my laptop is ridiculously annoying.
Conclusion
So I sit here back in Windows 7. Maybe it's stockholme syndrome that makes me comfortable with Windows, but my chat client isn't complaining at me and my mouse works. That said, I will definitely go back to Linux occasionally. Especially now that Unity 3D is going to have a Linux exporter. My current Unity 3D games will get Linux ports, and I will be putting them in the Ubuntu Software Center. Although I may be in Windows, I haven't deleted my Linux install, and probably won't any time soon. Ubuntu is better than I remember, but it's still got a long way to go before I can achieve the same level of productivity that I can in Windows. Given that Apple's share in the desktop/laptop market is only growing, users will be more comfortable trying out Linux. And I can only hope that with more end users, more of these usability issues will be ironed out.