UX and App Design at Google – Takeaways

Yesterday I was at an interesting UX knowledgeshare event where Simon Raess spoke about user experience and application design at Google. Google being an engineering company at heart they arguably only put in the recent years more weight on Ux and Design. Also nowadays Google employs only 200 designers. Being an engineer myself, I expected to get some new insights from another perspective.

The talk was built around the first principle of Googles corporate philosophy “Focus on the user and all else will follow”. Being the first principle it is the most important one, and prioritised in favor of other conflicting aspects when making a product. Among other things, this means that the first thougth when starting with a product is not how to make money but what do users want.

Posted in Uncategorized, Web2.0 | Tagged , , | Leave a comment

A Programmer’s New Year’s Resolution for 2010: Learning Scala

In a world of constant change and ever increasing speed of innovation as a programmer, you might sit back and think about how to prepare for those changes and increase your career options. You might also look forward to a mental distraction from the daily Java/Ruby/PHP routine, or your inner geek is just looking for the next big thing.

So without further ado and fanboy-ing here’s why I want to do it.

Posted in Distractions, programming languages | Tagged | Leave a comment

The old-school Objective C is approaching top 10

From time to time I check the index of the most popular programming languages by tiobe, check out how popular the old-school Objective-C is becoming!

Given that this language is very old school, it makes me wonder what would have happended to the Appshop and Apple if they opened the Shop for Java, PHP or Python?

Posted in mobile development, programming languages | Leave a comment

MegaTrend #9: Cross-platform Mobile Development

In a recent article by InfoWorld Cross Platform mobile development was mentioned as one of the top 10 emerging enterprise technologies.

Until about 1 years ago the options for cross-platform mobile development were

  • doing platform specific native builds for Symbian, WinMo, Blackberry, UIQ, etc. or
  • Java development with specific twists per handset / handset group or
  • WAP/XHTML Mobile Web Site
Posted in mobile development | Tagged | 5 Comments

Obfuscation Bugs in J2ME Apps

Does this sound familiar to you?

It really did drive me crazy. Bug only appeared in a certain phone model with a certain version of the app. Not in emulator, not in other phones, not with other version of the app and just 2 weeks ago – without major change in the app – all was running good in this certain phone. Of course I did not remember one crucial thing that happended in these 2 weeks: I upgraded my IDE NB from 6.1 to 6.7.1.

Posted in mobile development | Tagged , | Leave a comment

FB Series: Difference between IFrame and Connect Apps

Writing about specifics on iFrame apps in Facebook development was on my list for quite some time. So now despite a lack of time, let’s just get out with the essential message:

When writing iFrame Apps, think of it like a Connect App. It is essentially the same.

I made the long way round trying to find out what are the specifics of a iFrame app in the Facebook Wiki, Forums, and Google. The Facebook Docs is very unclear about the concrete iFrame functionalities from my point of view. Start reading the Facebook docs substituting Connect with IFrame and you find it way easiert to get along, I found.

Posted in facebook | Tagged | Leave a comment

Lessons learned trusting Code Generators

To give you a short answer beforehand: Do not do it! But let me tell you my experience:

I started using Jersey back in 2007 when it was at version 0.4. Netbeans however already had a plugin to get you started on the fast track by generating REST Webservices out of Entity Classes, which you can also generate out of an existing db schema. At that time I was only starting learning JPA and was happy that the Netbeans Code Generators took care of most of my Entity Access Code. In retrospective I should have made the effort of learning everything JPA beforehand and not gradually as I worked along. Usually I actually would have done that, but the Code Generators tricked me into not doing it: It just seemed too simple to bother.

Posted in java | Tagged , , | 1 Comment

Website deployments: Plain old Ant

In the last entry I was mentioning several solutions for managing web site deployments and packaging for php webapps. Since with PHP there is usually no build process already at development time this has often to be established especially for test & production – and yes there needs to be a build process if you do serious php web development.

Despite Sprocket or similar tools I decided to go for the plain old ANT approach. Why? It was the most practical tool, you have full control of what you are doing and the other tools did not quite what I wanted.

Posted in Web2.0, javascript, php | Tagged , , | Leave a comment

Initialise External Javascript in Page Fragments

In the last couple of hours I was contemplating around maintainable, performant and non-obstrusive Javascript on a project I am working on.

Following situation:
- Much Inline Javascript
- Many JS and CSS files referenced
- No Frontend Deployment/Build Process in place
- Some Javascript values are set at page generation time by Server Side code
- Webserver is not configured yet correctly for setting expires & compression headers

Problems with this:
- Maintainability and separation of concerns is an issue with lots of inline JS
- Long Pageload because of many HTTP request
- Webserver takes big hit for all the static content loading
- Network is being stressed as well
- Javascript Logic is unobfuscated/not minimised and visible to the world

Posted in Uncategorized, javascript | Tagged | 1 Comment