My 15 minutes of fame…

Well, actually it was more like 30 minutes.

I was fortunate enough to be a guest on a future episode of the Industry Misinterpretations podcast with James Robertson and Michael Lucas-Smith (we recorded yesterday). I answered James’ call for new Smalltalkers for the show. My experience with Smalltalk may not exactly be new but it certainly isn’t deep.

I encourage anyone else out there that is new to Smalltalk and would like to see it grow and improve to contact James. Don’t let my opinions be the only ones heard.

If you have any comments about the show I’d love to hear them.


App Store Silliness

Marco Arment has a blog post that is yet another story of the Apple App Store approval process gone horribly wrong. It’s time for Apple to get out of the subjective approval business. I don’t buy that they are only trying to make sure the user experience is the best it can be. There are a mess of apps that are horrible from a user experience stand point that managed to make it through. I don’t know what their true agenda is but they need to either try to find a way to be truly objective or get out the approval business. This is one reason I have no interest in developing apps for the iPhone/iPod Touch.

Safari 4 Beta First Impression

I just got around to installing Safari 4 Beta today and I have to say, I’m not hating it.

All I’ll say about the tabs on the top is they aren’t too bad. Of course, I don’t keep a lot of tabs open at once anyway so I haven’t hit the dreaded “accidental close” problem yet.

Enough about that. Two things I do like are that it doesn’t seem to be eating up memory like crazy and Silverlight works better.

In Safari 3 I noticed that memory usage would just keep going up and up until I restarted Safari. I never reached a condition where I was thrashing so I imagine that if I got to a situation where something needed the memory it would clean it up but it is still disconcerting.

As far as Silverlight goes, I spend a lot of my time watching movies on-line on Netflix (I highly recommend it). Under Safari 3 it seemed to have a problem allocating more memory to Silverlight and the video of the movie would stutter (but the audio would continue). It isn’t any fun trying to watch an action movie with 5% of the action missing. I had to resort to using Firefox to get my Netflix fix. I did a quick test today on a movie I watched previously that had problems and didn’t have any loss of video. Now I don’t have to live in two browser worlds.

See, Safari Beta 4 isn’t all bad despite what other’s have written!

Apple’s $99 iPhone OS Upgrade

I’ve heard of people actually joining the iPhone Developer program, and paying the $99 fee for that priviledge, who aren’t developers and don’t have any intention of developing just to get iPhone OS 3.0 a few months early. While I think the changes in the OS are good and I won’t hesitate to spend the $9.95 to upgrade my Touch, I wonder what the intense attraction is that would provoke them to spend half to a third of the original purchase price on an OS upgrade.

I also wonder if this was a calculated move on Apple’s part to see just how far their fans would go. I hope  that is just the cynic in me talking and not reality but you have to wonder. I think one of Apple’s strategies is frequent “testing of the waters” when it comes to their customers, how their customers react to news and to what lengths customers are willing to go (for example, standing in line outside of an Apple store for a new whatever).

The Objective-C Dot Notation Debate

The debate over Objective-C 2.0’s dot notation continues. The latest to touch on the subject are Danny Greg and Kevin Hoctor on the terrific CocoaFusion podcast. I figured I’d weight in on the topic too.

Personally I agree with Matt Gallagher on the topic in that properties are not just a new way to define and use instance variables. They specifically define the state of an object and separate that from what an object can do, the methods.

Besides, they really clean up the code. The less brackets there are the easier it is to read the code. That is always a good thing.

What strikes me as surprising is that none of the Cocoa programmers that have addressed dot notation have seemed to notice that they’ve been doing dot notation using key paths for a while. Dot notation, as I see it, is a further formalization of the key path syntax.

Oh, and by the way, my background is not in languages that usually use dot notation. I have more of a history with Smalltalk then Java. And while I haven’t been coding in Objective-C for long it has been since before the release of Objective-C 2.0 so dot notation and properties were something I had to wrap my brain around and decide if I liked it or not.

Store and SQLite3

I’m not a fan of PostgreSQL on the Mac. The easiest way to get it working on the Mac is, in my opinion, with PostgreSQL for Mac but I’ve found that 4 out of 5 of the packages they distribute have problems. Besides that, I don’t like the idea of running a database server on my machine just for source code management. So I decided to take a look at Store for SQLite specifically the SQLite3 iteration.

The first problem I encountered was documentation on setting up the Store connection. I finally figured it out by a posting in a forum but I though I’d list out the steps here.

First install the StoreForSQLite3 package from the Cincom Public Repository. If you don’t know how to do this check out the Source Code Management Guide that comes with VisualWorks, under the heading Install Store into VisualWorks. Just in case your curious about what version, I installed version sqlite3-vw7.x 8,mlucassmith and when prompted to load a SQLite3EXDI version I installed sqlite3-vw7.x 9,mkobetic.

Next set up the database tables. This is explained in the Source Code Management Guide under the heading Install the Store database tables. When prompted for a connection set the fields as follows:

  • Interface: select SQLite3Connection
  • Environment: Enter the file name where you want SQLite to store the database. If you just enter a file name, like store.sq3, the file will be stored where the current image is stored. You can enter a fully qualified name, like /Users/Sean/store.sq3 for Mac. I’m assuming the same thing works on Windows and Linux but I haven’t tried it.
  • User Name: I don’t think this is used by SQLite but Store needs it so put your name in
  • Password: can be left blank
  • Table Owner: I left the default of BERN

You’ll probably want to save the connection for later use so hit the Save… button and give it a useful name.

Follow the rest of the instructions for installing the database tables from the Source Code Management Guide.

You should see the tables being built in the Transcript. It goes quick so it may seem like nothing happened but the Transcript will show a successful install if it all worked.

If you go to the folder that you specified for the file (or the folder where the image is) you should see the file. Now you’re in business and can use Store with SQLite.

I messed around with it for a little while and it seems to work fine but I haven’t put it through any serious tests. Has anyone else?

Apple’s Responsibility

A new site has sprung up in the wake of Apple’s decision to forgo the Macworld Conference and Expo after 2009. It is called Silent Keynote and asks all keynote attendees to not clap, cheer or wistle during the keynote to protest Apple’s withdrawal from the event on the grounds that this decision shows that they don’t care about the Apple community.

Apple’s responsibility to the community is not to hang out with friends one week a year. Their responsibility is to produce terrific products for their community to use and tools for developers to innovate on those products 52 weeks a year.


Since the announcement of the first Android phone last month here has been a lot of talk about it and how it compares to the iPhone in the tech podcasts. What I keep hearing the techies go on about is how the Android phone is going to crush the iPhone because its “open”. Their logic is that since it is an open platform and anyone can write software for it that it will take off.

I wonder, outside of the tech community, how many people care or even know that it is an open platform. The average person on the street just wants something that is a) cool, b) works and c) easy to use. They don’t care or want to care about the underlying platform.

Case in point, the iPod, DRMed music and the iTunes Store. They buy an iPod, they buy a song in iTunes it synchs to the iPod, they listen to it. Who cares that someday, when they choose the follow the inconceivable course of not buying another iPod that they’ll have to burn the music to a CD to get it to work on some other player. We live in the instant gratification society.

The average consumer will buy a iPhone, the geeks will buy and Android phone.

Compliments to the chef!

I can believe how long it’s been since I posted last. Anyway…

I just wanted to give a thank you to the Cincom team on VisualWorks 7.6 on Mac. It was a dream to install and has been running without incident. And with Antony Blakey’s ASBAqua look and feel it looks great too! Far easier then the old days. Great job Cincom!

Broken Links

One and a half hours into my day and I’ve encountered two broken links on sites. Mind you, these are not companies with small web budgets and a lack of technical knowledge. The offenders are EA Sports and Dell. A click on EA Sports’ Rugby 2006 and 2005 Buy links brings up a Java null pointer exception. On the Dell site, clicking on Customize It! for a Latitude D410 brings up a page that says “Choose A System.” You’d think with both of their technical prowess, their dependence on the web for their business and the availability of quality tools out there, they could get it right. Frustrating!