Upgrades All Around!

It seems that last week was a week of upgrades for me.  First I got to upgrade two laptops and a server to the brand new spanking Ubuntu 12.04 (Kubuntu and the Server editions of course).  Unlike people living in the Ubuntu world, Kubuntu is fairly stable and 12.04 just packaged a few nice updates and bug fixes.  Also I installed the stable release of Calligra, and I plan on trialling that suite out.  This also gave me the opportunity to hang out with some to local Ubuntu fans at the meetup.  Strangely enough I left like one of the youngest people in that group.

In addition to that I finally received an update to my Samsung Galaxy Tab 10.1V.  Now it is finally rocking Android 3.2.1 after running on 3.0.1 for a while.  Not quite the ICS release I hoped for.  However once I get around to flashing my Samsung Galaxy SII with the non-carrier ICS (Android 4.0) official ROM, then I’ll have all my hardware nicely updated.

Update: 2012 May 03

Looks like the fine folks at Bell Mobility and Samsung Canada released an update for ICS for the Samsung Galaxy S2!  Refer to here for more details: http://t.co/ueKFO4qb  And yes my phone is rocking Android 4.0.3, and it works amazingly!  Thanks Bell and Samsung, and sorry for complaining about you taking so long for the update.  The update looks solid and definitely makes the phone “feel” newer and better.  Great work!

When Penguins Can Fly… (An Exercise in Portfolio Building)

No, this is not an exercise in a delayed reaction for April Fool’s Day.  I am not that slow!  Rather I spent most of the weekend in a concerted effort to setup a portfolio and renewing my personal website.  I realize now the reason why I procrastinated to do so for years.  Setting everything up in a systematic manner is difficult and painful.  Digging through folders to find great examples of your work even more difficult.  However the effort was worth the pain.

The blog now has a unique title: “When Penguins Can Fly…”.  I think the title is appropriate considering how much of a Linux fan and of penguins I am.  At little bit of magic in Gimp and I replaced the background for the theme.  Anyone interested in using the theme for themselves, can find it here: Hacker Dreams WordPress theme version 0.1

After that and a bit of fun with the favicon, I started work on setting up the various pages and galleries in my portfolio.  It took a while to try out the various galleries, and I settled on the NEXGen Gallery plugin.  After some futzing around, I managed to setup quite a few nice galleries for the Draw section of my portfolio.  In the future I will need to either find even better art or create more artwork.  However this will have to do for now.  In addition I found an animation I did for a visual computing class that I uploaded to Youtube.

The most difficult aspect is the coding part of the portfolio.  I originally wanted to build a bunch of original apps with new source code.  Unfortunately that will take time that I do not have at the moment.  I will add those when I have a chance.  However for the moment downloads, brush ups of old work, screenshots and screencasts will have to do.

In a rare case, I am opening up the comments to take suggestions.  Please let me know what you think.

The Next Big Thing

I am really excited that I am currently working on my next big project.  I won’t spill any details until everything is setup and ready.  This new project I hope not only will give me the opportunity to work on the technologies I love to work with.  But will also benefit the Linux and open source community as well.  More details will follow soon.

As part of this project, I will be doing some major changes to this site.  One of the major things will be the expansion of my portfolio.  It has been something I wanted to do for a long time.   Now I finally have the opportunity to do so. 🙂

Experiments with Wine Gaming

While I was working last month (and last year), I had the need and opportunity to setup Linux properly on my laptop.  Windows simply did not cut it for remote development.  After a bit of fighting with some graphics issues (yes, I got bitten by the switching between the Intel and Nvidia GPUs) I managed to setup my Linux system fairly well.  Yes, I am missing out on some of the nice, new hardware features on my laptop like the fingerprint reader.  Nor can I get a nice boot experience due to the combination of a strange widescreen resolution, using the proprietary Nvidia drivers and the plymouth splash screen.  Running full-blast with the Nvidia graphics card does not help my battery much.  But I can live with that.

The experience with using modern Linux and KDE can not be understated.  Not having to fight with your system when setting up development environments helps too.  The icing on the cake, was my most recent experimentation with Wine.  Back in the day when I started using Linux, getting any Windows program running nicely under Wine was a minor miracle.  An update could change that in a hurry.  Getting a 3D game running smoothly under Wine… just did not happen.

Now imagine my surprise when I tried to use Wine on my most current install.  After using winetricks a few times, and a tiny bit of experimenting I managed to run nearly all my Windows games under Linux without too much difficulty.  Nearly all my Steam powered games worked, including Deus Ex, Half Life, and Myst.  Even Microsoft games like Freelancer and Halo ran with very little work.  So did Risk and the original Homeworld with very little effort.  And yes Uru Online which is my favourite of the Myst series runs really well as well.  What makes this great–beside not having to reboot to play a game–is that old games will run with little extra effort without keeping some ancient version of Windows lying around.  Also important to note is that none of the games lagged under Wine, just some minor sound stuttering and weird cursor grabbing.  So one can enjoy most of one’s Windows games under Linux without needed to reboot necessarily.

Grey Morning in a New Reality

Outside the window, grey clouds fill the sky and raindrops stream through the air.  A warm morning for an early December day, the weather being more likely for mid-November.  The rain does not bother me as I am sitting in a GO train headed to downtown Toronto, and getting ready for the start of a new day.

Since I started working at Indusblue as an Android developer, my mornings involve a morning train commute to Toronto.  While taking the train and streetcar to work extends my commuting time, I can not complain.  I get about two hours each day of time for myself, to get work done.  Amongst other things, I use this time to write or catch up on past work.  Today I decided that instead of sleeping on may to work, I would update this blog.

After a summer of travelling to and from San Francisco and spending a good portion of my Fall travelling in central Europe: Poland, Germany, Austria and Italy; I finally am settling down at the end of the year.  While I love travelling and visiting new places, I am glad that I have returned to Toronto.  I am glad to be close to most of my friends, family and familiar settings.

Since my return, I have concentrated on catching up on overdue work.  So many tasks and delayed projects have piled up, that I feel the need to make progress on them or even finish them before the end of the year.  Amongst other things I started writing two pieces: a science fiction novel and an auto-biography of sorts.  Also I started working on justcheckers again, which I plan to complete as part of my portfolio work.  And I am working on a few other missing or lacking parts of life, that I can not comment on right now.  However I am overjoyed with the progress I have made, and the opportunities that linger on the horizon.

So while the mornings are grey and rainy and sometimes quite cold, I am grateful for the new reality of life I am in now.  It might rain outside, but I feel as if it were sunny.

Innovation in Increments

I have the good fortune of working in a Research & Development group. That means I get to learn about new ideas, experiment with them and apply them appropriately. Unfortunately I can not discuss my current project, other than it involves automating the creation of mobile applications. While I can not say that I am building something that is so deeply innovative that it has no precedence. But then again what most people do not realize that innovation happens mostly in small increments. You take an interesting idea, see if it makes your life easier and better. If not you review your work and options, and you try again. If it works, you get innovation!

So while I can not comment on my own work… 🙁 I can point some interesting work happening in the libre software community.

Canonical’s New Take on Scrollbars

Many of today’s computing innovations like tablets deal not with radical new technologies.  But rather making technology more usable for non-developers and non-engineers.  It might not sound like much, but Canonical is working on improving the usability of scrollbars in their Gnome desktop: http://www.markshuttleworth.com/archives/615

Take a look at the video in Mark Shuttleworth’s post.  I definitely think that abstracting the line indicator and the actual control is a great idea.  It also makes it more touch friendly and intuitive.

MeeGo and Qt Lives for KDE and the N900

While not so much an innovation per se, I am happy to hear that the development of Qt and MeeGo will continue.  The KDE crew came out and pointed out that Qt back when KDE started was a great framework and is even better now.  Back when I started using KDE, I was amazed at how well everything integrated together in look and feel terms.  This was all possible with KDE settling on one good UI framework, Qt.  Now that it is more cross-platform and rounded out, it still is a great compelling framework to learn and use.  There are some governance issues that need to get worked out, but it is nothing that won’t be resolved nicely soon.  I indeed intend on learning Qt, as soon as my own schedule clears up.

[Another analysis on the Nokia/Qt/MeeGo/KDE question.  Man isn’t life in the libre software world messy at times.]

As for MeeGo, sounds like Nokia will be supporting the N900 as an official development device for MeeGo.  So maybe Mr. Elop changed direction, but at least there is a way forward for MeeGo handset developers.  Hopefully that’ll mean that we can get started hacking on MeeGo.  And once more devices come out, all developer efforts can get carried over.  Maybe, just maybe we’ll finally have a good libre software platform for new disruptive devices, that won’t be threatened by the domination of one massive vendor.  I’m looking at you Google, Microsoft and Apple.

MeeGo Nowhere

My previous blog post about MeeGo was completely off-base. So it looks like Nokia decided to go with Windows Phone 7. Personally I don’t see the point, but then again I don’t run a Fortune 500 firm either. Apparently there are still plans for a MeeGo powered handset/mobile computer. Sometime in May, maybe? However it does not bode well for us from the Maemo community.

So what about the dreams of having a real Linux running on handsets, netbooks and all that jazz? Well it looks like WebOS gets that privilege and honour. Maybe others will run with MeeGo, but this all is starting to all look a lot like the OpenMoko or LiMo. In other words, a Linux + GCC + X + Gtk + Qt stack is something that for now will remain in the corner. Something that the free software idealists, early adopters and researchers will run. But otherwise, rather irrelevant to the rest of the world. I’m also worried that closed, locked down garden walled ecosystems will prosper rather than something totally free and flexible. So Stallman’s dystopian future of the Luna colonies looks all the more real, each and every day.

So what about our man, Nokia, jumping off a burning oil platform into the “safety” of the North Sea, as CEO Elop so eloquently quipped? Hope they don’t die of shock. The North Sea is not exactly a safe and nice place to take a pleasant dip into. I wish them the best and hope they don’t end up washed up on the shore of some strange mobile country as a frozen corpse. Because baby, it is cold outside (the mainstream mobile ecosystems).

So where does that leave us? Knowing Qt is still a good idea for other reasons. The Maemo user and developer community should prepare to become self-sufficient because there probably will not be anymore Maemo-like devices out there. As for MeeGo? Come back in May and we’ll see if anyone gives a damn. The most widely adopted, open and flexible mobile OS right now is Android. At least thats how I see things playing out.

justCheckers for Android is On the Move

I’m pleased to announce that I have gotten back to developing justCheckers.  I missed coding on my own projects.  And I am glad that I motivated myself to get back on it.  This time around I went the Android route, since the Android framework makes development of multimedia, threaded applications really easy in Java.  And it gets around the nasty distribution problems involved with desktop applications.

I also decided against working with a team this time around.  I came to this decision after realizing how much more productive I am coding by myself.  And how much solo coding I do at my day job.  Also I spent more time organizing teams and tasks then actually getting them done.  So I quietly disbanded the potential dev teams and closed down the mailing list.  At least for now.  I might look to building a team after I scale up.

At the moment I finished building a decent looking first draft user interface.  Now I am trying to hook the UI to the existing game engine/controller.  Once that works, I’ll get back to fixing the game engine to make it generic enough to handle the different rules for the different variants of checkers.  Hopefully I’ll be able to release something soon.

Nokia and Qt, I Choose You!

Since I commented on this post about MeeGo here, I really should explain.

I went to a Wavefront/Nokia seminar about Nokia’s Qt and Ovi store on Friday.  Partially out of curiosity, partially to network and partially to perhaps win a brand new spanking N8.  Not that I want to hand in my N900, but I like new kit.  And as a research & development mobile developer it is my responsibility to learn about the whole of the mobile ecosystem.

First of all I want to say is that I am amazed by the pains that Nokia goes through to maintain being a market leader.  Not to sound like a PR person for Nokia, but the number of countries and languages that Ovi is available is astounding.  And for anyone wanting to integrate their app purchases with a carrier’s billing system Ovi is the only way to go.  Why?  The Google Market integrates with 2 carriers.  Nokia’s Ovi Store integrates with 99 carriers.  So while Apple iOS and Google Android do a remarkable job, they don’t scale like Ovi does.

Another thing that Nokia does well is compete in various markets against various vendors at the same time.  In the superphone market it is up against Apple, Samsung, HTC, Motorola, Microsoft, Google, etc.  In the business space against RIM’s BlackBerry.  And it wipes the floor in the feature phone market.  Yes, the superphone market is proving difficult for them.  Hopefully MeeGo will change all that.

Qt is amazing, and Nokia is pushing Qt hard.  Very, very hard.  This is awesome news for the KDE community.  And it also provides a glimmer of hope for developers who would love to learn one framework very, very well and use everywhere.  Java failed, and if Android (which ONLY works on smartphones or smartphone-like handsets) is the best we can do then we have failed.  This is coming from someone who earns his bread and butter as an Android developer.  I love working in Android, even with all of its quirks and oddities.  But Qt… thats a whole new level, especially if the market accepts MeeGo.

So know there is a bunch of speculation about Nokia CEO Stephen Elop dropping a platform and merging with something Microsoft.  And everyone is speculating Symbian, Symbian^3 or MeeGo.  Symbian is not going away.  And I don’t think MeeGo will go for three reasons: it took years to get MeeGo to where it is.  Second is that already most of the up and coming in-vehicle interface systems will run MeeGo.  And third is this interesting tidbit:

Audience: So when is the next Qt training session for Toronto?

Nokia Rep: There is one in March for Montreal.  There will be one in Vancouver in April.  And there will be a whole new set of sessions including Toronto, around MeeGo devices.

That and other comments at the seminars point to MeeGo device appearing sometime before May.  So what about this mysterious announcement?  Well everyone seems to have forgotten that Nokia has a gaming platform: NGage.  Yes, that NGage.  The one that is not doing so well.  So how will they compete in the mobile gaming space with the iPhone/iPad and Sony’s next PSP that is Android based?  How about bringing Microsoft’s XBox to mobile devices?  Hmm…

Discuss!

As a sidenote, I’m planning to learn Qt while working on my current work project.  I can’t wait.

Getting Back into the Swing

This post is actually a few minutes into the next day.  But I’m still trying to get into the swing of things.  One of my New Year’s resolutions is to put parts of my life that aren’t on track, back on track.  Of course this is easier said than done.  But like Matthew Kelly–an amazing Catholic inspirational speaker and evangelist–says: “Our life changes when our habits change.”  Changing habits is a long and difficult process, and honestly I’ll be happy if I can get everything in place by the end of THIS year.

In totally unrelated things, I found out that the original Starcraft runs beautifully under Wine.  I’m going to try some of my other Windows games in the future, and see if I can realistic ignore using my Windows partition.