Honestly, the thought of full blown MS Word on a tablet makes my skin crawl, as does the thought of developing a rails app on one. Tablets are not computers. Their limited interface simply does not offer the level of i/o productivity as a traditional computer/laptop.
As a fellow developer, I have to ask you why? In development, I always ask myself these simple questions before I make a radical change. 1) Is there something I do not like about the status quo? 2) What can I do to fix it? 3) Are there any drawbacks? 4) Do these drawbacks outweigh the original problem?
In the case of developing a rails app on a tablet the answers are as follows:
- It is difficult to develop on the go. I just can’t bring a laptop everywhere.
- I can develop on a tablet.
- Yes. I lack a physical keyboard, and my virtual keyboard takes up significant screen real estate. Current tablet virtual keyboards and mobile OS’s lack support for the variety of shortcut enabling keys present on a physical keyboard. App developers would either be required to develop their own keyboards (which would be inconsistent with other apps) or a new “advanced” virtual keyboard standard would need to be developed. Additionally, in the case of Apple I have no access to command line tools or the underlying file structure. Due to this, all dev tools would be required to port the entire compiler/interpreter of any language they intend to run into Obj-C, or do all work remotely (similar to ssh tunneling, which requires a consistent internet connection and is a heavy data user). I have limited screen real estate to switch between multiple files, any online resources I am using, browser tab for testing app. Etc. etc.
- Yes. I should just code on my laptop.
We are living in a time, where everyone and there brother is trying to make “the next great app”. If there was a practical way to implement these tools that you are demanding, it would have been done by now. And if you disagree with that, then as a developer you should take that as an opportunity to do it yourself. I’m sorry but one of my biggest pet peeves is when people complain about the way things are, without giving even an ounce of effort into suggesting a solution.
I would be happy to discuss your thoughts on my answer #3, by the way. I do not claim to be an expert on the limitations of extremely heavyweight mobile apps, and discussing the obstacles to accomplishing what you want is exactly how things get done.