Daily Non-Progress: 2007.06.15

I normally wouldn’t allow play to come before work but I think we’ll make an exception for tonight. I am actually writing this message on my new Wii! It is pretty painful to write out all of the letters by spelling each one but at least it has a predictive dictionary. So that saves maybe 40% of the necessary “keystrokes”. OK, my arm is about to fall off.us Goodnight!

Daily Progress: 2007.06.13

Rather than code Rails tonight I spent a little time trying out Prototype, the JavaScript library. I have been using DOJO at work, and prior to that I had written my own animations package. My initial feeling about Prototype is that it’s simple and quick, but maybe too simple. DOJO is really quite an interesting system which lends itself to many different ways of hooking up events and queues, calculating the dimensions of objects, effects, etc. I don’t really care about the built-in widgets because I usually style my own.

Daily Progress: 2007.06.08

Wow. I’m not perfect.

I found a little error on the main Sequence Mediaworks site in the HTML which was causing a link to not be terminated. But that’s fixed.

I also dug out the little Fujitsu. The battery was completely drained and when it booted it needed some serious Windows XP updates. But it’s back up to normal, even up to Firefox 2.0. The more important thing is that it has IE 7 fully updated and it’s a 1024×768 screen resolution. So I figure if the web sites render fine on this then they’ll be OK on the Mac—the Macbook will be used to test things later. The Macbook is running WinXP too, but it’s not the same.

The one good thing I’m thankful for is that the entire development of this site is on the server: complete remote development. The only things I run locally are web browsers, SSH/SCP clients, and Photoshop.

Daily Progress: 2007.06.07

Resolved the problem where users were only partially being created. The registry table was OK but the users and tags were not. Ugh. I totally miss having transactions! I need to find a way to enable them.

The password generator also now includes dashes in the password to make it easier to read.

Daily Progress: 2007.06.05

The good news: the e-mail system appears to be working and it is being generated from a central place. The bad news: the people.sequencemediaworks.com site can’t start up. I guess tomorrow I need to debug this!

[Update: minutes later]
Oh, my bad. I had an uninitialized hash which was causing model load failure. Now everything is working perfectly, including sending out the password to the proper e-mail address. But, the value object returned in the user creation process appears to be empty. Hm.

Rant: 2007.06.04

Allow me to rant, as I often do. I loathe Java. Sure, it’s great for big enterprise computational things. Things which need very strongly-typed, rigid, rules-enforced systems. It’s perfect for the scientific community, perfect for mathematicians, perfect for data warehousing … but horrible for web apps.

I’ve spent the better part of an hour (doing day-job work stuff) trying to figure out how to properly write a manager class that will input an object ID and map it to another object. Simple in theory, yes, especially if you know the database schema well. Here’s the bother: we’re using managers to provide database access. Those managers take in IDs and spew out not entity objects but domain objects. On one level this is nice because it hides complexity from the controller and view layers. Bad because sometimes when you need data you end up passing in an ID, getting back a domain object, then transforming it to get the entity back. Ugh. Of course, there’s the other way: go get a DAO object and poke the database directly. That sort of defeats the purpose of fronting it with a manager. Oh, and get this: we sometimes end up having domain objects named the same as the entities. So that gets confusing.

I’m a stickler for system simplicity. Concise unique naming, flexible data types. Less layers of obfuscation. Protocol-driven interfaces. I seriously hope that my Sequence Mediaworks project will bring about this simplicity. It probably won’t be as computationally fast as having static types, but honestly I want faster development time than precision. I think that treating most data as strings (for the Web context) is pretty OK because most of the time I’m processing string data.