Unhappy New Year

January 12th, 2008

Welcome to 2008 – so far I’m not enjoying it.

Last week every steady stream of income I have evaporated. So I am actively seeking work. Either contract/remote, or possibly would consider joining an innovative startup with a great idea. I’m not too interested in conventional employment with a big company. People wondering about my skillz can check out my Linked In profile.

Lately I’ve been doing a lot of PHP, AJAX, and SOAP stuff, Smalltalk web programming with Seaside, and Mac application programming with CoreAudio (JambaLaya).

MIDI Performance Software

January 11th, 2008

jambalaya1.png

Last spring and summer, I decided to stop dragging a bunch of hardware synthesizers back and forth to band practice and start using a laptop as an all-in-one solution. This is more or less possible thanks to the availability of a variety of virtual instruments in Audio Units format that rival (and in some cases faithfully reproduce) the hardware synths of olde.

Seems simple. I need a MIDI controller keyboard – I chose an 88 key model and figured I’d map various instruments to different ranges of keys. So I started looking for an Audio Units host oriented towards live performance.

I came up empty. Nearly all of them are oriented towards sequencing and multi-track recording. They could kind of do what I wanted, but the user interface wasn’t oriented towards what I needed. There was one product – an independent program called RAX – that seemed right – only its author had just withdrawn it from the market. I managed to get an evaluation license from the developer but I disqualified it because it had a problem handling sustain pedal events and its future was uncertain.

So I set out to build my own and I’ve succeeded. It works well enough, is pretty bare bones, but allows the user to do complex splits and layers very quickly. I call it JambaLaya and I use it all the time. It isn’t quite production quality and there are missing feature I’d like to add. But it is a great feeling to control your own destiny and not have to worry about a critical piece of software disappearing from the market.

Now I’m trying to decide what to do with it. I could polish it up and offer it for sale, but since I wrote it two things have happened. RAX was acquired by a new publisher who is once again selling and supporting it and Apple has released a Logic 8 update with a program called Mainstage that is also oriented towards live performance. In both cases, I prefer the way the JambaLaya works, the UI is much more feature dense and it works the way I expect (little wonder, since I wrote it). I think in the short term, the best thing is to start a community website for it and give it away. So I think that’s the plan unless somebody has a better idea. I just need more time to configure the Drupal site and get that going.

Back to the 80’s

January 8th, 2008

A couple lifetimes ago, I was a full time professional musician. I played the Albuquerque club circuit in the 80’s and the scene was such that a good top-40 cover band could make a good living and have a lot of fun. Playing helped fund college. Eventually I graduated and set out to have a “career” in engineering which somehow ended with programming computers. I boxed up my guitars, keyboards, amps, and floppy disks with songs I had written and pretty much didn’t dig them out until last summer.

Last summer I bought a Mac dual quad, a Digital Performer upgrade, and some Audio Unit virtual instruments, dug out my old material, and began transferring the stuff to DP through a fairly laborious process. The goal? Make that great album I’ve always been meaning to do. Heck, I’m over 40 now. If not now, when?

I also hooked up with a bunch of geezers with a similar history and we’ve started a cover band (average age in the band is something like 48). So I’m splitting my time between learning current songs (and lots of oldies) and polishing my live chops, and getting up to speed on modern recording technology. Lots to learn. It used to be all about the hardware. Now all that gear I used to use in the 80s is available in software for about one tenth the price. Cool. No more tape machines either. All digital. Unlimited tracks and takes.

But it all takes time to learn so I think I’ll start blogging about that a bit.

New Year’s Resolution – Resume Bloggin’

January 8th, 2008

Apologies to my readers (Hi Mom) – for not keeping the blog up. Last post was last halloween? Lame. 2008 – time to pick up the blog again.

Stay tuned.

Rules for a fun Halloween

November 1st, 2007

When I was a kid, kids in my neighborhood took halloween seriously. I mean really seriously. After experiencing a modern halloween through the eyes of my daughter, I thought I’d share some thoughts on how to properly “do” halloween. Yes this is late – file it for next year.

Rule #1: Go as a kind of humanoid or anthropmorphised animal. Do not go as some kind of box. Who wants to wear a box all night? If you go to a party, how much fun will you have trying to dance in a box? Can you get into a car and sit down? If not, your costume needs a rethink.

2: Makeup – not masks. There’s the safety/visibility thing. But there is also eating/drinking (if you go to a party) and general level of comfort. Its loads cooler when you use some spirit gum and latex appliances and makeup and you can make facial expressions – than when you simply hide behind a vacuum formed plastic or rubber facade. Plus, you’ll be able to breathe. Exceptions for characters that inherently wear masks – like Darth Vader.

3: Make your costume – don’t buy it. Buy elements, sure. But put them together to create something unique. Last night I saw half a dozen cookie cutter zombies, Darth Vaders, Bobba Fetts, etc… Most of the fun when we were kids was the challenge of coming up with a costume that would out do all of our friends. That took creativity. Especially since most of the ready made stuff available now wasn’t available when I was a kid. If you wanted your guts hanging out you’d buy a mop head and spray paint it red and hang it out a tear in your shirt or something. That was fine. FWIW, I have a double candy for home made costumes policy at our house.

4: I hesitate to mention this one – if you’re not going to be home on halloween, or you don’t want to play – fine – turn out all the lights. Saves time for the kids and your house is LESS likely to be vandalized. When I was a kid, people who didn’t play and left their lights on got their windows soaped and their trees TP’d. Er – so I heard. If you are gonna play – put a jack-o-lantern on the porch. That’s kind of a nice hobo sign that makes it easy to see who is in.

5: Trick or Treating is to be done in the dark. That’s the point. Kids get flashlights, glow sticks, whatever and go door to door in the dark – when they’re most likely to get scared. I appreciate the retail areas having daytime activities – but this is warmup. The real event is finding a stereotypical suburban neighborhood and running from door to door in the dark where you can scare yourself and your friends silly while stocking up on enough candy to last until Christmas.

6: Final beef. Halloween is supposed to be scary. Efforts by the care bear crowd to make it cutesy are not appreciated. When I lived in the ‘burbs and had a steady stream of victims I worked hard to make the house truly frightening to approach. I considered it a triumph if small kids refused to approach without a parent. Bonus if little ones cried. Being scared is fun – like campfire ghost stories and death defying roller coasters are fun. About my third year of this I had people drive up, park across the street – visit my house – get in their car and drive away. This is the sign of a truly successful house. I know not everyone can go to this level – but do try to make your house a little creepy – put a colored bulb in the porch light and carve a scary pumpkin or two. If you have a scary sound effects record – put it on.

Happy Halloween

Server Moved

July 26th, 2007

This server was moved after disk trouble. Let me know if you spot any problems. I think I have everything back up and running.

Taking the summer off

June 15th, 2007

I’m not doing much in the way of computing this summer – preferring to get my recording studio off the ground and do some work on the boat in preparation for some cruising this summer.

Also, the comment spam is getting out of hand and while cleaning out the 20k+ comments I accidentally deleted some valid ones. Oh well. I can’t keep up and suspect that I’ll have to disable commenting completely if this continues. I’ve added a bunch of spam keywords (like the names of about a dozen pharmaceuticals and sexual practices). Hopefully this will reduce the load but, if not, comments will be history unless I can get a captcha or get around to writing a blog in seaside.

I’m a Google Summer of Code Mentor!

March 21st, 2007

Are you a student? Want to make some cash? Want to do it with Smalltalk? Sign up for one of my Google Summer of Code projects.

Cheshire Cat at the Seaside

February 26th, 2007

`Would you tell me, please, which way I ought to go from
here?’

Alice speaks to Cheshire Cat

`That depends a good deal on where you want to get to,’ said the
Cat.

`I don’t much care where–’ said Alice.

`Then it doesn’t matter which way you go,’ said the Cat.

Steve Jobs coined a saying Real Artists Ship during the development of the Macintosh. He was trying to bring the chaos under control a bit and keep people goal oriented.

During any software project, there is a chaotic early period during which the vision is formed and experiments performed to test approaches towards achieving the vision. The code base during this time will be unstable and generally unusable. Eventually, the general principles will get worked out, the architecture will gel, and the rest of the project is spent converging towards a stable implementation. When the software reaches an appropriate level of quality and stability, a release is made.

Releases are forks in the software history. For the supported lifetime of the release, every fix has to be done twice. Once in the mainline code base that continues to evolve, and once in the stable release branch. This is just part of the cost of having users. It is extra work, but without it, you will not attract users.

Software projects without releases are shifting sands and lack the stability required to support great buildings. I think this is part of what is holding back Squeak and I was really pleased to see Ralph Johnson of “Design Patterns” fame offer to take on the management of the Squeak 3.10 release. He is focused on improving the quality of the base system. This is good because over the years Squeak has accreted a lot of experimental code that sort of works, but isn’t really production quality. Now progress is difficult to make because the lack of polish is hindering the development of new capabilities. Time to clean house to prepare for the next great wave of innovation.

Sadly, the Seaside project hasn’t taken the same position. There are a few developers, unpaid who are doing this in their spare time, like all open source projects. They’ve done great things to improve the platform. However they’ve been working on something they called version 2.7a for awhile and recently announced they were starting 2.8a. No release for 2.7 was really declared and the criteria for bumping the versions doesn’t seem well expressed.

Compare this to Ruby On Rails site, where you can find a big red arrow inviting you to download the latest stable release to get started. Seaside has no equivalent, and a newbie coming to the seaside project would likely be paralyzed with indecision with all the various branches, labels, and versions available – nothing clearly labeled ’stable release – start here’.

People are not inclined to bet their livelihoods on software of indeterminate stability. I hope a release culture emerges soon.

James Gray Still Missing

February 9th, 2007

This is a puzzler. Jim Gray disappeared while making a day trip to the Farallone Islands. I did this same trip a few years ago when living aboard in Sausalito. It was fun but didn’t seem at all dangerous or difficult.
Farallone IslandsAnnardDCP65665.JPG
The Farallones are 27 miles offshore. You can’t see them from the coast – they appear on the horizon about half way there. The California coast is pretty high, what with Mt Tam there so you never lose sight of that. We set out around 8:00, crossed under the Golden Gate bridge about 9:00, completed our rounding of the islands about 5:00 pm and ran back to get home about 9:00 pm.

Wind is nearly always onshore so it is a beat out, and run back. Progress is futher slowed by a current that set us south about 1.5 knots. Which is why we made it back about sunset even though we didn’t arrive until 5:00 pm.

It sounds like Gray had similar conditions so I really can’t imagine how he was able to disappear unless he meant to, perhaps hugging the coast and heading south, which would throw off the search.

In one of the most imaginative uses of Amazon’s Mechanical Turk, volunteers examined satellite photos to try to locate his boat. Ongoing info is at http://helpfindjim.com/