My current endeavors

Ok, so I said I would keep up with this blogging thing, but I’m not doing a very good job. It’s been over two months since I last blogged. What the heck is my problem? So here’s the run-down of what I’ve been doing:

Work
I’ve been steadily plugging away at Master Packing’s web site over the last two months. I’ve been trying to implement interactive features to some fairly boring things. Once its up, I’ll highlight what I’ve done, but until then, I’ve got to explain. On the mechanical packing page, I’ve used the Tree widget from Dojo to let you figure out which style of our mechanical packing matches other companies’ packing. Also, you can compare the temperature, pH, and speed ratings on all the mechanical packing we offer using the SortableTable widget. On the rail and marine page, you’ll be able to search for a partial or complete EMD number and the server will show you what part number we sell that part under and also suitable replacements. This search feature is something that isn’t available anywhere else in the EMD aftermarket industry. We should have it up and running by mid April. I’ll definately post when it’s up.

JavaScript
For the last month, I’ve been delving deep into the world of JavaScript for SitePen. It has taken me a while, but I think I’ve gotten the hang of the prototype-base inheritance that JavaScript uses. I think I’m past the fact that you can extend the prototype of any class so if you want a new method or want to modify an old method, you don’t create a new class. You just “mask” the old method on the current class. Coming from C++, that blew my mind.

Coaster
Development has pretty much stalled. I’ve been so busy with life, music, Dojo, Django, work, contracting, and everything else that I haven’t had time to sit down and code on Coaster for a long time. Also, the success of programs like Serpentine have shown me that other people are more motivated than I am. If someone wants to take the coding portion of the project over, contact me or Sean Harshbarger on the Coaster mailing list.

Updates

Man, I’ve been busy lately and haven’t had any time to work on Coaster. I haven’t even really had much time for anything other than work. Although I’ve had fun doing it, it’s been hectic.

Most of my time lately has been spent working on converting Master Packing’s current website over to Django so we can quickly develop new applications and easily edit content. I’ve been very impressed with Django’s infrastructure and API, and I’m even more impressed with how the next version is shaping up to look like. They’ve changed it so that a lot of the “magic” is gone and the API is improving. 1.0 should be sweet.

I’ve also been working with the Dojo javascript toolkit as well. It’s a pretty neat toolkit that is pretty powerful. I like how dojo.io.bind works for AJAX requests. They also have dojo.event.connect that works kind of like glib’s event connecting. The documentation is on the bare side (as in, not much at all), but that’s being worked on.

Dork-sided

Once again, it’s been a while since I blogged so it’s time for the update :).

Coaster
So, I’ve kind of been slacking in this area lately. I finally got multiple row drag and drop implemented (thanks Aaron for your Banshee code which does this) and it works pretty well. Hopefully I can get some bugs worked out and get 0.1.5 release sometime soon.

Work
Over the summer, I was put in charge of my company’s web site which is where most of my time and energy went. Since then, we’ve launched the site and I’ve worked on using XML/XSLT to generate the web site (soon to be put into production) using xsltproc. Another thing I’ve done is set up a little Ubuntu server internally to develop some commonly used “applications” that were “developed” using Excel. The machine I used as the server is an old 233 mhz Pentium II. It’s surprising how fast it runs when it doesn’t have to do graphical functions.

Home
We’re moving! Ok, not that far, but we’re moving to a bigger apartment about 10 minutes away from where we are now. Hopefully the switch of utilities won’t be as bad as someone’s. The cool thing about this apartment is that it’ll have a spare bedroom that I can set up a pseudo-office with all my computer stuff.

Trading Spouses
Watched “Trading Spouses” tonight. It was the second of two and there was a psycho lady on there. Holy cow. On behalf of all Christians that aren’t psycho, I’d like to apologize for this ladies actions. If you get a chance to see the reruns of this episode, make sure you watch it. You’ll get a kick out of it.

Catching up

So much has happened since I last blogged… I really need to get into the habit of writing more often.

My wife had her 21st birthday. It was pretty uneventful. She hasn’t even had her first drink. She also made her own blog today. I’m so proud!

Work has gotten pretty crazy. I am now the webmaster of the company’s website, which has been fun so far. Since this isn’t a hacker site where I can tell people to go stick it if it doesn’t render in Internet Explorer correctly, I’ve had to figure out how to get a valid site to work with IE. Dean Edwards’ IE7 has helped out a ton. We also installed a Jabber server on the file server so that we have a reliable messaging server to talk to each other (MS Messenger just wasn’t cutting it).

With all of this happening at work, I’ve had little time to work on Coaster (this is beginning to be quite the standard blog topic for me). I started working on it again this weekend and I got some code duplication moved to the base classes.

Along with my hacking this weekend, we went and bought a fountain/waterfall thing for the bedroom and an alarm clock that plays 6 different nature sounds. It’s quite calming and I’ve found myself spending more time in there reading. It’s also been nice to wake up to the rainforest and the ocean.

Updates

Wow, so it’s been a while since I’ve done this. Let’s see if I remember how to do it :).

Clear back on the 14th of July, I had to take my laptop in to have the hard drive replaced. It turns out that something was wrong with the logic board that was making my hard drives fry after a year of use. It only took a couple of days to get it back (the Apple dealer here had to send it in to Apple to get it fixed) and now my laptop is back in action.

While all of that was happening, I received an email from my web hosting company that I had failed to pay for the last 6 months. I thought this was strange, but Andrew told me that this company (OLM) has a horrid billing department with no concept of automatic billing. I had been considering for a while switching services because they also had no concept of SSH port forwarding or TLS/SSL to encrypt passwords for email. I ended up purchasing a Linode and started the process of transitioning my web site and mail server over to my new server. I had quick crash courses in DNS, Apache, Exim, Postfix, Dovecot, SSL, TLS, SASL, and server security and finally put up my server live on the 26th or 27th of July. Everything, so far, is working well (thank you Ubuntu).

The only thing left to do is figure out how to organize my mail on the server into folders so I can IMAP in (with TLS and SSL which is set up) from anywhere and read my mailing list mail in an organized fashion. I’m thinking that I’ll have to figure out how procmail works in order to do that. Any suggestions would be greatly appreciated.

September and I also just celebrated our 1st anniversary this past Wednesday. This first year really flew, but it was fun. I wouldn’t trade it, even for an iPod ;).

With all of this going on, I haven’t had much time to work on Coaster. Since I’ve got my laptop back and my server is now hosted in a sane place with sane billing, I can focus on Coaster more. I keep postponing the release for 0.1.5, so I’m not going to set another date. It’ll just have to be a surprise.

Oh the joy of technology

So, I was planning on releasing Coaster 0.1.5 either this weekend or next, but I don’t think that’s going to happen. My laptop’s hard drive seems to be dying (again). Whenever it starts to get a little hot (after about 45 minutes of being on), it starts to miss IO calls to it. It culminates into nothing working and the basic tools (like ls, ps, etc.) tell me there’s an IO error while the rest of my hard drive in inaccessible. After shutting it down and waiting for it to cool off, it works again. If I remember correctly, about this time last year my hard drive did this same thing. Maybe it’s the alignment of the moon or something. Luckily, I enrolled my laptop in AppleCare, so this should be covered. Now to back up everything on my hard drive to my desktop computer and hope it doesn’t heat up too much in the process… should be a blast. 😉

Drivel and Coaster

I’ve hacked Drivel to work with the MovableType API (and I filed a bug as well) so hopefully I’ll be blogging more often. I continue to work on audio support in Coaster, so look for a release sometime in the next month!

I can almost hear it…

This last week I started working on audio disc support in Coaster. It has been interesting trying to figure out the Gstreamer library and how to get it to interact well with Coaster without using a wrapping library (to save you guys the hassle of another binding dependency). So far, I have some test programs that read in the information I need; next thing to do is to get an audio store, layout, and view up and going.