Phrogramming…

September 2, 2008 at 12:29 pm | Posted in Technology | 6 Comments

It seems to be a truism these days that American kids need to gain more interest in math and science, if for no other reason than to play golf better.  It seems that the number of graduates in Computer Science is way down in the past several years, just as employers around the country are struggling to fill technical positions

I was chatting about this with a couple of dads at our local homeschool picnic (Hi, Ron!) and the conversation turned to how we first started programming Way Back When.  HP-97My first computer program was written (with coaching from my Dad) on an HP-97 programmable calculator.  If I remember correctly, it added two numbers together and calculated the average.  We also wrote a program that would play “Guess the Number”.  It doesn’t sound like much, but remember — the state of the art in electronic entertainment was Mattel Football II.

The next step was learning FORTRAN and BASIC using a TI Silentwriter to connect to the mainframes at the U.S. Army Ballistic Research Laboratory.  In retrospect, that probably was not 100% legal for me to do , but I did work for them later for a number of years….

Apple ][+Then, a number of the parents at my school decided to move into the digital age and teach “computer literacy”.  So, they bought half a dozen Apple II computers, and my mom somehow ended up as the computer teacher, which meant I had full access to all the Apple II goodness after school and during holidays, when she always brought one home.  This opened the doors to a wealth of programming expertise.  Since the Apple II had a built-in BASIC interpreter, people would regularly trade floppy disks full of source code for games and utilities.  In fact, one could buy computer magazines chock full of source code to type in (and debug), and in doing so, gain a “basic” understanding of programming concepts.  One classic exercise was to hack everyone’s favorite game Lemonade Stand so that it recognized your name and gave you a slight advantage … not that I would ever stoop to such a level.

Even jumping forward a few years, when I built my own PC clone, I had to install and configure Windows 3.11, Trumpet Winsock, and manually set the IRQs and DMA channels for all the peripherals.  (Do people even use the word “peripherals” anymore?)  Then, whenever I wanted to install a new game, I had to hack the config.sys and autoexec.bat files to work around the 640k limit.  Sure, the Mac guys laughed about it, but I learned a lot about how operating systems should work.  Meanwhile, it took them years to figure out how to use more than one mouse button.

Whew.  Talk about a speedwalk down Memory Lane.  The point of all the above is:  How do kids get involved in computer programming when their parents have solved most of the technical details?  The usability of the average computer system has advanced to the point where people don’t even need to know basic operating concepts to use one, let alone how to program.  But, I contend that in a way this is self-defeating: without a training ground to challenge the next generation of programmers, fewer will get into the business.

Fortunately, there are opportunities for learning for those so inclined.  Perhaps one of the most popular is the LEGO Mindstorms system.  The brains of this system is The Brick, which contains a microcontroller that kids can program to automate their LEGO creations.  But, this is not your father’s Big TrakThe Brick offers a selection of inputs and outputs that can accomodate a broad range of sensors and actuators, and the whole deal is programmable in LabView.  Yes, LEGO has rebranded the LabView drag-and-drop interface, giving kids a nice GUI app for their plastic contraptions.  And before you laugh at LabView, some people swear by it for serious applications — even if it does resemble digital fingerpainting….

Once kids get comfortable making robot rats, then it’s time for the big leagues.  Yes, even the world of LEGO is not immune to the world of cutthroat competition.  The FIRST LEGO League was organized by American genius Dean Kamen (of Segway fame) as a way to encourage kids to have fun undertaking engineering challenges in a competitive environment — kinda like what we do at work, without the fun part.  I’ve been to one of these events.  They are loud, raucous, and a lot of fun for both the teams and spectators.  And, what better way to learn computer technology than with a bunch of people yelling in your ear?  It’s just like a late night tech support call!

But, you say, what if I just want to write the Great American RPG?  I can’t do that in Robolab (though it would be kinda cool).  I need easy access to GUI elements and OS APIs and hardware abstraction.  What should I use?

Well, this same thought came to me when it appeared that my son was ready to venture in the the great big world of programming.  However, times had changed since my seven-seg days with the HP-97.  Kids these days expect graphics, and lots of them.  This is what led me to toss Ruby aside and look elsewhere.

I remembered that I had played around with a VB clone called KPL, or “Kids’ Programming Language“, which was put together by some university types as an introductory computer language.  It had a simple syntax, plus it was type-safe and sandboxed.  (Mothers really don’t want their offspring doing pointer arithmetic.)  It sounded perfect.

So, I did some digging and found out that KPL had morphed into Phrogram.  Like all good things, they went commercial in an attempt to cash in.  But, the result is worth the extra expense.  First of all, Phrogram is updated to run on top on Microsoft’s .NET, which offers an almost unlimited component library — why reinvent the wheel?  Secondly, it has lots of cool bells and whistles, including a deployment packager, which automates the creation of install packages.  Remember, we’re not back in 1984, when you could just give your buddy a cassette tape with your latest creations.  And lastly, Phrogram comes with Direct3D support — soon to be upgraded to XNA.  Try doing 3D graphics with your old TI-99/4A LOGO cartridge.

So, I bought a really great tutorial book with a trial version of Phrogram, gave it to my son, and sat back to see how he would do.  He followed the lessons, typed in the examples, then rolled up his sleeves and started “fixing” things.  He wasn’t satisfied with some of the options the Slot Machine game gave him, so he added his own.  But the thing that gave me the greatest satisfaction was when I looked over his shoulder and found that he was pulling in live weather information over the Internet, the information being provided by a former employer of mine.  I had designed the dataloggers that they use, and now my son had interfaced to the data.  It was one of those father-son connections that only come around every so often.

So, will Phrogram save the day?  Well, it offers just enough power to inspire righteous hackage, which everyone knows is the true key to learning.  Plus, it abstracts enough to put that power in the hands of just about anyone.  A lot of people like it and use it, so it’s not confined to the world of academia.  And, it’s fun.  So, instead of another overpriced XBOX game, why not buy a copy of Phrogram for the technically minded kid in your life?  Future generations may thank you!

Advertisements

6 Comments »

RSS feed for comments on this post. TrackBack URI

  1. Hey, Tad. Of course space is limited, but you left out programming the TI-99. In particular, I remember the three node finite element heat conduction program you wrote for your 8th(?) grade
    Science Project. (I don’t think you called it that – but in retrospect…) That had to represent some sort of step in your computer-literacy evolution. If nothing else, it was certainly an ironic one: The TI-99 routinely overheated while running your heat conduction program ;>)

  2. I remember the science project, but I had forgotten about the computer simulation! The TI-99/4A had that power supply behind the switch on the right-hand side. That sucker got so hot, that after people started complaining, the TI folks suggested that people use it as a coffee cup warmer….

  3. Just a quick comment about going commercial to cash in. (LOL)
    For the record KPL did go commercial with the release of Phrogram but to say it was to cash in is not exactly true, originally we tried to support the development and the KPL community with a donation scheme, this makes me smile just think about it.
    Talk about (LOL), people love to use good programs (300,000 downloads in just the first 3 months) that help them in their endeavors but for some unknown reasoning think that financially supporting such a worthy cause is up to someone else, a few educators and understanding people did donate (very few).
    We were putting 60 hour weeks for free for the first 2 year of the release of KPL / Phrogram and it got to the point that we had to make a decision (driven by our spouses); abandon this labor of love (KPL / Phrogram) or find a way to make enough to move it forward and support the community that loves it without starving.
    In all I think you’ll agree that at the price Phrogram is a true deal in today’s economy, we can now afford to support it and move it forward and eat at the same time.
    Regards,
    Walt Morrison

  4. Sorry, I didn’t mean “cashed in” to be derogatory in any sense — anything worth doing well is worth getting paid for. ISTM that Phrogram has a LOT of support behind it — that’s one of the things that impressed me the most. This is not a “toy language”, but a full-fledged development environment. That sort of thing does not come for free.

    I strongly encourage everyone to buy a copy of Phrogram for the technically minded kid in their life instead of a high-priced videogame. The benefits of the first will long outlast the second!

    Thanks for chiming in, Walt! What’s the scoop on the new version coming out Real Soon Now?

  5. There’s no scoop just yet on the next big release…

    Watch the forums for some teasers over the next few weeks and months… e.g. http://phrogram.com/forums/thread/6889.aspx

    And to follow up on Walt’s comments… I wish it was a ‘cash in’ 😉 Then we could afford to hire a large team of developers to get 3.0 shipped sooner – we are still a small companty.

    Thanks for the great feedback – hopefully it will encourage other folk to purchase.

    Feel free to email me if you have any questions.

  6. No problem, glad to help. If you want to send me a free copy …. just kidding!! 😀


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Entries and comments feeds.

%d bloggers like this: