Templater
Everytime I start a new template, I look up some old files and copy stuff from there. And everytime I think I should finally generate a zip file containing all basic files and folders (HTML, CSS, JavaScript).
This time I did, and the result is Templater, which even allows some customization based on the current project. Check it out!
Mac, Apache and Virtual Hosts
And another round of setting up a development environment on Mac OS X 10.5 or 10.6 ...
You can think of Virtual hosts as of domains on your machine.
First, open /private/etc/hosts (yes, with no file ending). In there, add the following line at the very end: 127.0.0.1/[name-of-your-virtual-host]. You can choose any name you like (and which is a URI), though I would recommend using something like myproject.local.
Then, open /private/etc/apache2/extra/httpd-vhosts.conf. At the end, insert:
<VirtualHost *:80>
DocumentRoot "/Users/[your-username]/Sites/[your-folder]"
ServerName [name-of-your-virtual-host]
</VirtualHost>
Make sure [name-of-your-host] is the same as the one you entered in the hosts-file.
Finally, open /private/etc/apache2/httpd.conf and uncomment the following line:
#Include /private/etc/apache2/extra/httpd-vhosts.conf
sudo apachectl restart and you're done.
Mac, Apache and PHP 5.3
Okay, I should have written this post before writing about the symlinks problem, but anyway ... Here is how to use PHP 5.3 on Mac OS X 10.5 or 10.6 with the default Apache.
First, check if Web Sharing is enabled in System Preferences. If it is, Apache should be running and accessing http://127.0.0.1/~[your-username]/ should give you Apples default index.html, located in /Users/[your-username]/Sites.
So far so good, let's turn on PHP 5.3.
If you are on Leopard (10.5), you need to get PHP 5.3 first. I recommend downloading http://www.entropy.ch/software/macosx/php/, because it's really easy to install.
If you are on Snow Leopad (10.6), you already have PHP 5.3! But, you need to enable it. Open /private/etc/apache2/httpd.conf and uncomment the line #LoadModule php5_module libexec/apache2/libphp5.so.
Now, restart Apache with sudo apachectl restart, and all PHP files in your Sites-folder should be processed by Apache!
Mac, Apache and Symlinks
Recently, TYPO3 caught my attention again. I thought I would abandon this CMS forever, but there seems to be amazing stuff going on behind the scenes at the moment. Especially FLOW3, the new underlying framework sounds really interesting and I'm looking forward to work with it!
As part of this, I also wanted to try out TYPO3 4.3RC1 which was released the other day. After downloading and configuring it, I opened the installer in the browser. Result: 403 Forbidden.
Pretty quickly I discovered the problems were caused by the symlinks: Apache didn't follow them. At this point, is important to know that I switched my webserver environment from MAMP to the one installed on Snow Leopard by default, because I needed to have PHP 5.3 to play with FLOW3 (getting this to work is another story, but there are some good tutorials on the internet).
A quick look into httpd.conf (which is located in /private/etc/apache2) revelealed that symlinks were enabled. What did I miss? After some googling, I found out there is another config file specific to the user (in my case /private/etc/apache2/users/michael.conf). In there is another setting which didn't have symlinks enabled and overrides the one in the general httpd.conf.
Changing this to Options FollowSymLinks solved the problem for me.
Down under
Just a short note that I'm currently in Australia for an internship during my fifth term. Updates about life and work here can be found on michaelsauter.net/de/australia (for those of you who know german ...). This blog will take a break until next year ... see you then!
As this whole HTML 5 / XHTML thing can be quite confusing, here is a great article from Adactio who helped me see things more clearly: „Misunderstanding markup“.
There has been a lot of talk about HTML 5 recently. On the contrary, XHTML 2 is finally dead as of today. So, what to do with HTML 5? Praegnanz.de has a great article which sums it up pretty well. There's a good chance my next project will be done in HTML 5.
In other news, a couple of months ago, I stumbled upon the Drupal 7 User Experience Project. There is a lot of discussion going on and the website shows some of the really interesting results. I really recommend to at least skim through the last blog entries, especially the one about designing accessibility into themes (also available as a PDF).
Lenovo and keyboard layout
I just read an article at Spiegel Online (unfortnately, it's in german only) which talks about Lenovo's decision to enlarge the ESC and DELETE keys.
Actually, I can' believe this is really true. According to the article, they tested the new keyboard with 30 (!) persons and came to the result that it would be great to make those two keys larger. In my opinion, the DELETE key is really used very often (that's why it's already quite large on my Macbook Pro keybaord), but the ESC key? That's one of those keys I wouldn't miss if it wasn't there ...
Random notes
- Our semester project is coming along nicely ... see our test website.
- I really enjoy using Safari 4. It's just so much faster ... incredible. And Top Sites and the History Coverflow is quite useful, too.
- Already looking forward to Snow Leopard!
- Had a great weekend in Rome and Venice (and only lost my sunglasses :)). Pictures are available in my gallery.
- Only three weeks left till the end of my fourth term. After that, no more programming at university, which is both bad (no more ActionScript) and great (JSP is really cumbersome)
- Some band news: This Beautiful Mess uploaded some new songs at myspace and Anderson is quite nice, too.
In the last three days, 19 students and 2 teachers worked 28 hours each. This is our result:


This is an AIR application (with two screens, the second image shows just the main screen, there is a setting screen on the laptop on the first image with a cool intro, too). A camera above the big screen creates a landscape with land (the black sand on the screen) and sea. Inside the sea, the application creates food and creatures with different properties. The creatures move to the food and eat it. They get older and die finally ...
It's really much of what was planned ... but unfortunately we didn't have enough time to make everything work so that all written code would be executed (like creating children from two parent creatures ... and mixing their properties!)