Welcome to your monthly post from Matt Nichols, a man with very little free time. The topic of this post is a piece of software I have recently found, which is just too cool to be omitted from anyone’s technically oriented blog, especially mine.
This software of note is HTML Tidy (online version here). This software not only is capable of finding errors in your HTML code, but also extirpating excessive sloppiness in the code. While I may not make that many errors in my coding (I test extensively), I am rather sloppy with popularly accepted (W3, cough, cough) conventions (being doctype declarations, etc).
As I am starting to be commissioned as a web developer (I have gotten a few jobs building sites for people), I have decided that it might be a good idea to clean up my act, if you will. So, I could either go through the painful and tedious process of learning the aforementioned conventions and putting them to use in every single file, or I could try to find something to do it for me. Deus ex machina: HTML Tidy!
Anyway, this will save me an ample amount time and probably make someone happy (or at least the average web browser). I just thought you should know about it.
I have recently spent some time redesigning the home page of MattNichols.net, the primary reason that you have not seen any posts around here for awhile. As you can see if you visit my home page, it is quite different from how it used to be. It now has several more links than it used to, organized into categories. I have three sites (this blog, Singularity Software, and Nautilus Web Design), and two media pages (gallery and video). The new site also has a nice new feature, the ability to list files (in two categories: code and documents) which I want to make visible on my home page. I did this with PHP, writing code that allows me to just drop the files in two directories (code/ and documents/) and they will automatically be listed on the home page. I am very happy and satisfied with how this works.
In working on the layout yesterday, I continued to learn about cross-browser compatibility. Internet Explorer is such a pain in the neck to deal with! Not only does it refuse to recognize some of the more common CSS position tags, but releases earlier than 7.0 do not render PNG transparency! The former I managed to deal with (so my hit counter appears fixed at the bottom right in both IE and other, more intelligent browsers), but the latter I left alone. I considered using GIFs, but they can’t antialias into transparency, which is a valuable feature for my site. So the site looks terrible to those who haven’t updated to the most recent version of Internet Explorer, but it is worth it for the rest, to whom it looks great.
I also recently learned how to preload images using JavaScript, so you don’t have to wait around for the link images to change when you scroll over. Very nice.
Browsing to my software website (call it my “company”, if you will) today, I noticed that my hit counter had reached 1,001! This means that over 1,000 people have visited Singularity Software! (check it out)
But you may ask, as did my mom, what does this mean to me? This is an important milestone only in that it shows the magnitude (paltry compared to some, but seemingly large to me) of my presence on the internet. Since the launch of Singularity Software, over 1,000 people have visited, over 1,000 people have seen who I am on my coding side, and over 1,000 people have had the option to put to use that which I spend so much time and thought upon: my software creations. I greatly value this part of my life, and it is of great importance to me that others have had the opportunity to appreciate that as well.
Upon visiting Singularity, one may notice that nothing has happened there in ages. It has remained fairly static for the last 5+ months. By way of reason and excuse, I present the fact that not only was I beginning to be greatly overwhelmed with school (a.k.a. AP classes) about five months ago, but that was also about when I switched to using Linux (upon which REALbasic, my old language, does not work that well). Thus, I have had neither time nor means to pursue my most prevalent hobby, but I will now alert you that the time when I have both is readily approaching. My self-education in Python is nearing a usable point, and I am building up a sea of coding project ideas. So stay alert and watchful: my code may soon again be appearing on the web!
I recently decided that my blog’s name and description were too difficult to read on top of the majority of the images I had randomly cycling through my header. With great reluctance, I modified my theme to display only one image, all the time, the one upon which the aforementioned information was easiest to see. For those interested, and for my own aesthetic sense of history, I have posted the images I am no longer using below.




As a follow up on my last post, I write this to notify the world that I have found a WordPress theme that suits my fancy in almost every conceivable way. The default configuration looks very nice, though it is designed quite intelligently so that I can easily modify it to look any other way I please. It took me three minutes to accomplish what I had tried to do (and failed to do) for an hour with kubrick: change the header image. I am quite satisfied, and I suggest that you pick up a copy of K2 (at www.getk2.com) if you are at all interested.
I have been recently possessed with discontent regarding the look and feel of my blog. The theme I previously had going, the WordPress default, looked nice and all, but it was not original; it was not mine. I spent an hour or so today questing to modify it to the extent that it looked how I wanted it to look, but failed utterly. I decided that the proper path to follow was to find a theme that looked nice already, and modify it as I wished. Well, I come to report, there are not that many themes I like out there. I installed many, putting them to the aesthetics and overall workability test, and have as of yet not succeeded in finding one that suits my taste. I am changing so rapidly that the theme will probably differ between when I write this and when you read it, but keep in mind, I am working to make this blog appear more original!
I have just recently located K2, a sequel to kubrick (the WordPress default) and it looks pretty good so far. Soon I will test it for flexibility in modification, and if that looks good, I may keep it. Though on my own terms, of course.
CSS, or Cascading Style Sheets, is an excellent tool for globally formatting web pages, but I have also found that it allows the web designer to do many things that are impossible with mere HTML. Centering an object in the exact middle of any size page is an example of this. I don’t think this is possible with HTML, but I found a way to easily do it in CSS, as follows.
#division {
height: 300px; /* the division’s height is 300 pixels */
width: 500px; /* the division’s width is 500 pixels */
position: absolute; /* setting it as an independent element */
margin: -150px 0px 0px -250px; /* top right bottom left, as you can see we are offsetting it by half in left and top */
left: 50%; /* now we move the offset division over to 50% of the page, centering it */
top: 50%; /* doing the same as above for the height */
}
The above CSS code will center any divisions tagged with the id “division” in the exact middle of the page. I recently used this trick while redesigning my home page, www.mattnichols.net, and the effect is quite satisfactory. You can use the same kind of idea to align objects as you wish; I used another, slightly modified version of this code to place my hit counter constantly in the lower right hand corner of my aforementioned home page. This offers many possibilities, and I hope you can make use of some of them.