Friday, March 16, 2012

Is developing ON a smartphone practical or just a novelty?

Google just released AIDE, their Android Java IDE. It's probably a good idea that they provide a development tool rather than rely on tools they don't control. Most platform vendors provide tools. What's different about AIDE is that it's designed to run on Android itself.

This means you can develop Android apps on an Android tablet or smartphone. This sounds really intriguing at first until you start imagining what this might really be like. A tablet might make some sense, but as someone who developed software on a Mac with a 9 inch screen, it's not ideal. Yes, today's tablets have a higher resolution than my circa 1985 Mac, so there are more pixels in a 9 inch tablet screen. Still, developers generally want as much screen real estate as they can get. The minimum screen size for developers here at Real Software is 27 inches and some have multiple monitors. I would expect the many Real Studio users would be similarly configured. A 9 inch tablet screen doesn't seem like a very productive environment for developing an application. The only thing worse that I can think of would be attempting to develop software on a 4 inch smartphone screen. Oh, wait. That's exactly what Google is suggesting. The screenshots and demo videos seem to focus more on using a smartphone than on the tablet.

I can see the novelty of this but it doesn't seem at all practical. Just because you can create an IDE that runs on a 4 inch screen doesn't mean you should. Also compiling, even to Java byte code, is processor-intensive which I'd expect is going to drain the battery faster than a lot of other activities. Developing also involves a lot of typing. The touch-based keyboards on smartphones and tablets work fine for the kind of work that is typically done on those devices. But development usually involves typing a lot of code and a full-sized, tactile keyboard is really required for reasonable productivity.

The user reviews on the site are all quite positive which surprises me. Perhaps they are just caught up in the novelty of it and haven't considered the productivity issue.

Seems like AIDE should be designed primarily to run on a PC but perhaps include a version that runs on Android so that developers can get to their projects from anywhere. This would likely require Google to have a sync system like Apple's iCloud and Google certainly has the infrastructure to easily provide it. Heck, the projects could just be another type of Google Document.

Is it just me? What are your thoughts?


Bob Boice said...

Geoff - It's not just you. I agree with you 100%. Only one of the positive comments I read made a little sense - "Wow, great job fellow devs. Very helpful app to add some few lines of code while in the bus. KUDOS!"

I'd call it a novelty, but I've found the younger generation of casual developers/hobbyists tend get more excited about this kind of technology than the seasoned pros. I prefer to use Real Studio, Xcode, Visual Studio. The smartphones are way too small for my aging eyes.

Rick said...

Friends, we can have our Android phones on a dock station. We can have a full size keyboard+mouse wireless and output to a 46 inch screen if you wish. Computing is changing, again. The next step is having your computer in your pocket and docking it at home or work. Android can use external monitors. Are following the Ubuntu revolution too? Check this out, Ubuntu INSIDE Android OS:

Norman Palardy said...

Yes you can dock your phone & put a keyboard on it and use a large screen.
You still have a phone, with a phone processor which is not even close to the horsepower of a laptop or desktop not anywhere the RAM etc.
The lack of horsepower would be a pain trying to compile anything significant.

Yes you CAN do it
I can jump out of a plane at 50000 feet without a parachute as well.
Not sure it makes any sense

Rick said...


"There is no reason for any individual to have a computer in his home." -- Ken Olson, president, chairman and founder of Digital Equipment Corporation (DEC), in at talk given to a 1977 World Future Society meeting in Boston.

Now, back to 2012, I own a single core, mid 2011 HTC phone with Android, that outperforms a 2007 Sony VAIO SZ with Windows in many tasks. Dual core phones are everywhere now. Quad core are coming. My phone have 16Gb of storage. The next gen will have more and more, and even more RAM. Don't talk non-sense, better sit and see it happening. In the next 2 years Realsoftware will need to be ARM compatible too. Tablets, phones and dock stations will be "the computers" very soon (think my "soon" a point in time anywhere between today and 10 years). But, if you need "more horsepower", sure, you will have "the option" to buy a dedicated hardware. Executives, businessmen, business programmers, millions of other applications won't need it. Video edition, hardcore programming (3d video game market for example), server machines, and thousand others will. Think again, check what people are doing in the labs, maybe you change your mind. ;)

Norman Palardy said...

Just like "linux will take over the desktop real soon" , which has been a steady prediction since 1995, I remain highly skeptical about phones being any developers primary computer in the next 10 years.

As for Real Studio needing to be on ARM it will need to be able to generate for things like iOS & Android at some point which run on ARM & derivatives. Whether that leads to the IDE running on iOS or Android - we'll just have to see what the demand is.

If you need to hook up to a large screen, keyboard & mouse then whats the point of using a phone ?
That's pretty much an admission that the phone form factor is too small to be useful as a developers primary tool set. Now you have to lug a keyboard & screen around ? You've reinvented the laptop.

Ok so maybe you can just take your phone & plug it in to a docking station where you're going.
The point is still - the phone is too small to work on all day.

That's really all the blog post was saying.

Geoff Perlman said...

The Ubuntu on Android project is interesting and it may very well be that at some point we can carry our computer around with us and just plug it into a docking station to have access to a full-sized, tactile keyboard and large screen. However, that that's certainly not mainstream at this point and by marketing AIDE as an IDE for the smartphone, Google is effectively acting as if it is. It would make more sense for Google to provide a desktop version that can sync with the Android version and store the projects as Google docs (as I suggested).

Rick said...

Norman, you have few points. I have some. I agree that, RIGHT NOW, we can't believe that developers will be using small dockable pocket computers at home and office soon. That's ok. I don't understand your underestimation about Linux. But if you, in any possible way, is a MS fan, be assured that Windows is going ARM too.
So, there is no choice. ARM is real. iPads, Android, Windows, Linux, etc are there already. As I told, It will not end the laptops, it will occupy an new niche of the market. People who use a phone, have desktop PC at home, and use a laptop at work, probably could use just a powerful smartphone with the right softwares and accessories. It's not right now. But it will happen. Depends more on software that on hardware right now. About the form factor, ok, without accessories a phone is not the best thing to work, this, we both agree. And Geoff I agree with you, but the desktop version, for Google, must be an app for Android or a cloud version inside a browser in other OS. Motorola (google) started that lapdock thing trying to reinvent the laptop as Norman told. Kind of fail, as the OS was not prepared to be a desktop option yet, but soon it can be. Who knows? It will be great when we could program a Raspberry-Pi board with realbasic. ;)