<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="index.xsl"?>

<page>

  
  <header>
    <title>ReneDeGroot.nl - A Homepage</title>
    <author>Rene&#233; de Groot</author>
    <header-paragraph>
    I would like to use this space to share and exhibit some the fun I had
    figuring stuff out and the resulting outcome.
    </header-paragraph>
  </header>

    <body-item>
    <body-title>UTF-8 encoding validation</body-title>
    <body-link>utf8validation.xml</body-link>
    <image-file>media/utf8validation.png</image-file>
    <body-paragraph>
I have noticed that too often texts are incorrectly encoded. Sometimes texts are falsely marked as encoded in UTF-8 and sometimes
random garbage bytes are included in texts. The later I encountered when reading strings from the MPD deamon with my
<a href="mpd.xml">MPDplayer</a>. The former is common practice. Having read and agreeing with Joel on
<a href="http://www.joelonsoftware.com/articles/Unicode.html">The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets</a>, I set out to weed out wrong encodings in UTF-8. For this I build
a small Java program that validates the UTF-8 encoding in a file by weeding out and reporting the erros.
    </body-paragraph>
  </body-item>
  
  <body-item>
    <body-title>XML and XSLT as a website</body-title>
    <body-link>xml-xslt.xml</body-link>
    <image-file>media/xml-xslt.png</image-file>
    <body-paragraph>
As you might see this website is build with static content. The problem 
with static content is the amount of HTML and specificly the repeating HTML
code that is involved in creating an uniform website. The dynamic solution is
to add the HTML to the content on the server with some serverside scripting. A
static solution is to store the content in an XML datafile and provide an XLTS
transformation to specify how to render the data as XHTML. That way the focus can
be on the content and the website can be made uniformly without repeating HTML.
    </body-paragraph>
  </body-item>
  
  <body-item>
    <body-title>MPDplayer</body-title>
    <body-link>mpd.xml</body-link>
    <image-file>media/mpd-small.png</image-file>
    <body-paragraph>
<a href="mpd.xml">MPDplayer</a> is a php-javascript webpage to control a
<a href="http://www.musicpd.org/">Music Player Daemon</a>
(MPD). Music stored on a remote machine can be played by
sending commands to MPD running on that remote machine. MPDplayer runs on
a webserver with PHP and sents the commands to MPD when you search,
play and browses songs on the MPDplayer webpage.
    </body-paragraph>
    <body-paragraph>
Latest: <a href="downloads/MPDplayer-release4.2.tgz">Release 4.2</a> 
fixes javascript 1 bug and adds multiple search fields.
    </body-paragraph>
  </body-item>

  
  <body-item>
    <body-title>Bandwidth management</body-title>
    <body-link>tc.xml</body-link>
    <image-file>media/tc.png</image-file>
    <body-paragraph>
With increased usage of an Internet connection the bandwidth is contested
for by multiple programs. Each program takes what it can. This can
really slow down the experienced speed of a connection. Bandwidth
management can solve this problem by setting boundaries and prioritising
the bandwidth usage for different sorts of traffic. The
<a href="http://www.netfilter.org/">tc, iproute2 and iptables</a>
programs can do that so that your connection stays fast even under heavy
load.
    </body-paragraph>
  </body-item>
  
  <body-item>
    <body-title>Staying online</body-title>
    <body-link>online.xml</body-link>
    <image-file>media/online.png</image-file>
    <body-paragraph>
Over the years I have had Internet connections hooked up to computers
serving as gateway. From the first cable connections to the current ADSL
and cable modems one problem persisted. That problem is that the
connections do not stay up as long as the machine. It got even worse
when I first noticed connections being active (a PPP connection
for instance) but it being defunct. Everything seemed to work
except a redail was necessary before I could start surfing the net.
Nowadays I use a little script to test the ability to use to connection
to determine if the connection is up.
    </body-paragraph>
  </body-item>

  
  <body-item>
    <body-title>Linux firewall</body-title>
    <body-link>firewall.xml</body-link>
    <image-file>media/firewall.png</image-file>
    <body-paragraph>
From the <a href="http://www.tldp.org/HOWTO/IP-Masquerade-HOWTO/index.html">
Linux IP Masquerade HOWTO</a> by David A. Ranch and the manual of
<a href="http://www.netfilter.org/">iptables</a> I have compiled my own
firewall rule set for iptables. It is build to provide transparent
Internet access to machines on a local network, stop all but desired
connections, forward some connections into the local network and count what
comes down the line from the Internet.
    </body-paragraph>
  </body-item>

  
  <footer>
    <footer-paragraph>
Last changes on $Date: 2008-04-14 16:57:34 +0200 (Mon, 14 Apr 2008) $.
    </footer-paragraph>
    <footer-paragraph>
Contact information: email (at) renedegroot.nl
    </footer-paragraph>
  </footer>
</page>

