MIDI Programs

Other Programs

Cocoa Sample Programs

Algorithms

A blog where I will write mostly about programming in Cocoa, Carbon, and CoreMIDI, and experiences from my ports of Emacs and XEmacs to Mac OS X.

Dynamic DNS

Wednesday April 6, 2005

This blog you’re reading under my new domain name sixthhappiness.ca is hosted at my ISP Shaw Cable. I like not having to worry about availability myself, especially for my new web site for MyJazzBand. But I’d also like to run my own Linux server at home at the same time, because (1) web hosting at my ISP provides very few features (it doesn’t give you a Unix account, e.g.), and (2) the bandwidth limit for the web space is much less than my up/downstream transfer quota. Since my Linux server’s IP address is assigned dynamically, I need to use a Dynamic DNS so people can address it by a (symbolic) Internet host name.

The whole thing is really quite easy to set up. Here’s what I did. First I have to make sure that my Linux server is indeed being assigned an IP address dynamically (by DHCP, from my ISP). Then, I signed up with DynDNS.org and add a dynamic DNS entry through their web interface. On the server I set up a dynamic DNS update client to run as daemon, and I made sure it’s started at boot time. That’s all one needs to do! Here’s a test page on my server.

A few more details. There’re a number of update clients one can use on Linux. I use one called INADYN. It’s the one listed at DynDNS.org with highest user ranking that includes source code. It was quite easy to use. Adding INADYN as a “system service” to /etc/init.d on the server is also interesting. The Fedora distribution uses chkconfig, which means the start/stop script needs to include a couple of comments to be compatible with chkconfig and the GUI configuration program system-config-services. Anyway this information is readily available from man pages. Of course it also helps to look at existing scripts for other system services.

Browser Differences in CSS Handling

Tuesday April 5, 2005

It’s occurred to me that I should test my MyJazzBand page with difference browsers to make sure they display it properly. To my dismay, I found that Internet Explorer 5 and 6 really messed up its layout. What was I doing wrong? Then I looked around a little on the Internet and found loads of websites with IE5 and IE6 CSS bug lists. Oh. Spent the rest of the day fixing and testing my CSS code. Now my page (link above) works with all the web browsers I can test them on.

I won’t go into the details of the bugs I fixed. Since there’re so many bugs, I’m almost certain you’ll encounter different ones. I fixed a problem related to inaccuracy of measurements, one related to displaying a background image at the bottom of BODY, and one related to “quirk mode” which IE6 will enter if the proper DOCTYPE is not given. Anyway in a case like this Google is your friend.

The lesson I’ve learned today is if I’m to design a web page with CSS again, I’ll start testing earlier on with different browsers while I was trying out different design elements and while my test pages were simpler.

The MyJazzBand Web Site!

Monday April 4, 2005

I've finally finished polishing the web site I’ve been creating for MyJazzBand. I’ve combined many of the things I learned about CSS and spent lots of time revising the user manual, preparing screen shots, and generally making the thing “look right”. I suppose it’s quite easy to throw together a few web pages and a user manual but getting it to a quality one can be happy with still takes a little hard work.

A new trick I learned is to make browsers open a new window to display the online manual with JavaScript. MyJazzBand’s HTML manual was constructed in such a way that it can be used both as an online manual and an Apple help book. The JavaScript code also opens a the window of about the same size as the one used by Apple Help. In any case the code can be examined by viewing the source of the MyJazzBand index page.

April 2005
Sun Mon Tue Wed Thu Fri Sat
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Mar  May

xml

Lists

Misc