The distcc with MSVC project started last summer and as of today (and the fixing of bug 374563) we are glad to announce that we are able to distribute (non-debug) windows builds of Mozilla. This has been the only thing that has kept us from releasing the beta 01. Since it turns out that the bug is really in Mozilla (well… really in MSVC, but it’s simpler to change Moz’s code than MSVCs) there is no real difference between

This project started in early August ‘06 when Vlad said he wanted distcc to work MSVC. I had heard of distcc being used for gentoo but didn’t think of applying it to Windows and Mozilla. Cesar and I started with some pretty optimistic ideas about how long and hard we’ll be working!

But, with the relase of beta 01, this leg of the journey is coming to a close. We’ve been able to compile moz with distcc and msvc (information is going up on the wiki as I type this).

As always, you can get the source at svn://cdot.senecac.on.ca/distcc/branches/beta01. However this time we’re also offering windows binaries!

add to:
 
20. March 2007, 12:39 o'clock

Last Friday, I was invited to participate in a panel at conference on applied research in Colleges held at OISE/UT. I was very glad to participate and give them the “student perspective”, having worked on a number of applied research projects. However, it was a little awkward: I seemed to be the only there with any kind of technical background! It was really weird trying to talk about what I learned and my experiance without really being able to touch on the wonderfully exciting technical things I learned! After all, that’s the cool part.

Speaking to people from the humanities forced me both to speak their language (human?) and think in different terms (!technical). The number one thing that I’ve gained from working on these projects is the confidence of knowing that I can develop software. Working on these projects has also helped me to apply the knowledge I learned in school to actual user needs. Not to mention that it gave me a chance to work with professional developers.

Seneca’s work in open source also means that many of their applied research projects give students a chance to be a part of the Open Source community. I can honestly say that I’ve known (either particpated in or know people who have) almost half a dozen  different applied research projects - all of them have used some kind of open source product as part of their work (either an open source framework, langauge, or major application was part of their work). While not all students and projects throw students into open source culture, the opportunity is there for anyone who wants to be a part of it.

While not everyone can always be a part of applied research projects, every student
can benefit from that kind of experiance. So what can they do?

Open Source is a wonderful opportunity to be part of community of professional developers while at the same time developing technical skills. At Seneca, we run Club Moz a great club where students can get together to work on Open Source projects!

add to:
 
14. March 2007, 09:18 o'clock

I haven’t been blogging for a while. This may make it seem like distcc has been stagnant, but that couldn’t be further from the truth.

A major thing worth mentioning is that we’re now at alpha 2. You can get this code at svn://cdot.senecac.on.ca/branches/alpha02. We also have a branch that is working on mingw compatibility (available at svn://cdot.senecac.on.ca/branches/mingwcompatible).

I think alpha 2 is probably the most important accomplishment. It has dealt with a whole bunch of issues, mainly centred around dealing with unix/windows path issues. It also added support for cl -I option which didn’t work with unix paths properly (before). However we’ve hit some issues trying to build Mozilla. We are able to distribute the compilation but the linking fails. Let me reiterate that: We are able to distribute the compiles just fine! We have some weird misconfiguration that prevents linking. Cesar (with help) is now testing other apps whether we definitely work.

Our next steps will be:

  1. Ensuring that our code definitely works (If we don’t find any real issues with alpha 2 then we’ll move it into beta make a big push to find testers and then release it).
  2. MinGW port. MinGW offers a great alternative to Cygwin and we’re going to try to take advantage of that by making the distcc code build under mingw. Right now the mingwcompatible branch is really unstable (won’t build). The big change in this branch will be the use of libtool for linking with winsock.
add to:
 
27. February 2007, 21:43 o'clock

Changed my Binary blue scheme after some “criticism” of it. I torn between this them and the black scheme. Hmm…  maybe I’ll make my own scheme? Nah… no time.

add to:
 
23. January 2007, 15:37 o'clock

I rarely use the word orgy (sigh) but I feel confident that that I was correct in calling Club Moz’s first hack day an orgy of success. With over 20 people attending we were a little overwhelmed. Luckily Phil, Vanessa, and Ben did a great job getting people introduced to Moz (while I ran around trying to make sure that people were moving in more or less the same direction). We invite everyone to attend our Hack Days and get involved.

One of the issues that we faced is making it possible for everyone to be able to work on code on a relatively large scale. The problem is that, despite everything David has done, our lab machines aren’t a great Moz build environment. (Not that everyone has to work on the Mozilla code directly, there’s lots of great stuff to do in extensions, python, and web dev - these links are just examples of one of each check out the full project list. But I digress…) Step in Ben Smedberg and MozillaBuild which creates a perfectly set up Windows build environment without having to install anything else. While Ben distributes Mozillabuild as an exe (which might have caused problems considering the Byzantine setups that the desktops here have) Dave gave us a zipped copy of it using the “the ultimate networking tool“.

This sounds, and is, great. However, when we tried to checkout the moz tree and build it we hit an error. The file basically said we can’t copy mozilla/config/nsStaticComponents.h to objdir/dist/include (if I remember correctly). Cesar and I poked around the net a bit. We fooled around with umask. We check whether we definitly owned the file/parent dir. We were stumped. Then I suggested we try an idiotic innovative solution of running chmod -R u+r on the source root and objdir. It worked. I don’t know why (I still think that chmod should have failed) but the build seems to be going fine.

Looks like Hack Days will be all right. [Edit: the build did work]

add to:
 
23. January 2007, 15:16 o'clock

Naturally, one of the top goals for Cesar and myself has been doing a distributed Windows MSVC build with distcc. Our alpha release which was so good at compiling “simple” apps seems to die on Moz.

The build dies on mozilla/nsprpub/config/now.c . Distcc claims that the compiler died with exit code 2. However distccd’s logs say that cl exited with exit code 0. We’ll be looking into this more closely over the next few days.

For those interested, here is the distcc alpha01 failed moz build log, distccd alpha01 failed moz build log, and the Mozilla Build log for failed build (distcc alpha01) log.

add to:
 
10. January 2007, 13:56 o'clock

I’m a incredibly proud to announce that as of now there is a version of distcc which works with Microsoft’s Visual C (and C++) Compiler cl. We’re calling this an alpha release and hoping that people will let us know if there’s anything they need fixed.

To get the alpha all you need to do is download it from svn://cdot.senecac.on.ca/distcc/branches/alpha01. Run ./configure, make, and make install. Remember that cygwin is a prerequisite.

After you have distcc installed (on your client(s) and server(s)) you need to start your daemons. Just run distccd –daemon –allow 1.2.3.4 (or whatever your client’s addresss is). Alternatively you can run distccd with an ip mask to allow multiple clients to connect: distccd –daemon –allow 192.168.0.0/24. This needs to be done on every daemon, or slave, box.

Finally you need to compile something! For distcc to know where the daemons are you need to export an enviornment variable called “DISTCC_CL_HOSTS” and give it the ip addresses of the hosts which can run MSVC jobs seperated by whitespace. When using msvc distcc does not consider the .distcc file at all. From the command line distcc is run like this:

distcc cl /c /Fofileone.obj file.c

Masquerade mode defaults to gcc settings and if you are using an executable name other than “cl” or “cl.exe” than distcc will default gcc. This is done to ensure that no functionality is lost for current users.

Please report any issues to distccbugs@foobartastic.com.

Cesar and I are now going to work on making sure that distcc with msvc works for Mozilla and porting unit tests to ensure that cl users have all the distcc functionality that gcc users do. For details on our plans check http://zenit.senecac.on.ca/wiki/index.php/Distcc_with_MSVC

add to:
 
9. January 2007, 20:00 o'clock

I’ve changed the look of the site (again). I got tired of the dark/grey look and wanted something brighter. Thanks to Count Zero for making the wonderful Binary Blue theme.

Now to the untrained eye this theme is just a theme. If one looks closely this theme is not just a theme but is a theme framework. This both really cool and kind of sad.

The really cool part is that this theme does do a lot. It’s ajax based does fancy stuff like inline comments. It also “degrade[s] automatically and gracefully if a visitor with a non-javascript browser visits the blog”. Furthermore this theme comes with full localization support! This really suprised me, esspecially when I installed it and it came out in German! My first thought, due to a healthy obsession with Fawlty Towers, was “I can fix this just nobody mention the war“. I finally thought of reading the readme and it reminded me to set the localization for Wordpress instead of trying to translate the entire theme by hand inside the code. On the other hand it seems kind of pathetic and sad to write an extensible framework on top of another extensible framework (I appreciate the added functionality but… how many extensible frameworks is there room for?).

add to:
 
23. December 2006, 10:21 o'clock

<meta content="OpenOffice.org 2.0 (Linux)" name="GENERATOR" /><meta content="20061221;23042300" name="CREATED" /><meta content="16010101;0" name="CHANGED" /><style type="text/css"> </style></p> <p>I wanted to mention a few words the Autoconf. Autoconf generates that wonderful configure script which tells you whether you have all the things required the application you’re trying to compile (or not). Configure scripts also build Makefiles out of either Makefile.in or Makefile.am files. This is great because it lets you compile projects differently for different systems (Oh, Lord how I dream of a world with real, transparent, and consistent platform independence but I digress).</p> <p>When the uninitiated (that’s me) start wanting to fool around with they notice two things:</p> <ol> <li>Configure.ac is weird… really weird.</li> <li>Makefile.in has these weird @things@ which seem to magically get replaced with stuff by (presumably configure) and boy wouldn’t it be great if I could do that.</li> </ol> <p>I faced three options on how to learn about autoconf: a) check if someone wrote info on how to do what I need to do online b) read the <a href='http://foobartastic.com/redirect.php?url=sources.redhat.com%2Fautobook%2F' rel="nofollow">book</a> (I’ll probably do that later) c) see if someone will tell me the little parts that I Need To Know and I’ll figure out the rest later.</p> <p>A stab at option a) taught me that the configure.ac file is made of up <a href='http://foobartastic.com/redirect.php?url=en.wikipedia.org%2Fwiki%2FGNU_m4' rel="nofollow">macros</a>, which is a part of why it’s so weird. However I couldn’t find a place that would tell me only what I needed to know to modify an existing configure.ac. So I switched paths.<br /> Following option c) I chatted with <a href='http://foobartastic.com/redirect.php?url=quotes.burntelectrons.org%2Fsearch%3Fquery%3Dluser' rel="nofollow">Luser</a> of the <a href='http://foobartastic.com/redirect.php?url=irc.mozilla.org' rel="nofollow">wonderful mozilla irc community</a> who told me how to make more of those magical @things@. After learning that I figured out two more useful things. making a total of Three Things You Need To Know To Modify configure.ac Files:</p> <ol> <li>Use the AC_SUBST(var) macro to make more of those magical @things@ in a Makefile.in. What happens is that the name of the variable you put in to the macro (e.g. foo) is will create a magical @thing@ (e.g. @foo@). The vaule of foo during the running of ./configure will determine the value with which @foo@ will be replaces. Note: is like a preprocessor replacing #define’s so no changing the value of @foo@ when your Makefile runs. That’s why most Makefiles assign @constant@ values to variables at the beginning of the scripts.</li> <li>You may want to inform the user of what you’re checking for, to do this use the AC_MSG_CHECKING([what I’m checking for]) macro. The message, in square brackets not quotes, is what’ll appear to the user (you know that load of “Checking for foo…” lines? That’s how they show up. For an explanation of why square brackets not quotes please check <a href='http://foobartastic.com/redirect.php?url=sources.redhat.com%2Fautobook%2F' rel="nofollow">The Goat/Autoconf Book</a> as I no intention of investigating right now</li> <li>To report results of something you’ve checked for use the AC_MSG_RESULT($var) macro. Where the $var is the var is the variable holding the result which you wish to let the user know about and $var is the result itself.</li> </ol> <p>Finally, remember to run autoconf (no arguments) to generate a configure script from the configure.ac script. Good luck! </p> <div class="itemFooter"><em>add to:</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=del.icio.us%2Fpost%3Furl%3Dwww.foobartastic.com%2F2006%2F12%2F21%2Fautoconf-and-makefiles%2F%26amp%3Btitle%3DAutoconf%2Band%2BMakefiles' title="Del.icio.us" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/delicious.png" title="Del.icio.us" alt="Del.icio.us" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=digg.com%2Fsubmit%3Fphase%3D2%26amp%3Burl%3Dwww.foobartastic.com%2F2006%2F12%2F21%2Fautoconf-and-makefiles%2F%26amp%3Btitle%3DAutoconf%2Band%2BMakefiles' title="digg" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/digg.png" title="digg" alt="digg" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=furl.net%2FstoreIt.jsp%3Ft%3DAutoconf%2Band%2BMakefiles%26amp%3Bu%3Dwww.foobartastic.com%2F2006%2F12%2F21%2Fautoconf-and-makefiles%2F' title="FURL" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/furl.png" title="FURL" alt="FURL" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=reddit.com%2Fsubmit%3Furl%3Dwww.foobartastic.com%2F2006%2F12%2F21%2Fautoconf-and-makefiles%2F%26amp%3Btitle%3DAutoconf%2Band%2BMakefiles' title="reddit" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/reddit.png" title="reddit" alt="reddit" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=www.technorati.com%2Ffaves%3Fadd%3Dwww.foobartastic.com%2F2006%2F12%2F21%2Fautoconf-and-makefiles%2F' title="Technorati" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/technorati.png" title="Technorati" alt="Technorati" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=www.slashdot.org%2Fsubmit.pl' title="Slashdot" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/" title="Slashdot" alt="Slashdot" /></a> </div> </div> <span class="clear"> </span> <div class="itemFooter"> <span> 21. December 2006, 20:07 o'clock </span> </div> <div class="commentFooter"> <div class="leftFloat"><a href="http://www.foobartastic.com/category/posts/" title="View all posts in Posts" rel="category tag">Posts</a>, <a href="http://www.foobartastic.com/category/nix/" title="View all posts in *nix" rel="category tag">*nix</a>, <a href="http://www.foobartastic.com/category/distcc/" title="View all posts in distcc" rel="category tag">distcc</a></div> <div class="rightFloat"> <a href="http://www.foobartastic.com/2006/12/21/autoconf-and-makefiles/" title="Comment on Autoconf and Makefiles">Post a comment</a> </div> </div> <div id="c43" class="inlineCommentList" style="display: none;"></div> </div> <div class="clear"></div> <div id="post-42" class="chapter"> <div class="chapterH1"> <h1> <a href="http://www.foobartastic.com/2006/11/26/software-developers/" rel="bookmark">Software Developers</a> </h1> </div> <div class="entry" id="e42"> <p>I’m in 3rd year BSD, started January 2005, and I swear no one in my immediate family still knows exactly what I do.</p> <p>No offense to them. I love my family, and extended family. I just think that sometimes they forget what software developers are. I am sure, however, that this is a common misconception to anyone computer illiterate 35 and up. I am slightly surprised when my cousin of 24+ (sorry Joana) years makes this mistake.</p> <p>They (being anyone) will bring a broken computer to me, or somehow bring to attention, that their computer isn’t working. Now this can be a software issue, or a hardware issue. When it’s the former, I can just reinstall windows and go back to work(ingish). When it’s the latter, there is really nothing I can do.</p> <p>I am a software developer, not a technician. Although similar, software developers make your computer work. Technicians fix then for $50 an hour after you break it. Software developers make lousy technicians (”Beware of Programmers who carry screwdrivers.” — Unknown). Technicians make even worse developers.</p> <p>Quite often, when someone asks me what I’m doing these days, the conversation ends up something like this, whether they are my doctor or barber :</p> <blockquote><p>Human : So what are you doing now?<br /> Me : I’m in college.<br /> Human : Oh. What program are you in?<br /> Me : Bachelor of Software Development<br /> Human : <em>huh?</em><br /> Me : Bachelor of Software Development<br /> Human : Oh. That’s computers. I don’t like computers.</p></blockquote> <p>So please, ladies and gentlemen. Don’t hate me because I work with computers. Don’t consult my expertise when your hard drive fails, or your CPU fan stops working. I’m out of my comfort zone.</p> <p>Note : Now that I think about it, I will be ecstatic if someone said “Hey Cesar, do you know a program that does <em>this</em> or <em>that</em>?”. </p> <div class="itemFooter"><em>add to:</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=del.icio.us%2Fpost%3Furl%3Dwww.foobartastic.com%2F2006%2F11%2F26%2Fsoftware-developers%2F%26amp%3Btitle%3DSoftware%2BDevelopers' title="Del.icio.us" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/delicious.png" title="Del.icio.us" alt="Del.icio.us" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=digg.com%2Fsubmit%3Fphase%3D2%26amp%3Burl%3Dwww.foobartastic.com%2F2006%2F11%2F26%2Fsoftware-developers%2F%26amp%3Btitle%3DSoftware%2BDevelopers' title="digg" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/digg.png" title="digg" alt="digg" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=furl.net%2FstoreIt.jsp%3Ft%3DSoftware%2BDevelopers%26amp%3Bu%3Dwww.foobartastic.com%2F2006%2F11%2F26%2Fsoftware-developers%2F' title="FURL" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/furl.png" title="FURL" alt="FURL" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=reddit.com%2Fsubmit%3Furl%3Dwww.foobartastic.com%2F2006%2F11%2F26%2Fsoftware-developers%2F%26amp%3Btitle%3DSoftware%2BDevelopers' title="reddit" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/reddit.png" title="reddit" alt="reddit" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=www.technorati.com%2Ffaves%3Fadd%3Dwww.foobartastic.com%2F2006%2F11%2F26%2Fsoftware-developers%2F' title="Technorati" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/technorati.png" title="Technorati" alt="Technorati" /></a> <a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href='http://foobartastic.com/redirect.php?url=www.slashdot.org%2Fsubmit.pl' title="Slashdot" rel="nofollow"><img src="http://www.foobartastic.com/wp-content/plugins/social_bookmarks/" title="Slashdot" alt="Slashdot" /></a> </div> </div> <span class="clear"> </span> <div class="itemFooter"> <span> 26. November 2006, 21:15 o'clock </span> </div> <div class="commentFooter"> <div class="leftFloat"><a href="http://www.foobartastic.com/category/posts/" title="View all posts in Posts" rel="category tag">Posts</a></div> <div class="rightFloat"> <a href="http://www.foobartastic.com/2006/11/26/software-developers/" title="Comment on Software Developers">4 comments</a> (<a class="inlineCommentsLink" href="http://www.foobartastic.com/wp-content/themes/wp-binary-blue-101/single_comments.php?p=42">Show inline</a>) </div> </div> <div id="c42" class="inlineCommentList" style="display: none;"></div> </div> <div class="clear"></div> <hr class="hidden" /> <div class="navigation"> <div class="alignleft"><a href="http://www.foobartastic.com/page/2/">« Older articles</a></div> <div class="alignright"></div>   </div> </div> <div id="margin"> <hr class="hidden" /> <p class="hidden">Schnellnavigation: <a href="http://foobartastic.com/">Jump to start of page</a> | <a href="http://foobartastic.com/">Jump to posts</a> | <a href="http://foobartastic.com/">Jump to navigation</a></p> <hr class="hidden" /> <a name="sidebar" href="http://foobartastic.com/"></a> <div id="syndication" class="rubrik"> <h1>Syndication</h1> <ul id="syndicationlist"> <li> <img src="http://www.foobartastic.com/wp-content/themes/wp-binary-blue-101/images/xml.gif" width="26" height="10" alt="RDF feed in XML file format" title="RDF feed in XML file format" /> <strong>RDF:</strong> <a href="http://www.foobartastic.com/feed/rss/" title="RDF-Feed">Articles</a> </li> <li> <img src="http://www.foobartastic.com/wp-content/themes/wp-binary-blue-101/images/xml.gif" width="26" height="10" alt="RSS2 feed in XML file format" title="RSS2 feed in XML file format" /> <strong>RSS2:</strong> <a href="http://www.foobartastic.com/feed/" title="RSS2.0-Feed">Articles</a> </li> <li> <img src="http://www.foobartastic.com/wp-content/themes/wp-binary-blue-101/images/xml.gif" width="26" height="10" alt="ATOM feed in XML file format" title="ATOM feed in XML file format" /> <strong>ATOM:</strong> <a href="http://www.foobartastic.com/feed/atom/" title="Atom-Feed">Articles</a> </li> </ul> </div> <div id="archives" class="rubrik"> <h1><a href='http://foobartastic.com/redirect.php?url=javascript%3AToggleArchives%28%29' title="click here to open/close the archives box" rel="nofollow">Archives</a></h1> <ul id="archiveList"> <li><a href='http://www.foobartastic.com/2007/03/' title='March 2007'>March 2007</a></li> <li><a href='http://www.foobartastic.com/2007/02/' title='February 2007'>February 2007</a></li> <li><a href='http://www.foobartastic.com/2007/01/' title='January 2007'>January 2007</a></li> <li><a href='http://www.foobartastic.com/2006/12/' title='December 2006'>December 2006</a></li> <li><a href='http://www.foobartastic.com/2006/11/' title='November 2006'>November 2006</a></li> <li><a href='http://www.foobartastic.com/2006/10/' title='October 2006'>October 2006</a></li> <li><a href='http://www.foobartastic.com/2006/09/' title='September 2006'>September 2006</a></li> <li><a href='http://www.foobartastic.com/2006/08/' title='August 2006'>August 2006</a></li> <li><a href='http://www.foobartastic.com/2006/06/' title='June 2006'>June 2006</a></li> <li><a href='http://www.foobartastic.com/2006/05/' title='May 2006'>May 2006</a></li> <li><a href='http://www.foobartastic.com/2006/03/' title='March 2006'>March 2006</a></li> <li><a href='http://www.foobartastic.com/2006/02/' title='February 2006'>February 2006</a></li> <li><a href='http://www.foobartastic.com/2006/01/' title='January 2006'>January 2006</a></li> </ul> </div> <div id="categories" class="rubrik"> <h1><a href='http://foobartastic.com/redirect.php?url=javascript%3AToggleCategories%28%29' title="click here to open/close the category box" rel="nofollow">Categories</a></h1> <ul id="categoryList"> <li><a href="http://www.foobartastic.com/category/nix/" title="View all posts filed under *nix">*nix</a> (6) </li> <li><a href="http://www.foobartastic.com/category/db/" title="View all posts filed under DB">DB</a> (2) </li> <li><a href="http://www.foobartastic.com/category/distcc/" title="View all posts filed under distcc">distcc</a> (13) </li> <li><a href="http://www.foobartastic.com/category/java/" title="View all posts filed under Java">Java</a> (2) </li> <li><a href="http://www.foobartastic.com/category/joomla/" title="View all posts filed under Joomla">Joomla</a> (1) </li> <li><a href="http://www.foobartastic.com/category/mozilla/" title="View all posts filed under Mozilla">Mozilla</a> (11) </li> <li><a href="http://www.foobartastic.com/category/personal/" title="View all posts filed under Personal">Personal</a> (2) </li> <li><a href="http://www.foobartastic.com/category/posts/" title="View all posts filed under Posts">Posts</a> (39) </li> <li><a href="http://www.foobartastic.com/category/projects/" title="View all posts filed under Projects">Projects</a> (5) </li> <li><a href="http://www.foobartastic.com/category/site-maintenance/" title="View all posts filed under Site Maintenance">Site Maintenance</a> (1) </li> <li><a href="http://www.foobartastic.com/category/testing/" title="View all posts filed under Testing">Testing</a> (2) </li> <li><a href="http://www.foobartastic.com/category/ubuntu/" title="View all posts filed under Ubuntu">Ubuntu</a> (1) </li> <li><a href="http://www.foobartastic.com/category/web-dev/" title="Anything to do with web development">Web Dev</a> (8) </li> </ul> </div> <div id="calendar" class="calendar"> <table id="wp-calendar"> <caption>January 2008</caption> <thead> <tr> <th abbr="Monday" scope="col" title="Monday">M</th> <th abbr="Tuesday" scope="col" title="Tuesday">T</th> <th abbr="Wednesday" scope="col" title="Wednesday">W</th> <th abbr="Thursday" scope="col" title="Thursday">T</th> <th abbr="Friday" scope="col" title="Friday">F</th> <th abbr="Saturday" scope="col" title="Saturday">S</th> <th abbr="Sunday" scope="col" title="Sunday">S</th> </tr> </thead> <tfoot> <tr> <td abbr="March" colspan="3" id="prev"><a href="http://www.foobartastic.com/2007/03/" title="View posts for March 2007">« Mar</a></td> <td class="pad"> </td> <td colspan="3" id="next" class="pad"> </td> </tr> </tfoot> <tbody> <tr> <td colspan="1" class="pad"> </td><td>1</td><td id="today">2</td><td>3</td><td>4</td><td>5</td><td>6</td> </tr> <tr> <td>7</td><td>8</td><td>9</td><td>10</td><td>11</td><td>12</td><td>13</td> </tr> <tr> <td>14</td><td>15</td><td>16</td><td>17</td><td>18</td><td>19</td><td>20</td> </tr> <tr> <td>21</td><td>22</td><td>23</td><td>24</td><td>25</td><td>26</td><td>27</td> </tr> <tr> <td>28</td><td>29</td><td>30</td><td>31</td> <td class="pad" colspan="3"> </td> </tr> </tbody> </table> </div> <div id="searchBox" class="rubrik"> <h1>Search</h1> <div class="livesearchform"> <form onsubmit="return liveSearchSubmit()" id="searchform" name="searchform" method="get" action="/index.php"> <fieldset><legend class="hidden"><strong>search in archive</strong></legend> <p> <input type="text" id="livesearch" accesskey="s" name="s" value="Search" onkeypress="liveSearchStart()" onblur="setTimeout('closeResults()',2000); if (this.value == '') {this.value = 'Search';}" onfocus="if (this.value == 'Search') {this.value = '';}" /> <input type="submit" id="searchsubmit" style="display: none;" value="Search" /> </p> </fieldset> <div id="LSResult" style="display: none;"><div id="LSShadow"></div></div> </form> </div> </div> <hr class="hidden" /> <hr class="hidden" /> <div id="blogroll" class="rubrik"> <h1><a href='http://foobartastic.com/redirect.php?url=javascript%3AToggleBlogroll%28%29' title="click here to open/close the blogroll box" rel="nofollow">Blogroll</a></h1> <ul id="blogList"> <li><a href='http://foobartastic.com/redirect.php?url=scientits.net' rel="nofollow">Tasha (NWS)</a></li> <li><a href='http://foobartastic.com/redirect.php?url=shaver.off.net%2Fdiary%2F' rel="nofollow">Shaver</a></li> <li><a href='http://foobartastic.com/redirect.php?url=blog.vlad1.com%2F' rel="nofollow">Vlad</a></li> <li><a href='http://foobartastic.com/redirect.php?url=bhearsum.blogspot.com%2F' rel="nofollow">Bhearsum</a></li> </ul> </div> <div id="linkroll" class="rubrik"> <h1><a href='http://foobartastic.com/redirect.php?url=javascript%3AToggleLinkroll%28%29' title="click here to open/close the linkroll box" rel="nofollow">Linkroll</a></h1> <ul id="linkList"> </ul> </div> </div>   </div> <hr class="hidden" /> <p class="hidden">Schnellnavigation: <a href="http://foobartastic.com/">Jump to start of page</a> | <a href="http://foobartastic.com/">Jump to posts</a> | <a href="http://foobartastic.com/">Jump to navigation</a></p> <hr class="hidden" /> <div id="footer" class="center"> <p> <a href="http://foobartastic.com/">Foobartastic</a> is powered by <a href='http://foobartastic.com/redirect.php?url=wordpress.org' rel="nofollow">WordPress v2.0</a><br />and <a href='http://foobartastic.com/redirect.php?url=www.4null4.de%2Fwordpress-binary-blue-theme%2F' rel="nofollow">WP-Binary-Blue v1.0.1</a> (based on some code from <a href='http://foobartastic.com/redirect.php?url=getk2.com%2F' title="K2 Homepage" target="_blank" rel="nofollow">K2</a>) </p> </div> <div class="center"></div> </div> </div> </div> </div> <div class="hidden"> </div> </body> </html>