• Home
  • About
  • HTML5 for iOS

    November 1st, 2011

    My grandfather used to say: “Makkelijker gezegd dan gedaan” (easier said then done). So when I talked about how HTML5 could be the new platform in-depended development paradigm, in this previous post, I better come with some real world examples instead of only saying it.

    So that is exactly what I’ve been doing. My wife is a bit of an apple fan woman. And she has a book that she would like to publish. She couldn’t find a publisher, so the next best thing would be to put her book on an iPad, but you still need an publisher to put something on the iBook store and publishers are still stuck in the dark ages. So we’ve decided to make an application out of her book. Now I’ve written some objective-c code before and I must say it wasn’t the best experience I’ve had. Xcode at that time was awful, it was like writing software 10 years ago. So I started to look for alternatives. It could be a simple html page, but how to create a native iPad application out of that?

    I’ve found something that I’m really exited about. Playn is a cross-platform game abstraction library for writing games that compile to multiple platforms one of these is html using gwt. Now if I use this in combination with phonegap then I can create a iPad app that can also run on android based pads. Not only that I could make it interactive add a game to the book and best of all do it in Java.

    If you think about it, for companies this makes a lot of sense. Unless your companies key platform is iOS, having developers in-house that have objective-c knowledge is expensive. Also hiring external company to build an iPhone app is expensive and they have to work together with you to integrate your existing architecture. So having something like this where one can use existing knowhow to create a android and iPhone solution that works on both platforms is a huge cost saver.


    GWT and HTML5 Canvas, the future of the web?

    August 25th, 2011

    The future of computing lies in mobile computing, more and more devices come on the market, tablets and phones that will connect through the Internet as technology is getting cheaper and wifi and 3g more common. That means our software will also need to run on these handheld devices, because our clients will want their services on all platforms. This is what Java set out to do 15 years ago, so that we have the ability to write software once and run it everywhere. The problem is these new platforms, that I believe will make up a large part of the future have, until now, no Java. It would be great if we can find something that will give us the ability to write our software only once.

    I believe that the technology that is going to deliver us this promise is called HTML5. More and more applications will run inside you browser. I’m typing this article in google docs, which is a perfect example of how applications will evolve. No need to install anything or maintain up to date versions, even an operating system could be very minimalistic (google chrome). So Google is obviously sharing this vision, but also Microsoft is building it’s next version of office on something that is based on their web-browser.

    Sadly the development language of HTML5 Javascript and not Java. Java has been around a long time and there are a lot of libraries that people have made. Would be cool if we can still use these, the answer is Googles Web Toolkit. GWT provides a way to code in Java and then translate that code into Javascript. This way we can still use all that great stuff that others made.

    A good example of this future is Angry Birds, you have probably heard of this game. To create this game they have taken the java implementation of box2d called jbox2d and created a javascript version of that with the help of GWT. Once that is done you can use HTML5 Canvas to draw the Birds and calculate their positions if they are falling. Now because they have build it this way with HTML5 this game could also work on an iPhone, but even better because android is based on java you could create from this source a android version with only one line of code.

    Have a look at some of the great things people are building with the HTML5, be sure that your browser supports it.

    1. Drawing program deviantART
    2. Old style game with new technology area5
    3. Quake GWT HTML5 port

    MobileTech Conference 2010 wrap up

    September 10th, 2010

    This years MobileTech Conference took place from 6.-8.9. in Mainz at the Rheingoldhalle.

    In his keynote Tim Bray (Google Android advocate) did not fail to stress the importance of the mobile business by showing some impressive numbers, charts and statements.
    6.8 Billion people worldwide, 3.6 Billion mobile subscriptions, +1 Billion mobile devices / year.
    The whole mobile business is a Trillion (yes, T!) dollar business and the the biggest digital business (asymco.com).
    Eric Schmidt: if your web strategy won’t be successful on mobile, it will not succeed at all.
    Steve Jobs: we are a mobile company.

    Web vs. native?

    Actually to Google the question is open. Both approaches have their know advantages and disadvantages. The market will show and in the meantime they’ll do both (see Chrome and Android).

    Whats the ideal number of mobile platforms in the world? (provocative)

    Certainly 1 is not ideal, that’s the conclusion from the Windows Desktop OS experience.
    Will the technical aspects decide, compiling down to the metal vs. running a VM?
    Certainly the big players are iOS, Android and web.
    Again, the market will decide. He believes that Blackberry is here to stay (well at least for some more time), he wouldn’t count Nokia out, but Windows is certainly not a player showing only vaporware atm. He was wishing WebOS (Palm) to succeed, but questioned that HP has the necessary brains to achieve that.

    How to earn money in the mobile software business?

    With respect to monetization through Appstores the revenue distribution is inverse squared. That means not many people are earning serious money by selling apps.
    Potential ways of monetizing apps are as follows:
    sell apps, sell app upgrades, sell in app ads, do in app sales, sell whats on the server
    Currently selling apps and selling ads in apps generate equal amounts of revenue. For the future he is expecting the ad side to increase a lot.
    He concluded the talk by stressing the importance of privacy in the mobile business.
    He himself actually does not feel easy giving away his physical location, interesting …
    Privacy is not only a question of guidelines, but of culture within a company. Google obviously takes the issue very seriously …
    Last but not least he shifted the audience focus to the emerging mobile markets of India, China and Africa. One shouldn’t limit oneself to a western perspective on the issue.

    The conference had a good mix of technical and executive level talks.
    Here are my notes on some of them:

    iAds

    According to Steve Jobs a totally new experience of advertising. Emotional as TV but targeted to a persons specific profile.
    Current problems: the ratio of ads to advertising space is very low. Well who wonders given that there are currently only 2 iAds around (Nissan and Unilever). A reason for that is the current restriction that you need a Mio.$ budget to be eligible for advertising on the platform.
    Technically iAds are applications you write in the iAd framework, which is an interesting fact and opens up a new market for software company (and closes one for the classical ad designer with no software skills). Atm Apple is doing most of the ads themselves …
    A much more lightweight form of iAds are iAds for developers (less costly, less impressive).
    That way app developers can ad for their apps.
    Some very interesting legal informations are:
    Since you might not agree with user profile Apple is generating secretly of you to optimally target you with iAds, there is an out option: Go to oo.apple.com/ you disallow personal data collection. The consequence might be worth considering: untargeted ads …
    Certainly one might ask oneself the question, how other ad frameworks fit into this new scene?
    Well, as long as you (as an ad framework maintainer) to not run a mobile platform in parallel you are safe … (read that again!)
    That means apps with integrated admob ads will no longer make it through the review process.

    Mobile couponing

    interesting facts: classical paper couponing has a conversion rate of 0.2% whereas mobile couponing has 9%.
    Have a look at MyMobai if you are searching for a service provider in that area.

    Usability and mobile platforms

    bottom line: there are significant differences between the existing mobile platforms.
    In order to promote discoverability one should stick to the customs of the given platform.
    consequence: read the usability guideline (if there is one)
    consequence2: crossplatform approaches won’t be that successful
    take home message: do not develop for a platform you are not using youself

    Lessons learned from swoodoo

    Good wrap up of iterative, user centric development.
    Prototyping can be easily done with keynote/powerpoint and paper models (have a look at uistencils.com for your favorite UI elements …).
    Actually when developing mobile applications proper usability engineering is key. Users won’t forgive bad design.

    The state of AR

    Gardeya started off with an example of Desktop AR (Tissot) went on to Layar, currently the biggest AR platform.
    It might be surprising, but AR actually sells smartphones (Samsung Galaxy comes with Layar preinstalled).
    Next evolutionary step: form video overlay to video analysis
    Did you know that Google has a patent on street view to replace real world billboards with virtual ones?
    Final statement about AR: kiichi matsuda – domestic robocop

    Staying connected with jwebsocket.org

    good framework, full-duplex efficient real-time communication using a permanent connection.
    Good talk, but to be “web” in the sense of “web scale” the server implementation should provide support to handle 100k+ simultaneous connections.


    What RIA developers could learn from the iPhone

    May 1st, 2010

    The Apple iPhone, just like its bigger brother (the iPad), does not exactly shine with its universality: In the end, the technical options and the contents that may be used are determined by the parent company.

    However, it is precisely this limitation in the user and developer flexibility, in addition to the purist and inherently coherent design of the user interface that are the secret of its universal success. The user experiences a successful reduction in complexity from app to app within a homogenous user interface environment, in which he quickly finds his way around. The problem of information transport, according to media expert Neil Postman, has long been solved. Now it is about developing the right selection techniques in order to come to terms with this flood of information.

    Successful complexity reduction

    Precisely this demand is fulfilled by the in-house engineers at Apple, as well as the developers of successful programs that run on the iPhone. Now however, these inventers often are not exactly world-beaters when it comes to experience in UI design or architecture development. Rather they place themselves intuitively in the shoes of the users and ask themselves what information they would like to call up on their iPhone themselves. And Apple supports this implementation via an SDK that delivers many graphic effects and interface components out of the box. This intentional simplification of options creates a world which eases the navigation through this flood of information to such a degree that most users happily put up with any such limitations.

    Levelling the fastest routes

    What can we learn now from the iPhone phenomenon for the development of Rich Internet Applications? In production systems it is less crucial to push the limits of technical feasibility or to place emphasis on the maximum user flexibility. What counts instead is to smooth the most rapid route to the required information and functions for the users, without them having the need to deal with the intricacies of program structure. To fulfil these needs the developers need to put themselves in the users’ shoes, which is easier in the case of greatly restricted iPhone apps than with complicated web applications that quite often cover the scope of entire departments.

    In view of these over-complications it seems tempting in the initial phase of a project not to pose too many questions to the end users (or indeed one’s own intuition), but rather to proceed in the hope that people will get used to the technically more familiar structures. These are, however, shortcuts that can come with acrimonious paybacks at a later date.

    Tools that help those in charge to see things from the users’ point of view (e.g. paper prototyping) may initially appear laborious and, due to the lack of “hard” results, unnecessary. But rather than definitive guide-rails, this phase is more concerned with developing a feeling how the users’ workflows could be integrated into the future application, and to identify which paths in the current IT environment are often or only seldom trodden, so as to provide orientation for the subsequent development process.

    The goal is therefore to pick out the basic limitations and requirements for simplification right at the start of a project, so as to attain similar complexity reductions in the context of productive systems such as some successful iPhone apps demonstrate.


    Gartner Oracle: Smartphones to dominante PCs by 2013

    January 18th, 2010

    .

    The well known research firm Gartner just published it’s Top Predictions for IT Organizations ans Users for 2010 and beyond, covering developments which definitely affect the RIA market, too. Their key findings are:

    • IT Ownership: ”By 2012, 20% of businesses will own no IT assets”.
    • Cloud Computing: “By 2012, India-centric IT services companies will represent 20% of the leading cloud aggregators”.
    • Social Networking: “By 2012, Facebook will become the hub for social network integration and Web socialization”.
    • Sustainability: ”By 2014, most IT business cases will include carbon remediation costs”.
    • Internet Marketing “will be regulated by 2015, controlling more than $250 billion in Internet marketing spending worldwide”.
    • Mobile Commerce: “By 2014, over 3 billion of the world’s adult population will be able to transact electronically”.
    • Context Aware Computing “will be as influential to mobile consumer services [..] as search engines are to the Web”.
    • User Devices: “By 2013, mobile phones will overtake PCs as the most common Web access device worldwide”.

    Perhaps the most aggressive outlook is the prediction that mobile phones will overtake PCs as the most common Web access devices worldwide by 2013 — Morgan Stanley wasn’t quite that courageous. If we look closely, Gartner predicts that mobile phones will drive the higher number of website accesses “due to the sheer weight of device numbers”, but the “the bulk of page views will continue to occur through larger-format devices”. However: The RIA sector has to get ready for the mobile revolution, existing websites and web-based applications should be designed to be device-independent and their information structure has to be redesigned for mobile phone access.

    Canoonet Mobile

    CanooNet Mobile V2 (announced for 2/2010) demonstrates a successful redesign of a content structure for mobile access: No information should be positioned more than 3 clicks away from the user.