This is the introduction to a series of posts I’ve started to write in April 2012. Other posts in this series are:
- Part 1 – Will this work for me?
- Part 3 - Frameworks, Libraries, and more ...
In late 2010 I decided for myself to refocus my technical research and development efforts. After nearly 10 years of working with .NET, the limits of this technology become apparent: while Windows does great on servers and still runs a large part of the desktop space, the continuous progress in tablet and mobile environment was largely happening on non-Windows platforms.
My goal at that time was to demonstrate that JS+HTML can be a very productive development platform, which also increases the reach from just a single OS to multitude of modern browsers and devices. I wanted to create applications which can run as offline-capable Web apps on regular desktop and laptops, but which also offer a mobile-web-compatible GUI rendering; at the same time these apps should allow to be installed (like classic applications) on Windows machines, on Macs, on Linux and of course on iOS and Android. All of this should be achieved with the largest possible reuse of source code between these different platforms, while taking advantage of native platform features where reasonable.
That brings us here. After more than a year and a half of in-depth research, development of prototypes and several production applications for different clients (and for a new company I'm currently launching) I’m finally finding the time to write about my experiences with this technology stack. I have waited for such a long time, because I really wanted to write this not so much from the “enthusiastic early adopter”-point of view, but instead based on real applications and real issues,
In this series of posts, I plan to talk about the decisions we faced when implementing our clients’ solutions, the issues we faced regarding browser-differences, and of course the libraries, tools and techniques we're using.
(NB: to provide for full disclosure: I'm currently starting a new company in this space and we're implementing cloud-based business software (as a full product, not as developer toolkit or consulting projects) based on these approaches. While thinktecture will remain my primary home for consulting and developer-support, this reduces the number of engagements I can accept in 2012 and beyond. But thinktecture is not just me alone, and I was able to convince most of my colleagues to join the HTML5 train quite a while ago as well :-))