<?xml version="1.0" encoding="utf-8" ?>

<rdf:RDF 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns="http://my.netscape.com/rdf/simple/0.9/">
<channel>
    <title>K's cluttered loft</title>
    <link>http://www.ailis.de/~k/</link>
    <description></description>
    <dc:language>en</dc:language>

    <image rdf:resource="http://www.ailis.de/~k/images/logos/favicon64.png" />

    <items>
      <rdf:Seq>
        <rdf:li resource="http://www.ailis.de/~k/archives/63-guid.html" />
        <rdf:li resource="http://www.ailis.de/~k/archives/61-guid.html" />
        <rdf:li resource="http://www.ailis.de/~k/archives/60-guid.html" />
        <rdf:li resource="http://www.ailis.de/~k/archives/56-guid.html" />
        <rdf:li resource="http://www.ailis.de/~k/archives/58-guid.html" />
        <rdf:li resource="http://www.ailis.de/~k/archives/55-guid.html" />
        <rdf:li resource="http://www.ailis.de/~k/archives/49-guid.html" />
        <rdf:li resource="http://www.ailis.de/~k/archives/54-guid.html" />
        <rdf:li resource="http://www.ailis.de/~k/archives/53-guid.html" />
        <rdf:li resource="http://www.ailis.de/~k/archives/52-guid.html" />
      </rdf:Seq>
    </items>
</channel>

<image rdf:about="http://www.ailis.de/~k/images/logos/favicon64.png">
        <url>http://www.ailis.de/~k/images/logos/favicon64.png</url>
        <title>RSS: K's cluttered loft - </title>
        <link>http://www.ailis.de/~k/</link>
        <width>64</width>
        <height>64</height>
    </image>


<item rdf:about="http://www.ailis.de/~k/archives/63-guid.html">
    <title>How to use Java applets in modern browsers</title>
    <link>http://www.ailis.de/~k/archives/63-How-to-use-Java-applets-in-modern-browsers.html</link>
    <description>
    &lt;p&gt;
Finding out how to embed a Java applet in current major browsers is quite a task. Lots of pages still suggest using the &lt;code&gt;&amp;lt;applet&amp;gt;&lt;/code&gt; tag and describe how to use the &lt;code&gt;mayscript&lt;/code&gt; attribute to allow communication between Java and JavaScript. Other pages recommend using this mysterious &lt;code&gt;mayscript&lt;/code&gt; attribute even in &lt;code&gt;&amp;lt;embed&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;object&amp;gt;&lt;/code&gt; tags. I think there is a lot of voodoo out there, attributes which sound important but are not necessary at all...
&lt;/p&gt;
&lt;p&gt;
So I started studying this stuff by myself. My goal was embedding a Java applet on a page which must work in Internet Explorer 7+, Google Chrome, Firefox, Opera and Safari. The applet must receive an applet parameter and must communicate with JavaScript in both directions.
&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://www.ailis.de/~k/archives/63-How-to-use-Java-applets-in-modern-browsers.html#extended&quot;&gt;Continue reading &quot;How to use Java applets in modern browsers&quot;&lt;/a&gt;
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2012-01-28T16:15:10Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=63</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=63</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.ailis.de/~k/archives/61-guid.html">
    <title>Move to Github complete</title>
    <link>http://www.ailis.de/~k/archives/61-Move-to-Github-complete.html</link>
    <description>
    &lt;p&gt;
  Today I finished moving the main batch of old projects from my own server to &lt;a href=&quot;https://github.com/kayahr/&quot;&gt;Github&lt;/a&gt;:
  &lt;a href=&quot;http://kayahr.github.com/threedee-js/&quot;&gt;ThreeDee (JavaScript)&lt;/a&gt;,
  &lt;a href=&quot;http://github.com/kayahr/threedee/&quot;&gt;ThreeDee (Java)&lt;/a&gt;,
  &lt;a href=&quot;http://github.com/kayahr/jollada/&quot;&gt;Jollada&lt;/a&gt;,
  &lt;a href=&quot;http://github.com/kayahr/gramath/&quot;&gt;GraMath&lt;/a&gt;,
  &lt;a href=&quot;http://github.com/kayahr/scilter/&quot;&gt;Scilter&lt;/a&gt;,
  &lt;a href=&quot;http://github.com/kayahr/crypt4j/&quot;&gt;crypt4j&lt;/a&gt;,
  &lt;a href=&quot;http://github.com/kayahr/pherialize/&quot;&gt;Pherialize&lt;/a&gt;,
  &lt;a href=&quot;http://github.com/kayahr/math-taglib/&quot;&gt;JSP Math Taglib&lt;/a&gt;,
  &lt;a href=&quot;http://github.com/kayahr/svtools/&quot;&gt;Supervise Tools&lt;/a&gt;,
  &lt;a href=&quot;http://kayahr.github.com/wlandsuite/&quot;&gt;Wasteland Suite&lt;/a&gt;,
  &lt;a href=&quot;http://github.com/kayahr/wludata/&quot;&gt;wludata&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
  Some of these projects are pretty old but I think they are still worth keeping. Some other projects went to /dev/null instead because I couldn&#039;t find any reason why they should waste space on any server. For the projects which had web pages here on Ailis I configured permanent redirects so old external links may still work for some time.
&lt;/p&gt;
 
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2012-01-08T17:49:17Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=61</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=61</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.ailis.de/~k/archives/60-guid.html">
    <title>TwoDee</title>
    <link>http://www.ailis.de/~k/archives/60-TwoDee.html</link>
    <description>
    &lt;p&gt;
  I just finished publishing &lt;a href=&quot;http://kayahr.github.com/twodee&quot;&gt;TwoDee&lt;/a&gt;, a small, fast and simple 2D scene graph vector engine for JavaScript based on the HTML 5 canvas technology. This is the library used in my WebOS game &lt;a href=&quot;https://developer.palm.com/webChannel/index.php?packageid=de.ailis.destroids&quot;&gt;Destroids&lt;/a&gt; which earned me $10,000 in one of the &lt;a href=&quot;http://www.ailis.de/~k/archives/55-Palm-Hot-Apps-Contest-is-over.html&quot;&gt;Palm Hot Apps Contests&lt;/a&gt; last year.
&lt;/p&gt;
 
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2011-12-27T23:01:36Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=60</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=60</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.ailis.de/~k/archives/56-guid.html">
    <title>Generic Jabber (XMPP) with webOS</title>
    <link>http://www.ailis.de/~k/archives/56-Generic-Jabber-XMPP-with-webOS.html</link>
    <description>
    &lt;p&gt;
  WebOS (The operating system of the Palm Pre and Palm Pixi phones) has a built-in messaging application but unfortunately it only supports Google Talk and AIM out of the box. It&#039;s a shame that Palm has not enabled more protocols and especially generic XMPP support. The used library (libpurple) supports everything so it&#039;s only missing in the GUI.
&lt;/p&gt;
&lt;p&gt;
  Google Talk uses XMPP so in theory it should work with any other XMPP server but unfortunately Palm has put this nasty code in the LibpurpleAdapter (which is used as a connector between the GUI and the low-level libpurple):
&lt;/p&gt;
&lt;pre&gt;
if (strcmp(prplProtocolId, &quot;prpl-jabber&quot;) == 0
    &amp;amp;&amp;amp; g_str_has_suffix(transportFriendlyUserName, &quot;@gmail.com&quot;) == FALSE
    &amp;amp;&amp;amp; g_str_has_suffix(transportFriendlyUserName, &quot;@googlemail.com&quot;) == FALSE)
{
    // Special case for gmail... don&#039;t try to connect to mydomain.com if the
    // username is me@mydomain.com. They might not have
    // setup the SRV record. Always connect to gmail. 
    purple_account_set_string(account, &quot;connect_server&quot;, &quot;talk.google.com&quot;);
}
&lt;/pre&gt;
&lt;p&gt;
  This code means: If the protocol is Jabber (XMPP) and the entered username does NOT end with @gmail.com or @googlemail.com then the XMPP server is hardcoded to talk.google.com. So if you enter a username like &lt;code&gt;johndoe@jabber.org&lt;/code&gt; then the Messaging app does not connect to &lt;code&gt;jabber.org&lt;/code&gt; but instead it connects to &lt;code&gt;talk.google.com&lt;/code&gt; because of the above code. So we must get rid of this code somehow.
&lt;/p&gt;
&lt;p&gt;
  With some knowledge about assembler you might be able to toggle some logic in the binary so the above if statement always evaluates to false but there is a much easier solution. You just need to replace the string &quot;connect_server&quot; with some invalid string. I use &quot;nonnect_server&quot;. The result is that the line simply sets some unused property and therefore simply does nothing.
&lt;/p&gt;
&lt;p&gt;
  Since WebOS 2 the &lt;em&gt;LibpurpleAdapter&lt;/em&gt; program is renamed to &lt;em&gt;imlibpurpletransport&lt;/em&gt;. In the following step-by-step instructions I will mention both variants for WebOS 1 and WebOS 2.
&lt;/p&gt;
 &lt;br /&gt;&lt;a href=&quot;http://www.ailis.de/~k/archives/56-Generic-Jabber-XMPP-with-webOS.html#extended&quot;&gt;Continue reading &quot;Generic Jabber (XMPP) with webOS&quot;&lt;/a&gt;
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2011-12-20T18:25:00Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=56</wfw:comment>
        <slash:comments>4</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=56</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.ailis.de/~k/archives/58-guid.html">
    <title>Return a PHP array by reference</title>
    <link>http://www.ailis.de/~k/archives/58-Return-a-PHP-array-by-reference.html</link>
    <description>
    &lt;p&gt;
  Looks like I&#039;m using way to much Java in these days... I&#039;m starting to forget PHP knowledge. Today I was searching for a function to clone an array but haven&#039;t found one. I was curious why PHP doesn&#039;t have an &lt;em&gt;array_clone&lt;/em&gt; or &lt;em&gt;array_copy&lt;/em&gt; function. But then I was nudged into the right direction: Arrays are always assigned by value, not by reference, so it simply doesn&#039;t need a clone function because a simple assignment already performs a clone (It&#039;s even some sort of deep clone (At least all values inside the array (Arrays are also values, not objects) are copied)). To assign it by reference you have to add an ampersand character:
&lt;/p&gt;
&lt;pre&gt;
$arr = array();
$arrClone = $arr; // A clone is created
$arrRef = &amp;amp;$arr; // A reference is created
&lt;/pre&gt;
&lt;p&gt;
I really forgot this basic PHP knowledge...
&lt;/p&gt;
 &lt;br /&gt;&lt;a href=&quot;http://www.ailis.de/~k/archives/58-Return-a-PHP-array-by-reference.html#extended&quot;&gt;Continue reading &quot;Return a PHP array by reference&quot;&lt;/a&gt;
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2011-07-28T11:39:37Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=58</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=58</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.ailis.de/~k/archives/55-guid.html">
    <title>Palm Hot Apps Contest is over</title>
    <link>http://www.ailis.de/~k/archives/55-Palm-Hot-Apps-Contest-is-over.html</link>
    <description>
    &lt;p&gt;
The Palm Hot Apps Contest is &lt;a href=&quot;http://developer.palm.com/blog/2010/07/hot-apps-winners-announced/&quot;&gt;finally over&lt;/a&gt;. According to the last available statistics &lt;a href=&quot;http://www.precentral.net/homebrew-apps/presteroids&quot;&gt;Destroids&lt;/a&gt; reached rank #18 and won a $10000 reward in the Free Apps category. Thanks to all downloaders! 
&lt;/p&gt;
&lt;p&gt;
Now it&#039;s time for the third &lt;em&gt;waiting phase&lt;/em&gt;. The first phase was waiting for the end of the contest (Which was delayed by one month). The second phase was waiting for the official results (Took another month). The third phase is waiting for the money. I wonder how much money will be left after thugs like Paypal and tax collectors opened their hands...
&lt;/p&gt; 
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2010-07-29T17:29:34Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=55</wfw:comment>
        <slash:comments>2</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=55</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.ailis.de/~k/archives/49-guid.html">
    <title>Ubuntu Karmic workarounds</title>
    <link>http://www.ailis.de/~k/archives/49-Ubuntu-Karmic-workarounds.html</link>
    <description>
    &lt;p&gt;
  Ubuntu 9.10 Koala Karmic is released and I immediately installed it. May be this was too early because it has lots of issues. So I&#039;m going to collect some workarounds here which were necessary on my notebook to get Karmic running smoothly.
&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://www.ailis.de/~k/archives/49-Ubuntu-Karmic-workarounds.html#extended&quot;&gt;Continue reading &quot;Ubuntu Karmic workarounds&quot;&lt;/a&gt;
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2009-11-05T06:57:27Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=49</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=49</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.ailis.de/~k/archives/54-guid.html">
    <title>Destroids on PC Mag</title>
    <link>http://www.ailis.de/~k/archives/54-Destroids-on-PC-Mag.html</link>
    <description>
    &lt;p&gt;
While I&#039;m still waiting for the final results of the &lt;a href=&quot;http://www.palmhotapps.com/&quot;&gt;Palm Hot Apps Contest&lt;/a&gt; I just heard that Destroids is listed as number 2 in the &lt;a href=&quot;http://www.pcmag.com/article2/0,2817,2366234,00.asp&quot;&gt;Top 10 of free Palm webOS Apps 2010&lt;/a&gt; of &lt;a href=&quot;http://www.pcmag.com/&quot;&gt;PC Mag&lt;/a&gt;. I&#039;m not exactly sure what that means, probably nothing. Don&#039;t know how apps qualify for this Top 10...
&lt;/p&gt;
&lt;p&gt;
Well, if you just came here because of this article then I guess you really want to go over &lt;a href=&quot;http://www.precentral.net/homebrew-apps/presteroids/&quot;&gt;here&lt;/a&gt; to read more about Destroids. There is also a forum if you have something to say.
&lt;/p&gt;
 
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2010-07-17T17:32:29Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=54</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=54</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.ailis.de/~k/archives/53-guid.html">
    <title>Destroids</title>
    <link>http://www.ailis.de/~k/archives/53-Destroids.html</link>
    <description>
    &lt;p&gt;
Some months ago I published the first version of a little open source game called &lt;a href=&quot;http://developer.palm.com/appredirect/?packageid=de.ailis.destroids&quot;&gt;Destroids&lt;/a&gt; for &lt;a href=&quot;http://en.wikipedia.org/wiki/WebOS&quot;&gt;webOS&lt;/a&gt; (The OS of the &lt;a href=&quot;http://en.wikipedia.org/wiki/Palm%20Pre&quot;&gt;Palm Pre&lt;/a&gt; and the &lt;a href=&quot;http://en.wikipedia.org/wiki/Palm%20Pixi&quot;&gt;Palm Pixi&lt;/a&gt; smartphones) and I&#039;m still improving it weekly. It&#039;s a simple Asteroid-like game where you fly a spaceship through an asteroid field and shoot asteroids and UFOs.
&lt;/p&gt;
&lt;p&gt;
At the same time Palm started the &lt;a href=&quot;http://www.palmhotapps.com/&quot;&gt;Palm Hot Apps&lt;/a&gt; contest where app developers can win $100,000 (For the first rank), $10,000 (for rank 2-21) or  $1,000 (for rank 22-221) in two categories (Free apps and paid apps). For the time the contest is running I placed a widget on the right side of my blog which shows the current position of Destroids. If you own a Palm Pre or Palm Pixi and you like the original Asteroids game then download Destroids now and make me rich.
&lt;/p&gt;
&lt;p&gt;
More information about Destroids can be found on &lt;a href=&quot;http://www.precentral.net/homebrew-apps/presteroids&quot;&gt;pre|central.net&lt;/a&gt;
&lt;/p&gt; 
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2010-04-25T16:04:18Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=53</wfw:comment>
        <slash:comments>3</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=53</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.ailis.de/~k/archives/52-guid.html">
    <title>Java and the StartSSL CA certificates</title>
    <link>http://www.ailis.de/~k/archives/52-Java-and-the-StartSSL-CA-certificates.html</link>
    <description>
    &lt;p&gt;
Again and again I forget how to import the StartSSL CA certificates into Java. Everytime when I switch to a different workstation or install a new Linux distribution I can no longer access my StartSSL secured server with Maven. Then I have to search for a tutorial and for the download locations of the CA certs. Very time-consuming. This must stop once and for all. So I wrote a small script which imports the certs into the currently active Java installation.
&lt;/p&gt;
&lt;p&gt;
Steps to install the certs:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Download &lt;a href=&quot;http://www.ailis.de/~k/uploads/scripts/import-startssl&quot;&gt;import-startssl&lt;/a&gt; script.&lt;/li&gt;
&lt;li&gt;Make sure &lt;em&gt;JAVA_HOME&lt;/em&gt; environment variable is set correctly.&lt;/li&gt;
&lt;li&gt;Run the &lt;em&gt;import-startssl&lt;/em&gt; script.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
The script runs the &lt;em&gt;keytool&lt;/em&gt; program of Java with &lt;em&gt;sudo&lt;/em&gt; so you have to enter your password to give it root access. If you have JSSE installed then the StartSSL CA certs are also added to the &lt;em&gt;jssecacerts&lt;/em&gt; keystore. The script imports the root CA certificate and the four sub CA certs (Class 1-4).&lt;/p&gt;
&lt;p&gt;
If the script does not work for you (Maybe because you are using Windows or Mac OS X instead of a &lt;a href=&quot;http://www.debian.org/&quot;&gt;real operating system&lt;/a&gt;) then you can at least read it for instructions how to do it manually.
&lt;/p&gt;
 
    </description>

    <dc:publisher>K's cluttered loft</dc:publisher>
    <dc:creator>nospam@example.com (Klaus Reimer)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2010-04-11T13:20:52Z</dc:date>
    <wfw:comment>http://www.ailis.de/~k/wfwcomment.php?cid=52</wfw:comment>
        <slash:comments>3</slash:comments>
        <wfw:commentRss>http://www.ailis.de/~k/rss.php?version=1.0&amp;type=comments&amp;cid=52</wfw:commentRss>
    
    
</item>

</rdf:RDF>

