Ultraq's Final MooCow

Bits and pieces by Emanuel Rabina

2013 starts with... programming?!?

First blog post of 2013 and I thought it'd be one of those 'look back on the last year' or 'resolutions for the next year' kind of posts which I've been reading from others for the last week 'cause it all just got me in the mood to do the same. The thing is, I've never really subscribed to writing such posts, although when asked (in real life) about the year just gone or the year now coming, I have plenty to say.

So instead, some programming house-cleaning:

Thymeleaf Layout Dialect 1.0.5 released

The latest version of my add-on to the Thymeleaf templating framework was released on the last day of 2012. Version 1.0.5 adds a feature request to extend the decorator page title with the content page title (rather than just overriding it which it did before), further upholding the DRY principle and insulating web developers from little mistakes in the titles of their web pages. There's also a fix for those who use IE conditional comments around the <html> element so that such comments are now included in the resulting page.

On uploading the new release, I learned that GitHub has deprecated the Uploaded Files / Download sections of each repository, requiring everyone to host downloadable bundles elsewhere. It's made some people unhappy, but given the GitHub mission, the downloads section has always been a nice-to-have that they've been nice enough thus far to have. I've made all the download links now point to the bundles I host from this website so that archive hoarders (like myself) still have a place to go to satisfy their ZIP file needs :)

You can find out more on the Thymeleaf Layout Dialect web page.

Red Horizon now on GitHub

My ongoing and never-finishing game programming project, Red Horizon, is now up on GitHub. It's not the project's main repository, but I'll keep it updated so that it's never too far behind current progress. The Red Horizon pages on this website also got a wee update to reflect the way I'm now presenting my programming projects.

I did this so that interested persons (and there have been a few of you) can take a look at what I'm doing and how I'm doing it. I think the most use of it being up there is that developers can now download or browse the source and commit history without having to get the download bundles I rarely provide.

Having the project up there also adds a psychological element to how I code it. I've found that with all of the projects I've put up on GitHub, I've started to think about design/code consequences quite a lot more in the hopes of coming up with better code that satisfies requirements without adding that dreaded 'technical debt' word that seems to be making the rounds in the developer blogosphere these last several months.

I think the exposure is enough to make me feel more accountable for the code I write. If the code can now be viewed by anybody and everybody, then I should write it like it has nothing to hide: no shameful secrets, no facepalm-inducing design decisions, no fodder for The DailyWTF CodeSODs.

Facepalm
Your code... ugh

At least, those are what I hope to gain from doing this; design is largely subjective (there are still people out there arguing over things like where to put the curly braces), and one man's 'hey that ain't so bad' is another man's WTF, or so the saying goes.