[an error occurred while processing this directive] 116 [an error occurred while processing this directive] 118 .shtml">
5 week road tour which begins in less than a week. While I thought that it should be a simple matter to draw comics for June and a number of buffer comics to upload during the trip, that clearly hasn't been able to happen with how much work preparing for the trip has been. Indeed, I had a 3 comic buffer going into June which is the only reason I was able to most much of anything this month. Unfortunately I don't know if I'm going to be able to get any comic drawn between now and when I leave (there is a LOT to get done before I head out). As such, I'm going to have to put the comic on a bit of a hiatus. Basically, updates will stop until I return (around August 10th), at which point they should resume at their regularly erratic pace.

In a lame attempt to make up for this, I'm going to work hard on making the trip blog as interesting as possible so as to hopefully provide you with some enjoyment over the summer. I will also suggest that you may want to take this time to read through the archives (and maybe even rate some of the comics between before number 100, few of which have enough ratings to be listed in the top rated list). The archive has almost two years worth of material now, so hopefully some of it is long enough forgotten that you may get a new laugh out of it.

Again, I want to thank you all for your patience in putting up with all the missed updates over the last few months. I hope you all have good summers, and I'll see you again in August. [an error occurred while processing this directive] 6/15/08 [an error occurred while processing this directive] A lot to report on today, so apologies for the length of this, but hopefully at least some of it will be of interest to you. First, a bunch of stuff happened (see below), and I didn't get the two parter done, so instead here's another comic that I already had done, with the two parter coming next week.

So what happened? Well, I'm going on a road tour this summer. This means untold amounts of preparation. It also means good news and bad news for all of you. The bad news is that while I am out, updates will be somewhat irregular, as I won't know exactly when I'll have internet access. I'll draw up some comics before I leave and try to update about once a week, but I can't make promises as to exactly when I'll be able to. The good news is that I get to announce the launching of my new site, the Physics Factory Tour Blog. Here I will chronicle the trip with (with fancy Google Maps integration) so you can all keep up to date with my travels. Hopefully the blog will help you deal with any lack of content on this site while I'm on the trip.

Today's comic is about a topic that I've been dealing with a lot lately. Getting Google maps to work on my blog required me to learn javascript. While it's not so bad, and having ample experience in other object oriented languages helped immensely, little syntax minutiae and an unfamiliar variable scope system left me scratching my head (or, more accurately, banging it against the wall) on multiple occasions. The code in today's comic also comes from a project that I'm currently working on for giving detailed analysis of one's listening habits through an imported iTunes library file. The code in question is a self written comb sort function, with an output function below it. In case you're wondering why I'm writing my own sorting code rather than just using the language's built in sorting method, the reason is that I need more control over the handling of numbers and special characters than those provide. As for why a comb sort instead of something that's stable and quicker, that one comes down to the fact that comb sorts are just dang easy to code, and the not needing more than one more element's worth of extra memory during the sort makes Java happy.

So, with today's segment of "Learning More About the Comic You Just Read Than You Ever Wanted to Know" over, I can now turn to our final programming related topic of the day. Reader hans has sent me via email (after trying unsuccessfully to post it in the comments thread) some Java code to draw a Sierpinski triangle. I myself had attemped such code, trying to trace out the triangle in the same way as in the comic (though only to a finite level of course) but I gave up trying to make recursive methods that knew whether or not to turn left or right at a given juncture (if anyone has ideas, please let me know). Hans's code instead uses the relationship between the Sierpinski triangle and Pascal's triangle (about halfway down the page) to individually color pixels. I must say my favorite part of it is that it uses straight Boolean logic. I've uploaded the code for those that wish to see it. [an error occurred while processing this directive] 6/8/08 [an error occurred while processing this directive] I'm not sure how clear today's comic is or not. I've been toying with this idea for months trying to get something that would work, and hopefully this does. It may help to know how the triangle is actually drawn in the above comic. As such, below are drawings for the first 4 levels. The lines are (hopefully) not touching so you can see which way to turn at each juncture. It's essentially the right hand rule for maze solving, and the comic of course takes it to its limit of an infinite level triangle.

Apologies for the lateness in getting this comic up. My internet access "solution" has been having issues, so I wasn't able to upload this on time. The good news is that I got finally got sick of waiting on Cox, so I've closed my account with them. They seem to have absolutely no Loss and Retention department, and made no attempt to try to keep me as a customer, which just goes to show you just how little they care. I'll be getting new service with Qwest (the only other broadband internet provider in the whole of Tucson) starting Thursday. What this means for you is that I should never again have to miss or be late on updates due to internet access problems. Huzzah!

I also want to thank you all for being such fantastic readers. I asked last update for you guys to rate the comics, and boy have you. Keep it up and I'll keep making the comics (this isn't a threat or bribe, but rather the natural course of things; active readership inspires me to work on the comic). Due to the craziness of an internet connection that barely exists and a few other things, I'm going to skip this Wednesday, instead having the next update on Sunday. It'll be part one of a two parter which will conclude on the following Wednesday.