12/28/2007
OPML Parser on SqueakSource
Thank you to Claudio Acciaresi for your link to the Squeak Map page on using Monticello, SqueakSource, and SqueakMap. A little digging and link-following and I was in business in minutes.
If you find the parser useful, please let me know. If you look at the code and find odd Smalltalk syntax, violated conventions, or general improvements, please let me know. If you want to become a developer and help enhance the code base, please let me know!
Squeak rocks!
12/11/2007
Labels on my blog
11/30/2007
Whisker browser with SVI
11/27/2007
Smalltalk OPML Parser Progress
I worked on the OPML parser I'm writing. I was able to use Chronos to parse the RFC 822 time format dictated in the OPML specification. I used Chronos to parse the RFC822 time into a DateTime and stored that in my OPMLHead class. Beautiful. Easy. Love it.
What's left? Not much. I need to add more tests. I've got two OPML sources that I'm testing against. I'm using an OPML example I found on the web and the OPML that lists my Google Reader subscriptions. I'm going to try to find some other OMPL test data and get a few more documents to test.
I've decided not to do any custom exception handling. This seems appropriate since the parser will be consumed as a component in other custom applications. So, I'm not going to wrap exceptions from Chronos in some kind of OPMLParser exception.
I'm planning to release the OPML parser as OSS and put it in SqueakSource. I'm not entirely sure how to do that or if I'm even doing my work "correctly", but we'll figure it out. You and me. Together. Love ya', Mr. Internet.
11/11/2007
Superbug blows up your defenses
It's about this point where I start thinking about my happy place and fight the urge to put my thumb in my mouth.
11/10/2007
Innovative Ham Soda
Well, Thanh, check out the ham soda story on CNN...
11/02/2007
Finally found a useful Vista widget
In my current role I have to interact with people around the world on a daily basis. I’m usually wondering what time it is in their particular area of the world. I was using a nifty world clock widget for the Yahoo widget engine. I’ve recently received a new laptop running Vista, and I’m trying to stay pure and avoid installing applications that I don’t absolutely need. So, I decided I would use Vista sidebar for my widgets. Today I found a great world time widget from WORLDTIMESERVER.COM. There’s also a 12-hour version of the widget, if you can’t handle the 24 hour dial.
Dallas |
10/30/2007
Chronos Date/Time Library - the answer for my RFC822 needs?
Chronos is a reusable code library, written in Smalltalk, for the
creation of and computations with date and time values. It provides classes to
represent and perform computations with point-in-time values, temporal extents
(durations of time) and temporal intervals (specific periods of time, such as
the quarter from 15 July 2005 through 14 October 2005.) Chronos implements the ANSI-Smalltalk Standard DateAndTime, DateAndTimeFactory,
Duration and DurationFactory protocols.
and
Provides very flexible parsing of dates, times and date-and-time values from
character data--including full support for ISO 8601, RFC 2822, time zone names,
time zone abbreviations and time zone offsets.
Nice! I will be giving this a try as time permits. There is a Squeak port!
10/29/2007
Parsing OPML in Squeak
I decided to write an OPML parser because I:
- Wanted to play more with Smalltalk.
- Wanted to play with parsing XML in Smalltalk.
- Had written an OPML parser in Common Lisp and wanted to compare.
So, I hate to say it, but I like my Smalltalk version better than my Common Lisp version. When I compare the code between the two, the Smalltalk version is much easier to follow. I think the key difference is that in Smalltalk I focused on the data structures (objects) and not on the algorithms (parsing and populating). Even though I used an XML parser in both languages (XMLS for Lisp), in Lisp there's alot of code around populating my object model. Not sure why the difference. Maybe the slot accessor syntax vs. method syntax?
Does this mean I love Smalltalk more than Lisp. No. But, I think it means I'm starting to love them both.
10/25/2007
Ubuntu Upgrade is like Butter
I just upgraded a VMWare image from Fiesty Fawn to Gusty Gibbon (7.04 -> 7.10). I used the prescribed upgrade method. Everything went smoothly. The only hitch was that my scroll wheel on my mouse wasn’t working. Thanks to this thread on the VMWare forum, I was able to get it working. Like the others, I suspect that the problems are due to VMWare and will be addressed in a future VMWare tools update.
The Canonical guys are making running a Debian based Linux too easy. I’m going to have to give up my Captain Kernel Patch secret decoder ring.
10/24/2007
The social networking time suck
Email is Organic
One of the things that I’m not sure everyone appreciates is that email is a de facto part of modern collaboration. I’m sure for many people, this goes without saying. However, there is a vocal minority who find email to be a distraction, a poor substitute for vocal communication, a poor form of written communication, or a poor substitute for a discussion board in a content management system somewhere. Sure, it’s all of that. But, it’s more than that too. It’s an organic form of collaboration.
Additionally, email allows you to collaborate on different levels. There are times when your collaboration is through the substance of the text you are sending one another. There are other times when the collaboration is through versions of files being sent back and forth. There are even times when email becomes a substitute for RSS or alerts to let the collaboration participants know you’ve updated a web site or another collaboration medium.
Finally, email is good at keeping history. Each message is a snapshot in time. For example, when I need to go back to a more successful version of the cabbage soup recipe I’m sharing with my friends, I can easily look up the version I sent last Thursday.
So, don’t hate your email. Let’s embrace it for the rapid, organic collaboration medium that it is.
Back to blogging
I’ve decided to try to take up blogging more frequently again. I’ve got some reasons – the primary one being that I need to get back in the habit of writing. It’s painful now when I sit down to write anything other than an email. So, I’m hoping that I can at least get back into the swing of writing something more formal than an email but less formal than a document. We’ll see.
What have I been up to? As a previous post mentioned, Carey and I had another child who’s now a year and a half old. We built and moved into a wonderful new house. I received a new assignment at work that has challenged me like none of my previous experience. So, it’s been a busy couple of years.
On a technical front – I’ve joined the Enterprise Content Management practice at Hitachi Consulting (not a new job, just a new practice for me), I’ve been learning Smalltalk and lovin’ it, I’ve built a Rails application for a friend, and I’ve started learning ASP.NET/C# as part of a charitable project. Again, busy couple of years.
So, I’m back and I’m pledging to post more frequently. I also hope to achieve new levels of relevance through a series of pithy observations… well… maybe I’ll just post more frequently. J
10/03/2007
Netbeans as a Rails IDE
I'm going to have to get me some NetBeans.
Also, kudos to Sun for keeping NetBeans alive. You could have clearly given up as you were Eclipsed. I'm wondering if NetBeans 6 isn't a lesson in "try, try again" and "hold on tight to your dreams".
9/26/2007
Note Studio Ceased
I understand their reasons. I'm sure it's tough balancing products, financial considerations, and personal interests as a small (micro?) ISV. I don't fault them for their decision at all. I think they handled the announcement reasonably well too.
So, as a final send off I have to say thanks to the Dogmelon team. Their tool along with Volker Kurz's GtD templates helped me find my personal GtD style. Thanks a million, guys!
8/05/2007
Squeak
What drew me to Squeak? I had been hearing about Squeak for years. Occasionally I'd download it, click around, and say things like, "Wow, this is weird." or "This looks like a cartoon." or "This must be for kids." Every time I looked at it, my curiosity would grow. Finally, the last time I downloaded it, I felt like I was being led to learn why everyone thought it was so great.
One of the first things that slaps you in the face is how different it is to interact with Morphic. It is an interface that is immediately usable, but it takes a bit to get used to it. Everything that is visual in Morphic is a Morph, which means you can interact with it, inspect it, embed it in other Morphs, etc. Although this gives the entire system a very layered and consistent feeling, it was something that I didn't know if I really liked. I mean, I'm the kind of programmer that prefers Emacs!
I decided I needed to dedicate some time to it and not blow it off as I had so many times before. Boy, am I glad I did. It's been 3 weeks or so now, and I'm growing extremely fond of Squeak. I have worked through some of the tutorials on Morphic programming. I've also played around with some of the Morphic direct programming using Viewers and scripts. I've been studying code and extended FileList2 to allow tagging files and storing the results with SPrevayler. I've been having lots of fun.
That brings me to what is continuing to pull me into Squeakland. I'm having fun. Squeak is just fun to use and hack around in. It makes me feel creative because not only can I code up things easily, but, thanks to Morphic, I can decorate my projects and workspaces with pictures, text, drawings, etc. In fact, I could use those same elements in my Morphic applications. It just makes me feel like anything is possible and that I'm some mad, creative inventor in my little virtual lab.
Thank you Squeak team.
7/22/2007
Vacation!
to Tennessee for a family reunion. My wife's family is getting together
in Gatlinburg next weekend. Leading up to that, we'll be in Cleveland,
TN staying with my in-laws.
I'm anxious to leave the flat urban area of Dallas and see some hills
and trees again. It's fun going back to TN and seeing everything we
used to take for granted. It's like we're looking at it with a fresh
set of eyes.
We're all getting excited. My daughter is anxious to see Nana and
Gran. So are my wife and I.
7/11/2007
20/20: Top 20 Programming Lessons
Updated 07/16/2007: Had the wrong link for the article. Thanks for the update Jonathan!