Still breathing

Still around. At some point I really need to spend the time to write something worth posting here. Most of my notes end up in a private ticketing system with the goal of cleaning them up and posting publicly, but it’s not working out very well.

One thing I will be working on in the coming year is migrating many older/smaller projects over to GitHub. While SVN is still a very useful tool, GitHub is an amazing platform for collaborative development. I’ve been using it quite a bit in the last few months and I’ve come to really appreciate its usefulness. Where I once saw “forking” a project as harmful to a project, I’ve come to understand that Git doesn’t encourage a different model of thinking or coding, it just opens up some options that were not there before. The concern I had about developers taking the code, going off into a cave and not committing back is probably best handled by policy/development culture than it is by the version control system.

New Project: Email Updates

I’ve never been known for being the most creative, so this new project I’m kicking about suffers from the same lack of creativity when it comes to the naming: Email Updates.

It’s a Bash script that has evolved over time from a simple

apt-get dist-upgrade -s | mail -s "Updates for `date`" root

into a workable script that remembers what updates it previously told you about (and doesn’t tell you again).

So far I have it working with Ubuntu and Red Hat distros (RHEL5.x, CentOS 5.x and CentOS 6.x), but I’ll add other distros as I find the time or get requests for them. The project page can be found here. Feedback is very welcome.


More wiki content for Francis Glassborow’s FGW Library

I spent much of today working on the directions for building the latest FGW Library source code using current MinGW or the version bundled with Quincy 2005 (Quincy 2002 was used in the book, but is no longer available). In addition, I also worked through the source code downloads from the author’s website and the publisher’s book page and merged them all, starting with the original CD source files and ending with the zip files available from the publisher’s site. The results are an unofficial public source code repository for The FGW Library, aka “Playpen” and a new project page here.

My goal is to merge the source code changes provided by Jaime Moreno and other community patches around the web. It will be a low priority task for me, so I’d be more than happy to turn it over to someone else that has a strong interest.

SQL in easy steps, 3rd Edition errata

I was reading through SQL in easy steps, 3rd Edition and made it to page 152 where it covered Sub-query calculated fields. It’s a fancy way of saying a SELECT statement within a SELECT statement, but isn’t that hard to grasp if you’re familiar with how variable interpolation works with Bash or similar shells.

My problem was understanding how even though a column wasn’t listed as one to be returned by SELECT it was seemingly returned as a byproduct of an ORDER BY statement. I couldn’t find this mentioned in any of the MySQL documentation or another MySQL book I have so I was getting pretty frustrated. I fired my MySQL this morning and opened up subquery-calc.sql and had a good laugh: The mental block I was having was due to an error in the book’s code that wasn’t present in the SQL file.

I fired off an errata report in the hopes that it will be correct in future printings so others won’t be as confused as I was.

Continue reading

HTML5 Boilerplate

The last time I spent any real time trying to learn HTML was probably when PHP 4.3 was popular and XHTML was the new thing on the scene; yeah, that’s been a while. I Google’d HTML5 because I wanted to find a dead simple template that I could use for a starting point and came across HTML5 Boilerplate. It was overkill for my needs, but I definitely plan to come back and look over it at some point.

There’s no sense in repeating myself, so here’s what the devs have to say about it:

HTML5 Boilerplate is the professional frontend developers’s base HTML/CSS/JS template for a fast, robust and future-safe site.

After more than four years in iterative development, you get the best of the best practices baked in: cross-browser normalization, performance optimizations, even optional features like cross-domain XHR and Flash. A starter Apache .htaccess config file hooks you up with caching rules and preps your site to serve HTML5 video, use @font-face, and drop your site’s filesize by half with robust gzipping.

Boilerplate is not a framework, nor does it prescribe any philosophy of development, it’s just got some tricks to get your project off the ground quickly and right-footed.

See their intro page for more information or this great review by Dan Wahlin.