the corner office

a blog, by Colin Pretorius

Bed time

Weekends are too short.

{2007.04.01 23:11}

Mailinator

I've never used Mailinator but (via vowe.net) there's an interesting article about its architecture: a completely transient mail server which stores a heap of emails in memory, and then forgets about them. Great for sign-up emails and the like. Oh, and implemented in Java, and running on a 2GHz server with a gig of memory, which makes it extra-interesting.

One thing the Mailinator system does, which caught my eye, was that the server takes very long to reply to incoming mail, when it can afford to. The reason is quite simple: slow responses will choke up spammers who're trying to spew out as many emails as quickly as possible. This is something I've wondered about before: have lots and lots of honeypot addresses, and dummy mail servers which take forever to reply. For your average server out there, which has a fair amount of spare capacity, why not dedicate a handful of threads to ruining a spammer's day?

{2007.04.01 00:52}

The Efficient Use of Steam

The people at the local Waitrose must think I'm nuts. It's not every day you see the scraggly-haired foreign man buying loads of boxes of resealable plastic bags. They must think I'm trying to dispose of a body. The little old grannies might think otherwise. Such a nice man, feeding the fisheys every day. Anyway.

As I mentioned before, we don't have space for all of our books, so most of them will be staying in boxes. I still wanted to unpack them all and make sure they'd survived the move. Thankfully, despite some rather horrendous packing, Allied Pickfords managed to not mess them up too badly. Now that they're all unpacked, I had to decide what best to do with them. I'm an old book nut, and while most of my books aren't particularly valuable beyond sentiment, as the years have passed, a few have become centenarians. A few more are getting close. Back in South Africa they just sat on shelves, and I never thought much about them. Now that we're here, and now that shelves aren't an option for all of them, it needs a bit more thinking.

The problem is that there's just a mountain of conflicting advice out there. The pack them upright and don't squash them stuff is easy to do. I have that covered. The rest is just too conflicting. Basements are best. Don't store them in basements. Light is bad. Darkness encourages mould. Lots of air flow. Glass-doored bookcases. High humidity is bad, but so is low humidity which makes paper and leather brittle. Buy dessicants. Moth balls. No insecticides. Protect them with bags, but bags can cause condensation, and polythene breaks down, buy mylar bags which are worth more than the books and last a century. It gets a bit much.

The problem is I don't know the English climate well enough yet, and I'm not sure which is going to be the most dangerous: damp, mould, or insects. Mould seems more of a risk here than it was back on the Highveld, but I've seen more books damaged by critters than fungus in my time, and I can't shake my nervousness about the bugs. Either way, they have to go in boxes; it's just the how that needs sorting out. For now the books are going into plastic bags, but I'm going to pay a visit to a few book dealers this coming week and see what they say.

{2007.04.01 00:34}

MyEclipse vs WTP

I've been using MyEclipse for a while, and it's a really powerful tool for Eclipse J2EE development. The dilemma MyEclipse faces is that the built-in tools will be built, or improve, to the point where it's not worth paying for a commercial add-on. With the blog done, I don't expect to do too much web-related development at home over the next year, and even when I do, my needs will be fairly humble. My MyEclipse subscription needs renewing, so I thought I'd take a squizz at Eclipse's Web Tools Platform (WTP) project and see if it could do what I needed.

Installing it is easy enough, but converting a MyEclipse web app to a WTP web app is not trivial. I managed to get a few web apps converted and working, but it didn't take long for me to wipe them, pull the old versions down from CVS and go back to MyEclipse.

There are a few reasons:

  • MyEclipse provides an umbrella J2EE library for classpath resolution during development. The library is generic, and part of the MyEclipse installation. WTP on the other hand, requires you to link directly to an app server runtime. I don't like this because I don't want to be tied to a specific server in this way. It is possible to create a generic J2EE runtime, but you're still responsible for finding and linking to the necessary jars. MyEclipse is just easier and cleaner.

  • Eclipse doesn't make it easy to convert projects between different types. The project's type is usually tied to a 'nature' in its .project file. Often, a bit of fiddling with the .project XML allows you to turn a plain project into a Java project, and so on. This doesn't seem to work with WTP. In addition to the natures and builders (and there are a few), it seems that some files in the project's .settings directory are also needed.

  • I almost always add .settings to cvsignore. It's not a biggie, but some settings can be workstation-specific and it can be quite annoying having conflicting .settings files being bounced back and forth between developers in a team. As I mentioned, it seems that WTP projects need some settings files shared just to preserve what sort of project it is.

  • I want my workspace projects to be my projects. I don't like polluting my workspace with the Servers project created by WTP. I know it makes it easier to share configurations and the like, but I prefer making do without it.

  • MyEclipse integrates with Tomcat cleanly and simply. It re-uses the server's config files, including the various app Context files. WTP gives you more options, but for all that, I couldn't get the server to see my existing Context files. Having to bundle everything, including database connection resources, into a single server.xml, just isn't workable.

  • Finally, linking my tco.util Java projects to my web application projects caused WTP to create .settings entries and MANIFEST files in the utility projects themselves! WTP has no business touching included projects if they're not being edited directly. That's just not on. MyEclipse does a fine job of placing dependencies into deployed web applications, without writing all over the included projects. If MyEclipse can do it, so should WTP.

I can't help but notice that many of the things I don't like are also features in Rational Application Developer, so I suspect they'll be rather entrenched in WTP, no matter how much it continues to mature. In fairness, some of them probably do make more sense in larger development teams. For now though, I'll gladly pay 32 bucks for another year's subscription to MyEclipse.

{2007.03.25 21:47}

DST

This is my first experience of Daylight Savings Time, and I feel like I'm living a lie. I am living a lie. I'll settle in soon enough, but now I see the clock saying 12h30 and I know it's actually only 11h30. I feel like I've been cheated out of an hour of my life. I know I'll get it back at the end of summer, but still.

If you think of the amount of computational effort needed to handle daylight savings time in the modern world, you have to wonder whether it might've been better if, in the pre-computing days when DST was first concocted, someone had tried to be less clever and had just passed a law forcing organisations to open an hour earlier.

{2007.03.25 11:47}

What's next?

Time to stick to the quasi-resolution. Over and above some adminish distractions, it's time to pick a new programming project. There are a few things I'd like to do over the rest of the year. By the end of the year I'm keen to be doing things with a much more Unixey and C/C++ish flavour. It has nearly zero applicability to my day to day work, but that's kind of the point: it's fun and a way nerdy distraction.

Before doing that though, I'm going to spend some time doing something I've made far too many false starts at over the past few years. I first started mucking about with Eclipse RCP back in 2004, and at least once in 2005 and again in 2006 I started and got nearly nowhere. Time to get past the first few chapters of the manuals.

I spend a lot of time in Eclipse, and now in RAD, too. I think it could be quite useful getting a little more under the hood with them. Also, there are a few desktoppish apps I may get around to working on, why not kill a few birds with one stone and use Eclipse RCP?

So that's where I'm headed for the next while. Goals: get my head around plug-ins, perhaps build one or two, and then take that a step further to an RCP app, and whip up something simple, to see what it's like to use it all in real anger.

{2007.03.23 21:59}

Forwards and backwards

Today was a bit of an odd day, exciting and sad. The exciting part is we bought a car on the weekend, and I collected it this morning, and we're well chuffed, as they say. It's been remarkable that we've managed without a car for so long: we've been lucky to have my sister and brother in law helping out when we needed it, but for the most part, we've made do with buses and trains, and walking a few blocks to get whatever we need. I wouldn't have wanted to make do forever without a car, but it can be done, and that's not something my middle class South African mind could have grokked a year ago.

In fact, I really hope we don't allow the car to make us lazy. I love walking around our town, and there are whole swathes of Oxford I've yet to explore by foot. I enjoy the bus commute in the mornings and evenings, despite having to sit next to the occasional smelly slob. I spend the same amount of time commuting that I did in Joburg, but in Joburg I was sitting in traffic for 45 minutes twice a day, now I get to sit quietly and read for an hour and a half every day. I haven't read this avidly in years. Every now and then, I don't read, and just soak in the countryside for half an hour or so. It's great.

A car will change things, though. It gives us independence, and security with little one on the way, and the ability to broaden our horizons: do more, travel more, see more. In many respects it marked the final thing we needed to do, to really feel like we're settling in this country. I fetched Ronwen this afternoon, and we got cheerfully lost exploring villages and hamlets and winding country roads as we drove home from Oxford. Then we stopped in and got McDonalds drive-thru at Benson, just because we could. Things are going to be different.

The sad part of the day is that today marks 2 years since my mom passed away. A few years ago any exciting news, like today, would have seen me pick up the phone and share it with my mom. So much has happened over the past two years, and I often still get that near-subconscious urge to pick up the phone and report good news, but then I remember that I can't. I'm grateful for the family and loved ones I can still report good news to, but I still miss my mom.

{2007.03.21 21:51}

Ubuntucised

I decided to take another stab at the Ubuntu wireless thing this evening. I cleared a space in the spare room, perched the laptop on top of a box, contorted and got an ethernet cable plugged in. Not too long after, and I had wireless working. I still don't know exactly what I did, but following these instructions verbatim did the trick. I am now blogging from Ubuntu, and am a happy camper.

Except for one thing. Ubuntu has no black cursor theme by default. I dunno about now, but in the old days, as in the Mac OS 7 days, Macs had a black cursor. Early versions of Windows had white cursors, and ever since, my first act of defiance when setting up a new (Windows) machine is to switch to a black cursor. (The other thing is to move 'My Computer' to the top right of the desktop and the Recycle Bin to the bottom right). Now I see that Ubuntu has white cursor themes, and red cursor themes, but no black cursor theme.

Gonna have to fix that. And track down my old Glass-looking Gnome theme. And get decent fonts installed. And remember how I got my menus to use a 7 point font, and smaller icons. And and and...

But at least Ubuntu's running. I think I shall have some chocolate to celebrate.

{2007.03.20 23:11}

I almost switched to Ubuntu

It's not that I hate Windows XP, it's just that some parts of it really grate me. I'm sick of NAV freaking out because my virus definition subscription has expired. It's been over a week, gotta sort it out, I have a spare license somewhere here, but it's a mission to dig it up. I have Norton Protection Gulag blasting me with warnings every time I boot up because I choose to review Windows updates before installing them, and every time I shut down, some random Acer utility program won't close gracefully.

All of this means one thing: time for Linux again. I agonised a bit over Gentoo vs Ubuntu, but Ubuntu won. We'd used it on Ronwen's machine for a stretch last year, and it's nice and easy to set up and use, and I can do with easy right now.

I cleared a spare partition, and installed Edgy Eft this weekend (maybe I didn't hug enough bunnies as a kid, but I have to say it: Ubuntu's naming is naff). Anyway... I've never used Linux on a laptop, so I wasn't sure what to expect. Remarkably, the touchpad worked like a charm, even the fancy scrolling-down-the-side feature. The screen resolution is woozy but apparently there's a tool for that. The deal-breaker, though, is that my wireless card isn't working. Being a wireless newbie, more homework is needed. That, and an ethernet cable to my ADSL router. Since the router is behind a mountain of boxes in the spare room, that ain't going to happen for a while.

So I'm sticking with Windows for now. Bugger.

{2007.03.19 23:33}

The YouTube vortex

It's crazy, man. You have some free time, you start out at the PC all productive, getting things done, and then you decide to take a gander at YouTube, and the next thing you know, you've polished off three times more chocolate than you were planning to and it's an hour past your bedtime.

There are downsides to having 8MB uncapped ADSL connectivity, there really are.

{2007.03.13 00:24}

« Older | Newer »