My Principle

I watched Bret Victor’s talk “Inventing on Principle” last night and since then I have been thinking about what My Principle could be.

Bret Victor – Inventing on Principle from CUSEC on Vimeo.

The most troubling “bug” I see today is computing devices and platforms which cannot be used to create programs that run on themselves. Today’s tablets and smartphones have more processing power, more pixels, and more RAM than a desktop computer from a few years ago. Yet you need a laptop or desktop to develop for Android, you need a Macintosh to develop for iOS, and you need a Windows PC to develop for whatever Microsoft’s mobile operating system is called these days.

This means our children are growing up with computing devices they can’t easily program. An entire layer of complexity, annoyance, and additional cost has been added to the programming environment. I can’t just hack away at a program on my Android tablet without bringing a whole other computer into play. Schools are giving iPads to every kid, but they can’t actually learn to program with them. They can’t discover how the programs they are using are created or how they work.

This does not make sense to me.

The web is in a similar situation. You can’t make a website from within a web interface. Why can’t we bootstrap a website from a web small stub, and then develop the site from within that web environment?

I know of one in-road which has been made on Android: the SL4A project lets you use various scripting languages to program right on the device, but it’s cumbersome when you go beyond basic features.

I think WordPress comes pretty close to this on the web side, which may explain it’s popularity, especially among non-hardcore programmers.

I’m going to put a little more thought into this situation and see what emerges. If you know of any existing solutions to this problem that I’ve overlooked, please let me know.

And if you need want motivation for determining and following Your Principle, watch the video.

This entry was posted in android, grlug, grpug, grwebdev, internet, linux, planet-ubuntu-users, python, rant, tech, ubuntu-michigan, wmlug. Bookmark the permalink.
  • Kyle

    Python on Debian in chroot under VNC on mobile device.  It works.  Quite well.  ‘Nuff said.  🙂

    Though one of the main apps I used on Palm OS was OnboardC, and I wholeheartedly agree.  That was an awesome capability to have, and I do not build nearly as many native apps now as I used to.

  • brousch

    It turns out that just one day before this blog post the Android Java IDE was released to the Google Market. Now you can develop for Android on Android! https://plus.google.com/101304250883271700981/posts