05/11/2012

Jan Krutisch: “we're still in the process of finding out what the sweet spot of single page apps might be”

Ofer Dak@startupmania


Hi Jan, You’re going to talk about single page apps
I see a lot of people both wanting to build a single page app for all the wrong reasons AND struggling a lot with it. Building rich client applications is always way more complex than more traditional web apps and people have a hard time correctly evaluating the pros and cons. That's why my talk is focused on that evaluation and the reasons for building and, as important, not building a single page app.
My work focused on mobile web apps, where building single page apps has some distinct advantages, but where building complex javascript apps is also more complicated because you have to watch your memory and CPU usage - plus the debugging tools are not as advanced as on desktop browsers (fortunately we're getting there).
In the end, coming from rails, with all it's conventions, best practices and all that, starting to work on javascript applications feels like being thrown in at the deep end. There's a lot less of a paved path - you have to still find your own way in many cases.
Jan Krutisch
So people are just falling for the latest trend?
Yes, and that's both a good and a bad thing - After all, only if people try out things we get to know the boundaries of what's possible. But in many cases, especially when your goal is to quickly build the first iteration of your start-up, a complex javascript app might not be the wisest choice - you might lose a lot of development speed in contrast to what you are used to as a rails developer.
Adding to that: Many things we take for granted in traditional web apps, for example security, accessibility but also plain usability aspects, are still not very well developed in the javascript app world and so in some cases we fall behind the standards we had reached before.
On the other hand: I don't want to sound like it's generally a bad idea to build a SPA. It really depends on the use case and we're still in the process of finding out what the sweet spot of single page apps might be. One example: The recent changes where Twitter actually removed large parts of their single page app infrastructure and replaced it with more traditional ways of delivering their content.

have you tried solutions for working on mobile platforms with Ruby, like mruby?
Actually no. I would love to take a look at these solutions (also stuff like RubyMotion for iOS), but after listening to a lot of people talk about these things I am relatively sceptical - My choice is to either only do web apps (and you can do a lot more with it than many people are aware of) or use the native way of a platform, and in case of iOS, that means Objective-C. There are cases of course where embedding a language into a product makes a lot of sense (like games, for example), but I never actually encountered them.

You also have another discussion about making music with the web
So the basic idea is that Sound APIs are one of the last building blocks to turn our browsers into full blown multimedia platforms. The Web Audio API that's part of Chrome and the latest Safari/Mobile Safari makes it possible to use Browsers as platform to build musical instruments. And the recent performance boosts of javascript engines make it possible to implement software synthesizers. Combine that with things like Web Sockets and you can build some pretty amazing collaborative music experiments. For me this is currently more of a hobby but I love to explore that space.

what else keeps you busy these days?
Currently it's basically three things: Working on mobile and web products for the R&D branch of dpa (german press agency) as a freelancer, writing a book about single page apps (it's in very early stages and I'm trying out self-publishing, take a look at it at thesinglepageapp.com) and then the smaller projects I work on as a contractor/freelancer.

what technologies/projects are worth keeping an eye on?
I love how projects like compass (ruby) or stylus/nib (javascript/nodejs) finally bring some sanity to css and allow us to abstract things in the same way we have been doing it in software development for years.
It will be interesting to see how projects like yeoman.io will reshape our tooling regarding frontend stuff and how we might integrate these things into rails projects without those two worlds falling apart.

Platinum Sponsorship

Gold Sponsorship

Media Sponsorship

Open Accessibilty Menu