Sunday, July 11, 2010

Wow, it's been a long while!

We Thought You Fell Off the Face of the Earth!

Hello everyone. I'm still around. Well, I warned you, I may not write often. I hope, though, that there are still some readers out there (or new ones will find this blog).

First, a very quick update in fast-forward. I moved because my wife got laid off about a year and a quarter ago. She got a new job fairly quickly given the economy, so that's that. In addition, I've completed two more semesters at Kutztown University and I will be entering my last semester this Fall. I've also been taking two Summer courses.

The main reason for not writing in so long has been three-fold:

  1. The last two semesters have been extremely difficult—on the flip side, I managed to pull off very good grades; so I'm very pleased about that.
  2. I've been trying to work whenever I can to get all those computers installed at Thermocouple Technology, Inc., but it's been really slow going.
  3. Making things even more slow going at TTEC is the fact that I decided to get a different Summer job that would be involved with coding. It is to a certain extent (if you call writing SQL programming), plus, the job is about an hour away from where I live.

My coursework at school over the last two semesters included taking Compiler Design I and II using the famous Dragon Book. I tried to implement a language that could replace SQL. Well, being I wrote the language in academia for academia, it didn't quite turn out the way I would've liked. I spent every waking minute last semester writing code for that class. Anyway, the idea is that the language could be used not only for relational databases, but also XML data, structured textual data (e.g. CSV files, tab-delimited files, etc.), or any other structured data (possibly using some kind of schema definition). As the semester wore on, I whittled the language down to just working with relational databases for the start. However, I didn't have time to learn another database technology with an open API where I could directly access the query engine, so I ended up translating my language to SQL anyway, which didn't work out quite so well. Having said that, my ideas are completely valid and workable, given enough time and resources to develop it properly, and it very well could replace SQL using a much more human-readable/writable syntax. In fact, part of my coursework this Summer is writing a paper on this language and its goals.

Anyway, enough of that. So in a nutshell (which is a first for me, believe me!), that's what's happened over the last year and a half or so.

Why write now?

Well, I'm glad you asked. As mentioned, it's my last semester coming up this Fall at Kutztown University. As such, I'm required to take a course colloquially called Senior Sem, the cap-stone course that's supposed to tie together everything we learned into a final project.

Being who I am, I plan on making the best of it. My idea: an inventory system for all the different types of media I own—books, CDs, DVDs, magazines, sheet music, etc. It will be web-based using the new MVC 2.0 framework. I will also be investigating technologies such as jQuery, and AJAX. In addition, I plan on proposing two new microformats to to use with my project. I will be writing a few more blog posts over the next couple of days/weeks that contain pre-pre-draft specifications of the proposed microformats, as well as samples of how they could be used alone or along with other existing microformats.

I'm very excited about my project and hope to learn a lot of real-world skills and create a usable application. Whether anyone else would find it useful, I don't particularly care, I've been wanting a comprehensive application like this for years.

More on Microformats

If you don't know what microformats are, I'd encourage you to visit the website I linked to above. In addition, there's also RDFa. The two technologies are complementary. RDFa, as I understand it, is for machines first, whereas microformats are for humans first. Both can be used together to make the web a much more meaningful place for humans and machines.

To make the most of this embedded information, you can use various browser plug-ins to access the information. For example, there is Oomph for Internet Explorer, and Operator for Firefox. When microformats are available on the page, these tools will let you export contact information, calendar events, product information, RSS/Atom feeds, etc. There's a lot of information that can be encoded in semantic XHTML. If you haven't noticed, this blog post has tons of microformats embedded within it.


So, stay tuned, as I begin "the process" of proposing new microformats. I hope to write again in a few days.