Yesterdays keynote at EclipseCon left me musing about views I have held for years and got me thinking. So why not share some of my thoughts? The keynote asked the basic question, whether IDEs are in danger of extinction and challenged the Eclipse developer community to evolve IDEs into new directions. It did this at a number of levels, connecting nicely with observations I made earlier at the conference and some experiments I have performed in the last few days. You may ask why this is relevant for Symbian: I am banking on your curiosity to follow this story to the end.
The keynote was presented in the form of a sitcom: Tim Wagner, the Development Manager for Visual Studio at Microsoft and Kevin McGuire the UI and usability lead for Eclipse at IBM had a discussion about what they were going to present at the keynote, essentially playing ideas off each other. The scene was set in a coffee house, some time before the actual keynote. Slide-ware was projected in the back-ground to illustrate the conversation.
The sitcom format of the keynote was a joy, filled with jokes at suitable places. This begs the question why presentations cannot always be like this. Add the PowerPoint Karaoke the day earlier, the references to Darwinism and one wonders how techie conferences will evolve in the future. Will PowerPoint presentations become extinct? Will speakers need to have very strong acting talents? Oh, and I really want to know how long Tim and Kevin rehearsed.
The basic argument of the talk was based on a mixture of solid facts, predictions, reflections and challenges told as a story. I will partly deconstruct this story here, and challenge you to ask similar questions for our industry.
Evolution is not gradual: is web 2.0 with its explosion of languages and technologies the IT industry’s equivalent of the Cambrian explosion? What about other industries? Check out BMW’s GINA. Oh, and what about mobile?
Disruption produces opportunity: is cloud computing the IDE’s Pangaea? Oh and what about mobiles? What is our Pangaea?
What can you make in a decade? The keynote gave a brief history lesson about IDEs, in particular Eclipse and also Visual Studio and showed how little actually has changed. It looked back further into the past at the evolution of text editors: similar story. The lesson concluded with the question: what can you make in 8 years? The answer is simple and powerful: an 8 year old child! Personally, this led me to think about how the tools we use to develop software have changed. Not much: we debug the same, we profile the same, we test the same … the only difference is that the tools look better and the work-flow is slicker. Oh and what about mobiles?
What new opportunities for the IDE’s technological evolution have the last 8 years brought?
- PCs are much more powerful than 8 years ago: then a top spec PC was less powerful than most mobile devices today. What happens with all this capacity? If you watch the CPU monitor when you work, you will notice that the CPU is hardly used most of the time. Except of course when the virus checker kicks in! What background tasks could development tools do with this unused CPU horse power?
- The area of desktop screens has grown 9 fold since VGA days. How do IDEs use it: longer lists of all kind – more of the same! But what about humans? Can we make better use of all this information? The answer is no: we have probably become less productive developing software since then.
- Multi-screen technology: is it exploited by software developers? Not normally. Just imagine what you could do with multiple monitors on your desk: debug on one screen, edit on another, design on another. To be fair, sometimes this happens. But it is not the norm. What do other industries do? Look at the set-up your typical investment trader has: a wall of screens around him, monitoring and responding events in real-time. Cynical voices may say: oh and where did this bring us!
- We all have laptops and are almost always connected: has that changed significantly how software is developed today?
So in short: a lot of technological opportunities are missed because we focus too much on incremental improvement. Oh, and what about mobiles? What opportunities is the mobile industry missing?
The human dimension: does inertia and habit hold us back? This year I was at EclipseCon to learn and observe, not as a techie. One observation was how different my own behaviour was when listening to talks, compared to some of the younger engineers: multi-tasking gone mad – no offence. Twittering, emails, many browser tabs open at once with constant flicking between web pages, while listening to the talks. Twittering has passed me by: probably because 8 years ago I had a crazy phase of text messaging, which by now has worn off.
Interestingly enough my behaviour has changed compared to previous years: instead of taking notes, I recorded video and voice clips and took photos of interesting slides in presentations using my Symbian device. I started experimenting on the first day of the conference and found that the quality of pictures when sitting in a dimly lit presentation room, in a back row, is good enough to be able to read the slides later. Taking video snaps is problematic, because you have to hold the phone steady. But it has made attending the conference easier. I am not sharing any snaps here! Don’t want any lawyers to get onto my heels.
To conclude, it certainly feels that today many disruptive trends are coinciding, creating the IT equivalent of the Cambrian explosion: the cloud, mobile evolution, other communication technologies and the fast rise of open source. Add to this the recession as a strong force for natural selection. The prospect of what is going to happen in the next few years excites me: the possibilities, the challenges and being in the middle of it all. I would like to hear your views.


I recently posed a question on Forum Nokia on the possible evolution of Smartphones. Have a look. From both a technical and user perspective I wonder why this is not being actively persued by Symbian/Nokia.
http://discussion.forum.nokia.com/forum/showthread.php?t=155567
Ash, you make some pretty good suggestions in your Forum Nokia thread, and I found myself thinking about a similar thing a while ago.
After all, although I don’t use it as much as my laptop, I’ve found that I’m still pretty much lost without my S60(v2)-based phone, given by all the uses that I’ve found for it, to date (and I do this stuff a lot on a daily basis) – UMTS modem via USB, digital music player, portable, “on-demand” Twitter and IRC client, an alarm clock, games console/eBook reader/”travel companion”/”on-demand” web browser, a file repository/photo viewer, and my college timetable.
Not all that bad for such a small device, for what it’s worth, and I’m certain that I’ll come across a myriad of other usages, given the ingenuity of the Symbian community any my own curiosity.
Tyson, Ash, good suggestions. But why not skip the docking station idea and go for something more visionary and usable? All the technologies to enable beaming an image using wireless technologies to an HD TV are there in principle. For example, I got a wireless NAS & media server for XMas which almost allows me to do that: internet to server to TV. It still connects to the TV via a cable though.
Why would I want to fuff about with cables if I don’t have to? Why does our industry have to follow the lead of the desktop space, when worldwide there are more than two times as many mobile devices than desktops and laptops put together?
It is almost as if our imagination is too constrained by what we know.
I am talking here as an engineer. One of the things which has always struck me when engaging with the Eclipse community, is that a diverse open source community which has to negotiate the viewpoints of different members, leads to more and faster innovation.
// Lars
I agree we don’t have to imitate the desktop world, but its a good first step.. the technology is there, it just need to be ported! Also, we are seeing DLNA appear in some new phones (Samsung Omina HD) which perhaps could be used to provide the wireless connection.
Hmm, Ash and Lars, are you thinking of something like WirelessHD (http://www.wirelesshd.org/), assuming that they actually release the specification to the public? (Although I recall them releasing it for a limited period of time for free).
Ash – UPnP, which is at the heart of the DLNA specs has been in Nokia NSeries devices for about 3 years already, this isn’t a new thing in the OmniaHD, the only thing that adds is High Definition.
In practice, streaming HD over a wireless connection to a TV is a very bad idea – for the kind of use cases you mention, a cable solution is the only sensible way to go at the moment for many reasons. We need a higher bandwidth and lower power consumption technology than WiFi to make it practical. Such things are on the horizon but not quite ready to go yet.
Hmm.. my point was there is enough processing power in today’s smartphones to function as a netbook/desktop replacement. It is ristricted by usability limitations of its hardware.. this could be overcomed by enabling ‘docking’ like support available in laptops and PnP support to attach printers, mouse, disk, etc support. Have a read on the Forum Nokia post (above)…
So here’s an idea, developers were developing on low processing power small screen pcs eigt years ago.
Why aren’t we able to develop on mobile phones now? Where is my Symbian IDE on the device?
With the right interface and a high-level language wouldn’t that generate a storm of new applications for mobile devices?
[...] ahead and beyond mobile development tools, exciting opportunities lay ahead for us… facilitating web / widget development for small size devices by non mobile [...]
First we saw PC based OSs moved to the mobile space (Windows, Apple, Linux?) and now the trend is flowing the other way, and about time! People are starting to explore if Andriod can be used on PCs (http://www.fastcompany.com/blog/kit-eaton/technomix/does-android-hp-netbook-signal-trouble-microsoft).
Phil, not sure if it counts, although you can do some development on S60 devices, if you’re willing to limit yourself to Python or Ruby (and I think OPL, but I’m not certain), and also have a text editor installed alongside the language runtime. I did something recently involving Python and FExplorer’s text editor on my phone…