Thursday, August 31, 2006

The Programming Road

I've always considered C to be my first programming language (subsequently I judge all languages against it). I picked up Learn C on the Macintosh in 1991. But it occurred to me today that I actually had done a little work in HyperCard and its HyperTalk language in 1988-90, I remember writing a small database for use in our family business. I guess I never thought of it as programming because:
  1. I really didn't know what I was doing
  2. It seemed very easy to get a result
Maybe that is why HyperCard was so popular, that and being installed on the early Macs. Nothing like free software that's easy to learn.

After painfully working through Learn C on the Macintosh, I actually started understanding some of the basics of programming. From there I moved to Prograph CPX at the end of 1993. In early 1994 I took a programming logic course that helped solidify my understanding of what was going on. The course was interesting, you didn't use a computer, just flowcharting and pseudocoding. That same year I picked up AppleScript to script QuarkXPress using Frontmost (later FaceSpan) to have a front end to my scripts, and in the fall I learned Lingo with Director 4.

I actually tried Director in 1993 and made an interactive portfolio for my company. It was with Director 3.1.1 and I was not too impressed. Version 4.0 of Director did impress me. I'd found the joys of Object-Orient Programming (OOP) thanks to Prograph CPX. With version 4.0 of Director, Lingo was now a powerful OO language.

I stayed with Director for several years, dabbling in JavaScript in 1997. That year also marked my first introduction to Java. I was not too impressed (deja vu!). I continued with Director until 2000, co-authoring two books on the subject and tech editing two more. That year I took an instructor job at Sun Microsystems. I taught several Java courses, a shell scripting course using Bourne and Korn, and learned the Vi text editor. I also picked up programming the C Shell in order to teach a course in it. In the shell scripting courses I was introduced to grep, sed, and awk. Awk I loved!

After leaving Sun, I got a job where I got to do a little Director again and was exposed to the classic ASP. I found I did not care much for ASP or VBScript. I learned to program in ActionScript with Flash 6 and the Flash Communication Server APIs. After that I migrated the company from VBscript and ASP to C# and ASP.NET. I learned SQL, I enjoyed pair-programming, and discovered Visual Studio was the best IDE out there. Along the way I got to briefly pick up and program in XSLT and created a .NET Windows Forms application.

After that job I came to StorageTek where I worked with the Docent LMS and CDS. The LMS used a server-side JavaScript that was a step up from classic ASP, but not a big step. I managed to make use of both my ASP.NET and Windows Forms skills. I tinkered a little with JavaScripting Photoshop for a project.

Sun bought StorageTek, so I'm back at Sun. But I'm not back using Java (yet), I'm actually learning Perl and MySQL.

Wednesday, August 30, 2006

Flash XMLConnector

I found an interesting behavior with the Flash XMLConnector. With the XMLConnector, you specify the URL of the xml file. Suppose you specify a full address, ie:

Then when you're testing you hit your page with the .SWF, such as:

You activate your component and the XML loads as expected. You're good to go, right? Well, not exactly. If your user decides to slip in the "www" ie:

The XML will never load!

The way to fix this is when you specify the URL for the XML connector, leave off the "http" and domain name. Just have it access the file off of root, ie:

Tuesday, August 29, 2006


Well, it's even later on Tuesday but I managed to:
  • Create a sample MySQL database
  • Connect to that database from perl and return results
  • Return HTML from perl running under IIS
  • Return XML from perl
  • Call the perl from Flash
  • In Flash, bind an XMLConnector to a DataSet bound to a DataGrid
Not a bad start, but I'm not sure if the Flash data components will be worth the trouble. At the moment they seem like they are overly complicated. They do look a lot cooler than a standand ASP.NET DataGrid (which isn't too shabby) :)

Enter Perl and MySQL

Today I find myself installing Perl on my Windows laptop. I found Perl here which brought me to the ActiveState site. With the help of my friend Jim, I learned I needed to install DBI and DBD. That is done with ActiveState's Perl Package Manager(PPM). Once running type:
install DBI
install DBD-mysql

Now the fun of learning Perl begins...

Monday, August 28, 2006

Flash Filters and Exporting Hi-res Images

Here's a quirk I came across in Flash. I noticed when exporting hi-res with a blur filter, that the blur filter remains at a lower resolution. If you zoom-in in the Flash IDE, you can also see this pixelation. This is strange since zooming in in the Flash Player produces a hi-res result.

Here is the full-size version of the image above. The example is hi-res output of this Flash illustration.

I wonder if this a known issue? You can work around it by scaling everything up in Flash and exporting at 100%, but that is a bit cumbersome.

Saturday, August 26, 2006

Illustrating in Flash

Lately I've been learning to illustrate in Flash. Here's my first original Flash illustration (that I'm willing to share publically). The SWF is under 10K. That is amazing when you consider a PNG of the same image would be around 60K, a JPEG would set to a quality of 80 (so it would look almost as good as the PNG) would also be around 60K. Even those are not really fair comparissons because the SWF actually has some animation in it and you have the ability to zoom in and view it at a higher resolution.

I started the illustration by doing a pencil and paper sketch. Then, instead of scanning the sketch, I just drew directly in Flash referencing the pencil by eye.

Two resources which have been very helpful in learning Flash's illustration tools have been the book Illustrating with Macromedia Flash Professional 8 and the site


I just wanted to make a comment on my brother-in-law's blog, but since I had to become a member to do so, I figured I'd give blogging a try... So welcome to Art + Logic.

I chose Art + Logic for my blog name as that best describes my skills and interests. I am both programmer and artist. It also reflects my business name. :)

I've a background in art, but I started programming in my late twenties. I've been interested in how computers work since I first tried the Atari 2600. The game Adventure pretty much hooked me.