<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Kenneth Falck</title>
    <link>https://kennethfalck.net/</link>
    <description>Recent content on Kenneth Falck</description>
    <generator>Hugo</generator>
    <language>fi-FI</language>
    <lastBuildDate>Sun, 23 Oct 2022 17:00:00 +0000</lastBuildDate>
    <atom:link href="https://kennethfalck.net/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>New Blog Engine</title>
      <link>https://kennethfalck.net/2022/10/23/new-blog-engine/</link>
      <pubDate>Sun, 23 Oct 2022 17:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2022/10/23/new-blog-engine/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve re-published this blog on new platforms for quite many times. The blog has been pretty quiet&#xA;during the past few years due to my personal activity moving more to Twitter and Facebook.&lt;/p&gt;&#xA;&lt;p&gt;Now, as we&amp;rsquo;re developing some new publishing functionality for WebCat, the blog is&#xA;active again. It&amp;rsquo;s using a custom publishing engine based on AWS S3, DynamoDB, Markdown and&#xA;Handlebars templates.&lt;/p&gt;&#xA;&lt;p&gt;All the historical blog articles should be present in the same URLs as before. If you&amp;rsquo;re trying&#xA;to find something and can&amp;rsquo;t find it, please let me know e.g. on &lt;a target=&#34;_blank&#34; rel=&#34;noopener&#34; href=&#34;https://twitter.com/kennu&#34;&gt;Twitter&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The world needs a standard for Serverless</title>
      <link>https://kennethfalck.net/2021/05/26/the-world-needs-a-standard-for-serverless/</link>
      <pubDate>Wed, 26 May 2021 23:01:22 +0000</pubDate>
      <guid>https://kennethfalck.net/2021/05/26/the-world-needs-a-standard-for-serverless/</guid>
      <description>&lt;!-- wp:paragraph --&gt;&#xA;&lt;p&gt;Nearly every web application is nowadays distributed as Docker container image. Even if the primary installation method is something else, there is a Docker installation available. &lt;a href=&#34;https://hub.docker.com/_/wordpress/&#34; data-type=&#34;URL&#34; data-id=&#34;https://hub.docker.com/_/wordpress/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;WordPress&lt;/a&gt; is a typical example.&lt;/p&gt;&#xA;&lt;!-- /wp:paragraph --&gt;&#xA;&lt;!-- wp:paragraph --&gt;&#xA;&lt;p&gt;I want this to change. I don&#39;t like running Docker containers. Containers require a server, or at least a continuously running service like AWS Fargate. I don&#39;t want anything running continuously. It costs money and eventually crashes, gets stuck or leaks memory and needs a reboot.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Rise of Step Functions</title>
      <link>https://kennethfalck.net/2020/08/31/the-rise-of-step-functions/</link>
      <pubDate>Mon, 31 Aug 2020 03:03:09 +0000</pubDate>
      <guid>https://kennethfalck.net/2020/08/31/the-rise-of-step-functions/</guid>
      <description>&lt;!-- wp:paragraph --&gt;&#xA;&lt;p&gt;The idea of &lt;a rel=&#34;noreferrer noopener&#34; href=&#34;https://aws.amazon.com/step-functions/&#34; target=&#34;_blank&#34;&gt;Step Functions&lt;/a&gt; is to define cloud backend processes as visualizable graphs and to reduce the number of traditional lines of code you have to write. For example, customer orders are a typical application for Step Functions. When you model your orders using Step Functions, you&#39;re not just storing the order information in a database. You are also defining how the order is processed from payment to fulfillment according to predefined rules.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Back to WordPress (but Serverless)</title>
      <link>https://kennethfalck.net/2020/08/12/back-to-wordpress-but-serverless/</link>
      <pubDate>Wed, 12 Aug 2020 01:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2020/08/12/back-to-wordpress-but-serverless/</guid>
      <description>&lt;!-- wp:paragraph --&gt;&#xA;&lt;p&gt;I started this blog back in 2004 using a blogging system that I programmed myself. At the time, Nokia 9500 Communicator was the latest Symbian smartphone. Facebook was still called The Facebook and was being used in universities. World of Warcraft hadn&#39;t yet been released.&lt;/p&gt;&#xA;&lt;!-- /wp:paragraph --&gt;&#xA;&lt;!-- wp:paragraph --&gt;&#xA;&lt;p&gt;Since then, this blog has moved over to various technology platforms. They have been based on PHP, Python, Node.js and AWS Lambda. I&#39;ve used at least Django, Drupal, WordPress and Contentful to manage the content. Contentful was the latest platform. It worked alright, but I never really enjoyed using  it. To make it really comfortable, you need to build your own CMS user experience around Contentful.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Architecture has become a dirty word</title>
      <link>https://kennethfalck.net/2019/06/11/architecture-has-become-a-dirty-word/</link>
      <pubDate>Tue, 11 Jun 2019 12:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2019/06/11/architecture-has-become-a-dirty-word/</guid>
      <description>&lt;p&gt;In this awesome &lt;a href=&#34;https://youtu.be/d_BtZ8bv0sw?t=27583&#34; title=&#34;React Finland 2019&#34;&gt;talk&lt;/a&gt; from React Finland 2019, &lt;a href=&#34;https://twitter.com/monicalent&#34; title=&#34;Monica Lent&#34;&gt;Monica Lent&lt;/a&gt; discusses software architecture in understandable and well-defined terms.&lt;/p&gt;&#xA;&lt;iframe width=&#34;560&#34; height=&#34;315&#34; src=&#34;https://www.youtube.com/embed/d_BtZ8bv0sw?start=27583&#34; frameborder=&#34;0&#34; allow=&#34;accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture&#34; allowfullscreen&gt;&lt;/iframe&gt;&#xA;&lt;p&gt;The talk rejects casual use of big words like &amp;quot;architecture&amp;quot; and &amp;quot;technical debt&amp;quot; and demands you to define what they really mean when you use them.&lt;/p&gt;&#xA;&lt;p&gt;Monica Lent&amp;#39;s definition for software architecture is &amp;quot;enabling constraints&amp;quot;. An architecture defines the constraints that will enable people to work productively on a project. When there is too little architecture, people will generate an overly complicated and hard to maintain system over time.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Storing AWS CLI Credentials in 1Password</title>
      <link>https://kennethfalck.net/2018/03/18/storing-aws-cli-credentials-in-1password/</link>
      <pubDate>Sun, 18 Mar 2018 12:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2018/03/18/storing-aws-cli-credentials-in-1password/</guid>
      <description>&lt;p&gt;If you are an avid Amazon AWS user, you may have noticed that the AWS CLI command line tools nowadays support &lt;a target=&#34;_blank&#34; href=&#34;https://docs.aws.amazon.com/cli/latest/topic/config-vars.html#sourcing-credentials-from-external-processes&#34; rel=&#34;noopener noreferrer&#34;&gt;sourcing credentials from external processes&lt;/a&gt;. This feature can be combined with 1Password&amp;#39;s &lt;a target=&#34;_blank&#34; href=&#34;https://support.1password.com/command-line/&#34; rel=&#34;noopener noreferrer&#34;&gt;command line tool&lt;/a&gt;, which allows you to query 1Password items using the &lt;strong&gt;op&lt;/strong&gt; shell command.&lt;/p&gt;&#xA;&lt;p&gt;By moving the AWS credentials to 1Password, you will be able to delete your ~/.aws/credentials file, which is otherwise an attractive target for malware and other hacking attempts (but check the caveats section below before you do that).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Selainlouhinta</title>
      <link>https://kennethfalck.net/2017/10/22/selainlouhinta/</link>
      <pubDate>Sun, 22 Oct 2017 22:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/10/22/selainlouhinta/</guid>
      <description>&lt;p&gt;Selainlouhinnasta on puhuttu jo jonkin aikaa. Viimeksi asia oli esillä pari viikkoa siten, kun Pirate Bay alkoi louhia vierailijoidensa selaimissa Monero-virtuaalivaluuttaa.&lt;/p&gt;&#xA;&lt;p&gt;Cloudflare otti asiaan yllättävän jyrkän kannan ja alkoi blokata selainlouhintaa harjoittavia sivustoja. Mutta kun Flash-bannerimainokset aikanaan keksittiin, niihin olisi voinut suhtautua ihan samalla tavalla. Kukaan ei halunnut mainoksia ja ne kuluttivat kyselemättä sekä tietoverkkojen että tietokoneiden kapasiteettia.&lt;/p&gt;&#xA;&lt;p&gt;Selainlouhintaa voi ajatella virtuaalimaksamisen yksinkertaistettuna muotona. Asiakkaan ei tarvitse erikseen hankkia valuuttaa lompakkoonsa ja suorittaa ostotransaktiota. Sen sijaan hän vain tarjoaa hieman oman tietokoneensa laskentakapasiteettia valuutan louhimiseen. Jos sivusto käyttää liikaa kapasiteettia, tietokone hidastuu häiritsevästi eikä käyttäjä viitsi enää palata sivustolle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ethereumin pakkopäivitykset</title>
      <link>https://kennethfalck.net/2017/10/12/ethereumin-pakkop%C3%A4ivitykset/</link>
      <pubDate>Thu, 12 Oct 2017 18:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/10/12/ethereumin-pakkop%C3%A4ivitykset/</guid>
      <description>&lt;p&gt;Ethereumin seuraava &amp;quot;hard fork&amp;quot; eli pakollinen päivitys muistuttaa siitä, että tietojärjestelmiä on vaikea tehdä kerralla täydellisiksi. Päivityksiä tarvitaan ja välillä kaikkien on pakko tehdä päivitys yhtä aikaa, jotta verkko pysyisi yhteensopivana.&lt;/p&gt;&#xA;&lt;p&gt;Nämä pakkopäivitykset jakaantuvat karkeasti ottaen kahtia: sellaisiin, joista kaikilla on yhteisymmärrys, ja sellaisiin, joista kiistellään. Viimeisin isompi kiista aiheutti Ethereumin jakaantumisen erilliseen Classic-haaraan. Samanlaisia haarautumisia on tapahtunut Bitcoinillekin.&lt;/p&gt;&#xA;&lt;p&gt;Pakolliset päivitykset ovat sen vuoksi erityisen mielenkiintoisia, että ne muuttavat lohkoketjuun tallennettujen älysopimusten semantiikkaa. Tässä Byzantium-päivityksessäkin lisätään älysopimuksiin uusia toimintoja. Periaatteessa tietysti vanhat sopimukset pysyvät ennallaan, mutta varsinaisesti tästä ei ole mitään takeita, koska vanhojakin sopimuksia on toisinaan muutettu jälkeenpäin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>TypeScript vs. Flow</title>
      <link>https://kennethfalck.net/2017/08/31/typescript-vs.-flow/</link>
      <pubDate>Thu, 31 Aug 2017 20:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/08/31/typescript-vs.-flow/</guid>
      <description>&lt;p&gt;Tällä kertaa on mielessä pohdintaa JavaScriptin tyypityksestä. Olen viime aikoina kokeillut TypeScriptiä, joka on Microsoftin kehittämä tyyppilaajennos JavaScriptiin. Se sopii erityisen hyvin yhteen Visual Studio Code -editorin kanssa, joka osaa hyödyntää TypeScriptin ymmärrystä muuttujien ja objektien tyypeistä. Editori näyttää tyyppien perusteella varoituksia ja automaattitäydennyksiä käyttöliittymässään.&lt;/p&gt;&#xA;&lt;p&gt;Facebook on puolestaan kehittänyt TypeScriptille kilpailijan nimeltä Flow. Se toimii samalla periaatteella, eli osaa varoittaa tyyppivirheistä ja kääntää koodin niinikään tavalliseksi JavaScriptiksi. Se toimii niin Atomissa kuin Visual Studio Codessa, kuten TypeScriptkin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Contentful käytössä</title>
      <link>https://kennethfalck.net/2017/08/12/contentful-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Sat, 12 Aug 2017 12:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/08/12/contentful-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Otin tänään käyttöön &lt;a href=&#34;https://www.contentful.com/&#34;&gt;Contentfulin&lt;/a&gt; blogini sisällön hallinnassa. Sisällöt olivat aiemmin markdown-tiedostoina Git-versiohallinnassa. Markdown-tiedostot on melko vaivatonta ladata Contentfuliin pienellä Python-skriptillä. Julkaiseminen onnistuu vastaavalla skriptillä, joka hakee sisällöt Contentfulista ja luo samanlaiset markdown-tiedostot julkaisua varten.&lt;/p&gt;&#xA;&lt;p&gt;Julkaisuprosessi on nyt: Contentful ⇒ Markdown ⇒ Phenomic ⇒ Amazon S3 ⇒ CloudFront&lt;/p&gt;&#xA;&lt;p&gt;Contentful on vaihdellut ajan mittaan ilmaisen käytön rajoituksiaan, joten nähtäväksi jää, sopiiko se jatkossakin henkilökohtaiseen käyttöön. Tällä hetkellä ilmaiseksi voi luoda kolme erillistä sivustoa, joissa kussakin voi olla 10.000 artikkelia. Contentfullin sisältömalli on toimiva ja yksinkertainen, ja sopii hyvin yhteen markdown-sisällön kanssa, joten tarvittaessa ei ole suuri ongelma siirtää sisältöjä sieltä jonnekin muualle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>REST-rajapintojen sivuttaminen</title>
      <link>https://kennethfalck.net/2017/07/26/rest-rajapintojen-sivuttaminen/</link>
      <pubDate>Wed, 26 Jul 2017 22:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/07/26/rest-rajapintojen-sivuttaminen/</guid>
      <description>&lt;p&gt;Kävin tänään mielenkiintoista (melko teknistä) keskustelua Twitterissä ja Facebookissa siitä, miten REST API -rajapintojen sivuttaminen kannattaa nykyään toteuttaa.&lt;/p&gt;&#xA;&lt;p&gt;Esiin nousi lähinnä kaksi kilpailevaa vaihtoehtoa:&lt;/p&gt;&#xA;&lt;p&gt;(1) Sivuttaminen käyttäen HTTP-metadata-otsakkeita kuten X-Total-Count, X-Page-Count, jne. Tällöin varsinainen JSON-tieto voidaan palauttaa taulukkomuotoisena (array).&lt;/p&gt;&#xA;&lt;p&gt;(2) Taulukon kuorruttaminen metadata-objektilla. Rajapinnan palauttama tieto on silloin esimerkiksi muodossa {&amp;quot;items&amp;quot;:[...], &amp;quot;totalCount&amp;quot;:123}.&lt;/p&gt;&#xA;&lt;p&gt;Kummallakin vaihtoehdolla on hyviä ja huonoja puolia, jotka ovat pitkälti periaatteellisia. Itse olen nykyään enemmän käytännöllisyyden kuin periaatteellisuuden kannalla, joten kallistun tässä tapauksessa vaihtoehtoon (1).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Versiohallinnat pitäisi salata</title>
      <link>https://kennethfalck.net/2017/07/05/versiohallinnat-pit%C3%A4isi-salata/</link>
      <pubDate>Wed, 05 Jul 2017 14:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/07/05/versiohallinnat-pit%C3%A4isi-salata/</guid>
      <description>&lt;p&gt;Tänään olen pohtinut, onko Git-versiohallinta vanhentumassa, koska se tallentaa kaiken datan salaamattomana omaan tietokantaansa. Maailmalla on käynnissä yleinen trendi muuttaa kaikki tietovarastot salatuiksi. Ennen pitkää salaamattoman datan säilöminen alkaa tuntua samalta kuin salasanojen tallentaminen paljaaltaan tietokantoihin. Se oli normaalia vielä 1990-luvulla, mutta nykyään se ei tulisi enää mieleenkään.&lt;/p&gt;&#xA;&lt;p&gt;Gitin osalta asia on tietysti erilainen riippuen siitä, puhutaanko avoimen lähdekoodin projekteista vai yksityisistä projekteista. Avoimien projektien on suotavaa olla salaamattomasti näkyvissä koko maailmalle, mutta toisaalta niissäkin on usein tarpeita säilytellä yksittäisiä salattuja tiedostoja, joihin pääsevät käsiksi vain harvat ja valitut.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Asynkroniset FaaS-ympäristöt</title>
      <link>https://kennethfalck.net/2017/06/22/asynkroniset-faas-ymp%C3%A4rist%C3%B6t/</link>
      <pubDate>Thu, 22 Jun 2017 17:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/06/22/asynkroniset-faas-ymp%C3%A4rist%C3%B6t/</guid>
      <description>&lt;p&gt;Mielenkiintoisia ajatuksia Serverless / FaaS -arkkitehtuurin tulevaisuudesta. Ytimessä on kysymys siitä, ettei esimerkiksi Amazonin Lambda-funktiota ajettaessa tarvitsisi maksaa siitäkin ajasta, jolloin funktio ei varsinaisesti tee mitään, vaan odottelee vain vastausta I/O-pyyntöihin kuten tietokantahakuihin. Lambda-funktioiden ajoaikahan on yleensä muutamia satoja millisekunteja, ja se kuluu lähes kokonaan tällaiseen odotteluun.&lt;/p&gt;&#xA;&lt;p&gt;AWS:n Step Functions on jo iso askel tähän suuntaan. Sovelluksen rakenne voidaan suunnitella vuokaaviona, joka yhdistelee toisiinsa erilaisia komponentteja. Yhden komponentin tuloste on seuraavan syöte ja niin edelleen, kunnes päästään maaliin ja palautetaan lopputulos käyttäjälle. Vuokaaviomallin avulla päästään siihen, ettei kaikkea käsittelyä tarvitse tehdä kerralla yhdessä isossa Lambda-funktiossa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Prepack</title>
      <link>https://kennethfalck.net/2017/05/04/prepack/</link>
      <pubDate>Thu, 04 May 2017 20:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/05/04/prepack/</guid>
      <description>&lt;p&gt;Facebookin uusi Prepack-työkalu antaa esimakua siitä, millaista ohjelmointi on tulevaisuudessa. Se korjaa lepsusti kirjoitetun ohjelmakoodin automaattisesti tehokkaaksi. Ohjelmoijan ei tarvitse enää keskittyä koodin yksityiskohtien optimointiin. Sen sijaan hän voi keskittyä itse sovellukseen ja sen ominaisuuksiin.&lt;/p&gt;&#xA;&lt;p&gt;Tämän vuoksi ohjelmoinnin opiskelemisessa ja opettamisessa ei kannata liikaa keskittyä yksityiskohtiin. Abstraktiotaso nousee. Ohjelmoijan näkökulmasta tärkeintä on ymmärtää, miten reaalimaailman käsitteet ja ongelmat osataan mallintaa sovelluksiksi.&lt;/p&gt;&#xA;&lt;p&gt;Jatkossa ohjelmakoodinkin rooli pienenee entisestään. Yhä suurempi osa sovelluksista mallinnetaan Amazonin Step Functionsin kaltaisilla visuaalisilla ympäristöillä. Bisneslogiikkaa ei enää upoteta vaikeaselkoiseen koodiin, vaan se on tarkasteltavissa ja muokattavissa graafisessa muodossa suoraan webbiselaimessa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lohkoketjuintegraatiota</title>
      <link>https://kennethfalck.net/2017/03/15/lohkoketjuintegraatiota/</link>
      <pubDate>Wed, 15 Mar 2017 18:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/03/15/lohkoketjuintegraatiota/</guid>
      <description>&lt;p&gt;Tällaiset mielenkiintoiset hankkeet alkavat hiljalleen nostaa esiin lohkoketjujen uusia sovelluskohteita. SmartLogin edustaja puhuu siitä, miten kullakin logistiikkayrityksellä on omat tietojärjestelmänsä eivätkä ne keskustele keskenään. Näitä tietojärjestelmiä ei olla onnistuttu integroimaan toisiinsa edes usean vuosikymmenen aikana. Loppuasiakkaat hyötyisivät järjestelmien välisestä reaaliaikaisesta tiedonvaihdosta. Viikkojen odottelun sijaan kontit tulisivat perille päivissä, kun jokaiselle löytyisi heti optimaalinen reitti.&lt;/p&gt;&#xA;&lt;p&gt;Lohkoketjujen otolliset sovelluskohteet näyttävät olevan yrityspuolella sellaisia asetelmia, joissa usean eri yrityksen on vaikea sopia keskenään yhteisistä tietojärjestelmistä. Mikään yrityksistä ei ole siinä asemassa, että se voisi yksin sanella kaikille muille käytettävän järjestelmän. Toisaalta on ehkä epäselvää, kuka uudesta järjestelmästä hyötyisi eniten. Keskitettyä omistajaa ja maksajaa ei tahdo löytyä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ylisuunnittelua</title>
      <link>https://kennethfalck.net/2017/02/13/ylisuunnittelua/</link>
      <pubDate>Mon, 13 Feb 2017 13:41:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2017/02/13/ylisuunnittelua/</guid>
      <description>&lt;p&gt;Tämä juttu käsittelee minulle läheistä aihetta, ylisuunnittelua (over-engineering). Koen kulkeneeni jo pitkän matkan niistä ajoista, kun liiketoiminnalliset vaatimukset tuntuivat lähinnä ärsyttävältä kiusalta haittaamassa hienon järjestelmän rakentamista. Siihen aikaan koodasin esimerkiksi omia C++-kirjastoja, koska en luottanut standardikirjastoihin. Nykyään oma ajattelu on paljon lähempänä tavoitteiden saavuttamista ja järjestelmien rakentelu on vain keino siihen.&lt;/p&gt;&#xA;&lt;p&gt;Jutussa esitellyt käsitteet ovat luultavasti tuttuja kaikille koodaajille. Yritämme luonnostaan aina rakentaa yhtä isoa, täydellistä, geneeristä järjestelmää, jota on &amp;quot;sitten myöhemmin&amp;quot; helppo laajentaa kattamaan uudetkin tarpeet. Mutta kuten jutussa todetaan, nämä uudet tarpeet onnistuvat joka kerta yllättämään niin, että hieno suunnitelma menee uusiksi ja vanhat järjestelmät lentävät romukoppaan. Samalla suuri osa työstä on ollut turhaa ja ylimääräistä vaivannäköä, kun on pitänyt työskennellä oman abstraktion eikä varsinaisen ongelman parissa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pilvilaskentaa</title>
      <link>https://kennethfalck.net/2016/12/23/pilvilaskentaa/</link>
      <pubDate>Fri, 23 Dec 2016 01:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/12/23/pilvilaskentaa/</guid>
      <description>&lt;p&gt;Mielenkiintoista pohdintaa Peter Levineltä pilvilaskennan tulevaisuudesta. (Laskenta on outo termi, mutta parempaakaan suomennosta &amp;quot;computingille&amp;quot; ei taida olla.)&lt;/p&gt;&#xA;&lt;p&gt;Tiivistettynä argumentti on, että IoT:n synnyttämä datanpaljous pakottaa viemään tekoälyn verkon reunalle. Dataa kerätään jatkossa niin paljon, ettei kaikkea voi siirtää pilveen käsiteltäväksi. Tyhmät päätelaitteet eivät enää kelpaa, vaan dataa keräävien IoT-sensorien yhteydessä pitää olla käytettävissä raskasta tietojenkäsittelykapasiteettia. Tähän vaikuttaa myös latenssi, joka tekisi monista reaaliaikaisista sovelluksista mahdottomia, mikäli data pitäisi siirtää ensin pilveen ja sieltä takaisin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>AWS re:Invent 2016</title>
      <link>https://kennethfalck.net/2016/12/02/aws-reinvent-2016/</link>
      <pubDate>Fri, 02 Dec 2016 12:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/12/02/aws-reinvent-2016/</guid>
      <description>&lt;p&gt;Tässä ovat tämän viikon &lt;a href=&#34;https://reinvent.awsevents.com/&#34;&gt;AWS re:Invent 2016&lt;/a&gt; -tapahtuman mielenkiintoisimmat julkistukset&#xA;omasta näkökulmastani pilvikehittäjänä. Nämä ovat Amazon AWS -pilvipalvelun uusia ominaisuuksia, jotka julkaistiin marras-joulukuun 2016 taitteessa.&lt;/p&gt;&#xA;&lt;p&gt;Lyhyenä yhteenvetona totean pari havaintoa. Ensinnäkin Lamba-tietojenkäsittely on uuden sukupolven pilvisovellusten keskiössä. Kehittäjät ovat oppineet kehittämään Lambda-funktioita, ja nyt sama malli viedään kaikkialle aina IoT-laitteita myöten. Lambda on &amp;quot;liima&amp;quot;, jolla erilaiset järjestelmät kytketään toisiinsa pieniä JavaScript-funktioita käyttäen. On odotettavissa, että Lambda-funktioita nähdään osana yhä useampia pilvipalveluita.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amazon SAM</title>
      <link>https://kennethfalck.net/2016/11/20/amazon-sam/</link>
      <pubDate>Sun, 20 Nov 2016 16:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/11/20/amazon-sam/</guid>
      <description>&lt;p&gt;Amazon on julkaissut oman Serverless Application Model (SAM) -määrityksensä. Ideana on, että SAM-mallin mukainen sovellus sisältää joukon verkkoon julkaistavia API-rajapintoja Lambda-funktioita sekä muita pilviresursseja, jotka on kytketty toisiinsa sovelluskokonaisuudeksi.&lt;/p&gt;&#xA;&lt;p&gt;Ajatuksena lienee mahdollistaa SAM-sovellusten paketointi ja jakeleminen helpolla ja vakioidulla tavalla. Vastaavalla tavalla on ennen jaeltu esimerkiksi Ruby on Rails ja Node.js -sovelluksia. Esimerkkejä SAM-sovelluksista löytyy GitHubista (&lt;a href=&#34;https://github.com/awslabs/serverless-application-model&#34;&gt;https://github.com/awslabs/serverless-application-model&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;SAM kilpailee mielenkiintoisella tavalla Serverless Frameworkin kanssa (&lt;a href=&#34;https://serverless.com/&#34;&gt;https://serverless.com/&lt;/a&gt;). Molemmat näyttävät tarjoavan hyvin samankaltaisen sovellusympäristön, mutta Amazonilla ei kuitenkaan vielä ole työkaluja sovellusten käsittelyyn ja julkaisemiseen. On kiintoisaa nähdä, tuleeko SAMista yhteinen standardi, jota Serverlesskin alkaa noudattaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Palvelimeton arkkitehtuuri</title>
      <link>https://kennethfalck.net/2016/11/18/palvelimeton-arkkitehtuuri/</link>
      <pubDate>Fri, 18 Nov 2016 10:55:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/11/18/palvelimeton-arkkitehtuuri/</guid>
      <description>&lt;p&gt;Tämä oli hyvä yhteenveto palvelimettoman arkkitehtuurin eduista ja haasteista:&lt;/p&gt;&#xA;&lt;p&gt;&amp;quot;To start with, PaaS and Docker have a major headstart that serverless architecture lacks: you can lift-and-shift an existing system into it without substantially rearchitecting. The many quirks and tradeoffs in serverless offerings mean that assumptions you made in your traditionally-architected system may not be possible to guarantee with serverless.&lt;/p&gt;&#xA;&lt;p&gt;However, if you’re starting from scratch, or already rearchitecting anyway, you can use serverless architecture to drop a huge amount of overhead from your development and operations. It’s hard to overstate this benefit. With a fully serverless system, with computation entirely through FaaS and all other infrastructure in SaaS, you essentially only write business logic.&amp;quot;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mikä on oikeaa tekoälyä</title>
      <link>https://kennethfalck.net/2016/11/10/mik%C3%A4-on-oikeaa-teko%C3%A4ly%C3%A4/</link>
      <pubDate>Thu, 10 Nov 2016 14:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/11/10/mik%C3%A4-on-oikeaa-teko%C3%A4ly%C3%A4/</guid>
      <description>&lt;p&gt;Hiljattainen Facebook-päivitykseni herätti keskustelua siitä, mitkä sovellukset edustavat oikeaa tekoälyä ja mitkä eivät. Andrew Ng muistuttaa siitä, että tekoäly ei ole taikuutta. Olen samaa mieltä, mutta minusta taikuus luodaankin eri tasolla, sovelluksia suunnitellessa. Jää suunnittelijoiden harteille synnyttää loppukäyttäjälle vaikutelma taikuudesta yhdistelemällä tekoälyalgoritmeja ja muita teknisiä komponentteja oikealla tavalla.&lt;/p&gt;&#xA;&lt;p&gt;Ng vetää jutussaan yhteen sitä, millaisista tehtävistä tekoäly suoriutuu nykypäivänä. Hän tiivistää ohjatun oppimisen algoritmien nykytason niin, että tekoäly suoriutuu sellaisista tehtävistä, joihin ihmisillä kuluisi korkeintaan sekunti. Lisäksi käytettävissä täytyy olla paljon dataa. On tietysti olemassa muitakin koneoppimisen muotoja, kuten ohjaamaton oppiminen ja vahvistusoppiminen. Ilmeisesti niihin ei ole vielä löytynyt yhtä hyviä nyrkkisääntöjä, tai sitten Ng muista syistä keskittyy ennen kaikkea ohjattuun oppimiseen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Slackin kirje Microsoftille</title>
      <link>https://kennethfalck.net/2016/11/03/slackin-kirje-microsoftille/</link>
      <pubDate>Thu, 03 Nov 2016 08:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/11/03/slackin-kirje-microsoftille/</guid>
      <description>&lt;p&gt;Slackin kehittäjät valottavat hieman ajatteluaan tuotteen taustalla tässä avoimessa kirjeessä Microsoftille. Olen itse ollut &amp;quot;Slack-fani&amp;quot; jo pitkään ja tunnistanut siinä samanlaisia piirteitä kuin Applen tuotteissa vanhaan hyvään aikaan.&lt;/p&gt;&#xA;&lt;p&gt;Esimerkiksi keskustelusäikeitä (threadeja) ei ole tuotu Slackiin harkitsemattomasti, vaikka monet haluaisivatkin niitä. Kyse on samasta asiasta kuin Nokian ja iPhonen välisessä kilpailussa 2000-luvulla: pelkkä ominaisuusluettelo ei ratkaise. Slackin kaltaiseen tuotteeseen liittyy vahvasti oma &amp;quot;fiilis&amp;quot;, jota ei voi redusoida ranskalaisiksi viivoiksi. Se koostuu lukuisista pienistä asioista ja myös monien ominaisuuksien jättämisestä tietoisesti pois silloin, kun ne eivät istu kokonaisuuteen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>NASA ja IA vs. AI</title>
      <link>https://kennethfalck.net/2016/10/10/nasa-ja-ia-vs.-ai/</link>
      <pubDate>Mon, 10 Oct 2016 10:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/10/10/nasa-ja-ia-vs.-ai/</guid>
      <description>&lt;p&gt;NASAn mielestä puolet tutkimuksesta pitäisi kohdistaa IA:han (Intelligence Amplification) ja vain puolet AI:hin (Artificial Intelligence). Itse uskon näiden kahden lähestyvän toisiaan eri suunnista.&lt;/p&gt;&#xA;&lt;p&gt;Ihmisen arkipäiväiset rutiinit korvautuvat sellaisilla AI-tekoälyillä, jota Microsoft ja Google kehittävät. Vaativissa asiantuntijatehtävissä taas tarvitaan avuksi IA:ta, joka ei korvaa ihmistä vaan parantaa hänen tuottavuuttaan. Silloin yksittäinen ihminen saa &amp;quot;supervoimat&amp;quot; ja korvaa aiemman ison tiimin.&lt;/p&gt;&#xA;&lt;p&gt;Kokonaisvaikutus on, että ihmisillä on yhä enemmän vapaa-aikaa ja yhä vähemmän työtä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Keikkatalous</title>
      <link>https://kennethfalck.net/2016/09/26/keikkatalous/</link>
      <pubDate>Mon, 26 Sep 2016 15:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/09/26/keikkatalous/</guid>
      <description>&lt;p&gt;Vilin kuvaus keikkataloudesta (gig economy) herätti ajatuksen verrata sitä teknologian kehitykseen. Nykyään eletään mikropalveluiden ja pilven aikakautta, jossa integraatiopisteenä ei ole enää keskitetty raskas palvelin. Sen sijaan integraatiopiste on siirtynyt toiseen päähän loppukäyttäjälle, joka hyödyntää hajautetusti monia eri palveluita eri puolilta pilveä.&lt;/p&gt;&#xA;&lt;p&gt;Omassa laitesalissa ennen vanhaan pyörineet fyysiset, raskaat palvelimet olivat luonteeltaan samanlaisia kuin vakituiset työpaikat. Yksi järeä palvelin oli vastuussa kaikesta toiminnallisuudesta (työntekijän koko toimeentulosta). Kun palvelin meni rikki, kaikki lakkasi kerralla toimimasta (työttömyys). Asiat palasivat ennalleen vasta kun palvelin korjattiin (uusi työpaikka).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Phenomic käytössä</title>
      <link>https://kennethfalck.net/2016/09/12/phenomic-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Mon, 12 Sep 2016 02:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/09/12/phenomic-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Päätin siirtää blogini &lt;a href=&#34;https://phenomic.io/&#34;&gt;Phenomic&lt;/a&gt;-alustalle. Phenomic on&#xA;React-pohjainen julkaisutyökalu, joka muodostaa Markdown-sisällöstä staattisen&#xA;sivuston. Se muistuttaa &lt;a href=&#34;https://jekyllrb.com/&#34;&gt;Jekylliä&lt;/a&gt;, mutta sivustoon voi&#xA;lisätä myös dynaamisia toimintoja React-komponenttien avulla.&lt;/p&gt;&#xA;&lt;p&gt;Käytin aiemmin &lt;a href=&#34;https://github.com/gatsbyjs/gatsby&#34;&gt;Gatsbya&lt;/a&gt; samaan&#xA;tarkoitukseen. Phenomic on kuitenkin osoittautunut joustavammaksi. Phenomicilla&#xA;voi esimerkiksi vapaasti kustomoida React-Routerin reitit.&lt;/p&gt;&#xA;&lt;p&gt;Suosittelen Phenomicia yleiskäyttöiseksi pohjaksi React-sovellusten nopeaan&#xA;kehittämiseen. Esimerkiksi &lt;a href=&#34;https://serverless.com/&#34;&gt;Serverless.com&lt;/a&gt; käyttää&#xA;samaa alustaa sivustonsa julkaisuun.&lt;/p&gt;&#xA;&lt;p&gt;(Tietyistä teknisistä syistä johtuen Phenomic lisäsi blogini artikkelien&#xA;URL-osoitteisiin perään vinoviivat. Mahdolliset RSS-syötteen seuraajat&#xA;saattavat nähdä tuoreimmat kymmenen artikkelia kahtena, pahoittelut siitä.)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Julkkis-chatbotit</title>
      <link>https://kennethfalck.net/2016/09/11/julkkis-chatbotit/</link>
      <pubDate>Sun, 11 Sep 2016 14:57:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/09/11/julkkis-chatbotit/</guid>
      <description>&lt;p&gt;Julkkiksesta tehtiin virtuaalinen chatbotti analysoimalla kaikki tämän antamat haastattelut. Näitä tulee varmasti lisää. Haastattelut ovat melkeinpä aina selkeässä kysymys-vastaus-muodossa, jolloin on helppo kerätä iso tietokanta valmiita kysymyksiä ja niihin sopivia vastauksia. Tekoälyn tehtäväksi jää osata yhdistää hieman eri muodossa botille tehdyt kysymykset oikeisiin vastauksiin.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://chatbotsmagazine.com/i-created-a-selena-gomez-chatbot-for-my-daughter-and-saw-the-future-96f2cffd8743#.l4uddxjx2&#34;&gt;https://chatbotsmagazine.com/i-created-a-selena-gomez-chatbot-for-my-daughter-and-saw-the-future-96f2cffd8743#.l4uddxjx2&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI vs. IA</title>
      <link>https://kennethfalck.net/2016/08/26/ai-vs.-ia/</link>
      <pubDate>Fri, 26 Aug 2016 14:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/08/26/ai-vs.-ia/</guid>
      <description>&lt;p&gt;Aiheena AI vs. IA. Kunnianhimoinen visio on, että tekoäly tekee kaiken ihmisen puolesta. Pragmaattisempi näkökulma taas on, että tekoäly täydentää ja helpottaa ihmisen tekemistä.&lt;/p&gt;&#xA;&lt;p&gt;Tätä jakoa voi soveltaa chatbotteihin. AI-botit osaavat itsenäisesti suorittaa rajatun valikoiman toistuvia, strukturoituja tehtäviä ihmisen puolesta. IA-botit taas toimivat yleisemmin apuna erilaisissa asioissa, joita ihminen tekee.&lt;/p&gt;&#xA;&lt;p&gt;Chatboteista keskustellessa nämä näkökulmat menevät helposti sekaisin. AI- ja IA-kategoriat auttavat hahmottamaan, millainen botti mihinkin tarkoitukseen kannattaa kehittää. Kun aletaan päästä muihinkin kuin pizzatilaus- ja lentolippuprojekteihin, on syytä alkaa miettiä, ollaanko niissä ehkä kehittämässä liian kunnianhimoisia tekoälyjä realiteetteihin nähden ja mikä lähestymistapa palvelisi käyttäjää parhaiten.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Teknologiavauraus</title>
      <link>https://kennethfalck.net/2016/08/17/teknologiavauraus/</link>
      <pubDate>Wed, 17 Aug 2016 12:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/08/17/teknologiavauraus/</guid>
      <description>&lt;p&gt;Hacker Newsissä on käyty kiintoisaa keskustelua teknologiavelan käsitteestä. Linkitetty artikkeli kannustaa välttämään velkaa ja panostamaan softan laatuun, jolloin se karttuu &amp;quot;teknologiavauraudeksi&amp;quot;.&lt;/p&gt;&#xA;&lt;p&gt;Asiaan on toinenkin näkökulma. Olen ehtinyt nähdä lukuisia teknologiaprojekteja, joista ei ole koskaan kehkeytynyt liiketoimintaa. Tällaisten projektien tuloksena syntyy pölyyntyvää teknologiavaurautta, joka on käytännössä arvotonta. Insinöörit ja arkkitehdit ovat kyllä tyytyväisiä luotuaan täydellisen järjestelmän. Kukaan ei vain käytä sitä.&lt;/p&gt;&#xA;&lt;p&gt;Hacker Newsin kommenteissa puhutaankin teknologiavelan sijaan &amp;quot;teknologiaoptiosta&amp;quot;. Sillä viitataan osakeoptioihin, jotka oikeuttavat ostamaan osakkeita ennalta määriteltyyn hintaan joskus tulevaisuudessa. Ostaja saa tuolloin päättää, haluaako lunastaa optionsa vai ei.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Docker for Mac</title>
      <link>https://kennethfalck.net/2016/08/01/docker-for-mac/</link>
      <pubDate>Mon, 01 Aug 2016 14:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/08/01/docker-for-mac/</guid>
      <description>&lt;p&gt;Olen käyttänyt Dockeria jo monta vuotta. Intoni hiipui jonkin verran sen jälkeen, kun Amazon julkaisi Lambda- ja API Gateway -palvelut. Ne mahdollistivat uudenlaisen Serverless-paradigman, joka teki Dockerista vähemmän kiinnostavan uusien palveluiden kehityksessä. Dockerille on silti ollut jatkuvaa pientä tarvetta siellä täällä. Se on oivallinen tapa asentaa esimerkiksi natiivisti käännettyjä Linux-versioita Node.js-moduuleista silloin, kun työskentelee Mac-koneella eikä niitä muuten olisi käytettävissä.&lt;/p&gt;&#xA;&lt;p&gt;Haasteena on aina ollut se, että Docker on vaatinut Linux-käyttöjärjestelmän. Mac- ja Windows-käyttäjät ovat joutuneet ajamaan Dockeria erilaisissa virtuaalikoneissa. On ollut Vagrant-versioita, boot2dockeria, docker-machinea ja VirtualBox-asennuksia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>GitLab Cloud IDE</title>
      <link>https://kennethfalck.net/2016/07/28/gitlab-cloud-ide/</link>
      <pubDate>Thu, 28 Jul 2016 14:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/07/28/gitlab-cloud-ide/</guid>
      <description>&lt;p&gt;Pilvikehitystyökaluissa näyttää olevan liikehdintää. Kiintoisaa nähdä, integroituuko IDE lopulta osaksi versiohallintaa (GitLab, GitHub, Bitbucket jne) vai pilvipalveluita (AWS, Azure, Google, Bluemix jne).&lt;/p&gt;&#xA;&lt;p&gt;Tämän hetkinen arvaukseni on, että AWS:n kaltaisista pilvialustoista tulee kaiken kattavia kehitysalustoja, kun niissä yhdistyvät sekä versiohallinta, projektihallinta, IDE että pilvipalvelut. Paljon pitäisi Amazoninkin kuitenkin vielä tehdä töitä, jotta kokonaisuus toimisi saumattomasti yhteen ja kehittäjien käyttäjätunnuksia olisi helppo hallita. AWS CodeCommit (Git-versiohallinta) pitäisi myös saada Eurooppaan.&lt;/p&gt;&#xA;&lt;p&gt;Samalla on hienoa, että GitLabin kaltainen avoimen koodin vaihtoehto on edelleen saatavilla ja jatkaa kehittymistä. Itse olen kuitenkin niin laiska, etten oikein viitsi enää pyörittää omia palvelimia, jos saman saa Amazonilta tai Bitbucketilta käytännössä ilmaiseksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amazon ja Cloud 9</title>
      <link>https://kennethfalck.net/2016/07/24/amazon-ja-cloud-9/</link>
      <pubDate>Sun, 24 Jul 2016 15:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/07/24/amazon-ja-cloud-9/</guid>
      <description>&lt;p&gt;Tämä kesän Cloud 9 -diili enteilee, että Amazon aikoo tarjota kehittäjille nykyistä laajempia mahdollisuuksia kehittää sovelluksia suoraan pilvessä. Ei siis tarvitse enää asentaa omalle koneelleen kehitystyökaluja, vaan pelkkä selain riittää.&lt;/p&gt;&#xA;&lt;p&gt;AWS tarjoaa jo nykyään melko kattavan web-käyttöliittymän pilvipalveluiden hallintaan. Niiden kehittäminen on kuitenkin ollut hyvin rajallista esimerkiksi Lambdan vaatimattoman tekstieditorin kautta. Sen vuoksi kehitys on mieluummin tehty omalla läppärillä.&lt;/p&gt;&#xA;&lt;p&gt;Itse olen aika skeptinen selaimessa toimivan kehittämisen suhteen. Kehittäjät haluavat asentaa omat lempieditorinsa ja muut työkalunsa omille koneilleen. Toisaalta raa&amp;#39;an koodaamisen tarve on koko ajan vähentynyt. Serverless-kehitys on enemmänkin palveluiden konfiguroimista ja &amp;quot;liimaamista&amp;quot; toisiinsa pienillä koodinpätkillä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Digitaalisaatiota abstraktiona</title>
      <link>https://kennethfalck.net/2016/07/23/digitaalisaatiota-abstraktiona/</link>
      <pubDate>Sat, 23 Jul 2016 12:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/07/23/digitaalisaatiota-abstraktiona/</guid>
      <description>&lt;p&gt;Minusta tämä Alf Rehnin kirjoitus on huono. Se vertaa digitalisaation käsitettä Internetiin ja pitää molempia epäonnistuneina abstraktioina, koska ne ovat yksinkertaistuksia taustalla olevista monimutkaisista asioista. Esimerkkiä onnistuneesta abstraktiosta ei kuitenkaan anneta.&lt;/p&gt;&#xA;&lt;p&gt;Abstraktioita tarvitaan. Asioita pitää voida käsitellä tuntematta kaikkia yksityiskohtia. Internet on ilmiö, joka yhdistää toisistaan erossa olleet ihmiset globaalin kommunikaation avulla. Digitalisaatio on ilmiö, joka muuntaa vanhat ei-digitaaliset asiat digitaalisiksi eli tietojärjestelmillä käsiteltäviksi. Näistä ilmiöistä kyetään keskustelemaan laajalti, vaikkei tunnetakaan kaikkia niiden taustalla olevia protokollia ja spesifikaatioita.&lt;/p&gt;</description>
    </item>
    <item>
      <title>HTTPS kaikkialla</title>
      <link>https://kennethfalck.net/2016/07/22/https-kaikkialla/</link>
      <pubDate>Fri, 22 Jul 2016 18:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/07/22/https-kaikkialla/</guid>
      <description>&lt;p&gt;Ennustin jokunen vuosi sitten, että koko Internet muuttuu ajan mittaan HTTPS-pohjaiseksi. Ennuste näyttää toteutuvan hyvää vauhtia. Kaikki omat palveluni ovat olleet TLS/SSL-suojattuja jo pitkään, eikä nykyään ole enää juurikaan syytä olla käyttämättä esimerkiksi ilmaisia Let&amp;#39;s Encrypt- tai AWS-sertifikaatteja.&lt;/p&gt;&#xA;&lt;p&gt;On tietysti olemassa laaja massa halpoja web-hotelleja, joilla ei ole kiinnostusta päivittää legacy-palveluitaan salatuiksi ennen kuin asiakkaat alkavat vaatia sitä. Niistä jäänee jäljelle pitkä häntä suojaamatonta HTTP-liikennettä siihen asti, kunnes webbiselaimet joskus hamassa tulevaisuudessa alkavat toimia ainoastaan HTTPS-yhteyksien kautta. Siirtymästä tullee samankaltainen kuin Flash =&amp;gt; HTML5.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Koodaamisen loppu</title>
      <link>https://kennethfalck.net/2016/06/27/koodaamisen-loppu/</link>
      <pubDate>Mon, 27 Jun 2016 15:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/06/27/koodaamisen-loppu/</guid>
      <description>&lt;p&gt;Olen ollut jo pitkään samaa mieltä tämän artikkelin kirjoittajan kanssa. Hän ei saa kovin paljon ymmärrystä kehittäjäyhteisöiltä. Muiden kehittäjien mielestä kirjoittaja on kokematon, eikä vielä ymmärrä softakehityksen väistämätöntä monimutkaisuutta.&lt;/p&gt;&#xA;&lt;p&gt;Minusta taas kirjoittaja katsoo pidemmälle. Maailma on edennyt sellaiseen vaiheeseen, jossa isoja palasia web-sovelluksista saa hankittua valmiina pilvipalveluina. Esimerkiksi käyttäjien rekisteröitymistä ja sisäänkirjautumista ei ole enää pitkään aikaan kannattanut koodata itse. Nyt sama ilmiö laajenee muillekin alueille.&lt;/p&gt;&#xA;&lt;p&gt;Artikkeli ennustaa GraphQL:stä isoa murrosta. Kun jokin ongelma ratkaistaan kertaalleen, ratkaisun eteen pultataan GraphQL-rajapinta. Sen jälkeen käytetään vastedes tätä valmista ratkaisua. Ei enää keksitä pyörää yhä uudelleen ja uudelleen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>AWS:n monimutkaisuudesta</title>
      <link>https://kennethfalck.net/2016/06/14/awsn-monimutkaisuudesta/</link>
      <pubDate>Tue, 14 Jun 2016 19:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/06/14/awsn-monimutkaisuudesta/</guid>
      <description>&lt;p&gt;Tämä artikkeli herättää mielenkiintoisia ajatuksia. Amazonin AWS-pilvialusta tosiaan on monimutkainen. Olen kokenut sen käytännössä kehittäessäni työkseni erilaisia pilvisovelluksia yli viiden vuoden ajan. Tämä ei ole mitenkään huono asia. Se vain tarkoittaa, että AWS sopii alustaksi hyvin moneen eri tarkoitukseen.&lt;/p&gt;&#xA;&lt;p&gt;AWS on monimutkainen samalla tavalla kuin Linux, macOS ja Windows ovat monimutkaisia. On vaikea opetella kokonainen käyttöjärjestelmä läpikotaisin, viimeistä API-rajapintaa myöten. Useimmat meistä keskittyvät johonkin tiettyyn sovellusalueeseen ja opettelevat vain siihen liittyvät toiminnot.&lt;/p&gt;</description>
    </item>
    <item>
      <title>WWDC 2016</title>
      <link>https://kennethfalck.net/2016/06/14/wwdc-2016/</link>
      <pubDate>Tue, 14 Jun 2016 00:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/06/14/wwdc-2016/</guid>
      <description>&lt;p&gt;WWDC 2016 eli Applen vuosittainen kehittäjätapaaminen ei oikein herättänyt intohimoja useimpien tuotejulkistusten osalta.&lt;/p&gt;&#xA;&lt;p&gt;Apple Watch vaikuttaa kokeneen Apple TV:n kohtalon ja muuttuneen pakkopullaksi, jonka suurin uudistus oli Minni Hiiri -kellotaulu. Kuntoilun seuranta on jäänyt älykellojen ainoaksi &amp;quot;killer appsiksi&amp;quot;.&lt;/p&gt;&#xA;&lt;p&gt;OS X on nyt macOS jottei sekoittuisi iOS 10:een. iOS on tärkeämpi. Sierran uudistukset vaikuttavat perusominaisuuksilta, joiden olisi pitänyt olla olemassa jo ennestään. Copy-paste. Auto Unlock. Empty Trash. Siri. Koko Mac-tuotelinjalta tuntuu puuttuvan visio ja suunta. Sormenjäljillä toimiva Apple Pay for the Web olisi kyllä mielenkiintoinen, jos toimisi Suomessa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chatbotit ja yhteisöllisyys</title>
      <link>https://kennethfalck.net/2016/06/07/chatbotit-ja-yhteis%C3%B6llisyys/</link>
      <pubDate>Tue, 07 Jun 2016 09:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/06/07/chatbotit-ja-yhteis%C3%B6llisyys/</guid>
      <description>&lt;p&gt;Oheinen juttu herätti uusia ajatuksia siitä, miten chatboteilla voidaan luoda yhteisöllisiä käyttöliittymiä. Perinteiset kännykkäsovellukset ovat käyttäjilleen irrallisia käyttökokemuksia. Kukin näprää erikseen omaa sovellustaan omalta ruudultaan. Mutta jos sovelluksessa on myös chatbot-toiminto, botti voidaan kutsua yhteiselle kanavalle, jolloin käyttäjät voivat yhdessä kysellä siltä tietoja sekä antaa sille komentoja. Tämä saattaa hyvinkin olla chatbottien &amp;quot;killer application&amp;quot;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dribbble.com/shots/2749390-Messenger-Bots-Partial-payment-Concept&#34;&gt;https://dribbble.com/shots/2749390-Messenger-Bots-Partial-payment-Concept&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mary Meeker Internet Trends 2016</title>
      <link>https://kennethfalck.net/2016/06/05/mary-meeker-internet-trends-2016/</link>
      <pubDate>Sun, 05 Jun 2016 22:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/06/05/mary-meeker-internet-trends-2016/</guid>
      <description>&lt;p&gt;Tässä joitakin havaintojani Mary Meekerin Internet Trends 2016 -raportista:&lt;/p&gt;&#xA;&lt;p&gt;Mobiilimainonta on aliarvostettua ajankäyttöön nähden. Mobiili ad-blocking kasvaa jyrkästi. Tarvitaan parempaa mobiilimainontaa. (s. 45)&lt;/p&gt;&#xA;&lt;p&gt;Käyttäjien viestintä on yhä visuaalisempaa (video+kuvat). Erityisesti Generation Z, eli alle 20-vuotiaat, kommunikoivat kuvilla ja luovat itse sisältöä. (s. 72)&lt;/p&gt;&#xA;&lt;p&gt;Messaging-sovelluksista on tulossa &amp;quot;second home screen&amp;quot;, jonka kautta käyttäjät löytävät palvelut. (s. 110)&lt;/p&gt;&#xA;&lt;p&gt;Voice-käyttöliittymät (Amazon Echo, Siri, jne) ovat jopa suositumpia kotona kuin autossa. Pääasiallinen syy käyttää on käsien/silmien vapautuminen muuhun. (s. 127)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chatbot-pankkiasiointia</title>
      <link>https://kennethfalck.net/2016/05/24/chatbot-pankkiasiointia/</link>
      <pubDate>Tue, 24 May 2016 16:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/05/24/chatbot-pankkiasiointia/</guid>
      <description>&lt;p&gt;Microsoft uskoo chat-botteihin pankkiasioinnissa. Itse tavallaan jo käytänkin niitä, sillä e-laskut tulevat aina tekstiviestinä hyväksyttäväksi kännykkään. Helppo nähdä saman palvelun laajenevan kaikenlaiseen pankkiasiointiin, joka perustuu pohjimmiltaan aika tiukkoihin ennalta määriteltyihin sääntöihin. #ConversationalCommerce.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://enterprise.microsoft.com/en-us/industries/banking-and-capital-markets/banking-on-bots/&#34;&gt;http://enterprise.microsoft.com/en-us/industries/banking-and-capital-markets/banking-on-bots/&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chatbot-nelikenttäjako</title>
      <link>https://kennethfalck.net/2016/05/23/chatbot-nelikentt%C3%A4jako/</link>
      <pubDate>Mon, 23 May 2016 21:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/05/23/chatbot-nelikentt%C3%A4jako/</guid>
      <description>&lt;p&gt;Pidän tästä nelikenttäjaosta, joka auttaa hahmottamaan chatbot-sovellusten perustyyppejä:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Erilliset sovellukset, joiden taustalla on tekoäly&lt;/li&gt;&#xA;&lt;li&gt;Erilliset sovellukset, joiden taustalla on ihmisiä&lt;/li&gt;&#xA;&lt;li&gt;Pikaviestisovellusten sisällä toimivat tekoälypalvelut&lt;/li&gt;&#xA;&lt;li&gt;Pikaviestisovellusten sisällä toimivat ihmisoperoidut palvelut&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Artikkeli luettelee joukon esimerkkejä kustakin kvadrantista. Itse ennustan suurinta menestystä Facebook Messenger -sovelluksen sisällä toimiville tekoälypalveluille, jotka yhdistävät jatkossa kaikenlaiset Facebook-kirjautumisen puitteissa tehdyt transaktiot pikaviestintään.&amp;quot;,&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.visionmobile.com/blog/2016/05/beyond-chatbot-messaging-quadrant/&#34;&gt;http://www.visionmobile.com/blog/2016/05/beyond-chatbot-messaging-quadrant/&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>DAO</title>
      <link>https://kennethfalck.net/2016/05/17/dao/</link>
      <pubDate>Tue, 17 May 2016 16:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/05/17/dao/</guid>
      <description>&lt;p&gt;Sijoitin tänään muutaman Ethereum-kolikon TheDAOon (&lt;a href=&#34;https://daohub.org/&#34;&gt;https://daohub.org/&lt;/a&gt;). Kyseessä on uudenlainen yhtiömuoto, jolla ei ole perinteistä operatiivista johtoa. Sen sijaan DAO ottaa automaattisesti rahaa sisään sijoittajilta, jakaa rahat valituille sijoituskohteille, sekä maksaa mahdollisen tuoton takaisin sijoittajille. Kohteet valitaan äänestämällä siten, että jokainen voi äänestää sen mukaan paljonko on sijoittanut.&lt;/p&gt;&#xA;&lt;p&gt;DAO eli Decentralized Autonomous Organization poikkeaa  perinteisistä yhtiömuodoista sen vuoksi, että sen toimintasäännöt on määritelty Ethereum-alustan päällä ajettavaan ohjelmakoodiin. Kuka tahansa voi lukea koodin ja todeta sen oikeelliseksi. Ei ole enää yritysjohtoa tai pankkeja, joiden toimintaan pitäisi luottaa ja joiden kautta rahaliikenne kulkisi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>React on voittamassa</title>
      <link>https://kennethfalck.net/2016/05/15/react-on-voittamassa/</link>
      <pubDate>Sun, 15 May 2016 21:42:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/05/15/react-on-voittamassa/</guid>
      <description>&lt;p&gt;Olen useiden vuosien ajan ollut sitä mieltä, että Angular ja React vastaavat erilaisten web-sovellusten tarpeisiin ja molempia kannattaa käyttää rinnakkain projektista riippuen. Nyt olen kääntämässä kelkkani kokonaan Reactin hyväksi, koska sen ympärille on kasvanut laaja ekosysteemi erilaisia kirjastoja ja julkaisutyökaluja. On yhä vaikeampi perustella mitä hyötyä Angularista on projektille. Sillä tehdyt sovellukset ovat raskaita ajaa, ja teknisesti epäystävällisiä SEO-optimoinnin ja some-jakamisen kannalta.&lt;/p&gt;&#xA;&lt;p&gt;Reactia vaivasi pitkään &amp;quot;legopalikkaongelma&amp;quot;. Tarjolla oli hienoja yksittäisiä palikoita muttei hyvää valmista pohjaa sovelluksille. Nykyään React-sovellusten pohjaksi löytyy varsin mielenkiintoisia valmiita alustoja, kuten esimerkiksi Gatsby (&lt;a href=&#34;https://github.com/gatsbyjs/gatsby&#34;&gt;https://github.com/gatsbyjs/gatsby&lt;/a&gt;).&lt;/p&gt;</description>
    </item>
    <item>
      <title>HTTP/2 Server Push</title>
      <link>https://kennethfalck.net/2016/05/03/http/2-server-push/</link>
      <pubDate>Tue, 03 May 2016 12:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/05/03/http/2-server-push/</guid>
      <description>&lt;p&gt;According to this article, HTTP/2 Server Push is already working for 90% of Internet browsers, with the most notable exception being Safari users. HTTP/2 Server Push makes it possible to bundle CSS/JS/image resources needed by web pages in the initial server response, reducing extra round-trip delays when opening a web page for the first time. &lt;a href=&#34;https://www.shimmercat.com/en/blog/articles/browsers-with-http2-push/#what-s-http-2-push-and-why-it-is-important-&#34;&gt;https://www.shimmercat.com/en/blog/articles/browsers-with-http2-push/#what-s-http-2-push-and-why-it-is-important-&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;There seems to be a lot of demand for HTTP/2 in Amazon CloudFront, which could make it easy to deploy in existing services. No ETA from Amazon though. &lt;a href=&#34;https://forums.aws.amazon.com/thread.jspa?threadID=173140&amp;amp;start=50&amp;amp;tstart=0&#34;&gt;https://forums.aws.amazon.com/thread.jspa?threadID=173140&amp;amp;start=50&amp;amp;tstart=0&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chatbots and menus</title>
      <link>https://kennethfalck.net/2016/05/02/chatbots-and-menus/</link>
      <pubDate>Mon, 02 May 2016 23:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/05/02/chatbots-and-menus/</guid>
      <description>&lt;p&gt;Another interesting post on chat bots. Recurring observation: Chat bots won&amp;#39;t be so much about typing text. They will be more about presenting smart, clickable menus to users, like Facebook Messenger bots already do. Text-only bot interaction will quickly feel tedious, even with natural language support. Messaging platforms that can&amp;#39;t provide smart menus and embedded buttons will be at a disadvantage.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://pilot.co/blog/chatbot-dilemma/&#34;&gt;https://pilot.co/blog/chatbot-dilemma/&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chatbots</title>
      <link>https://kennethfalck.net/2016/04/24/chatbots/</link>
      <pubDate>Sun, 24 Apr 2016 14:23:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/04/24/chatbots/</guid>
      <description>&lt;p&gt;I see chat bots as a new UX channel that complements the other existing ones: Mobile apps, desktop apps, tablet apps, wearable apps, VR apps. Chat bots will be primarily used for use cases where the user has already initiated a transaction, and wants to continue communicating around that transaction.&lt;/p&gt;&#xA;&lt;p&gt;The transactions might be about traveling, going to the movies, ordering pizza and so on. They will be things that are small enough to not justify the distraction of sending a push message and launching the dedicated app. Just small notifications that you can open in the chat application that you are already using anyway.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Valoautomaatiota AWS IoT -alustalla</title>
      <link>https://kennethfalck.net/2016/01/17/valoautomaatiota-aws-iot-alustalla/</link>
      <pubDate>Sun, 17 Jan 2016 19:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/01/17/valoautomaatiota-aws-iot-alustalla/</guid>
      <description>&lt;img style=&#34;max-width:100%;padding:0&#34; title=&#34;Hue Ambilight&#34; alt=&#34;Hue Ambilight&#34; src=&#34;https://kennethfalck.net/images/assets/s3-images/hue-ambilight.jpg&#34;&gt;&#xA;&lt;p&gt;Tämän viikonlopun harrasteprojektinani oli kodin valaisimien automatisointi Philips Huen, Z-Waven ja AWS IoT:n avulla. Halusin ratkaisun, jossa valot menevät automaattisesti päälle kotiin saapuessa ja toimintaa voi ohjailla pilvestä käsin.&lt;/p&gt;&#xA;&lt;p&gt;Palapelin palaset olivat:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a target=&#34;_blank&#34; href=&#34;http://www.amazon.co.uk/gp/product/B0152WXCV4/ref=as_li_tl?ie=UTF8&amp;camp=1634&amp;creative=19450&amp;creativeASIN=B0152WXCV4&amp;linkCode=as2&amp;tag=kenfalsblo-21&#34; rel=&#34;noopener noreferrer&#34;&gt;Philips Hue&lt;/a&gt; -valo-ohjain ja -valaisimet&lt;/li&gt;&#xA;&lt;li&gt;&lt;a target=&#34;_blank&#34; href=&#34;http://www.clasohlson.com/fi/Liiketunnistin-Vision-ZP3102,-Z-wave/36-5750&#34; rel=&#34;noopener noreferrer&#34;&gt;Vision ZP3102&lt;/a&gt; Z-Wave-liikkeentunnistin&lt;/li&gt;&#xA;&lt;li&gt;&lt;a target=&#34;_blank&#34; href=&#34;https://www.verkkokauppa.com/fi/product/58729/fssrb/Z-Wave-Me-UZB-langaton-Z-Wave-me-USB-moduli&#34; rel=&#34;noopener noreferrer&#34;&gt;Z-Wave.Me UZB&lt;/a&gt; -ohjaintikku (kytkettynä kotona olevaan Macciin)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a target=&#34;_blank&#34; href=&#34;https://github.com/kennu/node-openzwave&#34; rel=&#34;noopener noreferrer&#34;&gt;Node.js OpenZWave&lt;/a&gt; -kirjasto (hieman itse paranneltu versio)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a target=&#34;_blank&#34; href=&#34;https://aws.amazon.com/iot/&#34; rel=&#34;noopener noreferrer&#34;&gt;AWS IoT&lt;/a&gt; -pilvialusta sekä pari muuta AWS-palvelua (&lt;a target=&#34;_blank&#34; href=&#34;https://aws.amazon.com/lambda/&#34; rel=&#34;noopener noreferrer&#34;&gt;Lambda&lt;/a&gt;, &lt;a target=&#34;_blank&#34; href=&#34;https://aws.amazon.com/lambda/&#34; rel=&#34;noopener noreferrer&#34;&gt;SNS&lt;/a&gt;)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a target=&#34;_blank&#34; href=&#34;https://aws.amazon.com/iot/sdk/&#34; rel=&#34;noopener noreferrer&#34;&gt;AWS IoT Device SDK&lt;/a&gt; -ohjelmointialusta (Macissa)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a target=&#34;_blank&#34; href=&#34;http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/IotData.html&#34; rel=&#34;noopener noreferrer&#34;&gt;AWS SDK&lt;/a&gt; -ohjelmointialusta (Lambdassa)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Kuten valinnoista voi arvata, projektin tavoitteena ei ollut yksinkertaisin mahdollinen ratkaisu, vaan käytännön tuntuman saaminen AWS IoT -alustaan ja Z-Waveen. Helpompaan kotiautomaatioon löytyy muita ratkaisuja.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mikrovertailu mikropalvelualustoista</title>
      <link>https://kennethfalck.net/2016/01/11/mikrovertailu-mikropalvelualustoista/</link>
      <pubDate>Mon, 11 Jan 2016 13:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2016/01/11/mikrovertailu-mikropalvelualustoista/</guid>
      <description>&lt;p&gt;Amazonin &lt;a target=&#34;_blank&#34; href=&#34;https://aws.amazon.com/lambda/&#34; rel=&#34;noopener noreferrer&#34;&gt;Lambda&lt;/a&gt;- ja &lt;a target=&#34;_blank&#34; href=&#34;https://aws.amazon.com/api-gateway/&#34; rel=&#34;noopener noreferrer&#34;&gt;API Gateway&lt;/a&gt; -palveluilla voi kehittää omia mikropalveluita pilveen ilman erillisiä apuvälineitä. Olen itsekin aloittanut useita pieniä kehitysprojekteja pelkkää AWS Console -käyttöliittymää käyttäen. Projektin saa helposti alulle ja kehittäminen on edullista ja mukavaa, koska erillisiä palvelimia käyttöjärjestelmäasennuksineen ei tarvita.&lt;/p&gt;&#xA;&lt;p&gt;Projektien edetessä käy kuitenkin melko poikkeuksetta selväksi, miksi jonkinlainen hallinta-alusta on tarpeen:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Lähdekoodi ja palvelujen konfiguraatio on saatava talteen Git-versiohallintaan&lt;/li&gt;&#xA;&lt;li&gt;Lambda-funktioissa tarvitaan apumoduuleja, kuten Promise- ja HTTP-kirjastoja&lt;/li&gt;&#xA;&lt;li&gt;Tarvitaan käyttöön muitakin pilviresursseja (kuten tietokantoja ja jonoja)&lt;/li&gt;&#xA;&lt;li&gt;Sovelluksen tietoturvaa ja käyttöoikeuksia on hallittava keskitetysti&lt;/li&gt;&#xA;&lt;li&gt;Sovelluksen julkaisua halutaan vaiheistaa development- ja production-vaiheisiin&lt;/li&gt;&#xA;&lt;li&gt;Vanhat sovellukset pitää saada siivottua pois kaikkine rönsyineen&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Näistä syistä avoimen lähdekoodin markkinoille on ilmaantunut useita kehitysalustoja, jotka on tarkoitettu mikropalveluiden kehittämiseen Amazonin ympäristössä. Tässä lyhyt katsaus.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amazon Glacier henkilökohtaisena varmuuskopiotyökaluna</title>
      <link>https://kennethfalck.net/2015/12/30/amazon-glacier-henkil%C3%B6kohtaisena-varmuuskopioty%C3%B6kaluna/</link>
      <pubDate>Wed, 30 Dec 2015 00:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2015/12/30/amazon-glacier-henkil%C3%B6kohtaisena-varmuuskopioty%C3%B6kaluna/</guid>
      <description>&lt;p&gt;Kokeilin hiljattain &lt;a target=&#34;_blank&#34; href=&#34;https://www.amazon.com/clouddrive/home&#34; rel=&#34;noopener noreferrer&#34;&gt;Amazon Cloud Driveä&lt;/a&gt; henkilökohtaiseen varmuuskopiointiin enkä ollut siihen kovin tyytyväinen. Käyttöliittymä jätti paljon toivomisen varaa, ja palvelun hinta ($59.99 / vuosi) on suhteellisen kallis, ellei aio varmuuskopioida useita satoja gigatavuja dataa.&lt;/p&gt;&#xA;&lt;p&gt;Omassa tapauksessani varmuuskopioitavaa on noin 120 GB verran. Data on lähinnä vanhoja valokuvia ja sähköposteja, joita olisin ennen vanhaan polttanut DVD-levyille pysyväisarkistointia varten. Kun tämä datamäärä tallennetaan Amazonin &lt;a target=&#34;_blank&#34; href=&#34;https://aws.amazon.com/glacier/&#34; rel=&#34;noopener noreferrer&#34;&gt;Glacier-palveluun&lt;/a&gt;, tulee hinnaksi noin $12,50 / vuosi. Hinta perustuu siihen, että dataa ei tarvitse koskaan palauttaa. Se on tallessa vain varmuuden varalla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Serverless ja Let&#39;s Encrypt käytössä</title>
      <link>https://kennethfalck.net/2015/12/27/serverless-ja-lets-encrypt-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Sun, 27 Dec 2015 19:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2015/12/27/serverless-ja-lets-encrypt-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Blogini käyttää nyt &lt;a target=&#34;_blank&#34; href=&#34;http://www.serverless.com/&#34; rel=&#34;noopener noreferrer&#34;&gt;Serverless framework&lt;/a&gt; -alustaa AWS-toiminnallisuuden pohjana. Serverless soveltuu mainiosti yksinkertaisiin web-sovelluksiin, jotka rakennetaan yhdistämällä staattinen Amazon S3 -pohjainen HTML-sovellus, Amazon API Gateway -rajapinta sekä Amazon Lambda -taustajärjestelmä. Serverless huolehtii kaikista yksityiskohdista ja julkaisee sovelluksen AWS:ssä CloudFormation-pinona, jolloin se pysyy siististi hallinnassa.&lt;/p&gt;&#xA;&lt;p&gt;Päädyin käyttämään blogin tietokantaratkaisuna Amazonin SimpleDB:n ja S3:n yhdistelmää. Syynä ratkaisuun oli hinnoittelumalli. SimpleDB:stä maksetaan toteutuneen käytön mukaan, eikä tietokantaresursseja tarvitse provisioida kiinteästi etukäteen DynamoDB:n ja RDS:n tapaan. SimpleDB:ssä on kuitenkin kokorajoituksia, joiden vuoksi osa datasta on tallennettava erikseen S3:een.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blogi siirretty Amazon S3:een</title>
      <link>https://kennethfalck.net/2015/08/03/blogi-siirretty-amazon-s3een/</link>
      <pubDate>Mon, 03 Aug 2015 17:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2015/08/03/blogi-siirretty-amazon-s3een/</guid>
      <description>&lt;p&gt;Sain kesälomani aikana päätökseen projektin, jossa siirsin tämä blogin julkisen osuuden kokonaan Amazonin S3:een. Blogi on nyt tallennettu staattisina tiedostoina S3-palveluun, jolloin erillistä web-palvelinta ei enää tarvita. Kustannus on karkeasti arvioiden luokkaa 50 snt / miljoona sivulatausta, eli tällaisessa kevyessä käytössä paljon vähemmän kuin oman virtuaalipalvelimen jatkuva pyörittäminen.&lt;/p&gt;&#xA;&lt;p&gt;Tarvitsen tosin edelleen yhtä virtuaalipalvelinta, tai tarkemmin sanoen Docker-konttia, joka pyörittää blogin ylläpitokäyttöliittymää. Ideana on, että ylläpito hoidetaan tämän erillisen palvelimen kautta ja muutokset julkaistaan S3:een. Tarkoitus on ennen pitkää päästä eroon myös ylläpitopalvelimesta ja hoitaa sisällönhallinta kokonaan selaimessa, sekä tallentaa sisällöt Amazonin DynamoDB:hen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pieni Amazon API Gateway -projekti</title>
      <link>https://kennethfalck.net/2015/07/20/pieni-amazon-api-gateway-projekti/</link>
      <pubDate>Mon, 20 Jul 2015 08:57:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2015/07/20/pieni-amazon-api-gateway-projekti/</guid>
      <description>&lt;p&gt;Aina kun lähden matkoille, tässä tapauksessa kesämökille, haluan varmistaa, että saan tarvittaessa yhteyden kotikoneeseeni. Tämä tarkoittaa, että minun on tiedettävä kotona olevan nettiyhteyden IP-osoite, joka saattaa vaihtua silloin tällöin.&lt;/p&gt;&#xA;&lt;p&gt;Päätin kokeilla, miten Amazonin uusi &lt;a target=&#34;_blank&#34; href=&#34;http://aws.amazon.com/api-gateway/&#34; rel=&#34;noopener noreferrer&#34;&gt;API Gateway&lt;/a&gt; toimisi tähän tarkoitukseen. Kotikoneella pyörivä cron-job ottaisi säännöllisesti yhteyden pilvessä olevaan API-rajapintaan, joka näkisi mistä IP-osoitteesta pyyntö tulee ja päivittäisi sen &lt;a target=&#34;_blank&#34; href=&#34;http://aws.amazon.com/lambda/&#34; rel=&#34;noopener noreferrer&#34;&gt;Lambda&lt;/a&gt;-funktiolla &lt;a target=&#34;_blank&#34; href=&#34;http://aws.amazon.com/route53/&#34; rel=&#34;noopener noreferrer&#34;&gt;Route 53&lt;/a&gt;:n DNS-tietueeseen.&lt;/p&gt;&#xA;&lt;p&gt;Projektiin kului aikaa muutama tunti ja se oli opettavainen. Amazonin API Gateway on pääosin hyvin yksinkertainen ja suoraviivainen käyttää. API-rajapintojen julkaiseminen sekä niiden kytkeminen Lambda-funktioihin hoituu GUI:ta klikkailemalla. Ongelmia alkoi tulla eteen vasta siinä vaiheessa, kun Lambda-funktiosta käsin piti päästä lukemaan HTTP-clientin IP-osoite&lt;/p&gt;</description>
    </item>
    <item>
      <title>Angularista Reactiin - Osa 2</title>
      <link>https://kennethfalck.net/2015/07/08/angularista-reactiin-osa-2/</link>
      <pubDate>Wed, 08 Jul 2015 21:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2015/07/08/angularista-reactiin-osa-2/</guid>
      <description>&lt;p&gt;Kirjoitin &lt;a target=&#34;_blank&#34; href=&#34;http://kfalck.net/2015/07/05/angular-sovelluksen-muuntaminen-react-pohjaiseksi&#34; rel=&#34;noopener noreferrer&#34;&gt;aiemmin&lt;/a&gt; olevani siirtämässä blogiani Angular-Fullstack-alustasta React-pohjaiseksi. Projekti eteni tänään, kun sain julkaistua blogistani uuden version. Se ei enää käytä Angular.js:ää lainkaan vaan pohjautuu &lt;a target=&#34;_blank&#34; href=&#34;https://github.com/rackt/react-router&#34; rel=&#34;noopener noreferrer&#34;&gt;React-Routeriin&lt;/a&gt; ja Angular-näkymistä muokattuihin React-komponentteihin.&lt;/p&gt;&#xA;&lt;p&gt;Siirtymä oli suhteellisen helppo tehdä, koska blogissa ei ole kovinkaan paljon toiminnallisuutta. Se edellytti suurin piirtein seuraavia asioita:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Angularin $resource-objektit korvattiin omilla yksinkertaisilla jQuery-ajaxia käyttävillä komponenteilla.&lt;/li&gt;&#xA;&lt;li&gt;Angularin $timeout, $location, $window ym. -objektit korvattiin selaimen sisäänrakennetuilla versioilla.&lt;/li&gt;&#xA;&lt;li&gt;Angularin $cookieStore korvattiin jQuery.cookie -kirjastolla.&lt;/li&gt;&#xA;&lt;li&gt;Angularin bootstrap korvattiin ReactRouter.run() -kutsulla, joka käynnistää sovelluksen.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Monimutkaisemmassa sovelluksessa olisi ollut ehkä syytä harkita Backbonea jQuery-ajaxin sijaan, mutta tässä tapauksessa en kaivannut sitä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Angular-sovelluksen muuntaminen React-pohjaiseksi</title>
      <link>https://kennethfalck.net/2015/07/04/angular-sovelluksen-muuntaminen-react-pohjaiseksi/</link>
      <pubDate>Sat, 04 Jul 2015 21:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2015/07/04/angular-sovelluksen-muuntaminen-react-pohjaiseksi/</guid>
      <description>&lt;p&gt;Minulla on pitkä perinne blogini päivittämisestä aika ajoin uusille teknologia-alustoille. Viimeisen vuoden ajan alustana on ollut &lt;a target=&#34;_blank&#34; href=&#34;https://github.com/DaftMonk/generator-angular-fullstack&#34; rel=&#34;noopener noreferrer&#34;&gt;Angular-Fullstack&lt;/a&gt;, ja yhdessä &lt;a target=&#34;_blank&#34; href=&#34;https://github.com/prerender/prerender&#34; rel=&#34;noopener noreferrer&#34;&gt;Prerender.io&lt;/a&gt;:n kanssa se on toiminut hyvin. Sivusto indeksoituu siististi hakukoneisiin ja artikkelit ovat jaettavissa sosiaalisessa mediassa.&lt;/p&gt;&#xA;&lt;p&gt;Angular-Fullstack on kuitenkin sikäli rajallinen ratkaisu, että se vaatii oman Node.js-palvelimen ylläpitämistä. Olen sillä kannalla, että jatkossa web-sivustot tullaan palvelemaan enenevissä määrin staattisina tiedostoina. Tällaisessa blogissa ei ole pohjimmiltaan mitään sellaista toiminnallisuutta, joka edellyttäisi oman palvelimen ylläpitämistä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kokemuksia EC2 Container Servicestä</title>
      <link>https://kennethfalck.net/2015/05/11/kokemuksia-ec2-container-servicest%C3%A4/</link>
      <pubDate>Mon, 11 May 2015 11:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2015/05/11/kokemuksia-ec2-container-servicest%C3%A4/</guid>
      <description>&lt;p&gt;Amazonin EC2 Container Service siirtyi jokin aika sitten beta-vaiheesta tuotantoon. Sitä voi hallita AWS Console -käyttöliittymästä ja palvelu toimii myös esimerkiksi eu-west-1-alueella eli Irlannissa, jossa tämäkin blogi pyörii nykyään. Kirjasin tähän ylös muutamia (teknisiä) huomioita blogin siirtämisestä perinteisemmästä Docker-ympäristöstä ECS:ään.&lt;/p&gt;&#xA;&lt;h2&gt;CPU- ja RAM-rajoitukset&lt;/h2&gt;&#xA;&lt;p&gt;Suurin ratkaistava ongelma oli se, että AWS EC2 Container Service vaatii määrittelemään jokaisen kontin muistintarpeen megatavun tarkkuudella. Perus-Dockerissa tämän voi ohittaa ja luottaa vain siihen, että muistia on riittävästi. ECS:ssä pitää ensin selvittää, paljonko muistia kukin kontti tarvitsee, ja huolehtia että EC2-instanssi sisältää ainakin niiden yhteenlasketun määrän verran RAM-muistia. Omien kokeilujeni perusteella ECS-agentti ei huomioi swap-muistia, vaan antaa virheilmoituksen, jos konttien kokonaisvaraus ylittää RAM-muistin määrän.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amazon EC2 Container Service</title>
      <link>https://kennethfalck.net/2015/03/23/amazon-ec2-container-service/</link>
      <pubDate>Mon, 23 Mar 2015 11:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2015/03/23/amazon-ec2-container-service/</guid>
      <description>&lt;p&gt;Siirsin viime viikonloppuna blogini vaihteeksi uudelle alustalle. Tällä kertaa se pyörii Amazonin &lt;a target=&#34;_blank&#34; href=&#34;http://aws.amazon.com/ecs/&#34; rel=&#34;noopener noreferrer&#34;&gt;EC2 Container Servicessä&lt;/a&gt;, joka tarjoaa alustan Docker-konttien ajamiseen. Kehitin myös pienen &lt;a target=&#34;_blank&#34; href=&#34;https://github.com/kennu/ecs&#34; rel=&#34;noopener noreferrer&#34;&gt;ECS Wrapper&lt;/a&gt; -työkalun, joka yksinkertaistaa ECS:n käyttöä komentoriviltä.&lt;/p&gt;&#xA;&lt;p&gt;Siirtäminen oli melko helppoa, sillä olin jo aiemmin paketoinut blogini ja kaikki siihen liittyvät taustapalvelut Docker-konteiksi. Kontit ja niiden tarvitsema data piti vain siirtää Digital Oceanista Amazoniin.&lt;/p&gt;&#xA;&lt;p&gt;Amazonin EC2 Container Service on ilmainen palvelu, joka huolehtii Docker-klusterin metadatasta. Käyttäjän täytyy itse käynnistää maksullinen EC2-virtuaalikone ja ajaa siinä &lt;a target=&#34;_blank&#34; href=&#34;http://thecloudmarket.com/image/ami-4d3c1a7d--amzn-ami-2014-09-1-amazon-ecs-optimized-preview3&#34; rel=&#34;noopener noreferrer&#34;&gt;ECS-Optimized Amazon Linuxia&lt;/a&gt;. Tämä Amazon Linuxin versio sisältää ECS Agentin, joka liittää virtuaalikoneen osaksi Docker-klusteria. Klusteriksi riittää yksikin t2.micro-tason virtuaalikone, joten ECS:ää voi kokeilla hyvin pienin kustannuksin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Docker Machine/Swarm/Compose</title>
      <link>https://kennethfalck.net/2014/12/08/docker-machine/swarm/compose/</link>
      <pubDate>Mon, 08 Dec 2014 21:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2014/12/08/docker-machine/swarm/compose/</guid>
      <description>&lt;p&gt;Dockerin kehityksen tahdissa on välillä haastavaa pysyä mukana. Viime viikolla tehty &lt;a target=&#34;_blank&#34; href=&#34;https://blog.docker.com/2014/12/announcing-docker-machine-swarm-and-compose-for-orchestrating-distributed-apps/&#34; rel=&#34;noopener noreferrer&#34;&gt;julkistus&lt;/a&gt; oli sen verran iso, että ajattelin kirjoittaa siitä lyhyesti suomeksi.&lt;/p&gt;&#xA;&lt;p&gt;Aiemmin Docker on ollut yksi monoliittinen Linux-sovellus, joka on hoitanut konttien virtualisointia ja hallintaa. Sen ympärillä on ollut joitakin muita projekteja kuten Fig ja Boot2docker.&lt;/p&gt;&#xA;&lt;p&gt;Uudessa mallissa Docker ja sen apuprojektit jakaantuvat neljään osaan:&lt;/p&gt;&#xA;&lt;div class=&#34;well&#34;&gt;&#xA;&lt;dl&gt;&#xA;&lt;dt&gt;Docker Engine&lt;/dt&gt;&#xA;&lt;dd&gt; Perinteinen Docker-virtuaaliympäristö, joka ajaa kontteja yksittäisessä Linux-palvelimessa (tai kehittäjän omalla läppärillä). Kontit ovat paketoituja Linux-binäärisovelluksia, jotka sisältävät kaikki ajamisessaan tarvittavat riippuvuudet.&lt;/dd&gt;&#xA;&lt;dt&gt;Docker Machine&lt;/dt&gt;&#xA;&lt;dd&gt;Apuväline, joka käynnistää Docker Enginejä pyörimään esimerkiksi Digital Oceanin pilvipalvelimille tai omalle tietokoneelle kehityskäyttöä varten. Tukee jatkossa myös Amazonin AWS:ää ja muita pilviä. Omalla Mac/Windows-koneella käytetään alustana edelleen Boot2dockeria, mutta Docker Machine asentaa sen automaattisesti.&lt;/dd&gt;&#xA;&lt;dt&gt;Docker Swarm&lt;/dt&gt;&#xA;&lt;dd&gt;Klusterointityökalu, joka ohjaa joukkoa Docker Engine-palvelimia. Palvelimet voi käynnistää Docker Machinella ja lisätä sitten hallittavaksi Docker Swarmiin. Swarmin rajapinnan on tarkoitus olla sama kuin Docker Enginessä, jolloin koko klusteri näyttää yhdeltä isolta Docker-palvelimelta. Kontit ripotellaan automaattisesti ympäri klusteria halutun strategian mukaisesti.&lt;/dd&gt;&#xA;&lt;dt&gt;Docker Compose&lt;/dt&gt;&#xA;&lt;dd&gt;Figin kaltainen hallintaväline, joka lukee konfiguraation YAML-tiedostosta ja käynnistää kontit pyörimään Docker Engineen. Ideana on, että sovellukset saa aina käyntiin yksinkertaisella &#34;docker up&#34; -komennolla kaikkine riippuvuuksineen. Tulee tukemaan myös klusteroituja sovelluksia Docker Swarmin avulla.&lt;/dd&gt;&lt;/dl&gt;&lt;/div&gt;&#xA;&lt;p&gt;Itse uskon viimeaikaisesta &lt;a target=&#34;_blank&#34; href=&#34;https://coreos.com/blog/rocket/&#34; rel=&#34;noopener noreferrer&#34;&gt;kritiikistä&lt;/a&gt; huolimatta yhä Dockeriin ja mielestäni tämä uusi jako on järkevä. Dockerin filosofiaan on alusta asti kuulunut käytännönläheisyys ja käyttömukavuus. Ne näyttävät toteutuvan edelleen eikä muissa kilpailevissa projekteissa välttämättä ymmärretä samalla tavalla niiden päälle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miten selvitä Docker-palvelimen levyn täyttymisestä</title>
      <link>https://kennethfalck.net/2014/11/22/miten-selvit%C3%A4-docker-palvelimen-levyn-t%C3%A4yttymisest%C3%A4/</link>
      <pubDate>Sat, 22 Nov 2014 16:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2014/11/22/miten-selvit%C3%A4-docker-palvelimen-levyn-t%C3%A4yttymisest%C3%A4/</guid>
      <description>&lt;p&gt;Pystytin hiljattain Amazonin AWS-pilveen Docker-ympäristön ja törmäsin ensimmäistä kertaa tilanteeseen, jossa Docker-palvelimen levy pääsi täyttymään. Tämä aiheutti /var/lib/docker-hakemiston sisältämän monimutkaisen rakenteen korruptoitumisen, jolloin osa Docker-levykuvista (imageista) meni rikki, eikä Docker suostunut edes käynnistämään uusia kontteja (containereita).&lt;/p&gt;&#xA;&lt;p&gt;Ongelma ratkesi lopulta kopioimalla vanha sisältö talteen (/olddata-hakemistoon) ja luomalla kokonaan uusi /var/lib/docker-hakemisto. Tällöin Dockerin levykuvat ja kontit voi luoda tyhjästä uudelleen, mikä on helppoa, kun ne on jo ennestään määritelty Figillä fig.yml-tiedostoon. Omassa tapauksessani käynnistyvät tällöin uudet MongoDB- ja Postgres-kontit, joissa on tyhjä tietokanta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>SSH-hakkerien estäminen OS X:ssä</title>
      <link>https://kennethfalck.net/2014/08/26/ssh-hakkerien-est%C3%A4minen-os-xss%C3%A4/</link>
      <pubDate>Tue, 26 Aug 2014 17:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2014/08/26/ssh-hakkerien-est%C3%A4minen-os-xss%C3%A4/</guid>
      <description>&lt;p&gt;Huomasin tänään kotitietokoneeni (Mavericks 10.9.4) järjestelmälogissa toistuvia yrityksiä kirjautua ssh-yhteyden kautta root-käyttäjätunnuksella sisään. Yritykset tulivat Pekingissä sijaitsevasta IP-osoitteesta, ja mitä ilmeisimmin niiden tarkoitus oli murtaa salasana bruteforce-menetelmällä.&lt;/p&gt;&#xA;&lt;p&gt;Pienellä googlailulla tähän ongelmaan löytyi apuväline nimeltä fail2ban, jonka voi asentaa helposti Homebrew-työkalun kautta. Toimiakseen fail2ban tarvitsee vain asetustiedoston /usr/local/etc/fail2ban/jail.local, johon tehdään seuraavat asetukset:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;[ssh-ipfw]&#xA;enabled  = true&#xA;filter   = sshd&#xA;action   = ipfw[localhost=192.168.0.69]&#xA;logpath  = /var/log/system.log&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Asetuksissa mainittuna localhost-osoitteena käytin koneeni omaa IP-osoitetta, ja se näytti toimivan, vaikka tarkka merkitys jäi hieman epäselväksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>PhantomJS render() performance</title>
      <link>https://kennethfalck.net/2014/08/18/phantomjs-render-performance/</link>
      <pubDate>Mon, 18 Aug 2014 18:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2014/08/18/phantomjs-render-performance/</guid>
      <description>&lt;p&gt;I recently tested the &lt;a target=&#34;_blank&#34; href=&#34;http://phantomjs.org/api/webpage/method/render.html&#34; rel=&#34;noopener noreferrer&#34;&gt;render()&lt;/a&gt; performance of PhantomJS using different output methods. Calling render() saves a screenshot of the webpage that&amp;#39;s currently loaded into PhantomJS and it can be done repeatedly to create a frame-by-frame video while the page is still loading. My motivation was to see if there&amp;#39;s any difference depending on whether the images are saved to files, written to stdout or dumped to memory in base64 format.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Muutama sana 3D-tulostamisesta</title>
      <link>https://kennethfalck.net/2013/09/03/muutama-sana-3d-tulostamisesta/</link>
      <pubDate>Tue, 03 Sep 2013 18:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/09/03/muutama-sana-3d-tulostamisesta/</guid>
      <description>&lt;p&gt;Olen seurannut 3D-tulostamisen kehitystä sivusilmällä jo aika pitkään. Kuitenkin vasta tänä syksynä meille ilmestyi töihin &lt;a href=&#34;http://store.makerbot.com/replicator2x.html&#34;&gt;MakerBot Replicator 2X&lt;/a&gt;, jolla on ollut mahdollisuus ottaa vähän käytännön tuntumaa aiheeseen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Minecraft ja Oculus Rift</title>
      <link>https://kennethfalck.net/2013/08/13/minecraft-ja-oculus-rift/</link>
      <pubDate>Tue, 13 Aug 2013 22:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/08/13/minecraft-ja-oculus-rift/</guid>
      <description>&lt;p&gt;Oculus Rift Developer Kittini saapui vihdoin ja pääsin kokeilemaan Minecraftin VR-versiota eli &lt;a href=&#34;http://www.mtbs3d.com/phpbb/viewtopic.php?f=142&amp;t=17489&#34;&gt;Minecriftiä&lt;/a&gt;. Ilokseni huomasin, että se tukee Minecraft 1.6.2:ta helposti asennettavalla &lt;a href=&#34;https://minecraftvr.ci.cloudbees.com/job/minecrift-1.6.2/lastSuccessfulBuild/artifact/&#34;&gt;installerilla&lt;/a&gt;, joka toimii myös OS X:ssä. Kannattaa kokeilla, sillä Minecraft tukee nykyään useita eri profiileja ja samalla asennuksella voi helposti pelata myös ihan perinteisessä tilassa.&lt;/p&gt;&#xA;&lt;!-- more --&gt;&#xA;&lt;p&gt;Yleistuntuma &lt;a href=&#34;http://www.oculusvr.com/&#34;&gt;Oculus Riftistä&lt;/a&gt; on, että se on ihan ensimmäinen minimaalinen VR-toteutus, jolla voi oikeasti tehdä jotain. Kuten laitetta kokeilleet tietävät, resoluutio on suhteellisen kehno ja kuva näyttää suttuiselta. Mutta se seuraa reaaliajassa pään liikkeitä ja kolmiulotteisessa maailmassa tuntee tosiaan olevansa sisällä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miksi Google kehittää Chrome OS:ää ja Androidia rinnakkain</title>
      <link>https://kennethfalck.net/2013/07/29/miksi-google-kehitt%C3%A4%C3%A4-chrome-os%C3%A4%C3%A4-ja-androidia-rinnakkain/</link>
      <pubDate>Mon, 29 Jul 2013 19:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/07/29/miksi-google-kehitt%C3%A4%C3%A4-chrome-os%C3%A4%C3%A4-ja-androidia-rinnakkain/</guid>
      <description>&lt;p&gt;Tämä &lt;a href=&#34;http://appleinsider.com/articles/13/07/29/google-appears-ready-to-ditch-android-over-its-intellectual-property-issues&#34;&gt;AppleInsiderin kirjoitus&lt;/a&gt; sai pohtimaan mobiilikäyttöjärjestelmien tulevaisuutta. Kiinnostavin kysymys on minun mielestäni se, mitä tapahtuu kännyköiden ja tablettien &amp;quot;natiivikäyttöjärjestelmille&amp;quot; siinä vaiheessa, kun kaiken voi oikeasti tehdä yhtä hyvin webbiselaimessakin.&lt;/p&gt;&#xA;&lt;p&gt;Itse näen tulevaisuuden suurin piirtein näin:&lt;/p&gt;</description>
    </item>
    <item>
      <title>OS X: MongoDB ja soft rlimits too low</title>
      <link>https://kennethfalck.net/2013/07/02/os-x-mongodb-ja-soft-rlimits-too-low/</link>
      <pubDate>Tue, 02 Jul 2013 21:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/07/02/os-x-mongodb-ja-soft-rlimits-too-low/</guid>
      <description>&lt;p&gt;OS X:n Homebrewillä asennettu MongoDB antaa nykyään oletuksena tällaisen varoituksen, joka on helppo korjata:&lt;/p&gt;&#xA;&lt;pre&gt;Tue Jul  2 20:56:28.917 [initandlisten] ** WARNING: soft rlimits too low.&#xA;  Number of files is 256, should be at least 1000&lt;/pre&gt;</description>
    </item>
    <item>
      <title>Bloggaaminen retuperällä</title>
      <link>https://kennethfalck.net/2013/06/12/bloggaaminen-retuper%C3%A4ll%C3%A4/</link>
      <pubDate>Wed, 12 Jun 2013 18:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/06/12/bloggaaminen-retuper%C3%A4ll%C3%A4/</guid>
      <description>&lt;p&gt;Pahoittelen tämän blogin retuperällä olemista. Kirjoitteluni on siirtynyt yhä enemmän &lt;a href=&#34;https://twitter.com/kennu&#34;&gt;Twitteriin&lt;/a&gt; ja &lt;a href=&#34;https://www.facebook.com/kennu&#34;&gt;Facebookiin&lt;/a&gt;, joihin kumpaankin laitan julkisista statuspäivityksiä aika ajoin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Glass-käyttöliittymä Android-puhelimeen</title>
      <link>https://kennethfalck.net/2013/05/28/glass-k%C3%A4ytt%C3%B6liittym%C3%A4-android-puhelimeen/</link>
      <pubDate>Tue, 28 May 2013 19:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/05/28/glass-k%C3%A4ytt%C3%B6liittym%C3%A4-android-puhelimeen/</guid>
      <description>&lt;p&gt;Jos &lt;a href=&#34;http://www.google.com/glass/start/&#34;&gt;Google Glass&lt;/a&gt; kiinnostaa muttei vielä omista älylaseja, niin Glass-käyttöliittymän voi asentaa myös Android-puhelimeen. Itse kokeilin sitä Nexus 4:llä (Android 4.2.2) ja suurimmaksi osaksi Glass toimi ihan hyvin. Tässä lyhyt asennusohje.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kolmannen sukupolven antihistamiineista</title>
      <link>https://kennethfalck.net/2013/04/23/kolmannen-sukupolven-antihistamiineista/</link>
      <pubDate>Tue, 23 Apr 2013 01:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/04/23/kolmannen-sukupolven-antihistamiineista/</guid>
      <description>&lt;p&gt;Tämä aihe ei liity mitenkään tietotekniikkaan vaan näin kesän alla siitepölyallergiaan ja antihistamiineihin. Olen nimittäin käyttänyt monta vuotta heinänuhaan 2. sukupolven antihistamiineja (lähinnä Benadrylia, joka on akrivastiinia). Nyt ajattelin kerätä tähän yhteen listan 3. sukupolven tuotteista ja kokeilla niitä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OS X Mail: Lähetettyjen viestien fontti</title>
      <link>https://kennethfalck.net/2013/04/22/os-x-mail-l%C3%A4hetettyjen-viestien-fontti/</link>
      <pubDate>Mon, 22 Apr 2013 21:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/04/22/os-x-mail-l%C3%A4hetettyjen-viestien-fontti/</guid>
      <description>&lt;p&gt;OS X:n sisäänrakennettu Mail on mainio sähköpostiohjelma, mutta siinä on pienet vikansa. Näistä häiritsevin on se, että lähtevien rich text -muotoisten sähköpostien leipätekstistä puuttuu oletuksena font-määre. Tämän seurauksena käy usein niin, että esimerkiksi Outlook näyttää viestien sisällön Times Roman -fontilla mutta allekirjoituksen Helveticalla. Asiaan löytyy korjaus pienen Mail-laajennuksen avulla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OS X Homebrew ja Node.js 0.8</title>
      <link>https://kennethfalck.net/2013/04/11/os-x-homebrew-ja-node.js-0.8/</link>
      <pubDate>Thu, 11 Apr 2013 19:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/04/11/os-x-homebrew-ja-node.js-0.8/</guid>
      <description>&lt;p&gt;Homebrew päivittyi hiljattain Node.js:n 0.10-versioon, mikä aiheuttaa ongelmia joidenkin moduulien kanssa. Vanhan version voi palauttaa käsipelillä checkaamalla ulos tietyn version node.rb-tiedostosta, mutta tähän on parempikin tapa &lt;a href=&#34;http://stackoverflow.com/questions/3987683/homebrew-install-specific-version-of-formula&#34;&gt;Tap&lt;/a&gt;-toiminnallisuutta käyttäen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Node.js:n ajaminen tuotannossa</title>
      <link>https://kennethfalck.net/2013/03/20/node.jsn-ajaminen-tuotannossa/</link>
      <pubDate>Wed, 20 Mar 2013 18:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/03/20/node.jsn-ajaminen-tuotannossa/</guid>
      <description>&lt;p&gt;Tässä pieni katsaus työkaluihin Node.js-sovellusten ajamiseen tuotantoympäristöissä. Olen kerännyt tähän muutaman relevantin moduulin tuotantoympäristöihin liittyen ja käyn läpi lyhyesti, mitä ne tekevät.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Päivitys Django 1.5:een</title>
      <link>https://kennethfalck.net/2013/03/14/p%C3%A4ivitys-django-1.5een/</link>
      <pubDate>Thu, 14 Mar 2013 23:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/03/14/p%C3%A4ivitys-django-1.5een/</guid>
      <description>&lt;p&gt;Päivitin blogini Django 1.5:een. Tässä lyhyesti tarvittavat muutokset, jotta uuden Djangon sai toimimaan vanhasta Django 1.4:stä päivittäessä. Käytössäni on MongoEngine ja tietokantoina MongoDB + Postgres.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Facebook-kirjautuminen Derbyssä</title>
      <link>https://kennethfalck.net/2013/03/12/facebook-kirjautuminen-derbyss%C3%A4/</link>
      <pubDate>Tue, 12 Mar 2013 21:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/03/12/facebook-kirjautuminen-derbyss%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://derbyjs.com/&#34;&gt;Derby.js&lt;/a&gt;-frameworkin &lt;a href=&#34;https://github.com/lefnire/derby-auth&#34;&gt;derby-auth&lt;/a&gt;-laajennuksella saa helposti lisättyä Facebook-kirjautumisen sovellukseensa. Sen ongelmana on vain, että käyttäjä ohjataan kirjautumisen jälkeen aina palvelun etusivulle. Joskus on tarvetta ohjata käyttäjä erilliselle tervetuliaissivulle. Tämä onnistuukin muokkaamalla oletusasetuksia hieman.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Muutama Derby.js -jippo</title>
      <link>https://kennethfalck.net/2013/03/06/muutama-derby.js-jippo/</link>
      <pubDate>Wed, 06 Mar 2013 02:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/03/06/muutama-derby.js-jippo/</guid>
      <description>&lt;p&gt;Kokeiltuani ensin &lt;a href=&#34;http://meteor.com/&#34;&gt;Meteoria&lt;/a&gt; minusta on tullut &lt;a href=&#34;http://derbyjs.com/&#34;&gt;Derby.js:n&lt;/a&gt; suuri ystävä. Kyseessä on siis JavaScript-framework, jolla voi pienellä vaivalla koodata reaaliaikaisesti toimivia HTML5-sovelluksia. Derby-sovellus osaa käsitellä yhteistä dataa ja lähdekoodia sekä palvelimen että selaimen puolella hyvin läpinäkyvästi.&lt;/p&gt;&#xA;&lt;p&gt;Tässä kuitenkin muutama jippo, joilla voi helposti ampua itseään jalkaan Derbyllä koodatessa, ellei ole tarkkana.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Run multiple Celeries on a single Redis</title>
      <link>https://kennethfalck.net/2013/02/21/run-multiple-celeries-on-a-single-redis/</link>
      <pubDate>Thu, 21 Feb 2013 16:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/02/21/run-multiple-celeries-on-a-single-redis/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.celeryproject.org/&#34;&gt;Celery&lt;/a&gt; is a great tool for running asynchronous Django tasks, but it can be complicated to configure. One use case I often face is running multiple web applications on the same server, each with their own Celery daemon.&lt;/p&gt;&#xA;&lt;p&gt;The web apps are typically completely unrelated and may be running different versions of Django, Celery and other packages in separate virtualenvs. For this reason, I also want to keep their Celery backends separated.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Helpot virhesivut Route 53:n Failoverilla</title>
      <link>https://kennethfalck.net/2013/02/13/helpot-virhesivut-route-53n-failoverilla/</link>
      <pubDate>Wed, 13 Feb 2013 19:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/02/13/helpot-virhesivut-route-53n-failoverilla/</guid>
      <description>&lt;p&gt;Amazon julkaisi eilen varsin näppärän DNS Failover -ominaisuuden Route 53 -palveluunsa. Failover-ominaisuus tarkoittaa, että DNS-palvelimeen voidaan liittää &amp;quot;terveystarkastuksia&amp;quot;. Route 53 vastaa sitten nimikyselyihin sen mukaan, ovatko web-palvelut kunnossa vai ei. Tässä lyhyt esimerkki.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android ei vakuuttanut kuukaudessa</title>
      <link>https://kennethfalck.net/2013/02/01/android-ei-vakuuttanut-kuukaudessa/</link>
      <pubDate>Fri, 01 Feb 2013 15:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/02/01/android-ei-vakuuttanut-kuukaudessa/</guid>
      <description>&lt;p&gt;Hankin vuodenvaihteessa Googlen LG Nexus 4 -puhelimen, jossa on Android 4.2 (Jelly Bean). Päätin kokeilla tammikuun ajan, miltä Androidin käyttö nykyään tuntuu. Olen käyttänyt Androidia aiemmin vain satunnaisesti silloin tällöin ja olen pääasiallisesti ollut iPhone-käyttäjä vuodesta 2007 lähtien.&lt;/p&gt;&#xA;&lt;p&gt;Ensimmäiset tunnelmat uudesta puhelimesta olivat positiivisia. Android 4.2 on ainakin Nexus 4:ssä paljon sulavampi kuin vanhat animaatioiltaan tökkivät versiot. Karu arki alkoi kuitenkin paljastua muutaman päivän käytön jälkeen. Androidia vaivaavat edelleen lukuisat pienet epäloogisuudet ja loppuun asti hiomattomat ratkaisut käyttöliittymässä. Tässä muutama mieleen jäänyt havainto eri osa-alueilta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Heräileekö Windows-koneesi turhaan öisin?</title>
      <link>https://kennethfalck.net/2013/01/21/her%C3%A4ileek%C3%B6-windows-koneesi-turhaan-%C3%B6isin/</link>
      <pubDate>Mon, 21 Jan 2013 02:23:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/01/21/her%C3%A4ileek%C3%B6-windows-koneesi-turhaan-%C3%B6isin/</guid>
      <description>&lt;p&gt;Windows-PC:t heräilevät toisinaan selittämättömästi unitilasta. Tämä voi olla jokseenkin ärsyttävää, jos kyseessä on yöaikaan metelöivä kone.&lt;/p&gt;&#xA;&lt;p&gt;Jos kärsit tästä ongelmasta, kokeile antaa heti herätyksen jälkeen tämä komento Command Promptissa:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;C:\&amp;gt;powercfg lastwake&#xA;Wake History Count - 1&#xA;Wake History [0]&#xA;  Wake Source Count - 1&#xA;  Wake Source [0]&#xA;    Type: Device&#xA;    Instance Path: PCI\VEN_10EC&amp;amp;DEV_8168&amp;amp;SUBSYS_84321043&amp;amp;REV_06\01000000684CE00000&#xA;    Friendly Name: Realtek PCIe GBE Family Controller&#xA;    Description: Realtek PCIe GBE Family Controller&#xA;    Manufacturer: Realtek&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Ylläoleva kertoo kyseen olevan verkkokortista, jonka on sallittu herättää kone tarvittaessa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OS X, Ubuntu ja xterm-256color</title>
      <link>https://kennethfalck.net/2013/01/10/os-x-ubuntu-ja-xterm-256color/</link>
      <pubDate>Thu, 10 Jan 2013 16:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/01/10/os-x-ubuntu-ja-xterm-256color/</guid>
      <description>&lt;p&gt;Uuden vuoden kunniaksi päätin vihdoin selvittää, miksi OS X:n Terminalin oletuksena käyttämä xterm-256color-asetus ei tahtonut toimia Ubuntu-shelleissä. Olin tähän asti muuttanut sen aina muotoon xterm-color, jolloin Linux käyttää perinteistä 16 värin palettia. Tuo oletusasetus tarjoaisi kuitenkin käyttöön 256 värisen konsolin.&lt;/p&gt;&#xA;&lt;p&gt;Ratkaisu oli yllättävän yksinkertainen ja löytyi Ubuntun kotihakemiston .bashrc-tiedostosta. Siinä on nimittäin tällainen kohta:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;# set a fancy prompt (non-color, unless we know we &amp;quot;want&amp;quot; color)&#xA;case &amp;quot;$TERM&amp;quot; in&#xA;    xterm-color) color_prompt=yes;;&#xA;esac&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Ongelma siis on, että Ubuntu vaatii TERM-muuttujan olevan täsmälleen &amp;quot;xterm-color&amp;quot;. Asia korjaantuu muuttamalla kyseinen rivi wildcard-muotoon:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kommentointi suljettu vanhoista artikkeleista</title>
      <link>https://kennethfalck.net/2013/01/07/kommentointi-suljettu-vanhoista-artikkeleista/</link>
      <pubDate>Mon, 07 Jan 2013 22:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/01/07/kommentointi-suljettu-vanhoista-artikkeleista/</guid>
      <description>&lt;p&gt;Spämmiä tulee nyt niin paljon, että suljin kommentoinnin blogini vanhoista artikkeleista. Logien perusteella vaikuttaa siltä, että spämmikommentteja syötetään jatkuvasti ihan käsin. Suurin osa jää &lt;a href=&#34;http://mollom.com/&#34;&gt;Mollomin&lt;/a&gt; seulaan, mutta osa pääsee läpi ja täytyy poistella käsin.&lt;/p&gt;&#xA;&lt;p&gt;Jos jollakulla on asiaa jostakin vanhasta blogikirjoituksesta, niin voi lähettää sähköpostia tai DM:ää Twitterissä (&lt;a href=&#34;https://twitter.com/kennu&#34;&gt;@kennu&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;Muokkasin myös hiljattain blogini &lt;a href=&#34;https://kennethfalck.net/&#34;&gt;etusivua&lt;/a&gt;. Tarkoitus on saada siihen aggregoitua eri lähteisiin julkaistuja juttuja, koska varsinaisten artikkelien kirjoittamisesta on tullut paljon harvinaisempaa kuin linkkien ja niihin liittyvien kommenttien postaamisesta Twitteriin tai Facebookiin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amazon Glacier varmuuskopiointiin</title>
      <link>https://kennethfalck.net/2013/01/02/amazon-glacier-varmuuskopiointiin/</link>
      <pubDate>Wed, 02 Jan 2013 17:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/01/02/amazon-glacier-varmuuskopiointiin/</guid>
      <description>&lt;p&gt;Amazon julkaisi viime vuoden loppupuolella &lt;a href=&#34;http://aws.amazon.com/glacier/&#34;&gt;Glacier-palvelun&lt;/a&gt;. Se on tarkoitettu datan pitkäaikaiseen varmuuskopiointiin. Laskeskelin omalle käyttötapaukselleni hinnan. Se perustuu näihin &lt;a href=&#34;http://aws.amazon.com/glacier/#pricing&#34;&gt;listahintoihin&lt;/a&gt; Amazonin Irlannin alueella:&lt;/p&gt;&#xA;&lt;table class=&#34;table table-bordered table-striped&#34;&gt;&#xA;&lt;tbody&gt;&#xA;&lt;tr&gt;&lt;td class=&#34;span3&#34;&gt;Storage Pricing&lt;/td&gt;&lt;td&gt;$0.011 per GB / month&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td class=&#34;span3&#34;&gt;UPLOAD and RETRIEVAL Requests&lt;/td&gt;&lt;td&gt;$0.055 per 1,000 requests&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td class=&#34;span3&#34;&gt;All data transfer in&lt;/td&gt;&lt;td&gt;$0.000 per GB&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td class=&#34;span3&#34;&gt;Data Transfer OUT Up to 10 TB / month&lt;/td&gt;&lt;td&gt;$0.120 per GB&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;h3&gt;Viikottainen varmuuskopiointi&lt;/h3&gt;&#xA;&lt;p&gt;Tässä viikottaisen varmuuskopion laskelma. Tämä lähtee siitä oletuksesta, että otan päivittäiset (tai tiheämmätkin) varmuuskopiot Time Capsuleen, ja käytän Glacieria vain pitempiaikaisempaan varastointiin kerran viikossa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Djangon päivitys MongoEngineen</title>
      <link>https://kennethfalck.net/2013/01/02/djangon-p%C3%A4ivitys-mongoengineen/</link>
      <pubDate>Wed, 02 Jan 2013 02:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2013/01/02/djangon-p%C3%A4ivitys-mongoengineen/</guid>
      <description>&lt;p&gt;Blogini jäi jumiin Django 1.3:een &lt;a href=&#34;https://github.com/django-nonrel/django-nonrel&#34;&gt;django-nonrelin&lt;/a&gt; käytön takia, joten päätin hankkiutua siitä eroon. Jos haluaa kuitenkin käyttää Djangon kanssa MongoDB:tä, niin käytännössä ainoa vaihtoehto on nykyään &lt;a href=&#34;http://mongoengine.org/&#34;&gt;MongoEngine&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;MongoEngine eroaa django-nonrelistä ja django-mongodb-enginestä siinä mielessä, että se ei yritäkään olla yhteensopiva Djangon omien tietomallien kanssa. Sen sijaan MongoEngine tarjoaa Document-luokan, jolla voi rakentaa erilliset tietomallit.&lt;/p&gt;&#xA;&lt;p&gt;Koska Document-tietomallit eivät ole suoraan Djangon kanssa yhteensopivia, tarvitaan muutama apukirjasto:&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;&lt;a href=&#34;https://github.com/mitar/django-tastypie-mongoengine&#34;&gt;django-tastypie-mongoengine&lt;/a&gt; - Tekee TastyPie-REST-API-kirjastosta MongoEngine-yhteensopivan&lt;/li&gt;&lt;li&gt;&lt;a href=&#34;https://github.com/kennu/django-mongoadmin&#34;&gt;django-mongoadmin&lt;/a&gt; - Tekee Djangon admin-käyttöliittymästä MongoEngine-yhteensopivan&lt;/li&gt;&lt;li&gt;&lt;a href=&#34;https://github.com/kennu/django-mongodbforms&#34;&gt;django-mongodbforms&lt;/a&gt; - Tekee Djangon lomakkeista MongoEngine-yhteensopivia&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;Ylläolevista linkeistä pari osoittaa omiin forkkeihini projekteista, sillä olen joutunut korjaamaan muutamia epäyhteensopivuuksia Djangon nykyisen version kanssa. Django-mongoadmin on lisäksi melko vaatimaton kirjasto, sillä se ei tarjoa kovinkaan täydellistä MongoEngine-yhteensopivuutta Djangon ylläpitokäyttöliittymään. Sillä kuitenkin pärjää jotenkuten.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django is falling behind</title>
      <link>https://kennethfalck.net/2012/11/28/django-is-falling-behind/</link>
      <pubDate>Wed, 28 Nov 2012 13:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/11/28/django-is-falling-behind/</guid>
      <description>&lt;p&gt;I&amp;#39;ve used Django since 0.x. Now I&amp;#39;m getting very worried seeing that &lt;a href=&#34;https://docs.djangoproject.com/en/dev/releases/1.5-beta-1/&#34;&gt;1.5 beta&lt;/a&gt; has no mention of MongoDB or any other NoSQL support. MongoDB users are essentially still working with the &lt;a href=&#34;http://www.allbuttonspressed.com/projects/django-nonrel&#34;&gt;django-nonrel&lt;/a&gt; fork, which is based on the rapidly aging Django 1.3.&lt;/p&gt;&#xA;&lt;p&gt;There is &lt;a href=&#34;http://mongoengine.org/&#34;&gt;MongoEngine&lt;/a&gt;, of course, but it&amp;#39;s not very relevant. You don&amp;#39;t get the major benefits of Django, which are the admin UI and a set of third party infrastructure modules like automatic user registration and Facebook integration.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django-sovelluksen päivittäminen katkoksetta</title>
      <link>https://kennethfalck.net/2012/11/03/django-sovelluksen-p%C3%A4ivitt%C3%A4minen-katkoksetta/</link>
      <pubDate>Sat, 03 Nov 2012 16:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/11/03/django-sovelluksen-p%C3%A4ivitt%C3%A4minen-katkoksetta/</guid>
      <description>&lt;p&gt;Minua on aina häirinnyt Django-sovelluksissa yksi asia. Kun sovelluksen päivittää, sitä pyörittävä sovelluspalvelin (Gunicorn) täytyy käynnistää uudelleen. Tämä taas aiheuttaa pienen katkoksen palvelun toiminnassa. Jos joku sattuu juuri silloin lataamaan sivuston, hän saa 502 Bad Gateway -virheilmoituksen.&lt;/p&gt;&#xA;&lt;p&gt;Lisää kiusaa aiheuttaa staattisten tiedostojen päivittäminen. Jos käytössä on esimerkiksi Django-mediagenerator, niin CSS/JS-tiedostot pitää generoida uudelleen muokkaamisen jälkeen. Tämä aiheuttaa pienen katkon niiden palvelemiseen.&lt;/p&gt;&#xA;&lt;p&gt;Nyt päätin kokeilla, olisiko tämä kaikki helppo korjata jotenkin yksinkertaisesti, ja olihan se. Nginxissä on nimittäin optio, jolla voi määritellä backup-sovelluspalvelimen sen varalle, että oikea ei ole tavoitettavissa. Esimerkiksi näin:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Facebookiin linkittävien kommenttien spämmiaalto</title>
      <link>https://kennethfalck.net/2012/09/30/facebookiin-linkitt%C3%A4vien-kommenttien-sp%C3%A4mmiaalto/</link>
      <pubDate>Sun, 30 Sep 2012 14:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/09/30/facebookiin-linkitt%C3%A4vien-kommenttien-sp%C3%A4mmiaalto/</guid>
      <description>&lt;p&gt;Blogiini on alkanut tulvia spämmikommentteja, joissa on puolijärkevän kuuloista teknistä asiaa, joka ei kuitenkaan liity itse juttuun mitenkään. Kommenttien lähettäjän URL osoittaa Facebook-profiiliin ja lähettäjän nimi vastaa Facebook-profiilin omistajaa. Mahtaakohan kyse olla jonkinlaisesta mustamaalauksesta tai SEO:sta juonittelua varten?&lt;/p&gt;&#xA;&lt;p&gt;Tässä pari esimerkkiä poistetuista kommenteista:&lt;/p&gt;&#xA;&lt;p&gt;Pontsho &lt;a href=&#34;http://www.facebook.com/profile.php?id=100003406732060&#34;&gt;http://www.facebook.com/profile.php?id=100003406732060&lt;/a&gt;&#xA;Mohamed &lt;a href=&#34;http://www.facebook.com/profile.php?id=100003406742846&#34;&gt;http://www.facebook.com/profile.php?id=100003406742846&lt;/a&gt;&#xA;Griselda &lt;a href=&#34;http://www.facebook.com/profile.php?id=100003406732671&#34;&gt;http://www.facebook.com/profile.php?id=100003406732671&lt;/a&gt;&#xA;Audrey &lt;a href=&#34;http://www.facebook.com/profile.php?id=100003406711649&#34;&gt;http://www.facebook.com/profile.php?id=100003406711649&lt;/a&gt;&#xA;Liv &lt;a href=&#34;http://www.facebook.com/profile.php?id=100003406731415&#34;&gt;http://www.facebook.com/profile.php?id=100003406731415&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Lähettäjillä on myös oikean kuuloiset sähköpostiosoitteet, joten kyse voi olla jonkinlaisesta kiusanteosta niiden levittämiseksikin. Tässä blogissa ne eivät kuitenkaan näy ulospäin, ja noissa lähettäjälinkeissäkin on rel=&amp;quot;nofollow&amp;quot; -attribuutti, joten ne eivät auta SEO:hon mitään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to override DHCP-configured DNS on Mac OS X</title>
      <link>https://kennethfalck.net/2012/09/19/how-to-override-dhcp-configured-dns-on-mac-os-x/</link>
      <pubDate>Wed, 19 Sep 2012 15:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/09/19/how-to-override-dhcp-configured-dns-on-mac-os-x/</guid>
      <description>&lt;div style=&#34;color:red&#34;&gt;&lt;span class=&#34;label label-important&#34;&gt;UPDATE&lt;/span&gt; It seems that the System Preferences GUI _can_ be used to modify the DNS in some circumstances. For some reason, it sometimes does not work and you need to use the command line as described here. You should try the GUI first, it&#39;s much easier.&lt;/div&gt;&#xA;&lt;p&gt;A brief tip on how to re-configure Mac OS X DNS, when the DNS server provided by your network operator via DHCP does not work:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amazonin pilveä voi nyt jälleenmyydä</title>
      <link>https://kennethfalck.net/2012/09/12/amazonin-pilve%C3%A4-voi-nyt-j%C3%A4lleenmyyd%C3%A4/</link>
      <pubDate>Wed, 12 Sep 2012 17:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/09/12/amazonin-pilve%C3%A4-voi-nyt-j%C3%A4lleenmyyd%C3%A4/</guid>
      <description>&lt;p&gt;Kirjoitin Tietokone-lehteen puolitoista vuotta sitten kolumnin otsikolla &amp;quot;Pilveä kilohintaan&amp;quot;. Se kuvaili muutosta IT-infrastruktuurin ostamisessa, kun palvelimiin ei tarvitse enää investoida etukäteen tulevaa tarvetta arvaillen. Amazonista saa laskentakapasiteettia yksikköhinnalla, ja yksiköt ovat EC2-virtuaalikoneita.&lt;/p&gt;&#xA;&lt;p&gt;Pilvi-infran tarjoajan on kuitenkin itse investoitava laitteisiin. Sen takia Amazon on tarjonnut kapasiteettia edullisemmin, jos ostaja sitoutuu käyttämään sitä vuoden (tai kolmen vuoden) ajan. On siis ollut vaihtoehto maksaa vähän enemmän joustavuudesta, tai vähän vähemmän, jos osaa arvioida tarpeensa etukäteen. Tätä kutsutaan instanssien varaamiseksi (reserved instances).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Atlas Shrugged</title>
      <link>https://kennethfalck.net/2012/08/20/atlas-shrugged/</link>
      <pubDate>Mon, 20 Aug 2012 17:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/08/20/atlas-shrugged/</guid>
      <description>&lt;p&gt;Sain vihdoin luettua loppuun &lt;strong&gt;Ayn Randin&lt;/strong&gt; yli tuhatsivuisen opuksen &lt;a target=&#34;_blank&#34; href=&#34;http://www.amazon.com/gp/product/B003V8B5XO/ref=as_li_qf_sp_asin_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=B003V8B5XO&amp;linkCode=as2&amp;tag=kenfalsblo-20&#34; rel=&#34;noopener noreferrer&#34;&gt;Atlas Shrugged&lt;/a&gt; (Kindle Edition). Suurin osa kirjasta oli varsin tylsää luettavaa, mutta se tarjosi kuitenkin mielenkiintoisen katsauksen libertalistiseen maailmankuvaan. Kannatan tiettyjä libertalismin piirteitä, kuten esimerkiksi ajatusta siitä, että valtion tulee puuttua yksilön elämään niin vähän kuin mahdollista. Mutta Randin esittelemä absoluuttinen kapitalismi on kuitenkin mahdollista vain hänen itse luomassaan utopiassa.&lt;/p&gt;&#xA;&lt;p&gt;Atlas Shruggedin sankarit ovat virheettömiä, kirkasotsaisia kapitalisteja. He ovat 50-luvun herrasmiehiä (ja -naisia), joita ajaa vain vilpitön halu tuottaa maailmaan hyödykkeitä ja kerätä siinä sivussa hieman omaisuutta. Randin maailmassa suuryritykset eivät ole kasvottomia, psykopaattisia organisaatioita, vaan ajattelevia, rehellisiä, intohimoisia yksilöitä. Jokainen kapitalisti on nöyrä ja ahkera, ja tarvittaessa valmis aloittamaan uransa uudelleen pohjalta vaikka toisen kapitalistin palvelijana.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Netflix ja leffojen nettijakelu Suomessa</title>
      <link>https://kennethfalck.net/2012/08/18/netflix-ja-leffojen-nettijakelu-suomessa/</link>
      <pubDate>Sat, 18 Aug 2012 21:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/08/18/netflix-ja-leffojen-nettijakelu-suomessa/</guid>
      <description>&lt;p&gt;Viime aikoina on puhuttu paljon siitä, että perinteinen media &lt;a href=&#34;http://www.digilelut.fi/2012/08/taas-alyton-netflix-kommentti-mtv-medialta/&#34;&gt;uhoaa jättävänsä Netflixin jalkoihinsa Suomessa&lt;/a&gt;. &amp;quot;Suuri nettiyleisö&amp;quot; on ehdottomasti päinvastaista mieltä, eli odottaa perinteisten mediapalveluiden kuolevan nopeasti pois Netflixin valloittaessa Suomen markkinat.&lt;/p&gt;&#xA;&lt;p&gt;Omasta mielestäni Netflixin mahdollisuuksia Suomessa on kuitenkin hypetetty aika naiivisti. Odotukset tuntuvat olevan sellaiset, että kaikki elokuvat ja tv-sarjat, joita esimerkiksi &lt;a href=&#34;http://www.piraattilahti.org/&#34;&gt;Pirate Bayn&lt;/a&gt; kautta löytää, olisivat heti saatavilla Netflixissä.&lt;/p&gt;&#xA;&lt;p&gt;Todellisuudessa Netflix joutuu kuitenkin neuvottelemaan sisällön omistajien (eli niiden &amp;quot;Hollywood-studioiden&amp;quot;) kanssa sisällön jakelusta Suomessa siinä missä meidän paikallinen mediammekin. Jos täällä saisi helposti edullisia diilejä maailmanhistorian kaikkien elokuvien ja tv-sarjojen jakelemiseen netissä, niin Suomessa olisi jo lukemattomia Spotifyn kaltaisia videopalveluita pystyssä. Mutta eipä vaan ole.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mountain Lion ja levyn uudelleenpartitiointi</title>
      <link>https://kennethfalck.net/2012/07/27/mountain-lion-ja-levyn-uudelleenpartitiointi/</link>
      <pubDate>Fri, 27 Jul 2012 15:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/07/27/mountain-lion-ja-levyn-uudelleenpartitiointi/</guid>
      <description>&lt;p&gt;Päivitin eilen kaikki Maccini &lt;a href=&#34;http://www.apple.com/osx/&#34;&gt;Mountain Lioniin&lt;/a&gt; ja päivitykset sujuivat yhtä lukuunottamatta ongelmitta.&lt;/p&gt;&#xA;&lt;p&gt;Ongelmallinen kone oli vanha MacBook (late 2008 aluminum). Siihen oli asennettu aikojen saatossa Windowseja ja Linuxeja eri partitioille sekä &lt;a href=&#34;http://refit.sourceforge.net/&#34;&gt;rEFIt&lt;/a&gt;-käynnistysvalikko niiden käynnistelyyn. Mountain Lionin asennus ei suostunut lähtemään käyntiin (&amp;quot;OS X can&amp;#39;t start from this disk&amp;quot;), joten päätin laittaa kovalevyn sileäksi.&lt;/p&gt;&#xA;&lt;p&gt;Kovalevyn tyhjentäminen osoittautui hieman haastavaksi, sillä Mountain Lionistahan ei ole erillistä asennus-DVD:tä, vaan se myydään Mac App Storen kautta. Kokeilin ensin buutata koneen Mountain Lionin asennustilaan, mutta se ei luonnollisestikaan anna tyhjentää levyä, koska asennusmedia sijaitsee silloin samalla kovalevyllä. Myöskään Omena-R:n pitäminen pohjassa buutissa (recovery mode) ei auttanut, mikä saattoi johtua siitä, että olin jo nollaillut osan levypartitioista (mukaan lukien Recovery-partition).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Node MVC: RailwayJS vs. Tower.js</title>
      <link>https://kennethfalck.net/2012/07/10/node-mvc-railwayjs-vs.-tower.js/</link>
      <pubDate>Tue, 10 Jul 2012 17:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/07/10/node-mvc-railwayjs-vs.-tower.js/</guid>
      <description>&lt;p&gt;En ole kirjoittanut pitkään aikaan mitään &lt;a href=&#34;https://www.djangoproject.com/&#34;&gt;Djangosta&lt;/a&gt; tai &lt;a href=&#34;http://rubyonrails.org/&#34;&gt;Railsista&lt;/a&gt;, koska minusta vaikuttaa, että ne ovat &amp;quot;valmiita&amp;quot; ja olen oppinut käyttämään kumpaakin melko kattavasti. Molemmissa on puutteensa ja molemmat kehittyvät edelleen, mutta mitään todella mullistavaa ei ole tapahtunut pitkään aikaan.&lt;/p&gt;&#xA;&lt;p&gt;Sen sijaan &lt;a href=&#34;http://nodejs.org/&#34;&gt;Node.js&lt;/a&gt; on tällä hetkellä hyvinkin nopeatempoisessa ja mielenkiintoisessa kehitysvaiheessa. Sekä Node että NPM (Node Package Manager) ovat nykyään osana Ubuntu 12.04 LTS -käyttöjärjestelmää, joten oman Node-palvelimen pystyttäminen on hyvin yksinkertaista. Samaten Mac OS X:ssä Node on helppo asentaa &lt;a href=&#34;http://mxcl.github.com/homebrew/&#34;&gt;Homebrew:llä&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Emberin erikoisuuksista</title>
      <link>https://kennethfalck.net/2012/06/18/emberin-erikoisuuksista/</link>
      <pubDate>Mon, 18 Jun 2012 23:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/06/18/emberin-erikoisuuksista/</guid>
      <description>&lt;p&gt;Olen koodaillut pitkästä aikaa erästä projektia &lt;a href=&#34;http://emberjs.com/&#34;&gt;Ember&lt;/a&gt;-kirjastolla, joka vaikuttaa kehittyneen hiljalleen eteenpäin. Emberistä puuttuu vielä kunnollinen tietomallikerros, minkä vuoksi pidän yhä Backbonesta, mutta sellainenkin näyttää olevan &lt;a href=&#34;https://github.com/emberjs/data&#34;&gt;tulossa&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Tällä hetkellä olen sitä mieltä, että Backbone sopii yleispäteväksi MVC-apuvälineeksi tavallisten webbisivujen frontendiin, jossa näkymiä voidaan päivittää vähän huolettomammin renderöimällä isoja alueita kerralla uudelleen. Emberiä taas kannattaa harkita silloin, kun kyse on enemmän webapp-tyyppisestä sovelluksesta, jossa ruudulla esitetään paljon jatkuvasti muuttuvaa dynaamista dataa, ja kunkin yksittäisen pienen tietokentän tai luettelon halutaan päivittyvän itsenäisesti. &lt;a href=&#34;http://spinejs.com/&#34;&gt;Spine&lt;/a&gt; taas on ollut viime aikoina sen verran näkymätön projekti, etten tiedä onko sillä suurta tulevaisuutta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Huomioita Backbonen käytöstä</title>
      <link>https://kennethfalck.net/2012/05/12/huomioita-backbonen-k%C3%A4yt%C3%B6st%C3%A4/</link>
      <pubDate>Sat, 12 May 2012 02:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/05/12/huomioita-backbonen-k%C3%A4yt%C3%B6st%C3%A4/</guid>
      <description>&lt;p&gt;Kirjoitin pari kuukautta sitten &lt;a href=&#34;http://kfalck.net/2012/03/05/ember-vs-backbone&#34;&gt;Backbonesta ja Emberistä&lt;/a&gt;. Sen jälkeen olen koodannut useampiakin käyttöliittymiä Backbonella ja ajattelin jakaa muutaman pienen havainnon sen käyttämisestä. Tarinan opetuksen voisi sanoa olevan, että jokaista frameworkkia kannattaa aina käyttää sen omalla tavalla, eikä yrittää soveltaa &amp;quot;ulkopuolisia&amp;quot; käytäntöjä siihen.&lt;/p&gt;&#xA;&lt;h3&gt;Backbone.View&lt;/h3&gt;&#xA;&lt;p&gt;Kun koodasin ensimmäisiä Backbone-sovelluksiani, minua hieman häiritsi kontrollerien puuttuminen ja yritin erottaa niitä omiksi luokikseen. Sittemmin kuitenkin tajusin, että Backbone.View on käytännössä tarkoitettu tekemään se, mitä kontrollerit yleensä tekevät. Varsinainen näkymähän on yleensä HTML-sivupohja, ja View-objekti taas ohjaa sen toimintaa ja kuuntelee sen tapahtumia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Future Insights Live (Las Vegas)</title>
      <link>https://kennethfalck.net/2012/05/05/future-insights-live-las-vegas/</link>
      <pubDate>Sat, 05 May 2012 03:23:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/05/05/future-insights-live-las-vegas/</guid>
      <description>&lt;p&gt;Kävin kuluneella viikolla &lt;a href=&#34;http://futureinsightslive.com/&#34;&gt;Future Insights Live&lt;/a&gt; -tapahtumassa. Olen osallistunut aiemminkin saman organisaation järjestämiin FOWA-seminaareihin Lontoossa. Tällä kertaa kaikki eri &amp;quot;Future Of..&amp;quot; -tilaisuudet oli yhdistetty yhdeksi isommaksi tapahtumaksi. Yhdistäminen oli järkevää, sillä kävijöillä oli nyt tilaisuus osallistua muihinkin luentoihin kuin vain siihen omaan ydinalueeseensa. Itse katson yleensä hardcore-tekniikkaesitykset, mutta tällä kertaa kävin vilkaisemassa myös useita design-luentoja ja vähän bisnestäkin.&lt;/p&gt;&#xA;&lt;p&gt;Tässä muutamia havaintoja ja huomioita kaikista esityksistä yhteisesti. Yleisesti ottaen tilaisuus ei ollut kovin hohdokas aiempiin vuosiin verrattuna. Monet puhujista on jo nähty moneen kertaan. Läsnä ei ollut samanlaisia superstaroja kuin mitä jokunen vuosi takaperin on nähty - Facebookin ja Twitterin ollessa vielä uusia, nousevia palveluita.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MongoDB Stockholm 2012</title>
      <link>https://kennethfalck.net/2012/04/06/mongodb-stockholm-2012/</link>
      <pubDate>Fri, 06 Apr 2012 02:42:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/04/06/mongodb-stockholm-2012/</guid>
      <description>&lt;p&gt;Greetings from Stockholm, where I spent a day attending 10gen&amp;#39;s &lt;a href=&#34;http://www.10gen.com/events/mongodb-stockholm&#34;&gt;MongoDB conference&lt;/a&gt;. The conference was successful in providing a general overview of MongoDB&amp;#39;s most important aspects for developers. We also got some insight on 10gen&amp;#39;s future plans and occasionally even delved a bit deeper into some technical details. And, of course, everybody got free MongoDB coffee mugs.&lt;/p&gt;&#xA;&lt;h3&gt;Some general notes&lt;/h3&gt;&#xA;&lt;ul&gt;&lt;li&gt;10gen&#39;s &lt;strong&gt;business model&lt;/strong&gt; is currently based on support and services related to MongoDB. According to Max Schireson, President of 10gen (who, by the way, also gave a technical presentation on MongoDB indexing), they do not plan on adding paid features, unless it becomes a financial necessity. In other words, MongoDB is staying fully open source for the time being.&lt;/li&gt;&lt;li&gt;10gen has a &lt;strong&gt;shortlist of features&lt;/strong&gt; they would like to develop soon. Full text search is at the top. Other things included are at least data compression and possibly schema validation as a related feature. You can probably find the full shortlist if you watch the presentations of the conference.&lt;/li&gt;&lt;li&gt;10gen is also working with various &lt;strong&gt;cloud hosting partners&lt;/strong&gt; to enable MongoDB as a hosted NoSQL solution. This includes Amazon AWS, where it could become an RDS-like hosted service, but 10gen&#39;s talks with Amazon are still in a &#34;whitepaper writing phase&#34;. 10gen doesn&#39;t seem to be a big fan of running MongoDB on AWS, because the EC2/EBS platform isn&#39;t the most efficient with regards to I/O capacity and reliability (although software-RAID can help a bit with that). However, MongoHQ already provides a third-party hosted MongoDB service that runs on AWS as well as some other cloud platforms.&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;h3&gt;Notes about indexing&lt;/h3&gt;&#xA;&lt;ul&gt;&lt;li&gt;MongoDB&#39;s &lt;strong&gt;array indexing&lt;/strong&gt; is interesting, because the database actually indexes the individual array values. So for instance, a field value of [1, 2, 3] gets indexed as three separate values; 1, 2 and 3. This approach enables queries by any value in the array. It also adds the restriction that a MongoDB index can only contain a single array field. Otherwise all permutations of the array value pairs would have to be indexed, which would quickly become too complex (particularly when indexing more than two array fields).&lt;/li&gt;&lt;li&gt;A good way to structure a &lt;strong&gt;tree model&lt;/strong&gt; is to store each tree node as a document that contains all its ancestors as an array of ObjectIds. The array can then be indexed, which provides an easy way to retrieve all children and grand-children of any node. The parent ObjectId can be stored in a separate field, to provide access to immediate children only.&lt;/li&gt;&lt;li&gt;MongoDB&#39;s &lt;strong&gt;index directions&lt;/strong&gt; (ascending / descending) are only meaningful for compound indexes. For single-field indexes, it makes no difference if the index is ascending or descending; only one index needs to be created. Also, a compound index (X ASC, Y DESC) is logically equivalent to its inverse (X DESC, Y ASC), so only either one of them needs to be created. Note that e.g. MySQL stores all compound indexes in ascending order, so you generally need to invert your data if you want mixed sort orders. In MongoDB you can actually use mixed ordering in the index.&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;h3&gt;Notes about replica sets&lt;/h3&gt;&#xA;&lt;ul&gt;&lt;li&gt;I learned that &lt;strong&gt;oplogSize&lt;/strong&gt; is a really important parameter for replica sets, because it must be big enough to allow for full re-replication from the primary to the secondary node. Basically, when a secondary starts a full replication, the new operations that occur while the snapshot is being copied are stored in the oplog. Then they are played back to bring the secondary up-to-date. The oplog is a capped collection so it has a fixed size that cannot be exceeded.&lt;/li&gt;&lt;li&gt;Recapped MongoDB&#39;s &lt;strong&gt;write concern options&lt;/strong&gt; when writing data:&lt;ul&gt;&lt;li&gt;Call getLastError to perform the following checks when writing (otherwise operations are &#39;fire-and-forget&#39;):&lt;/li&gt;&lt;li&gt;w:N to choose how many replicas the data must have been written to (N can be a number or &#39;majority&#39;)&lt;/li&gt;&lt;li&gt;j:true to ensure data has been journaled successfully&lt;/li&gt;&lt;li&gt;fsync:true to ensure data has been fsync&#39;ed to disk (used only when not journaling)&lt;/li&gt;&lt;li&gt;Generally, you would use j:true and w:&#39;majority&#39; for critical data (say, financial transactions), and no options at all for throw-away data like statistics gathering. Other stuff is probably somewhere in between, depending on how acceptable it is for end-users to lose a blog comment or a &#39;like&#39; click because of unexpected hardware failure, and how much performance degradation it&#39;s worth to avoid it.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;About replica set &lt;strong&gt;primary elections&lt;/strong&gt;: Good to keep in mind that a primary will go read-only if it doesn&#39;t have the majority of votes at all times. If you have a two-node replica set that gets disconnected, each node is voting itself but only gets 50% of total votes, so they both become secondaries. But if there is a third arbiter node, and either server node can still connect to it, then that node can get 2 votes (66⅔%) and become the primary. So if you have a two-node replica set, keeping an arbiter around is a good idea, and preferrably in a third data-center so it doesn&#39;t go down together with one of the nodes.&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;h3&gt;Notes about sharding and performance&lt;/h3&gt;&#xA;&lt;ul&gt;&lt;li&gt;The most difficult problem in sharding is choosing the right &lt;strong&gt;sharding key&lt;/strong&gt;. A common solution is to use a computed hash field. The hash function should provide uniform distribution, so that new database entries can be evenly spread out to chunks. The downside is that ranged queries are not possible, since the hash key is completely random. Also, the whole index must be kept in memory. However, it can be useful to prefix the random hash key with e.g. the current month number, which makes it possible to segment the index (the older parts of the index are rarely used so they don&#39;t have to be in RAM). Apparently, MongoDB 2.2 will also have automatic shard key hashing, so you don&#39;t have to store the computed hash key in a separate field.&lt;/li&gt;&lt;li&gt;It&#39;s a general rule that &lt;strong&gt;indexSize + storageSize&lt;/strong&gt; (shown by calling db.stats() in the shell) should fit in RAM. That means MongoDB can keep all the indexes and the data in memory. I am assuming that this is one rule of thumb of when it might be a good idea to start sharding, so you can spread your data out to multiple servers if it doesn&#39;t fit in RAM any more.&lt;/li&gt;&lt;li&gt;One more interesting note about queries over sharded collections: When you sort your results (by something else than the sharding key), MongoDB performs a &lt;strong&gt;distributed merge sort&lt;/strong&gt;. It executes the same query on all shards simultaneously and starts streaming results back, merging them together for the client. It is slightly unclear what happens if you limit your query to e.g. 10 results, but presumably MongoDB is smart enough to continue merge-sorting only until it has gathered enough results to get the &#34;top 10&#34;.&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;So those are my highlights and take-aways from the conference. Big thanks to 10gen for organizing it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu ja IPv4-yhteyksien preferointi</title>
      <link>https://kennethfalck.net/2012/03/24/ubuntu-ja-ipv4-yhteyksien-preferointi/</link>
      <pubDate>Sat, 24 Mar 2012 16:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/03/24/ubuntu-ja-ipv4-yhteyksien-preferointi/</guid>
      <description>&lt;p&gt;Ubuntun oletusasetuksena on avata aina IP-yhteys IPv6-osoitteeseen, jos kohteelta sellainen löytyy. Taustalla on kaunis ajatus preferoida IPv6-verkkoja ja edistää niihin siirtymistä.&lt;/p&gt;&#xA;&lt;p&gt;Valitettavan usein käy kuitenkin niin, että IPv6-yhteys ei toimikaan ja sen kokeileminen hidastaa IPv4-yhteyden avaamista. Tämän saattaa huomata komentorivillä esimerkiksi telnet-komentoa käyttäessä. Se yrittää ensin avata yhteyden IPv6-osoitteeseen, timeouttaa, ja yrittää sitten uudelleen IPv4-osoitteeseen.&lt;/p&gt;&#xA;&lt;p&gt;Oletusarvoa voi muuttaa konfiguraatiotiedostosta &lt;strong&gt;/etc/gai.conf&lt;/strong&gt;, joka ohjailee getaddrinfo()-kutsun toimintaa. Tämä tiedosto on oletuksena tyhjä, mutta siihen voi lisätä sääntöjä määrittelemään IP-protokollien järjestyksen. Helpointa on poistaa kommentti tästä sääntörivistä:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Windows 8:n pahimmat suunnittelumokat</title>
      <link>https://kennethfalck.net/2012/03/18/windows-8n-pahimmat-suunnittelumokat/</link>
      <pubDate>Sun, 18 Mar 2012 21:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/03/18/windows-8n-pahimmat-suunnittelumokat/</guid>
      <description>&lt;p&gt;Päätin hiljattain istua jälleen kerran piikkituoliin ja ottaa käyttöön peli-PC:ssäni uuden Windowsin, eli Windows 8 Consumer Preview:n. Niinkuin aina ennenkin, Windowsin uusi versio sisältää joukon &amp;#39;parannuksia&amp;#39;, jotka on suunniteltu tekemään käyttäjän elämästä ikävää. Listaan tähän havaitsemiani suunnitteluvirheitä. Bugeja en kommentoi, sillä ne luultavasti korjaantuvat lopullisessa julkaisussa.&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;Räikein ongelma liittyy &lt;strong&gt;&#34;Start-nappiin&#34;&lt;/strong&gt;, joka putkahtaa nykyään esiin tyhjästä, kun hiirikursorin vie ruudun vasempaan alakulmaan. Napin ilmestyttyä hiirtä ei voi viedä sen päälle, sillä se katoaa, jos hiirtä liikuttaa. Käyttäjän täytyy totutella klikkaamaan nappia sokkona, sillä hiirikursori puolestaan katoaa ruudulta napin ollessa aktiivinen. Jos hiirtä menee liikauttamaan, klikkaus osuu yleensä Taskbarin ensimmäiseen ikoniin ja kyseinen sovellus käynnistyy sitten vahingossa.&lt;/li&gt;&lt;li&gt;Internet Explorerissa ei ole enää erillistä &lt;strong&gt;kieliasetusta&lt;/strong&gt;, vaan webbisivujen kielivalinta on sidottu Windowsin asetuksiin. Kun IE:stä menee tuttuun tapaan ottamaan Finnish-kielen pois ja asettamaan oletukseksi English (United States), näppäimistö vaihtuu samalla englanninkieliseksi. Ainoa tapa kiertää ongelma on jättää Finnish edelleen sallituksi kieleksi, tehdä English (United States):ista oletuskieli, ja vaihtaa sitten Advanced-asetuksista näppäimistöksi Finnish. Täytyy vain toivoa, ettei tämä sotke webbisaitteja puhumaan vahingossa suomea.&lt;/li&gt;&lt;li&gt;Internet Explorereita on nyt jopa kolme erilaista. Käytössä ovat vanhat tutut 32- ja 64-bittiset versiot sekä uusi &lt;strong&gt;Metro-versio&lt;/strong&gt;. Valinnanvara on tietysti tavallaan mukavaa, mutta yksi kyllä riittäisi. No, onneksi millä tahansa näistä saa asennettua Chromen. Metro-IE:llä en ole viitsinyt kovin paljon surffailla, mutta ainakin Back-painikkeessa näyttäisi olevan selkeä suunnitteluvirhe. Se on sijoitettu vasempaan alanurkkaan siten, että hiiri putkauttaa sitä tavoitellessa lähes väistämättä esiin Start-napin, joka peittää Back-painikkeen.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Verkkoasetukset&lt;/strong&gt; on nyt piilotettu entistäkin syvemmälle. System tray -verkkoikonia klikkaamalla ruudun oikeaan reunaan aukeaa Metro-tyylinen luettelo verkkoliitännöistä, joita ei kuitenkaan voi klikata. Sen sijaan verkkoikonia täytyy klikata oikealla hiirinapilla, mennä Network and Sharing Centeriin, valita Change adapter Settings, etsiä oikea verkkokortti, ja vasta sitten pääsee vanhoista Windowseista tuttuun asetusdialogiviidakkoon (Properties | Internet Protocol Version 4 | Properties, jne).&lt;/li&gt;&lt;li&gt;Jos Windows 8:lle erehtyy antamaan Microsoft-tunnuksensa, niin uusi &lt;strong&gt;Messaging-toiminto&lt;/strong&gt; avaa kyselemättä yhteyden Live Messenger -palvelimelle ja heittää käyttäjän muilta koneilta ulos. Tätä ei voi ilmeisesti estää mitenkään muuten kuin &lt;a href=&#34;http://messengergeek.wordpress.com/2012/02/29/how-to-stop-the-built-in-messenger-from-signing-in-on-windows-8-consumer-preview/&#34;&gt;blokkaamalla koko sovelluksen palomuurista&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Microsoft-tunnuksen antamisen jälkeen Windows 8 myöskin luo automaattisesti paikallisen käyttäjätunnuksen, jonka salasana on sama kuin Hotmailissa ja Mesessä. Tämä on periaatteessa ihan jees, mutta myös tunnuksen &lt;strong&gt;&#34;Realname&#34;&lt;/strong&gt; asettuu Mesen mukaan, eikä sitä voi vaihtaa. Kannattaa siis totutella olemaan Windowsissa samalla lempinimellä kuin chättäillessä.&lt;/il&gt;&lt;li&gt;&lt;strong&gt;Salasanan vaihtaminenkaan&lt;/strong&gt; ei ole ihan yksinkertaista, sillä Metro-näkymästä pitää hoksata painaa &#34;Change account picture&#34;, jonka jälkeen voi kaivaa esiin salasanan vaihtopainikkeen. Pahinta kuitenkin on, että salasana vaihtuu samalla myös Microsoft-tiliin, eli kotikoneella käytetty salasana tulee käyttöön myös Hotmailiin, Meseen, jne. Windows 8 ei edes varoita tästä millään tavalla.&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;Pahempiakin mokia varmaan vielä nähdään, mutta nämä tulivat ilmi heti ensimmäisen päivän käytön aikana. Ylipäätään Windows 8:n jakaminen erikseen Metro-sovelluksiin ja perinteiseen ikkunoituun puoleen tuntuu käsittämättömältä ratkaisulta. Sovellusta käynnistäessä ei tiedä, aukeaako se Metro-tyylisesti koko ruudulle kaiken muun peittäen vai tavalliselle työpöydälle ikkunoituna.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vältä Pythonin luokkia - käytä namedtuplea</title>
      <link>https://kennethfalck.net/2012/03/18/v%C3%A4lt%C3%A4-pythonin-luokkia-k%C3%A4yt%C3%A4-namedtuplea/</link>
      <pubDate>Sun, 18 Mar 2012 16:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/03/18/v%C3%A4lt%C3%A4-pythonin-luokkia-k%C3%A4yt%C3%A4-namedtuplea/</guid>
      <description>&lt;p&gt;Ohjelmoidessa on usein tarvetta luoda objekteja, joilla on joukko nimettyjä kenttiä. Python tarjoaa tähän useita vaihtoehtoja, joista dict-rakenne on ehkäpä yleisin, mutta hieman hankala kaikkine lainausmerkkeineen, varsinkin kenttiin myöhemmin viitatessa:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;article = {&amp;#39;title&amp;#39;:&amp;#39;Otsikko&amp;#39;, &amp;#39;body&amp;#39;:&amp;#39;Leipäteksti&amp;#39;}&#xA;print article[&amp;#39;title&amp;#39;], article[&amp;#39;body&amp;#39;]&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;br/&gt;Toinen vaihtoehto on toteuttaa pieni luokka, joka asettaa samat kentät attribuuteiksi. Mutta se on työlästä, koska joutuu kirjoittamaan &lt;strong&gt;init&lt;/strong&gt;-metodin, jos haluaa luoda objekteja yhdellä rivillä:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;class Article(object):&#xA;    def __init__(self, title, body):&#xA;        self.title = title&#xA;        self.body = body&#xA;&lt;p&gt;article = Article(title=&#39;Otsikko&#39;, body=&#39;Leipäteksti&#39;)&#xA;print article.title, article.body&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Djangon ylläpitosivuihin linkittäminen</title>
      <link>https://kennethfalck.net/2012/03/16/djangon-yll%C3%A4pitosivuihin-linkitt%C3%A4minen/</link>
      <pubDate>Fri, 16 Mar 2012 04:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/03/16/djangon-yll%C3%A4pitosivuihin-linkitt%C3%A4minen/</guid>
      <description>&lt;p&gt;Djangon sisäänrakennettu &lt;a href=&#34;https://docs.djangoproject.com/en/dev/ref/contrib/admin/&#34;&gt;ylläpitoliittymä&lt;/a&gt; on varsin pätevä tapa toteuttaa useimpien webbisaittien ylläpito. Itselleni on tullut tavaksi linkittää siihen suoraan erilaisilta julkisiltakin sivuilta silloin, käyttäjä on kirjautuneena sisään ylläpitäjänä. Olen aiemmin käyttänyt staattisia linkkejä /admin/-polkuun.&lt;/p&gt;&#xA;&lt;p&gt;Äskettäin huomasin, että linkityksen voi tehdä myös &amp;quot;oikein&amp;quot;, sillä jokaisella admin-toiminnolla on oma rekisteröity URLinsa Djangossa. Nämä on dokumentoitu edellä mainitun sivun &lt;a href=&#34;https://docs.djangoproject.com/en/dev/ref/contrib/admin/#reversing-admin-urls&#34;&gt;alaosassa&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Esimerkiksi linkitys ylläpidon etusivulle onnistuu näin:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;&amp;lt;a href=&amp;quot;{% url admin:index %}&amp;quot;&amp;gt;Ylläpito&amp;lt;/a&amp;gt;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Artikkelin muokkauslinkki voi olla tämän näköinen:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Aktivoi virtualenv-ympäristö automaattisesti</title>
      <link>https://kennethfalck.net/2012/03/14/aktivoi-virtualenv-ymp%C3%A4rist%C3%B6-automaattisesti/</link>
      <pubDate>Wed, 14 Mar 2012 12:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/03/14/aktivoi-virtualenv-ymp%C3%A4rist%C3%B6-automaattisesti/</guid>
      <description>&lt;p&gt;Useimpiin web-projekteihini liittyy Python-virtuaaliympäristö, joka on toteutettu &lt;a href=&#34;http://www.doughellmann.com/projects/virtualenvwrapper/&#34;&gt;virtualenvwrapper&lt;/a&gt;illa. Huomasin, että siirtyessäni työskentelemään projektin parissa kirjoitan aina kaksi komentoa tähän tyyliin:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;$ cd myproject&#xA;$ workon myproject&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Rupesin miettimään, voisiko tämän automatisoida niin, että kun siirryn myproject-hakemistoon, niin virtuaaliympäristö aktivoitaisiin automaattisesti. Ja tähän löytyykin helppo ratkaisu, kunhan käyttää bash-shelliä (oletus Mac OS X:ssä sekä useimmissa Linuxeissa) ja asettaa sille PROMPT_COMMAND-muuttujan. Tämän muuttujan sisältämä komento ajetaan joka kerta, kun bash näyttää komentokehotteen.&lt;/p&gt;&#xA;&lt;p&gt;Tässä esimerkki:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ember vs. Backbone</title>
      <link>https://kennethfalck.net/2012/03/05/ember-vs.-backbone/</link>
      <pubDate>Mon, 05 Mar 2012 11:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/03/05/ember-vs.-backbone/</guid>
      <description>&lt;p&gt;Kokeilin hiljattain ohjelmoida melko yksinkertaisen pienen sovelluksen sekä &lt;a href=&#34;http://emberjs.com/&#34;&gt;Emberillä&lt;/a&gt; että &lt;a href=&#34;http://backbonejs.org/&#34;&gt;Backbonella&lt;/a&gt;. Vedän tähän yhteen oleellisimmat huomaamani erot. Jos kyseiset frameworkit eivät ole tuttuja, niin niillä ohjelmoidaan webbiselaimessa toimivia JavaScript-sovelluksia. Ideana on rakentaa sovellukset MVC-rakenteen mukaisesti siten, että tietomallit, kontrollerit ja näkymät pystytään selvästi erottamaan toisistaan. Näin sovelluksista tulee selkeämpiä ja helpompia ylläpitää.&lt;/p&gt;&#xA;&lt;h2 style=&#34;clear:both&#34;&gt;Dynaaminen sidonta&lt;/h2&gt;&#xA;&lt;p&gt;Ember.js:n selvästi erottuvin ominaispiirre on tapa, jolla tietomallien property-arvot voidaan sitoa näkymiin dynaamisesti. Kun property on kerran sidottu HTML:ään DOM-puun kautta, se päivittyy sinne automaattisesti aina myöhemminkin, kun propertyn arvoa muutetaan JavaScriptissä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 2.7 ja Counter-objektit</title>
      <link>https://kennethfalck.net/2012/02/15/python-2.7-ja-counter-objektit/</link>
      <pubDate>Wed, 15 Feb 2012 23:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/02/15/python-2.7-ja-counter-objektit/</guid>
      <description>&lt;p&gt;Eräs usein toistuva ohjelmointiprobleema on laskea yhteen usean eri dictionary-objektin sisältämien avainarvoparien summat.&lt;/p&gt;&#xA;&lt;p&gt;Lähtökohtana voivat olla vaikkapa tällaiset objektit:&#xA;&lt;br/&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;values1 = {&amp;#39;small&amp;#39;:10, &amp;#39;medium&amp;#39;:20, &amp;#39;large&amp;#39;:30}&#xA;values2 = {&amp;#39;medium&amp;#39;:50}&#xA;values3 = {&amp;#39;large&amp;#39;:100}&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Miten näistä saadaan helpoiten yhdistettyä yksi objekti, joka sisältää nämä yhteenlasketut arvot?&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;{&amp;#39;small&amp;#39;:10, &amp;#39;medium&amp;#39;:70, &amp;#39;large&amp;#39;:130}&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Python 2.7 tarjoaa tähän kätevän Counter-luokan, jolla voidaan suorittaa kyseiset laskutoimitukset suoraan +-operaatioina:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;from collections import Counter&#xA;print dict(Counter(values1) + Counter(values2) + Counter(values3))&#xA;{&amp;#39;large&amp;#39;: 130, &amp;#39;medium&amp;#39;: 70, &amp;#39;small&amp;#39;: 10}&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Huomaa, että Counter on dict-luokan aliluokka, joten sitä voi halutessaan käyttää sellaisenaan tai helposti muuttaa takaisin dict-luokaksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Facebookin Like-nappulan kuuntelu</title>
      <link>https://kennethfalck.net/2012/02/11/facebookin-like-nappulan-kuuntelu/</link>
      <pubDate>Sat, 11 Feb 2012 22:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/02/11/facebookin-like-nappulan-kuuntelu/</guid>
      <description>&lt;p&gt;Vaihdoin blogiini kokeeksi XFBML-pohjaisen Like-nappulan, joka mahdollistaa &lt;a href=&#34;https://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/&#34;&gt;edge.create-eventin&lt;/a&gt; kuuntelemisen. JavaScriptillä voi siis tunnistaa milloin joku painaa Like-nappulaa ja reagoida siihen halutulla tavalla. Pahoittelen kokeilemisesta syntyvää ylimääräistä likespämmiä. Ideana tässä on se, että voin esimerkiksi tallentaa blogini omaan tietokantaan tiedon siitä, montako kertaa mitäkin artikkelia on liketetty.&lt;/p&gt;&#xA;&lt;p&gt;Tässä vielä lyhyt esimerkki siitä, miten Liken kuuntelu toimii käytännössä:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;window.fbAsyncInit = -&amp;gt;&#xA;  # Listen to Facebook events&#xA;  window.FB.Event.subscribe &amp;#39;edge.create&amp;#39;, (url) -&amp;gt;&#xA;    console.log(&amp;#39;Thanks for liking!&amp;#39;)&lt;/code&gt;&lt;/pre&gt;</description>
    </item>
    <item>
      <title>Miksi blogissa on hiljaista</title>
      <link>https://kennethfalck.net/2012/01/31/miksi-blogissa-on-hiljaista/</link>
      <pubDate>Tue, 31 Jan 2012 04:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/01/31/miksi-blogissa-on-hiljaista/</guid>
      <description>&lt;p&gt;Olen huomannut viime aikoina, että yhä suurempi osa aktiivisuudestani Internetissä tapahtuu joko Facebookissa tai (pienemmässä määrin) Twitterissä. Yleensä luen jonkin mielenkiintoisen artikkelin ja päätän sitten jakaa sen lyhyen kommentin kera. Yhä harvemmin tulee eteen sellainen tilanne, että jostakin aiheesta tuntuisi tarpeelliselta kirjoittaa kokonainen blogikirjoitus.&lt;/p&gt;&#xA;&lt;p&gt;Facebook on sikäli houkuttelevin paikka jakaa linkkejä, että siellä niiden ympärille syntyy usein vilkasta keskustelua. Keskustelu saattaisi olla jopa vilkkaampaa, jos linkkejä julkaisisi koko maailmalle. En vain ole vielä saanut säädettyä yksityisasetuksia kuntoon niin, että Facebook toimisi samaan aikaan sekä pienempien piirien suljettuna keskusteluareenana että julkisena mikroblogina. Pitäisi ehkä kokeilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tablettikäyttäjiä Suomessa nyt 170.000</title>
      <link>https://kennethfalck.net/2012/01/24/tablettik%C3%A4ytt%C3%A4ji%C3%A4-suomessa-nyt-170.000/</link>
      <pubDate>Tue, 24 Jan 2012 17:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2012/01/24/tablettik%C3%A4ytt%C3%A4ji%C3%A4-suomessa-nyt-170.000/</guid>
      <description>&lt;p&gt;Mukava nähdä (arvioituja) tilastotietoja asiasta, josta yleensä tuntuu vallitsevan epätietoisuus:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.sanoma.fi/tietoa-sanomasta/sanoma-news/uutiset/mobiilin-kaytto-hurjassa-kasvussa-verkkopalveluissa-jouluna-saadut-paatelaitteet-nakyvat-jo-sanoman-tilastoissa&#34;&gt;Sanoma Newsin lehdistötiedote&lt;/a&gt;&#xA;&lt;br/&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&lt;p&gt;Sanoman verkkosivujen liikennetietojen perusteella arvioidaan, että iPadien määrä Suomessa on joulun jälkeen ylittänyt 150 000 laitteen rajan ja Android-tabletteja on noin 20 000. Tablet-laitteiden kokonaismäärä Suomessa on siis ylittänyt 170 000 - alle kahdessa vuodessa kokonaan uuden päätelaitetyypin julkaisusta.&lt;/p&gt;&lt;p&gt;Jo lähes puolet Sanoman mobiililiikenteestä tulee Applen päätelaitteista, iPhonesta ja iPadista. Android-pohjaisista laitteista tuleva liikenne on noin 20 prosenttia kokonaismäärästä ja käyttöjärjestelmä näyttää nousevan alkuvuoden aikana suosiossa Symbianin ohi. Windows-puhelimet edustavat toistaiseksi noin yhtä prosenttia koko liikenteestä, mutta osuuden odotetaan kasvavan uusien puhelinten lanseerauksen myötä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tietomallit HTML5-sovelluksissa: Backbone vs. Spine</title>
      <link>https://kennethfalck.net/2011/12/29/tietomallit-html5-sovelluksissa-backbone-vs.-spine/</link>
      <pubDate>Thu, 29 Dec 2011 20:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/12/29/tietomallit-html5-sovelluksissa-backbone-vs.-spine/</guid>
      <description>&lt;p&gt;HTML5-sovellusten kehittämiseen on ainakin kaksi hyväksi havaittua JavaScript-frameworkia: &lt;a href=&#34;http://backbonejs.org/&#34;&gt;Backbone&lt;/a&gt; ja &lt;a href=&#34;http://spinejs.com/&#34;&gt;Spine&lt;/a&gt;. Käyn tässä artikkelissa läpi näissä havaitsemiani eroja tietomallien osalta. Suurin tekninen eroavuus on siinä, että Backbone on kehitetty JavaScriptillä ja Spine CoffeeScriptillä. Tämä ei estä käyttämästä kumpaakin ristiin kumman tahansa kielen kanssa, mutta Spine hyödyntää enemmän CoffeeScriptin ominaisuuksia.&lt;/p&gt;&#xA;&lt;p&gt;CoffeeScriptissä on oma luokkasyntaksinsa, jolla tietomallit luodaan näin:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;class Article extends Spine.Model&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Backbonessa vastaava tehdään JavaScriptillä perinteisempään tapaan:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;var Article = Backbone.Model.extend({});&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h3&gt;Tietomallien määrittely&lt;/h3&gt;&#xA;&lt;p&gt;Spine ja Backbone suhtautuvat tietomalleihin hieman eri lähtökohdista. Spine lähtee siitä, että tietokentät määritellään mallin yhteydessä. Niitä voidaan käsitellä tavallisina muuttujina (propertyinä). Lisäksi tietomalli koostuu vain yhdestä Model-luokasta. Sille voidaan määritellä REST-rajapinnan URL, josta tiedot ladataan JSON-muodossa. Luokkaa ei tarvitse erikseen instantioida, vaan sitä käytetään staattisia metodeita kutsuen samaan tapaan kuin Ruby on Railsissa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MongoDB ja täystekstihaku</title>
      <link>https://kennethfalck.net/2011/12/29/mongodb-ja-t%C3%A4ystekstihaku/</link>
      <pubDate>Thu, 29 Dec 2011 00:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/12/29/mongodb-ja-t%C3%A4ystekstihaku/</guid>
      <description>&lt;p&gt;MongoDB ja &lt;a href=&#34;http://sphinxsearch.com/&#34;&gt;Sphinx&lt;/a&gt; sopivat huonosti yhteen, koska Sphinx edellyttää (typerästi) jokaisen indeksoitavan dokumentin olevan tunnistettavissa 32- tai 64-bittisellä numerolla. MongoDB:n ObjectId-tunnisteet ovat 96-bittisiä, joten ne eivät mahdu Sphinxiin.&lt;/p&gt;&#xA;&lt;p&gt;Tämän vuoksi päätin luopua Sphinxistä tämän saitin tekstihaussa ja pyöräytin nopeasti kasaan oman MongoDB-pohjaisen haun. MongoDB ei suoraan tue täystekstihakuja, mutta &lt;a href=&#34;http://www.mongodb.org/display/DOCS/Full+Text+Search+in+Mongo&#34;&gt;mahdollistaa niiden toteuttamisen itse&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Oma quick-and-dirty-ratkaisuni perustuu artikkelien sanojen pilkkomiseen dict-objekteiksi, jotka sisältävät kunkin sanan lukumäärän. Pilkkominen tehdään tällaisella Python-koodilla, josta on suhteellisen helppo säätää sanat erottelevia erikoismerkkejä:&lt;/p&gt;</description>
    </item>
    <item>
      <title>CoffeeScript, SASS ja YUICompressor Djangossa</title>
      <link>https://kennethfalck.net/2011/12/28/coffeescript-sass-ja-yuicompressor-djangossa/</link>
      <pubDate>Wed, 28 Dec 2011 23:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/12/28/coffeescript-sass-ja-yuicompressor-djangossa/</guid>
      <description>&lt;p&gt;Hiukan lisää optimointia blogisivustooni: CSS- ja JavaScript-tiedostot yhdistetään nyt &lt;a href=&#34;http://www.allbuttonspressed.com/projects/django-mediagenerator&#34;&gt;django-mediageneratorilla&lt;/a&gt; yksittäisiksi tiedostoiksi. Samalla ne optimoidaan &lt;a href=&#34;http://developer.yahoo.com/yui/compressor/&#34;&gt;YUI Compressorilla&lt;/a&gt; mahdollisimman pieniksi. Tiedostojen nimet päivittyvät automaattisesti niin, että vanhat versiot eivät jää selainten välimuistiin lojumaan.&lt;/p&gt;&#xA;&lt;p&gt;Django-mediagenerator tukee myös CoffeeScriptin ja SASSin kääntämistä JavaScriptiksi ja CSS:ksi, joten sekin tulee hoidettua samalla. Normaalien .js- ja .css-tiedostojen sekaan voi heitellä vapaasti .coffee- ja .scss-tiedostoja, ja mediagenerator kääntää ne automaattisesti oikeilla kääntäjillä.&lt;/p&gt;&#xA;&lt;p&gt;Pienenä jippona huomasin sen, että SASS-tiedostoissa suhteellisten URL-viittausten pitää olla yhtä hakemistoporrasta ylempänä kuin normaalisti. Esimerkiksi url(images/twitter.png) piti muuttaa muotoon url(css/images/twitter.png), jotta mediagenerator nimeää sen oikein.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MongoDB käytössä</title>
      <link>https://kennethfalck.net/2011/12/28/mongodb-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Wed, 28 Dec 2011 01:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/12/28/mongodb-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Blogini siirtyi nyt MongoDB:hen. Vanhan sisällön siirto MySQL:stä sujui pääosin ongelmitta. Muutamia relaatioita piti poistaa ja korvata EmbeddedModelField-objekteilla.&lt;/p&gt;&#xA;&lt;p&gt;Tein siirron dumppaamalla ensin vanhan sisällön MySQL:stä ./manage.py dumpdata -komennolla JSON-tiedostoihin. Sitten ajoin pienen skriptin, joka muutti objektien numeeriset pk-kentät ja foreignkey-relaatiot MongoDB:n ObjectId-muotoon. Lopuksi latasin konvertoidun sisällön ./manage.py loaddata -komennolla MongoDB:hen.&lt;/p&gt;&#xA;&lt;p&gt;ObjectId-konversio oli ajatukseltaan tällainen, eli ObjectId:t muodostettiin aikaleimasta ja MySQL:n aiemmasta numeerisesta primarykeystä:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;pk = item[&amp;#39;pk&amp;#39;]&#xA;if &amp;#39;created&amp;#39; in item[&amp;#39;fields&amp;#39;]:&#xA;    ts = time.mktime(datetime.strptime(item[&amp;#39;fields&amp;#39;][&amp;#39;created&amp;#39;], &amp;#39;%Y-%m-%d %H:%M:%S&amp;#39;).timetuple())&#xA;item[&amp;#39;pk&amp;#39;] = &amp;#39;%08x%06x%010x&amp;#39; % (ts, machine, int(pk))&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Hankalin osuus oli kommentointi, joka perustui aiemmin Djangon sisäänrakennettuun comments-ominaisuuteen ja siihen model inheritancella tehtyihin laajennuksiin. Korvasin ne omalla implementaatiolla, johon tarvittiin muutama kymmentä riviä Python-koodia. Pienenä haittapuolena tuli se, että kommenttien ID:t vaihtuivat MongoDB:n ObjectId:iksi ja RSS-feedin pointterit menivät nollille.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uudistuksia</title>
      <link>https://kennethfalck.net/2011/12/27/uudistuksia/</link>
      <pubDate>Tue, 27 Dec 2011 07:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/12/27/uudistuksia/</guid>
      <description>&lt;p&gt;Blogini ulkoasu on hieman päivittynyt. Joku saattaa tunnistaakin, että sen pohjana on &lt;a href=&#34;http://twitter.github.com/bootstrap/&#34;&gt;Twitter Bootstrap&lt;/a&gt;, joka on mukavan yleiskäyttöinen CSS-alusta. Olen käyttänyt sitä paljon erilaisissa harrasteprojekteissa, joihin on pitänyt saada yksinkertainen mutta siisti ja helposti kustomoitava sivupohja.&lt;/p&gt;&#xA;&lt;p&gt;Tarkoitus on puuhastella blogin tekniikan parissa vielä hieman lisää joululomien aikana. Haluaisin vihdoinkin päästä eroon MySQL:stä ja siirtää koko saitin MongoDB:n päälle, mikä toivottavasti vähentää myös Memcachedin käytön tarvetta. Samaten suunnitelmissa on muuttaa sivuston JavaScript-koodi CoffeeScript-pohjaiseksi ja ottaa käyttöön joko Backbone tai Spine.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kommenttien esimoderointi</title>
      <link>https://kennethfalck.net/2011/12/13/kommenttien-esimoderointi/</link>
      <pubDate>Tue, 13 Dec 2011 13:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/12/13/kommenttien-esimoderointi/</guid>
      <description>&lt;p&gt;Olen ottanut käyttöön kommenttien esimoderoinnin niissä tapauksissa, joissa &lt;a href=&#34;http://mollom.com/&#34;&gt;Mollom&lt;/a&gt; palauttaa epävarman tuloksen (spam or not). Esimoderoitavat kommentit jäävät näkyviin harmaina, mutta niistä ei lähde sähköpostinotifikaatioita eivätkä ne näy RSS-feedissä. Kommenttien linkeissä on myöskin nyt rel=&amp;quot;nofollow&amp;quot; -attribuutti.&lt;/p&gt;&#xA;&lt;p&gt;Viime aikoina ei ole ollut erityisen aktiivista keskustelua kommenteissa, mutta vähän väliä vanhoihin kirjoituksiin ilmestyy spämmiä, jonka olen aiemmin käynyt käsin poistelemassa jälkeenpäin. Saan itse heti sähköpostinotifikaation kaikista uusista kommenteista, olivat ne spämmiä tai eivät, ja reagoin yleensä aika nopeasti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>JavaScript-web-sovellusten sisäinen HTML esiin</title>
      <link>https://kennethfalck.net/2011/11/24/javascript-web-sovellusten-sis%C3%A4inen-html-esiin/</link>
      <pubDate>Thu, 24 Nov 2011 20:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/11/24/javascript-web-sovellusten-sis%C3%A4inen-html-esiin/</guid>
      <description>&lt;p&gt;Nykyään yhä useampi web-sivusto on rakennettu siten, että sen varsinaista rakennetta ei saa näkyviin ilman JavaScriptiä. Esimerkiksi Twitter on täysin JavaScript-pohjainen ja se lataa sivujen sisällöt oman REST-rajapintansa kautta palvelimeltaan. Twitterin linkitkin ovat tätä muotoa:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://twitter.com/#!/kennu/status/139455053852454914&#34;&gt;http://twitter.com/#!/kennu/status/139455053852454914&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Toisin sanoen URL osoittaa itse asiassa Twitterin etusivulle, ja linkin hash-osio vain kertoo JavaScript-sovellukselle, mitä sisältöä ruudulla näytetään.&lt;/p&gt;&#xA;&lt;p&gt;Miten tällaisesta linkistä sitten saa ohjelmallisesti selville sen varsinaisen kiinnostavan sisällön, eli tweettauksen? Eräs tapa on käyttää &lt;a href=&#34;http://www.phantomjs.org/&#34;&gt;PhantomJS:ää&lt;/a&gt;, joka osaa käsitellä HTML-sivuja virtuaalisessa DOM-muodossa. PhantomJS on helppo asentaa Mac OS X:ään &lt;a href=&#34;http://mxcl.github.com/homebrew/&#34;&gt;Homebrew:n&lt;/a&gt; kautta:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mac App Store muuttuu suljetummaksi</title>
      <link>https://kennethfalck.net/2011/11/03/mac-app-store-muuttuu-suljetummaksi/</link>
      <pubDate>Thu, 03 Nov 2011 17:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/11/03/mac-app-store-muuttuu-suljetummaksi/</guid>
      <description>&lt;p&gt;Hacker News &lt;a href=&#34;http://news.ycombinator.com/item?id=3191021&#34;&gt;käsittelee kiintoisaa aihetta&lt;/a&gt;: Apple aikoo velvoittaa Mac App Storessa myynnissä olevat sovellukset noudattamaan hiekkalaatikkoperiaatetta eli sandboxausta. Aiheesta kirjoitettiin &lt;a href=&#34;http://lacquer.fi/pauli/blog/2011/11/why-the-mac-app-sandbox-makes-me-sad/&#34;&gt;tässä blogissa&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Kehityssuunta on monella tapaa ongelmallinen, mutta minusta kyse on kuitenkin vain tietotekniikan kypsymisestä. Muutaman viime vuosikymmenen ajan käyttäjällä ei ole ollut mitään takeita siitä, mitä hänen imuroimansa ja asentamansa sovellus todellisuudessa tekee. Nyt Apple yrittää muuttaa toimintamallia siten, että Mac App Storesta ostetut sovellukset ovat turvallisia, eivätkä varmasti pääse käsiksi esimerkiksi käyttäjän asiakirjoihin tai valokuviin hänen tietämättään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Embed parallel Lua states in Python</title>
      <link>https://kennethfalck.net/2011/10/31/embed-parallel-lua-states-in-python/</link>
      <pubDate>Mon, 31 Oct 2011 22:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/10/31/embed-parallel-lua-states-in-python/</guid>
      <description>&lt;p&gt;Lua is a popular embedded scripting language used by many tools and games such as World of Warcraft. There is also a Python port called Lunatic-Python. It wraps around liblua (the C library) and allows you to execute Lua code in Python and Python code in Lua.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;#39;ve created a fork of Lunatic-Python in:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/kennu/Lunatic-Python&#34;&gt;https://github.com/kennu/Lunatic-Python&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;This fork allows you to create multiple Lua states, each of which has its own set of global variables.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu 11.10 Oneiric Ocelot käytössä</title>
      <link>https://kennethfalck.net/2011/10/13/ubuntu-11.10-oneiric-ocelot-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Thu, 13 Oct 2011 18:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/10/13/ubuntu-11.10-oneiric-ocelot-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Tuttuun tapaan päivitin taas blogiani pyörittävän Linode-palvelimen Ubuntun tuoreimpaan 11.10-versioon heti sen ilmestyttyä. Päivitys meni läpi aika lailla ongelmitta.&lt;/p&gt;&#xA;&lt;p&gt;Varnishin default.vcl-tiedostossani oli jotain kustomointeja, jotka vaativat pientä säätämistä, Gunicorn-palvelimesta piti ottaa väliaikaisesti gevent pois käytöstä ja SphinxSearch-paketti ei käynnistynyt ennen kuin loin sille /var/run/sphinxsearch-hakemiston. Melko pientä hienosäätöä siis vain. Yleensä Ubuntu-palvelinpäivityksissä ei voi kuitenkaan olettaa, että ihan kaikki toimisi suoraan, vaan tällaisia pikkukorjauksia joutuu aina tekemään.&lt;/p&gt;&#xA;&lt;p&gt;Olen jo aiemmin ottanut tavaksi konfiguroida Ubuntu-palvelimet sillä tavoin, että vältän systeemitiedostojen muokkaamista (esimerkiksi /etc/sudoers, /etc/bashrc) ja sijoitan mieluummin kustomoinnit erillisiin alihakemistoihin, joita on yleensä tarjolla useimpiin tarkoituksiin (/etc/sudoers.d, /etc/profile.d).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kontribuutioita Djangon MongoDB-tukeen</title>
      <link>https://kennethfalck.net/2011/10/12/kontribuutioita-djangon-mongodb-tukeen/</link>
      <pubDate>Wed, 12 Oct 2011 17:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/10/12/kontribuutioita-djangon-mongodb-tukeen/</guid>
      <description>&lt;p&gt;Lähetin tänään patchit kahteen Django-projektiin niiden saattamiseksi toimimaan MongoDB:n kanssa:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/kennu/Django-facebook&#34;&gt;github.com/kennu/Django-facebook&lt;/a&gt;&#xA;&lt;a href=&#34;https://bitbucket.org/kennu/django-registration/overview&#34;&gt;bitbucket.org/kennu/django-registration&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/tschellenbach/Django-facebook&#34;&gt;Django-facebook&lt;/a&gt; on moduuli, jonka avulla Djangon käyttäjätietokannan saa helposti integroitua Facebookiin. Facebook-käyttäjä yhdistetään automaattisesti aiempaan Djangon User-objektiin, jolla on sama sähköpostiosoite, tai sitten hänelle luodaan uusi User-objekti. Samalla erilliseen UserProfile-objektiin tallentuu Facebook-käyttäjän ID ja access-token, joita voi sitten käyttää Graph APIssa.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://bitbucket.org/ubernostrum/django-registration&#34;&gt;Django-registration&lt;/a&gt; puolestaan tarjoaa valmiit toiminnot Django-käyttäjien rekisteröintiin ja sähköpostiaktivointiin. Django-facebook käyttää sitä apunaan uusien käyttäjien luomisessa.&lt;/p&gt;&#xA;&lt;p&gt;Tekemäni patchit korjaavat pieniä epäyhteensopivuuksia päivämäärien käsittelyssä ja JOIN-kyselyissä siten, että ne toimivat yhteen django-mongodb-enginen kanssa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Delete old Facebook status updates with Selenium</title>
      <link>https://kennethfalck.net/2011/09/23/delete-old-facebook-status-updates-with-selenium/</link>
      <pubDate>Fri, 23 Sep 2011 00:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/09/23/delete-old-facebook-status-updates-with-selenium/</guid>
      <description>&lt;p&gt;Facebook permanently stores all status updates you ever wrote. Even if you don&amp;#39;t see them anywhere, they&amp;#39;re still there. The only way to delete them is to open them in the browser manually, one-by-one, and click &amp;quot;Remove Post&amp;quot; for each of them.&lt;/p&gt;&#xA;&lt;p&gt;The Graph API only allows you to delete status updates that were originally created by your own application. So it doesn&amp;#39;t help here.&lt;/p&gt;&#xA;&lt;p&gt;To make deleting old status updates a bit more automated, I combined two tools:&lt;/p&gt;</description>
    </item>
    <item>
      <title>MongoDB:n datatyypit voivat yllättää</title>
      <link>https://kennethfalck.net/2011/09/14/mongodbn-datatyypit-voivat-yll%C3%A4tt%C3%A4%C3%A4/</link>
      <pubDate>Wed, 14 Sep 2011 23:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/09/14/mongodbn-datatyypit-voivat-yll%C3%A4tt%C3%A4%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.amazon.com/Definitive-Guide-MongoDB-Computing-ebook/dp/B004C05A4U?SubscriptionId=0VV5KRQ553R53P1G84G2&amp;tag=ws&amp;linkCode=xm2&amp;camp=2025&amp;creative=165953&amp;creativeASIN=B004C05A4U&#34;&gt;&lt;img class=&#34;thumbnail&#34; src=&#34;http://ecx.images-amazon.com/images/I/51fkERZV13L._SL160_.jpg&#34;/&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Olen tässä lueskellut &lt;a href=&#34;http://www.amazon.com/Definitive-Guide-MongoDB-Computing-ebook/dp/B004C05A4U?SubscriptionId=0VV5KRQ553R53P1G84G2&amp;tag=ws&amp;linkCode=xm2&amp;camp=2025&amp;creative=165953&amp;creativeASIN=B004C05A4U&#34;&gt;The Definitive Guide To MongoDB&lt;/a&gt; -nimistä kirjaa (Kindle), joka on hyvä katsaus MongoDB-tietokannan toimintaperiaatteisiin. Huomasin, että MongoDB:ssä on paljon sellaisia ominaisuuksia, joita ei tule välttämättä ajatelleeksi sitä pintapuolisesti kokeillessa.&lt;/p&gt;&#xA;&lt;p&gt;Vaikka MongoDB käyttää JSONin kaltaisia &lt;a href=&#34;http://bsonspec.org/&#34;&gt;BSON&lt;/a&gt;-tietorakenteita dokumenttien kuvaamiseen, se erottelee tietotyypit paljon tarkemmin kuin JSON. Tyypillinen esimerkki tästä ovat päivämäärät, joita JSON ei määrittee lainkaan erilliseksi tyypikseen. MongoDB tallentaa ne siten, että JavaScript-shellissä käsiteltyinä päivämäärät ovat automaattisesti Date-objekteja.&lt;/p&gt;&#xA;&lt;h2&gt;64-bittisyys haasteena&lt;/h2&gt;&#xA;&lt;p&gt;MongoDB erottelee toisistaan erilaiset numeeriset tyypit, joita JavaScript käsittelee aina liukulukuina. BSONissa mahdollisia tyyppejä ovat tavu (byte), 32-bittinen kokonaisluku (int32), 64-bittinen kokonaisluku (int64) sekä 64-bittinen liukuluku (double). Näiden kanssa on syytä olla tarkkana, sillä JavaScript-shellissä toimiessa kaikki luvut ovat oletuksena liukulukuja.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Querying by exact array value in MongoMapper</title>
      <link>https://kennethfalck.net/2011/08/29/querying-by-exact-array-value-in-mongomapper/</link>
      <pubDate>Mon, 29 Aug 2011 01:01:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/08/29/querying-by-exact-array-value-in-mongomapper/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://github.com/jnunemaker/mongomapper&#34;&gt;MongoMapper&lt;/a&gt; is a great MongoDB ORM for Ruby on Rails. It basically allows you to use MongoDB as a drop-in replacement for MySQL/PostgreSQL.&lt;/p&gt;&#xA;&lt;p&gt;However, it has one particular weakness: It is impossible to filter MongoDB queries by exact array values. MongoMapper converts array queries into $in operations, which means that all documents that contain &lt;em&gt;any&lt;/em&gt; of the specified array values will be returned.&lt;/p&gt;&#xA;&lt;p&gt;For example, assume you have two MongoDB documents:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lionin SMB-levyjaot ja Windows 7</title>
      <link>https://kennethfalck.net/2011/08/19/lionin-smb-levyjaot-ja-windows-7/</link>
      <pubDate>Fri, 19 Aug 2011 20:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/08/19/lionin-smb-levyjaot-ja-windows-7/</guid>
      <description>&lt;p&gt;Windows 7:llä on ongelmia kytkeytyä Mac OS X Lionin levyjakoihin oletusasetuksilla. Se väittää, että mikään käyttäjätunnus- ja salasanayhdistelmä ei kelpaa, vaikka samat toimisivat Linuxista käsin oikein.&lt;/p&gt;&#xA;&lt;p&gt;Ongelma korjaantuu avaamalla Windowsista Regedit ja lisäämällä &lt;a href=&#34;https://discussions.apple.com/thread/3206725?start=45&amp;tstart=0&#34;&gt;seuraava arvo&lt;/a&gt; asetuksiin:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa&#xA;Value name: LmCompatibilityLevel&#xA;Value type: DWORD&#xA;Value: 1&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Uudelleenkäynnistyksen jälkeen Windows saa jälleen yhteyden Mac OS X:n levyjakoihin. Jos ongelmia vielä on, kannattaa tarkistaa, että yhteyttä yritetään oikealla domainilla/workgroupilla. Oletuksena Windows 7 käyttää jostain syystä Windows-koneen omaa nimeä eikä palvelimen nimeä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nginx rate limiting käytössä blogissani</title>
      <link>https://kennethfalck.net/2011/08/06/nginx-rate-limiting-k%C3%A4yt%C3%B6ss%C3%A4-blogissani/</link>
      <pubDate>Sat, 06 Aug 2011 17:42:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/08/06/nginx-rate-limiting-k%C3%A4yt%C3%B6ss%C3%A4-blogissani/</guid>
      <description>&lt;p&gt;Otin koemielessä käyttöön Nginx:n &lt;a href=&#34;http://wiki.nginx.org/HttpLimitReqModule&#34;&gt;HttpLimitReq&lt;/a&gt;-moduulin. Sillä voi helposti lisätä webbisaitin haluttuun osaan rajoituksen, joka estää yksittäistä käyttäjää latailemasta sivuja liian nopeasti. Omassani on nyt rajoituksena 1 req/s tietyille sivuille.&lt;/p&gt;&#xA;&lt;p&gt;Nginxin rajoitus toimii siten, että sivut alkavat latautua hitaammin, kun niitä pommittaa. Kun pommitusta jatkaa riittävästi (rinnakkaisilla yhteyksillä), alkaa saada 503 Service Unavailable -ilmoitusta.&lt;/p&gt;&#xA;&lt;p&gt;Blogissani on kuitenkin käytössä myös Varnish, joka välimuistittaa useimmat sivut, joten niitä rajoitus ei koske. Ideana on, että ainoastaan Djangolle asti raskaaseen käsittelyyn menevät pyynnöt rajoitetaan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Portti 2525 välttää Amazonin SMTP-estot</title>
      <link>https://kennethfalck.net/2011/07/28/portti-2525-v%C3%A4ltt%C3%A4%C3%A4-amazonin-smtp-estot/</link>
      <pubDate>Thu, 28 Jul 2011 21:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/07/28/portti-2525-v%C3%A4ltt%C3%A4%C3%A4-amazonin-smtp-estot/</guid>
      <description>&lt;p&gt;Amazonin AWS-pilvipalvelussa on tiukka politiikka sähköpostin lähettämisen suhteen. Amazon sulkee portin 25 melko nopeasti, jos joltain virtuaalikoneelta lähetellään vähänkään enemmän sähköpostia. Näin käy helposti, mikäli esimerkiksi cron jobeissa ilmenee virheilmoituksia.&lt;/p&gt;&#xA;&lt;p&gt;Eräs helppo tapa kiertää Amazonin rajoitukset on pystyttää erillinen välityspalvelin Amazonin ulkopuolelle ja asettaa se kuuntelemaan esimerkiksi porttia 2525. Kaikki postit ohjataan ensin välityspalvelimelle, joka sitten toimittaa ne edelleen oikeille vastaanottajille.&lt;/p&gt;&#xA;&lt;h2&gt;Välityspalvelin&lt;/h2&gt;&#xA;&lt;p&gt;Ubuntun Postfix voidaan määritellä kuuntelemaan porttia 2525 kopioimalla ja muokkaamalla ensimmäinen rivi:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Fix empty Nginx FastCGI query strings</title>
      <link>https://kennethfalck.net/2011/06/19/fix-empty-nginx-fastcgi-query-strings/</link>
      <pubDate>Sun, 19 Jun 2011 04:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/06/19/fix-empty-nginx-fastcgi-query-strings/</guid>
      <description>&lt;p&gt;There are a lot of guides on the web that instruct you to set up your Nginx FastCGI sites like this for Zend Framework or similar frameworks, where a single index.php script handles all requests:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;server {&#xA;        listen 8080;&#xA;        root /var/www/public;&#xA;        index index.php;&#xA;&lt;pre&gt;&lt;code&gt;    try_files $uri /index.php;&#xA;&#xA;    location ~ \.php$ {&#xA;            fastcgi_pass unix:/tmp/php-fpm.sock;&#xA;            fastcgi_index index.php;&#xA;            include fastcgi_params;&#xA;    }&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;&#xA;&lt;p&gt;The problem here is that the query string is lost. The FastCGI process is passed an empty QUERY_STRING variable.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Automatisoi Ubuntun pakettien asentaminen</title>
      <link>https://kennethfalck.net/2011/06/18/automatisoi-ubuntun-pakettien-asentaminen/</link>
      <pubDate>Sat, 18 Jun 2011 20:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/06/18/automatisoi-ubuntun-pakettien-asentaminen/</guid>
      <description>&lt;p&gt;Ubuntun käyttämä Debianin APT-pakettijärjestelmä toimii oletuksena interaktiivisesti. Kun uusi paketti asennetaan apt-get install -komennolla, se kyselee usein käyttäjältä erilaisia tietokanta-asetuksia ja muita preferenssejä. Tämä hankaloittaa pakettien asentamista automaattisesti esimeriksi Puppetilla.&lt;/p&gt;&#xA;&lt;p&gt;Ongelma on ratkaistavissa &lt;a href=&#34;http://projects.puppetlabs.com/projects/1/wiki/Debian_Preseed_Patterns&#34;&gt;preseedaamalla&lt;/a&gt; tarvittavat asetukset debconfille etukäteen. Puppet tukee preseedausta suoraan package-direktiivisessä.&lt;/p&gt;&#xA;&lt;p&gt;Ideana on asentaa paketti kerran käsin niin, että tarvittavat asetukset tallentuvat muistiin. Asetukset esimerkiksi phpbb3-paketille saa sitten näkyviin näin:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sudo debconf-get-selections | grep phpbb3&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Asetuksia on todennäköisesti aika paljon, joten voi käyttää harkintaa siinä, tarvitaanko välttämättä kaikkia preseedaukseen. Itse kokeillessani nämä kaksi riviä riittivät phpbb3:n tapauksessa:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin vaihdat domain-salasanan ilman Windowsia</title>
      <link>https://kennethfalck.net/2011/06/10/n%C3%A4in-vaihdat-domain-salasanan-ilman-windowsia/</link>
      <pubDate>Fri, 10 Jun 2011 17:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/06/10/n%C3%A4in-vaihdat-domain-salasanan-ilman-windowsia/</guid>
      <description>&lt;p&gt;Jos sattuu työskentelemään yrityksessä, jonka sähköposti on Windowsin active directory -domainissa, voi salasanan vaihtaminen muodostua ongelmalliseksi.&lt;/p&gt;&#xA;&lt;p&gt;Ensimmäinen ongelma on se, että pakollisesta salasanan vaihtamisesta ei tule mitään tiedotetta sähköpostiin, vaan salasana vain lakkaa toimimasta N kuukauden välein. No, tämän voi yleensä arvata siitä, että iPhone, iPad ja muut sähköpostisovellukset eivät enää saa yhteyttä postipalvelimeen.&lt;/p&gt;&#xA;&lt;p&gt;Seuraava ongelma on sitten se, miten salasanan saa vaihdettua, jos käytössä ei ole yhtään Windows-konetta. Tämä onneksi hoituu Linuxilla, jos se vain saa yhteyden domain controlleriin. Komento on tällainen:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Googlen &#43;1 -napit</title>
      <link>https://kennethfalck.net/2011/06/02/googlen-1-napit/</link>
      <pubDate>Thu, 02 Jun 2011 05:55:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/06/02/googlen-1-napit/</guid>
      <description>&lt;p&gt;Lisäsin blogiini kokeeksi &lt;a href=&#34;http://www.google.com/webmasters/+1/button/index.html&#34;&gt;Googlen +1 -napit&lt;/a&gt;. Katsotaan kauanko menee ennen kuin koko +1 floppaa ja nappeihin kyllästyy.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Silly Nginx Range header problem with Rails</title>
      <link>https://kennethfalck.net/2011/05/28/silly-nginx-range-header-problem-with-rails/</link>
      <pubDate>Sat, 28 May 2011 00:58:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/05/28/silly-nginx-range-header-problem-with-rails/</guid>
      <description>&lt;p&gt;If your Nginx setup is persistently ignoring the HTTP Range header, make sure your file requests are actually being processed by Nginx.&lt;/p&gt;&#xA;&lt;p&gt;If you have the typical setup to pass non-existent URLs to Rails, you might be passing the files there by accident, too:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;try_files $uri @thin;&#xA;location @thin {&#xA;    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;&#xA;    proxy_set_header Host $http_host;&#xA;    proxy_redirect off;&#xA;    proxy_pass http://thin_remote;&#xA;}&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;In my case, the problem was that the web root directory was too protected (mode 700), so Nginx passed all requests to Rails. Rails, in turn, returns the static files from the public directory, but does not support Range requests.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Route 53 Alias Resource Record Sets for Boto</title>
      <link>https://kennethfalck.net/2011/05/25/route-53-alias-resource-record-sets-for-boto/</link>
      <pubDate>Wed, 25 May 2011 21:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/05/25/route-53-alias-resource-record-sets-for-boto/</guid>
      <description>&lt;p&gt;I just created my own fork of Boto (the Python API for Amazon AWS):&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/kennu/boto&#34;&gt;https://github.com/kennu/boto&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Mainly I added support for adding and removing &lt;a href=&#34;http://www.allthingsdistributed.com/2011/05/aws_ipv6.html&#34;&gt;Alias Resource Record Sets&lt;/a&gt;, which integrate Route 53 to Elastic Load-Balancing. This allow you to use root domains (example.com without the www prefix) with load balanced services.&lt;/p&gt;&#xA;&lt;p&gt;The shell command to add an ELB alias is something like:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;route53 add_alias xxxx example.com. A yyyy elb-name.elb.amazonaws.com.&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Where xxxx is the Route 53 Zone ID and yyyy is the Zone ID of the load balancer (shown in AWS EC2 Console).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin Bitcoin-verkkoraha toimii</title>
      <link>https://kennethfalck.net/2011/05/24/n%C3%A4in-bitcoin-verkkoraha-toimii/</link>
      <pubDate>Tue, 24 May 2011 16:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/05/24/n%C3%A4in-bitcoin-verkkoraha-toimii/</guid>
      <description>&lt;p&gt;Jos &lt;a href=&#34;http://bitcoin.org/&#34;&gt;Bitcoin&lt;/a&gt; ei ole vielä tuttu, niin siihen kannattaa tutustua nyt. Luin itse hiljattain järjestelmää käsittelevän &lt;a href=&#34;http://www.bitcoin.org/bitcoin.pdf&#34;&gt;whitepaperin&lt;/a&gt;, joka on miellyttävän lyhyt ja ytimekäs. Tarkempi speksi löytyy &lt;a href=&#34;https://en.bitcoin.it/wiki/Protocol_specification&#34;&gt;protokollamäärittelystä&lt;/a&gt; sekä &lt;a href=&#34;https://en.bitcoin.it/wiki/How_bitcoin_works&#34;&gt;toimintakuvauksesta&lt;/a&gt;. Ajattelin vetää kokonaisuutta hiukan yhteen tähän suomeksi.&lt;/p&gt;&#xA;&lt;h2&gt;Bitcoin&lt;/h2&gt;&#xA;&lt;p&gt;Bitcoin on P2P-valuuttajärjestelmä. Sen taustalla ei ole mitään keskitettyä laitosta, joka laskisi ulos valuuttaa tai tarkistaisi siihen liittyviä transaktioita. Luotettavuus perustuu siihen, että järjestelmä luottaa eniten laskentatehoa omistavaan verkon osaan.&lt;/p&gt;&#xA;&lt;p&gt;Bitcoin siis toimii luotettavasti niin kauan, kun &amp;quot;hyviä&amp;quot; noodeja on enemmän kuin &amp;quot;pahoja&amp;quot;. Lisäksi pahojen noodien täytyisi toimia koordinoidusti yhdessä voittaakseen hyvät. Hyvä noodi on sellainen, joka noudattaa samoja sääntöjä kuin Bitcoinin &lt;a href=&#34;http://bitcoin.org/&#34;&gt;virallinen client-ohjelma&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mac OS X:n paikallinen sähköposti kuntoon</title>
      <link>https://kennethfalck.net/2011/05/19/mac-os-xn-paikallinen-s%C3%A4hk%C3%B6posti-kuntoon/</link>
      <pubDate>Thu, 19 May 2011 14:58:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/05/19/mac-os-xn-paikallinen-s%C3%A4hk%C3%B6posti-kuntoon/</guid>
      <description>&lt;p&gt;Huomasin hiljattain, että iMaccini on yrittänyt lähettää minulle säännöllisesti sähköpostia epäonnistuneista cronjobeista. Koska Welho valitettavasti sabotoi Internettiä blokkaamalla portin 25 kokonaan kaikilta asiakkailtaan, posti on jäänyt jumiin paikalliseen jonoon.&lt;/p&gt;&#xA;&lt;p&gt;Ongelma on kuitenkin ratkaistavissa asettamalla Mac OS X:n postfix-palvelimeen relayhost-parametri. Samalla kannattaa asettaa myös myorigin, jotta sähköpostien lähettäjäksi tulee jotain järkevää. SMTP-palvelimen tulee luonnollisesti olla oman ISP:n tarjoama palvelin.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;/etc/postfix/main.cf&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;myorigin = example.com.invalid&#xA;relayhost = [smtp.welho.com]&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Näillä kahdella asetuksella posti alkaa kulkea. Sitä voi testata esimerkiksi mail-komennolla Terminalista:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google piilottaa Refererin SSL:ttömiltä saiteilta</title>
      <link>https://kennethfalck.net/2011/05/11/google-piilottaa-refererin-ssltt%C3%B6milt%C3%A4-saiteilta/</link>
      <pubDate>Wed, 11 May 2011 12:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/05/11/google-piilottaa-refererin-ssltt%C3%B6milt%C3%A4-saiteilta/</guid>
      <description>&lt;p&gt;Mielenkiintoinen havainto &lt;a href=&#34;http://news.ycombinator.com/item?id=2535452&#34;&gt;Hacker Newsin kommenteista&lt;/a&gt;: Kun käyttää Googlen turvallista &lt;a href=&#34;https://encrypted.google.com/&#34;&gt;SSL-hakua&lt;/a&gt;, niin saitit eivät näe HTTP Referer-kentästä, että käyttäjä saapui saitille Googlen kautta.&lt;/p&gt;&#xA;&lt;p&gt;Tämä johtuu siitä, että kun haku tehdään SSL-Googlesta, niin selaimet lähettävät Referer-kentän ainoastaan silloin, jos &lt;a href=&#34;http://en.wikipedia.org/wiki/HTTP_referrer#Referrer_hiding&#34;&gt;linkattu saittikin on SSL:n takana&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Tässä siis jälleen yksi syy siihen, miksi kaikkien web-palveluiden kannattaa hiljalleen alkaa tukea SSL-yhteyksiä muuallakin kuin vain sisäänkirjautumisessa ja rekisteröitymisessä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>DjangoCon 2011 AWS-esitys (PDF/Scribd)</title>
      <link>https://kennethfalck.net/2011/05/07/djangocon-2011-aws-esitys-pdf/scribd/</link>
      <pubDate>Sat, 07 May 2011 20:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/05/07/djangocon-2011-aws-esitys-pdf/scribd/</guid>
      <description>&lt;p&gt;Pidin tänään DjangoConissa Otaniemessä esityksen Django-sovellusten skaalaamisesta Amazon AWS:n avulla. Esitys on katsottavissa Scribdistä (alla) ja sen voi myös ladata PDF-muodossa. Sama PDF ilmestynee piakkoin &lt;a href=&#34;http://djangocon.fi/&#34;&gt;DjangoCon.fi&lt;/a&gt;-saitille.&lt;/p&gt;&#xA;&lt;p&gt;Kiitokset vielä tilaisuuden järjestäjille, sponsoreille ja yleisölle! Oli hienoa nähdä, että Djangolla on osaava ja innostunut käyttäjäkuntansa Suomessakin.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a title=&#34;View Scaling Django Apps With Amazon AWS on Scribd&#34; href=&#34;http://www.scribd.com/doc/54883641/Scaling-Django-Apps-With-Amazon-AWS&#34; style=&#34;margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;&#34;&gt;Scaling Django Apps With Amazon AWS&lt;/a&gt;&lt;iframe class=&#34;scribd_iframe_embed&#34; src=&#34;http://www.scribd.com/embeds/54883641/content?start_page=1&amp;view_mode=slideshow&amp;access_key=key-2fs27pymlka81yv6uqi7&#34; data-auto-height=&#34;true&#34; data-aspect-ratio=&#34;1.29936305732484&#34; scrolling=&#34;no&#34; id=&#34;doc_57992&#34; width=&#34;100%&#34; height=&#34;600&#34; frameborder=&#34;0&#34;&gt;&lt;/iframe&gt;&lt;script type=&#34;text/javascript&#34;&gt;(function() { var scribd = document.createElement(&#34;script&#34;); scribd.type = &#34;text/javascript&#34;; scribd.async = true; scribd.src = &#34;&lt;a href=&#34;http://www.scribd.com/javascripts/embed_code/inject.js&amp;quot;&#34;&gt;http://www.scribd.com/javascripts/embed_code/inject.js&amp;quot;&lt;/a&gt;; var s = document.getElementsByTagName(&#34;script&#34;)[0]; s.parentNode.insertBefore(scribd, s); })();&lt;/script&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amazon RDS ja UTF-8-merkistö</title>
      <link>https://kennethfalck.net/2011/05/02/amazon-rds-ja-utf-8-merkist%C3%B6/</link>
      <pubDate>Mon, 02 May 2011 23:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/05/02/amazon-rds-ja-utf-8-merkist%C3%B6/</guid>
      <description>&lt;p&gt;Amazonin RDS-tietokantapalvelu on hieno keksintö, mutta vaatii pientä konfigurointia toimiakseen UTF-8-merkistön kanssa yhteen. Itse olen noudattanut &lt;a href=&#34;http://matthew.mceachen.us/blog/howto-configure-an-amazon-rds-instance-to-use-utf-8-925.html&#34;&gt;näitä ohjeita&lt;/a&gt; luodessani uusia RDS-tilejä ja -instansseja.&lt;/p&gt;&#xA;&lt;p&gt;Tiivistäen täytyy tehdä seuraavaa:&lt;/p&gt;&#xA;&lt;ol&gt;&lt;li&gt; Luodaan uusi DB Parameter Group, ellei sellaista ole vielä luotu. Tämän nimeksi voi laittaa vaikkapa utf8-mysql55. MySQL:n eri versioille tarvitaan omat ryhmät (5.1.x, 5.5.x) ja ryhmät ovat Amazon-tilikohtaisia.&lt;/li&gt;&lt;li&gt;Muokataan kyseistä DB Parameter Groupia siten, että oletuksena käytetään UTF-8-merkistöä.&lt;/li&gt;&lt;li&gt;Käytetään tätä DB Parameter Groupia aina uusia RDS-instansseja luotaessa.&lt;/li&gt;&lt;/ol&gt;&#xA;&lt;p&gt;Asetusryhmän muokkaus käy tällä komennolla, kun &lt;a href=&#34;http://aws.amazon.com/developertools/Amazon-RDS/2928&#34;&gt;RDS CLI&lt;/a&gt; -työkalut on asennettu:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Persistent state for Node.js application servers</title>
      <link>https://kennethfalck.net/2011/04/30/persistent-state-for-node.js-application-servers/</link>
      <pubDate>Sat, 30 Apr 2011 17:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/04/30/persistent-state-for-node.js-application-servers/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://nodejs.org/&#34;&gt;Node.js&lt;/a&gt; is a great tool for writing simple and efficient application servers with server-side JavaScript. A typical use case is a chat server, which might have a global data structure like this:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;var CHAT = {&#xA;    channels: {&#xA;        &amp;#39;#general&amp;#39;: {&#xA;            name: &amp;#39;General&amp;#39;,&#xA;            messages: [&#xA;            ],&#xA;            users: {&#xA;            }&#xA;        }&#xA;    }&#xA;};&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;In this structure, each channel exists as an object that holds the channel&amp;#39;s name, its message history and the current user list.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Älä aja MongoDB:tä 32-bittisessä Linuxissa</title>
      <link>https://kennethfalck.net/2011/04/29/%C3%A4l%C3%A4-aja-mongodbt%C3%A4-32-bittisess%C3%A4-linuxissa/</link>
      <pubDate>Fri, 29 Apr 2011 14:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/04/29/%C3%A4l%C3%A4-aja-mongodbt%C3%A4-32-bittisess%C3%A4-linuxissa/</guid>
      <description>&lt;p&gt;Käytän yleensä virtuaalikoneissa 32-bittistä Linuxia, sillä se kuluttaa vähemmän muistia kuin 64-bittinen. Virtuaalikoneissa on harvoin tarvetta niin suurelle kokonaismuistille, että 64-bittisyyttä tarvittaisiin. Nyt kuitenkin tuli eteen tilanne, jossa näin on:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://blog.mongodb.org/post/137788967/32-bit-limitations&#34;&gt;MongoDB 32-bit limitations&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;MongoDB siis tarvitsee 64-bittisen käyttöjärjestelmän, jos sillä haluaa käsitellä yli 2.5GB kokoisia tietokantoja. Käytännössä MongoDB:tä ei kannata ollenkaan ajaa 32-bittisessä Linuxissa, koska raja voi tulla yllättäen vastaan ja sen jälkeen tietokanta muuttuu käyttökelvottomaksi. Itselleni kävi juuri näin erään datankeruusovelluksen kanssa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu 11.04 käytössä</title>
      <link>https://kennethfalck.net/2011/04/28/ubuntu-11.04-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Thu, 28 Apr 2011 15:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/04/28/ubuntu-11.04-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Päivitin taas blogipalvelimeni uusimpaan Ubuntuun. Tällä kertaa tuli pientä nikottelua siitä, että Nginxin päivitys lisäsi default-saitin, joka piti poistaa että oikeat palvelut tulevat näkyviin. Muuten ei ole ainakaan vielä kummempia ongelmia havaittavissa.&lt;/p&gt;&#xA;&lt;p&gt;Lisäksi /etc/sudoers näytti päivittyneen hieman erilaiseen formaattiin, mikä aiheuttanee monilla palvelimilla kiusallisen tilanteen. Näyttäisikin siltä, että omat sudo-määrittelyt kannattaa sijoittaa erilliseen tiedostoon /etc/sudoers.d-hakemiston alle, josta ne ladataan automaattisesti. Tiedosto täytyy muistaa asettaa oikeuksille 440, esim:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;chmod 440 /etc/sudoers.d/local&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Toisaalta Ubuntussa on nykyään sudo-ryhmä, johon voi lisätä ne käyttäjät, joille haluaa sallia täydet sudo-oikeudet. Näin ollen /etc/sudoers-tiedostoja ei välttämättä kannatakaan editoida, vaan ajaa kullekin käyttäjälle tällainen komento:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django ja Google Summer of Code 2011</title>
      <link>https://kennethfalck.net/2011/04/26/django-ja-google-summer-of-code-2011/</link>
      <pubDate>Tue, 26 Apr 2011 20:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/04/26/django-ja-google-summer-of-code-2011/</guid>
      <description>&lt;p&gt;Djangolle on kehitteillä muutamia kiintoisia projekteja &lt;a href=&#34;http://www.djangoproject.com/weblog/2011/apr/25/gsoc/&#34;&gt;Google Summer of Code 2011&lt;/a&gt;:ssä, joista omasta mielestäni mielenkiintoisimmat ovat:&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Template Engine Compilation and Runtime Refactoring&lt;/strong&gt;&lt;br/&gt; Tehokkuusparannuksia Djangon nykyisin hitaanpuoleiseen template-engineen.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Schema Alteration API&lt;/strong&gt;&lt;br/&gt; Pohjatyötä Djangoon sisäänrakennetulle schema migration -tuelle, joka toimisi samalla idealla kuin South.&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;Tsemiä vaan GSoC-koodaajille! Aiempina vuosina siellä on syntynyt mm. loistava multi-db-tuki, jonka ansiosta Django skaalautuu nykyään isoihinkin sovelluksiin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OSX Mail: Useampi osoite samassa tilissä</title>
      <link>https://kennethfalck.net/2011/04/14/osx-mail-useampi-osoite-samassa-tiliss%C3%A4/</link>
      <pubDate>Thu, 14 Apr 2011 21:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/04/14/osx-mail-useampi-osoite-samassa-tiliss%C3%A4/</guid>
      <description>&lt;p&gt;Jos sinulla on käytössä Mac OS X:n Mail-sovellus ja vastaanotat sähköpostia useilla eri sähköpostialiaksilla, ne kannattaa kaikki liittää tilin osoitteiksi pilkulla eroteltuina.&lt;/p&gt;&#xA;&lt;p&gt;Esimerkiksi:&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Email Address:&lt;/strong&gt; kennu@example.com&lt;/p&gt;&#xA;&lt;p&gt;Voidaan vaihtaa muotoon:&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Email Address:&lt;/strong&gt; kennu@example.com, &lt;a href=&#34;mailto:&amp;#x6b;&amp;#x65;&amp;#110;&amp;#x6e;&amp;#x65;&amp;#x74;&amp;#104;&amp;#x2e;&amp;#102;&amp;#97;&amp;#x6c;&amp;#99;&amp;#107;&amp;#64;&amp;#101;&amp;#120;&amp;#x61;&amp;#109;&amp;#x70;&amp;#x6c;&amp;#x65;&amp;#x2e;&amp;#99;&amp;#x6f;&amp;#x6d;&#34;&gt;&amp;#x6b;&amp;#x65;&amp;#110;&amp;#x6e;&amp;#x65;&amp;#x74;&amp;#104;&amp;#x2e;&amp;#102;&amp;#97;&amp;#x6c;&amp;#99;&amp;#107;&amp;#64;&amp;#101;&amp;#120;&amp;#x61;&amp;#109;&amp;#x70;&amp;#x6c;&amp;#x65;&amp;#x2e;&amp;#99;&amp;#x6f;&amp;#x6d;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tämän jälkeen sähköposteihin vastatessa mikään tiliin liitetyistä osoitteista ei tule enää ärsyttävästi Cc:ksi, vaan Mail ymmärtää, että ne ovat kaikki saman tilin osoitteita.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sähköpostin salaaminen EncFS:llä</title>
      <link>https://kennethfalck.net/2011/04/01/s%C3%A4hk%C3%B6postin-salaaminen-encfsll%C3%A4/</link>
      <pubDate>Fri, 01 Apr 2011 12:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/04/01/s%C3%A4hk%C3%B6postin-salaaminen-encfsll%C3%A4/</guid>
      <description>&lt;p&gt;Jos pyörittää omaa sähköpostipalvelinta ulkomailla, saattaa olla fiksua salata sähköpostien sisältö siltä varalta, että palvelimen turvallisuus joskus vaarantuu. Erityisesti tämä pätee, jos kyseessä on IMAP-palvelin, joka säilyttää sähköpostit palvelimella ikuisesti.&lt;/p&gt;&#xA;&lt;p&gt;Ubuntusta löytyy suhteellisen yksinkertainen tapa toteuttaa salaus hakemistokohtaisesti EncFS:llä. Se otetaan käyttöön asentamalla ensin tarvittava paketti:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;apt-get install encfs&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Tämän jälkeen luodaan kaksi hakemistoa: 1) salatun datan sisältävä hakemisto sekä 2) mountpoint, johon data ilmestyy selkokielisenä, kun salasana on annettu.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django 1.3 käytössä</title>
      <link>https://kennethfalck.net/2011/03/23/django-1.3-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Wed, 23 Mar 2011 16:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/03/23/django-1.3-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Päivitin sivustoni juuri ilmestyneeseen &lt;a href=&#34;http://docs.djangoproject.com/en/dev/releases/1.3/&#34;&gt;Django 1.3&lt;/a&gt;:een. Päivitys näyttäisi sujuneen ongelmitta.&lt;/p&gt;&#xA;&lt;p&gt;Django 1.3:ssa on lukuisia pieniä parannuksia ja muutoksia, mutta omassa käytössäni ei tällä hetkellä mitään erityisen mullistavaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Instant search -haku blogissani</title>
      <link>https://kennethfalck.net/2011/03/22/instant-search-haku-blogissani/</link>
      <pubDate>Tue, 22 Mar 2011 23:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/03/22/instant-search-haku-blogissani/</guid>
      <description>&lt;p&gt;Nyt blogissani on käytössä myös Googlen instant searchin kaltainen haku, joka alkaa näyttää hakutuloksia heti, kun hakulaatikkoon (oikeassa yläkulmassa) kirjoittaa kirjaimia. Haku tehdään aiemmin toteuttamani &lt;a href=&#34;https://kfalck.net/2011/03/22/hakusanojen-taydennys-djangolla-ja-redisilla&#34;&gt;autocomplete-toiminnon&lt;/a&gt; avulla, jolla etsitään ensimmäisen kirjoitettuihin alkukirjaimiin täsmäävä hakusana. Tällä hakusanalla tehdään sitten ajax-kysely ja esitetään tulokset saman tien ruudulla.&lt;/p&gt;&#xA;&lt;p&gt;Toteutus on hyvin yksinkertainen ja perustuu muutamiin jQuery-eventteihin sekä ajax-pyyntöihin. En ole ihan varma miten hyvin se pärjää hitaammilla laitteilla ja nettiyhteyksillä, mutta kokemuksista saa mielellään kommentoida.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hakusanojen täydennys Djangolla ja Redisillä</title>
      <link>https://kennethfalck.net/2011/03/22/hakusanojen-t%C3%A4ydennys-djangolla-ja-redisill%C3%A4/</link>
      <pubDate>Tue, 22 Mar 2011 20:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/03/22/hakusanojen-t%C3%A4ydennys-djangolla-ja-redisill%C3%A4/</guid>
      <description>&lt;p&gt;Blogini hakutoiminnossa on nyt käytössä hakusanojen automaattitäydennys. Sitä voi kokeilla näpyttelemällä sanoja oikeasta yläkulmasta löytyvään hakulaatikkoon.&lt;/p&gt;&#xA;&lt;p&gt;Suositeltavat hakusanat perustuvat kaikista artikkeleista löytyvien sanojen esiintymistiheyteen. Suosittelu ei siis perustu siihen, mitä on haettu eniten. (Ei täällä tehdä niin paljon hakuja, että siitä olisi iloa.)&lt;/p&gt;&#xA;&lt;p&gt;Toteutus perustuu kolmeen osaan:&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;&lt;a href=&#34;http://docs.jquery.com/Plugins/Autocomplete&#34;&gt;jQuery Autocomplete&lt;/a&gt; -laajennukseen, jolla on helppo lisätä tarvittava käyttöliittymä tavalliseen input-kenttään.&lt;/li&gt;&lt;li&gt;&lt;a href=&#34;http://redis.io/&#34;&gt;Redis&lt;/a&gt; 2.0 -tietokantaan, joka tukee suoraan tarvittavia sorted set -tietorakenteita. Redis tulee Ubuntun mukana.&lt;/li&gt;&lt;li&gt;Muutamaan riviin omaa Python/Django-koodia, jolla luodaan Redis-tietokannan sisältö ja etsitään sieltä hakusanoja.&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;h2&gt;Tietokannan rakenne&lt;/h2&gt;&#xA;&lt;p&gt;Tietokannan rakenne pohjautuu &lt;a href=&#34;http://antirez.com/post/autocomplete-with-redis.html&#34;&gt;tähän artikkeliin&lt;/a&gt; ja tarkemmin sanottuna sen loppupuoleen, jossa on kuvailtu painotetun autocomplete-järjestelmän idea. Rakenne on kaksitasoinen. Ensimmäisellä tasolla Redisiin on tallennettu avaimina kaikkien sanojen kaikki mahdolliset alkuosat:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Varnish-välimuistin tyhjentäminen Djangosta</title>
      <link>https://kennethfalck.net/2011/03/16/varnish-v%C3%A4limuistin-tyhjent%C3%A4minen-djangosta/</link>
      <pubDate>Wed, 16 Mar 2011 17:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/03/16/varnish-v%C3%A4limuistin-tyhjent%C3%A4minen-djangosta/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://varnish-cache.org/&#34;&gt;Varnish&lt;/a&gt; on tehokas välimuistipalvelin, joka pitää taustalla toimivan varsinaisen HTTP-palvelimen sivuja muistissa ja palvelee ne suoraan sieltä. Sen avulla on helppo nopeuttaa esimerkiksi &lt;a href=&#34;http://djangoproject.com/&#34;&gt;Djangon&lt;/a&gt; toimintaa huomattavasti, kun jokaista HTTP-pyyntöä ei tarvitse käsitellä yhä uudelleen Python-koodissa.&lt;/p&gt;&#xA;&lt;p&gt;Ongelmaksi muodostuu se, että kun Django-saitin sisältöä muokataan, Varnish tarjoilee edelleen vanhaa sisältöä N minuutin ajan. Jos sisällön haluaa päivittyvän heti, Varnishin välimuisti täytyy tyhjentää.&lt;/p&gt;&#xA;&lt;p&gt;Tähän tarkoitukseen löytyy kaksi GitHub-projektia nimeltään python-varnish ja django-varnish. Valitettavasti näissä projekteissa on muutamia puutteita, joiden takia ne eivät soveltuneet omaan käyttööni. Tämän vuoksi tein molemmista omat forkit, jotka löytyvät osoitteista:&lt;/p&gt;</description>
    </item>
    <item>
      <title>PositiveSSL-sertifikaatti käytössä kotisivuillani</title>
      <link>https://kennethfalck.net/2011/03/12/positivessl-sertifikaatti-k%C3%A4yt%C3%B6ss%C3%A4-kotisivuillani/</link>
      <pubDate>Sat, 12 Mar 2011 00:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/03/12/positivessl-sertifikaatti-k%C3%A4yt%C3%B6ss%C3%A4-kotisivuillani/</guid>
      <description>&lt;p&gt;Otin kotisivuillani käyttöön pakollisen SSL-salauksen. Sivusto ohjaa nyt kaikki pyynnöt &lt;a href=&#34;https://kfalck.net&#34;&gt;https://kfalck.net&lt;/a&gt; -saitille. Sertifikaattina toimii edullinen PositiveSSL, joka maksaa &lt;a href=&#34;http://www.namecheap.com/ssl-certificates/comodo/positivessl-certificate.aspx&#34;&gt;Namecheapissa&lt;/a&gt; 6.51 EUR/vuosi ($9/vuosi).&lt;/p&gt;&#xA;&lt;p&gt;Domainin ei tarvitse olla rekisteröity Namecheapista. Omani on GoDaddylta. Sertifikaatti haetaan normaalin openssl certificate request -menettelyn kautta. Henkilöllisyys varmennetaan siten, että Comodo (PositiveSSL:n tarjoaja) lähettää sähköpostin sertifikaattiin liittyvään domainiin tai sen WHOIS-tietueeseen merkittyyn osoitteeseen.&lt;/p&gt;&#xA;&lt;p&gt;Olen jo aiemmin ennustanut, että koko Internet tulee muuttumaan SSL-pohjaiseksi lähivuosina. Monet suuret saitit, kuten esimerkiksi &lt;a href=&#34;https://github.com/&#34;&gt;GitHub&lt;/a&gt; ja &lt;a href=&#34;https://facebook.com&#34;&gt;Facebook&lt;/a&gt;, käyttävät jo SSL:ää joko pakollisena tai ainakin suositeltuna vaihtoehtona.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Decoding PKCS#1 padding in Python</title>
      <link>https://kennethfalck.net/2011/03/07/decoding-pkcs%231-padding-in-python/</link>
      <pubDate>Mon, 07 Mar 2011 11:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/03/07/decoding-pkcs%231-padding-in-python/</guid>
      <description>&lt;p&gt;If you need to decrypt data that has been encrypted with the RSA algorithm as specified by PKCS#1 (&lt;a href=&#34;http://tools.ietf.org/html/rfc3447&#34;&gt;RFC 3447&lt;/a&gt;), you can use the &lt;a href=&#34;http://www.dlitz.net/software/pycrypto/&#34;&gt;PyCrypto&lt;/a&gt; toolkit.&lt;/p&gt;&#xA;&lt;p&gt;PyCrypto provides a simple API to load an RSA key and decrypt the ciphertext:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;from Crypto.PublicKey import RSA&#xA;key = RSA.importKey(open(&amp;#39;privatekey.der&amp;#39;).read())&#xA;print key.decrypt(&amp;quot;&amp;lt;ciphertext encrypted elsewhere&amp;gt;&amp;quot;)&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;However, PyCrypto does not remove the PKCS1-v1_5 padding, so the decrypted data contains extra bytes.&lt;/p&gt;&#xA;&lt;p&gt;Luckily, the unpadding algorithm defined in &lt;a href=&#34;http://tools.ietf.org/html/rfc3447#page-23&#34;&gt;section 7.2.2 of RFC 3447 (RSAES-PKCS1-V1_5-DECRYPT)&lt;/a&gt; is very simple. It basically separates the message (M) from the padding bytes (PS) with a NUL character (ASCII 0x00):&lt;/p&gt;</description>
    </item>
    <item>
      <title>DNS kaipaa päivitystä</title>
      <link>https://kennethfalck.net/2011/03/04/dns-kaipaa-p%C3%A4ivityst%C3%A4/</link>
      <pubDate>Fri, 04 Mar 2011 20:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/03/04/dns-kaipaa-p%C3%A4ivityst%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://en.wikipedia.org/wiki/Domain_Name_System#History&#34;&gt;DNS&lt;/a&gt; on skaalautunut ominaisuuksiltaan ja suorituskyvyltään nykypäivän Internetiin yllättävän hyvin, kun huomioidaan että se keksittiin jo vuonna 1983. Hiljalleen se on kuitenkin alkanut osoittaa merkkejä vanhenemisesta.&lt;/p&gt;&#xA;&lt;p&gt;Tänä päivänä DNS:n suurin yksittäinen ongelma on se, että domain-nimille ei voi määritellä CNAME-tietuetta ilman host-nimeä. CNAME voi ainoastaan määritellä &amp;quot;&lt;a href=&#34;http://www.kfalck.net&amp;quot;-tyyppisen&#34;&gt;www.kfalck.net&amp;quot;-tyyppisen&lt;/a&gt; osoitteen, ei &amp;quot;kfalck.net&amp;quot;-osoitetta.&lt;/p&gt;&#xA;&lt;p&gt;Rajoitus johtuu &lt;a href=&#34;http://www.faqs.org/rfcs/rfc1034.html&#34;&gt;RFC 1034&lt;/a&gt;:n osiosta 3.6.2, joka määrittelee, että samassa noodissa CNAMEn kanssa ei saa olla muita tietueita. Domain-tasolla taas samassa noodissa on pakko olla ainakin SOA- ja NS-tietueet sekä yleensä myös MX, joten CNAMEa ei voi liittää samalle tasolle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin pystytät pysyvän EC2-palvelimen</title>
      <link>https://kennethfalck.net/2011/02/24/n%C3%A4in-pystyt%C3%A4t-pysyv%C3%A4n-ec2-palvelimen/</link>
      <pubDate>Thu, 24 Feb 2011 22:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/02/24/n%C3%A4in-pystyt%C3%A4t-pysyv%C3%A4n-ec2-palvelimen/</guid>
      <description>&lt;p&gt;Amazonin EC2-palvelu on kätevä tapa ajaa väliaikaisia virtuaalipalvelimia, joita käynnistellään ja sammutellaan aina tarpeen mukaan. Joskus on kuitenkin tarvetta ajaa yksittäistä palvelinta, joka on jatkuvasti päällä. Tällöin ongelmaksi tulee se, että tavallisten EC2-virtuaalikoneiden kovalevy tyhjenee aina niiden sammuessa.&lt;/p&gt;&#xA;&lt;p&gt;Paras ratkaisu pysyvän palvelimen ajamiseen näyttäisi olevan käyttää &lt;a href=&#34;http://uec-images.ubuntu.com/releases/maverick/release/&#34;&gt;EBS-pohjaista Ubuntu-AMI-imagea&lt;/a&gt; (tässä esimerkissä ami-fb9ca98f eli Ubuntu 10.10 32-bit EBS). Käyttöönotto vaatii muutaman kohdan, jotka kirjoitan auki tähän omaksi ja muiden iloksi.&lt;/p&gt;&#xA;&lt;h2&gt;Ensimmäinen käynnistyskerta&lt;/h2&gt;&#xA;&lt;p&gt;Käynnistetään ensin Amazonin EC2-konsolista uusi instanssi, jonka AMI on ami-fb9ca98f ja tyyppi t1.micro. Samalla AWS luo automaattisesti uuden 8GB EBS-levyn tälle instanssille. Jos EC2-instanssin nyt terminoisi, tämä EBS-levy tuhoutuisi lopullisesti. Sen sijaan instanssi pysäytetään (Instance Actions | Stop), jolloin EBS-levy jää eloon.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Upstart, Gunicorn ja virtualenv</title>
      <link>https://kennethfalck.net/2011/02/22/upstart-gunicorn-ja-virtualenv/</link>
      <pubDate>Tue, 22 Feb 2011 17:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/02/22/upstart-gunicorn-ja-virtualenv/</guid>
      <description>&lt;p&gt;Django-sovellusten käynnistäminen Upstartissa Gunicornilla aiheuttaa joskus harmaita hiuksia. Olen havainnut Upstartin toimivan parhaiten siten, että Gunicornia ei ajeta daemonina, vaan tavallisena prosessina.&lt;/p&gt;&#xA;&lt;p&gt;Tässä on hiljattain pystyttämäni &lt;a href=&#34;http://www.reviewboard.org/&#34;&gt;Review Board&lt;/a&gt; -saitin upstart-konfiguraatio:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;description &amp;quot;Review Board&amp;quot;&#xA;author &amp;quot;Kenneth Falck &amp;lt;kennu@iki.fi&amp;gt;&amp;quot;&#xA;&lt;p&gt;start on (net-device-up and local-filesystems)&#xA;stop on shutdown&#xA;respawn&lt;/p&gt;&#xA;&lt;p&gt;script&#xA;export HOME=&amp;quot;/var/www/review&amp;quot;&#xA;export PATH=&amp;quot;$PATH:/var/www/review/ve_review/bin&amp;quot;&#xA;export DJANGO_SETTINGS_MODULE=&amp;quot;reviewboard.settings&amp;quot;&#xA;export LANG=&amp;quot;en_US.UTF-8&amp;quot;&#xA;export PYTHONPATH=&amp;quot;$HOME/conf&amp;quot;&#xA;cd &amp;quot;$HOME/htdocs&amp;quot;&#xA;exec /var/www/review/ve_review/bin/gunicorn_django -b unix:/tmp/gunicorn_review.sock -w 1 &amp;ndash;log-file /var/log/gunicorn-reviewboard.log&#xA;end script&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;&#xA;&lt;p&gt;Avainkohdat tässä ovat:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Qt Creator roskiin ja Windows Phone 7 SDK tilalle</title>
      <link>https://kennethfalck.net/2011/02/11/qt-creator-roskiin-ja-windows-phone-7-sdk-tilalle/</link>
      <pubDate>Fri, 11 Feb 2011 19:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/02/11/qt-creator-roskiin-ja-windows-phone-7-sdk-tilalle/</guid>
      <description>&lt;p&gt;Kaikki tätä blogia seuraavat ovat varmasti tietoisia Nokian &lt;a href=&#34;http://www.nokia.fi/nokia/lehdisto/tiedotteet/tiedotteet?newsid=1488003&#34;&gt;lehdistötiedotteesta&lt;/a&gt;, jossa uudeksi strategiaksi on määritelty Windows Phone -käyttöjärjestelmän käyttöönotto ensisijaisena älypuhelinalustana.&lt;/p&gt;&#xA;&lt;p&gt;Tarkoittaako tämä, että &lt;a href=&#34;http://qt.nokia.com/downloads/&#34;&gt;Qt Creator&lt;/a&gt; -työkalut voi unohtaa sovelluskehityksessä? Ne olivat saatavilla Macille, Linuxille ja Windowsille. Nokia on virallisesti ilmoittanut, että &lt;a href=&#34;http://www.appscout.com/2011/02/nokia_no_qt_for_windows_phone.php&#34;&gt;Qt ei tule toimimaan Windows Phonen päällä&lt;/a&gt;, koska se &amp;quot;fragmentoisi alustaa&amp;quot;. Eli toisin sanoen Microsoft haluaa, että Windows Phonelle kehitetään softaa ainoastaan heidän omilla työkaluillaan.&lt;/p&gt;&#xA;&lt;p&gt;Näyttää siis siltä, että Qt jää mobiilipuolella hyvin marginaaliseksi, muutamien pienten valmistajien MeeGo-laitteiden ohjelmistoalustaksi. Kenties Nokia kehittää vielä irtotabletteja sen varaan, mutta en kyllä tiedä miksi se niin tekisi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Rails: Käytäntö ennen konfiguraatiota</title>
      <link>https://kennethfalck.net/2011/01/30/rails-k%C3%A4yt%C3%A4nt%C3%B6-ennen-konfiguraatiota/</link>
      <pubDate>Sun, 30 Jan 2011 17:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/01/30/rails-k%C3%A4yt%C3%A4nt%C3%B6-ennen-konfiguraatiota/</guid>
      <description>&lt;p&gt;Eräs Ruby on Railsin ja muiden samaa filosofiaa noudattavien ohjelmointiympäristöjen perusperiaatteita on &amp;quot;Convention over Configuration&amp;quot;. Tämän voisi suomentaa vaikkapa muotoon &amp;quot;Käytäntö ennen konfiguraatiota&amp;quot;.&lt;/p&gt;&#xA;&lt;p&gt;Mitä enemmän olen itse ohjelmoinut Railsilla, sitä selkeämmin tämän filosofian opetus on alkanut iskostua päähän. Rails toimii sitä tehokkaammin, mitä paremmin omaksuu kyseisen ekosysteemin olemassaolevat käytännöt ja noudattaa niitä.&lt;/p&gt;&#xA;&lt;p&gt;Peruskäytännöt ovat tietenkin itsestäänselviä. MVC-sovelluksen kontrollerit menevät controllers-hakemistoon, näkymät menevät views-hakemistoon, tietomallit models-hakemistoon ja niin edelleen. Jokainen sovellusta myöhemmin tarkasteleva koodaaja ymmärtää heti, missä mikäkin sijaitsee.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django ja MongoDB</title>
      <link>https://kennethfalck.net/2011/01/25/django-ja-mongodb/</link>
      <pubDate>Tue, 25 Jan 2011 00:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/01/25/django-ja-mongodb/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://github.com/aparo/django-mongodb-engine&#34;&gt;MongoDB-engine&lt;/a&gt; on mielenkiintoinen Django-laajennus. Sen avulla &lt;a href=&#34;http://www.mongodb.org/&#34;&gt;MongoDB&lt;/a&gt; toimii Djangon tietokantana niin, että MySQL:ää (tai muita SQL-tietokantoja) ei tarvita ollenkaan.&lt;/p&gt;&#xA;&lt;p&gt;Sovelluksia voi siis kehittää normaaliin tapaan Djangon tietomallien pohjalta. Sisäänrakennettu ylläpito toimii sellaisenaan. Periaatteessa kokonaisen MySQL:n varaan rakennetun Django-sovelluksen voi siirtää MongoDB:n päälle, joskin epäilemättä kaikenlaisia pieniä yhteensopivuuskysymyksiä tulee eteen.&lt;/p&gt;&#xA;&lt;p&gt;Parasta näin ensikokeilemalla MongoDB:ssä on se, että Django-sovellusten tietomalleja voi muuttaa jatkuvasti, eikä muutoksia tarvitse mitenkään päivittää tietokannan schemaan. Minkäänlaisia ALTER TABLE -komentoja tai South-migraatioita ei siis tarvita, sillä MongoDB:ssä ei ole schemoja lainkaan. Tietomallin uudet kentät vain saavat automaattisesti default-arvonsa, mikäli kyseinen kenttä puuttuu tietokantaan aiemmin tallennetusta objektista.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ruby on Rails vs. Django vs. Node.js Express</title>
      <link>https://kennethfalck.net/2011/01/17/ruby-on-rails-vs.-django-vs.-node.js-express/</link>
      <pubDate>Mon, 17 Jan 2011 21:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/01/17/ruby-on-rails-vs.-django-vs.-node.js-express/</guid>
      <description>&lt;p&gt;Olen aika ajoin kokeillut erilaisten web-frameworkien maksiminopeutta tekemällä kullekin yksinkertaisen hello world -sovelluksen. Tällä tavalla mittaamalla selviää, paljonko frameworkilta itseltään kuluu resursseja pyyntöjen käsittelyyn ja sivujen renderöimiseen.&lt;/p&gt;&#xA;&lt;p&gt;Tulos on siis teoreettinen maksimi sille, miten tehokkaita sovelluksia frameworkilla voi kehittää.&lt;/p&gt;&#xA;&lt;p&gt;Tällä kertaa vertailin Django 1.2.4:n, Ruby on Rails 3.0.3:n sekä Node.js 0.2.6 &lt;a href=&#34;http://expressjs.com/&#34;&gt;Expressin&lt;/a&gt; nopeutta. Tulokset olivat seuraavat:&lt;/p&gt;&#xA;&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Framework&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Nopeus&lt;/strong&gt;&lt;/td&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Ruby on Rails (Ruby 1.8) &amp;nbsp;&lt;/td&gt;&lt;td&gt;387 req/s&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Ruby on Rails (Ruby 1.9.2) &amp;nbsp;&lt;/td&gt;&lt;td&gt;428 req/s&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Django &amp;nbsp;&lt;/td&gt;&lt;td&gt;1093 req/s&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Node.js Express &amp;nbsp;&lt;/td&gt;&lt;td&gt;2830 req/s&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&#xA;&lt;p&gt;Tästä kokeilusta käy selvästi ilmi, miten eri luokissa eri frameworkit painivat. Toivoin alun perin, että saisin Railsista enemmän tehoa irti, mutta edes Ruby 1.9.x:n käyttäminen ei näyttänyt auttavan kovin paljon.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ruby on Rails Ubuntuun ilman kääntämistä</title>
      <link>https://kennethfalck.net/2011/01/14/ruby-on-rails-ubuntuun-ilman-k%C3%A4%C3%A4nt%C3%A4mist%C3%A4/</link>
      <pubDate>Fri, 14 Jan 2011 20:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/01/14/ruby-on-rails-ubuntuun-ilman-k%C3%A4%C3%A4nt%C3%A4mist%C3%A4/</guid>
      <description>&lt;p&gt;Olen etsinyt kätevintä tapaa ajaa Ruby on Rails -sovelluksia Ubuntussa, ja se näyttää olevan &lt;a href=&#34;http://wiki.rubyonrails.org/deployment/nginx-thin&#34;&gt;Thin&lt;/a&gt;. (Yhtenä vaatimuksena on, ettei tarvitse käyttää Apachea, josta olen luopunut kokonaan.)&lt;/p&gt;&#xA;&lt;p&gt;Thin on Rails-sovelluspalvelin, joka pyörittää Rails-sovelluksia omissa prosesseissaan. Ne kuuntelevat UNIX-socketteja tai TCP-portteja, joiden kautta HTTP-palvelin lähettää pyynnöt käsiteltäväksi.&lt;/p&gt;&#xA;&lt;p&gt;HTTP-palvelimena toimii parhaiten &lt;a href=&#34;https://gist.github.com/54031&#34;&gt;Nginx&lt;/a&gt;. Siihen on helppo lisätä virtuaalisaitteja, jotka proxyttavat pyynnöt Thinille. Jos kyse on raskaammasta palvelusta, Thin-prosesseja voi olla useita per sovellus, jolloin Nginx kuormantasaa pyynnöt niiden välillä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Autorecord VDR programs via SVDRP</title>
      <link>https://kennethfalck.net/2011/01/08/autorecord-vdr-programs-via-svdrp/</link>
      <pubDate>Sat, 08 Jan 2011 21:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/01/08/autorecord-vdr-programs-via-svdrp/</guid>
      <description>&lt;p&gt;This is a simple Python script that connects to a &lt;a href=&#34;http://www.tvdr.de/&#34;&gt;VDR&lt;/a&gt; server, which must be configured to accept SVDRP connections at port 2001.&lt;/p&gt;&#xA;&lt;p&gt;It retrieves the EPG listing of all future programs, finds the ones whose title matches one of your favorites, and generates a timer for them. The script can be run e.g. once per day to add new programs.&lt;/p&gt;&#xA;&lt;p&gt;Disclaimer: This script could mess up your other VDR timers, so use at your own risk.&lt;/p&gt;</description>
    </item>
    <item>
      <title>VDR</title>
      <link>https://kennethfalck.net/2011/01/08/vdr/</link>
      <pubDate>Sat, 08 Jan 2011 01:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2011/01/08/vdr/</guid>
      <description>&lt;p&gt;Virittelin pitkästä aikaa kotiini käyttöön VDR-televisiotallennuksen. Se oli yllättävän helppoa Ubuntun valmiilla paketeilla. Tein seuraavat asiat:&lt;/p&gt;&#xA;&lt;ol&gt;&lt;li&gt;Asensin Ubuntun VDR- ja VDRAdmin-AM-paketit. VDRAdmin on web-pohjainen hallintatyökalu, jolla voi selailla kanavia ja ohjelmatallenteita.&lt;/li&gt;&lt;li&gt;Asensin VDR-streamdev-server-pluginin. Se mahdollistaa tallennusten ja live-tv-kanavien katselun esimerkiksi VLC Playerilla ilman tiedostojakojen virittelyä.&lt;/li&gt;&lt;li&gt;Hain &lt;a href=&#34;http://dvb.swelcom.fi/&#34;&gt;dvb.swelcom.fi&lt;/a&gt;:stä muutaman kanavan parametrit channels.conf-tiedostoon. Niiden perusteella VDR osasi skannata loputkin.&lt;/li&gt;&lt;li&gt;Etsin vielä netistä puuttuvan /lib/firmware/dvb-fe-tda10046.fw-tiedoston, joka tarvittiin Cinergy DVB-C-korttien toimintaan. Harmillista, ettei tämä tule Ubuntun mukana.&lt;/li&gt;&lt;/ol&gt;&#xA;&lt;p&gt;Systeemi rupesi toimimaan yllättävän hyvin. Ohjelmia pystyy merkkaamaan tallennettavaksi ja katsomaan suoraan selaimesta m3u-soittolistaa klikkaamalla. Vielä pitäisi saada jotenkin korjattua se, että Ylen kanavilla EPG-tiedot tulevat usein ruotsiksi, kun oletuskieli ei ole asetettu suomeksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Longer usernames for Django</title>
      <link>https://kennethfalck.net/2010/12/30/longer-usernames-for-django/</link>
      <pubDate>Thu, 30 Dec 2010 23:23:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/12/30/longer-usernames-for-django/</guid>
      <description>&lt;p&gt;I just spent several hours trying to make Django accept usernames with max_length=75, in order to allow email addresses and UUIDs as usernames. By default Django limits the username to 30 characters, which is not usable for either case.&lt;/p&gt;&#xA;&lt;p&gt;My current solution is simple; just add this to one of your apps:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;from django.contrib.auth.models import User&#xA;from django.contrib.auth.admin import UserAdmin&#xA;&lt;p&gt;User._meta.get_field(&#39;username&#39;).max_length = 75&#xA;User._meta.get_field(&#39;username&#39;).validators[0].limit_value = 75&#xA;UserAdmin.form.base_fields[&#39;username&#39;].max_length = 75&#xA;UserAdmin.form.base_fields[&#39;username&#39;].validators[0].limit_value = 75&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blogi Linodessa ja bcrypt käytössä</title>
      <link>https://kennethfalck.net/2010/12/27/blogi-linodessa-ja-bcrypt-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Mon, 27 Dec 2010 20:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/12/27/blogi-linodessa-ja-bcrypt-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Kokeiltuani &lt;a href=&#34;http://www.linode.com/&#34;&gt;Linodea&lt;/a&gt; jonkin aikaa muissa projekteissa päätin siirtää myös tämän blogini sen alle. Samalla sain serverin pyörimään Lontooseen, kun se ennen oli Slicehostilla USA:ssa. Nyt ehkä viitsii laittaa sähköpostitkin sinne.&lt;/p&gt;&#xA;&lt;p&gt;Otin myös käyttöön bcrypt-salauksen Djangon salasanoissa, vaikkei niitä käytetäkään muuta kuin ylläpitotunnuksiin. Tämä onnistuu suhteellisen helposti asentamalla ensin bcrypt-paketti:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;pip install py-bcrypt&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Django-sovellukseen lisätään sitten sopivaan kohtaan (omassa tapauksessani middleware.py) pieni monkey-patch, joka salaa ja tarkistaa salasanat bcryptillä:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;from django.contrib.auth.models import User&#xA;import bcrypt&#xA;&lt;p&gt;django_check_password = User.check_password&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hyvää Python-joulua</title>
      <link>https://kennethfalck.net/2010/12/24/hyv%C3%A4%C3%A4-python-joulua/</link>
      <pubDate>Fri, 24 Dec 2010 12:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/12/24/hyv%C3%A4%C3%A4-python-joulua/</guid>
      <description>&lt;p&gt;Hyvää joulua kaikille tätä blogia joulun aikana lukemaan sattuville! Samalla mielenkiintoinen bongaus Hacker Newsistä:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/jonashaag/bjoern&#34;&gt;bjoern: Fast And Ultra Lightweight Asynchronous WSGI Server&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&amp;quot;bjoern is about 5 times faster [than gunicorn]&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Tätä puitaneen asianomaisessa &lt;a href=&#34;http://news.ycombinator.com/item?id=2036661&#34;&gt;Hacker News -ketjussa&lt;/a&gt;. Olisi ihan tervetullutta, että WSGI-maailmaan saataisiin yksi äärimmäisen kevyt ja tehokas tapa ajaa Django-sovelluksia ilman mitään turhaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kindle toimii, Adobe Digital Editions DRM ei</title>
      <link>https://kennethfalck.net/2010/12/22/kindle-toimii-adobe-digital-editions-drm-ei/</link>
      <pubDate>Wed, 22 Dec 2010 22:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/12/22/kindle-toimii-adobe-digital-editions-drm-ei/</guid>
      <description>&lt;p&gt;Tietokone: &lt;a href=&#34;http://www.tietokone.fi/uutiset/amazonin_kindle_myynti_yllatti_kaikki&#34;&gt;&amp;quot;Elektronisten kirjojen menestys on Suomessa jäänyt huomattavasti odotettua heikommaksi.&amp;quot;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Yllättyneitä olivat: -&lt;/p&gt;&#xA;&lt;p&gt;Sekä Akateemisessa että Suomalaisessa on myynnissä muutama hassu e-kirja. Ne on suojattu Adoben DRM:llä, joka estää niiden käytön haluamissaan laitteissa. DRM pitää murtaa (laittomasti), jos haluaa lukea kirjoja esimerkiksi iPadin iBooks-sovelluksella.&lt;/p&gt;&#xA;&lt;p&gt;Vrt. Amazon, joka tarjoaa Kindlelle puolisen miljoonaa nimikettä. Ja homma on hoidettu niin, että kirjoja voi lukea hyvillä ohjelmistoilla kaikilla mahdollisilla laitteilla, joilla voisi haluta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mollom vuotaa spämmiä blogiin</title>
      <link>https://kennethfalck.net/2010/12/20/mollom-vuotaa-sp%C3%A4mmi%C3%A4-blogiin/</link>
      <pubDate>Mon, 20 Dec 2010 22:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/12/20/mollom-vuotaa-sp%C3%A4mmi%C3%A4-blogiin/</guid>
      <description>&lt;p&gt;Viime aikoina blogissani on esiintynyt satunnaisesti muutaman päivän välein erilaisia spämmikommentteja. Pahoittelut siitä niille, jotka ovat niitä havainneet. &lt;a href=&#34;http://mollom.com/&#34;&gt;Mollom&lt;/a&gt; kyllä blokkailee enemmän spämmiä kuin päästää läpi, mutta aiemmin läpi päässeitä ei ollut juuri ollenkaan.&lt;/p&gt;&#xA;&lt;p&gt;Jos spämmikommentteja tipahtelee jatkossakin tasaiseen tahtiin, niin täytyy varmaan tehdä vanhemmille blogikirjoituksille kommentointilukitus.&lt;/p&gt;</description>
    </item>
    <item>
      <title>SHA-1 ei suojaa salasanoja tietomurroilta</title>
      <link>https://kennethfalck.net/2010/12/15/sha-1-ei-suojaa-salasanoja-tietomurroilta/</link>
      <pubDate>Wed, 15 Dec 2010 09:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/12/15/sha-1-ei-suojaa-salasanoja-tietomurroilta/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://blogs.wsj.com/digits/2010/12/13/the-top-50-gawker-media-passwords/&#34;&gt;Gawkerin tapaus&lt;/a&gt; on muistuttanut jälleen, että tietokantaan tallennetut salasanat ovat vaarassa, jos ne salataan liian heikolla algoritmilla. Gawker ehti jo tiedottaa, että salasanat ovat turvassa, koska ne on salattu, mutta hakkerit onnistuivat silti murtamaan suuren määrän niitä.&lt;/p&gt;&#xA;&lt;p&gt;NISTin standardoimien hash-algoritmien (SHA-1, SHA-2, tuleva SHA-3) perusongelma on, että ne tietoisesti optimoidaan mahdollisimman nopeiksi laskea. Tämä tarkoittaa myös, että niillä suojattujen salasanojen bruteforce-kräkkääminen optimoidaan mahdollisimman kevyeksi. Bruteforce-hyökkäyksessä salasanojen suolaamisella ei ole merkitystä, ja ihmisetkin muistavat vain rajallisen pituisia salasanoja.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Automaattiset turvapäivitykset Ubuntuun</title>
      <link>https://kennethfalck.net/2010/11/29/automaattiset-turvap%C3%A4ivitykset-ubuntuun/</link>
      <pubDate>Mon, 29 Nov 2010 01:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/11/29/automaattiset-turvap%C3%A4ivitykset-ubuntuun/</guid>
      <description>&lt;p&gt;Huomasin tässä, että Ubuntussa on nykyään unattended-upgrades -paketti, joka mahdollistaa päivitysten asentamisen automaattisesti tausta-ajona. Sen käyttöönotto on dokumentoitu &lt;a href=&#34;https://help.ubuntu.com/community/AutomaticSecurityUpdates&#34;&gt;Ubuntun ohjesivulla&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Tiivistäen tämä tapahtuu asentamalla unattended-upgrades -paketti (sekä myös update-notifier-common, ellei sitä ole jo asennettu) ja määrittelemällä halutut päivitykset /etc/apt/apt.conf.d/10periodict sekä /etc/apt/apt.conf.d/50unattended-upgrades -tiedostoihin. Jälkimmäisessä voi valita, haluaako asentaa pelkät security-päivitykset vai samalla myös muutkin.&lt;/p&gt;&#xA;&lt;p&gt;Ubuntun voi myös määritellä käynnistymään automaattisesti uudelleen aina tarpeen vaatiessa, eli lähinnä kernelin päivityttyä. Tämä sopinee hiljaiseloa viettäville palvelimille, joiden haluaa pysyvän ajan tasalla vaikka niiden olemassaolon unohtaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Androidin fragmentaatio haittaa kehitystä</title>
      <link>https://kennethfalck.net/2010/11/22/androidin-fragmentaatio-haittaa-kehityst%C3%A4/</link>
      <pubDate>Mon, 22 Nov 2010 11:45:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/11/22/androidin-fragmentaatio-haittaa-kehityst%C3%A4/</guid>
      <description>&lt;p&gt;Rovio on samaa mieltä: &lt;a href=&#34;http://www.appleinsider.com/articles/10/11/19/angry_birds_maker_apologizes_for_android_fragmentation_issues.html&#34;&gt;Angry Birdsin kehitys on hankalaa Androidilla&lt;/a&gt;, koska alusta on niin fragmentoitunut. Samaan ilmiöön törmää heti, kun miettii omien sovellusten kehittämistä. Pitäisikö ne suunnitella erikseen Android-tableteille ja -kännyköille, ja mitä kaikkia malleja maailmalta edes löytyy? Minkä kokoinen Androidille julkaistu sähköinen lehti tai kirja voi oikeastaan olla?&lt;/p&gt;&#xA;&lt;p&gt;iPhonelle ja iPadille kehittäessä tilanne on selkeä. Sovelluksensa voi suunnitella jommalle kummalle laitteelle. Tai sitten voi tehdä universaalin sovelluksen, jossa on samassa paketissa molemmille alustoille suunnitellut näytöt. Molemmissa tapauksissa form factor on tarkkaan tiedossa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>W3C tappoi Web SQL Databasen</title>
      <link>https://kennethfalck.net/2010/11/19/w3c-tappoi-web-sql-databasen/</link>
      <pubDate>Fri, 19 Nov 2010 14:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/11/19/w3c-tappoi-web-sql-databasen/</guid>
      <description>&lt;p&gt;Näyttää siltä, että W3C on tappanut &lt;a href=&#34;http://www.w3.org/TR/webdatabase/&#34;&gt;Web SQL Database&lt;/a&gt; -standardin. Syy on se, että kaikissa selaimissa on käytetty samaa SQLite-backendia, mutta standardi ei voi pohjautua ainoastaan yhteen implementaatioon.&lt;/p&gt;&#xA;&lt;p&gt;Minusta tämä on hyvä asia. SQL:llä on historiallista arvoa datankäsittelykielenä, mutta laajemman kokonaisuuden kannalta olisi parempi, että siitä päästäisiin eroon. Kokemus on osoittanut, että erilaiset ORM-lähestymistavat datamalleja käyttäen mahdollistavat selkeämmän ja turvallisemman kehityksen. SQL:n antaminen aloittelevan kehittäjän käyttöön on vähän niinkuin antaisi tulitikkurasian lapselle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Siirsin blogini Slicehost-palvelimelle</title>
      <link>https://kennethfalck.net/2010/11/13/siirsin-blogini-slicehost-palvelimelle/</link>
      <pubDate>Sat, 13 Nov 2010 01:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/11/13/siirsin-blogini-slicehost-palvelimelle/</guid>
      <description>&lt;p&gt;Tämä blogi pyörii nyt Slicehostilta vuokraamallani virtuaalipalvelimella. Käyttöjärjestelmä ja ympäristö ovat samat kuin ennenkin (Ubuntu 10.10 ja Django 1.2.3), mutta taas kerran saa mielellään kommentoida, jos jotain on mennyt rikki.&lt;/p&gt;&#xA;&lt;p&gt;Olen käyttänyt Slicehostia parin kuukauden ajan muihin privaattiprojekteihin ja voin suositella sitä erityisesti &amp;quot;kotikäyttöön&amp;quot;. Edullisin slice (256MB RAM, 10GB HD) maksaa $20/kk eli noin 14.60 EUR/kk. Itselläni on nykyisin 512MB RAM, 20GB HD. Päivitys suurempaan sliceen sujui automaattisesti ja ongelmitta Ubuntun kanssa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>SOAP on nyt virallisesti kuolemassa</title>
      <link>https://kennethfalck.net/2010/11/12/soap-on-nyt-virallisesti-kuolemassa/</link>
      <pubDate>Fri, 12 Nov 2010 17:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/11/12/soap-on-nyt-virallisesti-kuolemassa/</guid>
      <description>&lt;p&gt;Computerworld UK raportoi, että &lt;a href=&#34;http://blogs.computerworlduk.com/simon-says/2010/11/the-end-of-the-road-for-web-services/index.htm&#34;&gt;Web Services Interoperability Organization lopettaa toimintansa&lt;/a&gt;. Jutussa viitataan siihen, miten SOAP ei ole koskaan kunnolla sopinut webin toimintaperiaatteisiin. Se on ollut enemmänkin keino yrittää tuoda vanhoja CORBA-konsepteja väkisin Internetiin ja luoda erilaisia vendor-lockin-riippuvuuksia epäyhteensopivien implementaatioiden myötä.&lt;/p&gt;&#xA;&lt;p&gt;Toivottavasti SOAP kuolee pian lopullisesti ja voidaan siirtyä yksinkertaisempiin, tehokkaampiin ja moderneihin REST-rajapintoihin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nginx ja Gunicorn käytössä blogissani</title>
      <link>https://kennethfalck.net/2010/11/08/nginx-ja-gunicorn-k%C3%A4yt%C3%B6ss%C3%A4-blogissani/</link>
      <pubDate>Mon, 08 Nov 2010 01:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/11/08/nginx-ja-gunicorn-k%C3%A4yt%C3%B6ss%C3%A4-blogissani/</guid>
      <description>&lt;p&gt;Blogini pyörii nyt &lt;a href=&#34;http://nginx.org/&#34;&gt;Nginx&lt;/a&gt;- ja &lt;a href=&#34;http://gunicorn.org/&#34;&gt;Gunicorn&lt;/a&gt;-palvelinten päällä entisen Apachen ja mod_wsgi:n sijaan. Sovellus on edelleen Django-pohjainen. Periaatteessa mitään eroa ei pitäisi näkyä, mutta saa tietysti mielellään kommentoida, jos jotain outoa esiintyy.&lt;/p&gt;&#xA;&lt;p&gt;Tarkoitus on hankkia kokemuksia siitä, onko Nginx+Gunicorn tehokkaampi ja ketterämpi ympäristö pyörittämään Django-sovelluksia kuin Apache. Apachella on melkoinen kasa historiallista painolastia kannettavana, eikä sen arkkitehtuuri ole enää kovin moderni.&lt;/p&gt;&#xA;&lt;p&gt;Nginx on erittäin tehokas, event-pohjainen HTTP-palvelin. Sen tarkoitus on tässä yhteydessä tarjoilla staattiset tiedostot sekä proxyttaa Django-sovellukseen kohdistuvat pyynnöt Gunicornille.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Käytä UUID:tä auto-incrementin sijaan</title>
      <link>https://kennethfalck.net/2010/11/06/k%C3%A4yt%C3%A4-uuidt%C3%A4-auto-incrementin-sijaan/</link>
      <pubDate>Sat, 06 Nov 2010 20:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/11/06/k%C3%A4yt%C3%A4-uuidt%C3%A4-auto-incrementin-sijaan/</guid>
      <description>&lt;p&gt;Auto-increment-kentät ovat perinteinen tapa saada tietokantaan juokseva laskuri. Yleensä niitä käytetään primary key -sarakkeen arvona. Samalla ne kuitenkin muodostavat tietokannan skaalautuvuuteen pullonkaulan, jota on todella vaikea korjata jälkeenpäin. Lisäksi ne monimutkaistavat sovellusta tarpeettomasti.&lt;/p&gt;&#xA;&lt;p&gt;Niin millä tavalla monimutkaistavat? Yleisin ongelmatilanne on sellainen, että vaikkapa blogiartikkeliin liittyvät kuvatiedostot pitäisi saada tallennettua levylle. Niiden tiedostonimessä pitäisi käyttää artikkelin ID:tä, jotta tiedosto ei mene päällekkäin muiden kanssa. Mutta silloin blogiartikkeli täytyy ensin tallentaa tietokantaan ilman kuvia, jotta sen auto-increment-ID saadaan selville. Vasta sitten kuvat voidaan tallentaa levylle sekä päivittää niiden tiedostonimet artikkeliin tietokannassa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>TortoiseGit Windowsille</title>
      <link>https://kennethfalck.net/2010/10/24/tortoisegit-windowsille/</link>
      <pubDate>Sun, 24 Oct 2010 20:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/10/24/tortoisegit-windowsille/</guid>
      <description>&lt;p&gt;Windows-käyttäjiä saattaa kiinnostaa, että &lt;a href=&#34;http://code.google.com/p/tortoisegit/&#34;&gt;TortoiseGit&lt;/a&gt;-projekti alkaa vaikuttaa aika toimivalta GUI-ratkaisulta. Se integroituu Windows Exploreriin samaan tapaan kuin sen Subversionia käyttävä vastine TortoiseSVN.&lt;/p&gt;&#xA;&lt;p&gt;TortoiseGitin avulla  Git-projekteihin saadaan mukaan sellaisetkin Windows-käyttäjät, jotka eivät tunne oloaan kotoisaksi komentorivin ja &lt;a href=&#34;http://code.google.com/p/msysgit/&#34;&gt;msysgitin&lt;/a&gt; parissa.&lt;/p&gt;&#xA;&lt;p&gt;Peruskäyttö vaikuttaa hyvin samankaltaiselta kuin TortoiseSVN:nkin. Etärepository kloonataan omalle koneelle valitsemalla kontekstivalikosta &amp;quot;Git Clone&amp;quot;. Tehdyt muutokset kommittoidaan valitsemalla samaisesta valikosta &amp;quot;Git Commit&amp;quot; ja klikkaamalla vielä commitin jälkeen Push, jolloin ne tallentuvat palvelimellekin. Etärepositoryn muutokset saa helposti päivitettyä omalle koneelle valitsemalla silloin tällöin valikosta &amp;quot;Pull&amp;quot;. Oman työhakemiston branchiakin on helppo vaihtaa &amp;quot;Switch/Checkout&amp;quot;-valikosta, joka näyttää luettelon käytettävissä olevista haaroista.&lt;/p&gt;</description>
    </item>
    <item>
      <title>E-kirjabisnes tuhon tiellä</title>
      <link>https://kennethfalck.net/2010/10/14/e-kirjabisnes-tuhon-tiell%C3%A4/</link>
      <pubDate>Thu, 14 Oct 2010 15:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/10/14/e-kirjabisnes-tuhon-tiell%C3%A4/</guid>
      <description>&lt;p&gt;Osallistuin eilen eReading-seminaarin, jossa käsiteltiin sähköisen lukemisen nykytilaa ja tulevaisuuden suuntia Suomessa. Eräs mieleenpainavimpia lausahduksia oli erään kirjakustantajan edustajan lausunto, joka meni suunnilleen näin:&lt;/p&gt;&#xA;&lt;p&gt;&amp;quot;Haluamme välttää musiikkiteollisuuden virheet. Siksi kaikki sähköiset kirjat pitää suojata DRM:llä.&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Toisin sanoen kirjamiehet ovat onnistuneet ymmärtämään täysin päälaelleen sen, mikä musiikkibisneksessä mokattiin. Siellähän yritettiin monen vuoden ajan käyttää DRM:ää, ja juuri se sai ihmiset kääntymään laittomien lähteiden puoleen, koska käyttökokemuksesta tuli niin huono.&lt;/p&gt;&#xA;&lt;p&gt;Kokeilin ostaa Akateemisen kirjakaupan uudesta latauspalvelusta sähköisen kirjan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu 10.10</title>
      <link>https://kennethfalck.net/2010/10/10/ubuntu-10.10/</link>
      <pubDate>Sun, 10 Oct 2010 22:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/10/10/ubuntu-10.10/</guid>
      <description>&lt;p&gt;Päivitin tänään blogiani pyörittävän palvelimen Ubuntu 10.10 -versioon. Päivitys näytti sujuvan perinteiseen tapaan sulavasti ajamalla vain screenissä komento:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;do-release-upgrade&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Jos päivitystä ei ole tarjolla, pitää sallia normal-päivitykset pelkkien LTS-päivitysten sijaan tiedostossa &lt;strong&gt;/etc/update-manager/release-upgrades&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;Prompt=normal&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Muutamia jippoja tuli eteen yksittäisten palvelinsovellusten päivityksessä. Varnishin oletustiedostossa (&lt;strong&gt;/etc/default/varnish&lt;/strong&gt;) on nykyään pakollinen kohta:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;START=yes&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Päivityksessä kannattaa oikeastaan hyväksyä kyseisen tiedoston (ja muidenkin vastaavien) uusi oletusversio, ja tehdä sitten tarvittavat omat muutokset siihen uudelleen.&lt;/p&gt;&#xA;&lt;p&gt;CouchDB:n päivittymisessä pitää huomioida, että vanhat 0.10.0-version tietokannat jäävät &lt;strong&gt;/var/lib/couchdb/0.10.0&lt;/strong&gt; -hakemistoon. Ubuntu luo uudet tietokannat &lt;strong&gt;/var/lib/couchdb/1.0.1&lt;/strong&gt; -hakemistoon. Onneksi tietokannat ovat kuitenkin yhteensopivia ja ne on helppo siirtää sanomalla:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Älä tee Django-projektia ilman Southia</title>
      <link>https://kennethfalck.net/2010/10/01/%C3%A4l%C3%A4-tee-django-projektia-ilman-southia/</link>
      <pubDate>Fri, 01 Oct 2010 14:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/10/01/%C3%A4l%C3%A4-tee-django-projektia-ilman-southia/</guid>
      <description>&lt;p&gt;Otin eräässä Django-projektissani vihdoin käyttöön &lt;a href=&#34;http://south.aeracode.org/&#34;&gt;Southin&lt;/a&gt;, joka hoitaa tietokannan schema-päivitykset automaattisesti. Käyttöönotossa oli hieman opiskeltavaa, mutta nyt en aio enää toteuttaa yhtäkään projektia ilman Southia.&lt;/p&gt;&#xA;&lt;p&gt;Kehitysvaiheessa South hoitaa automaattisesti tarvittavien kenttien lisäämiset ja muutokset tietokantaan. Koodaajan tarvitsee vain muokata Djangon model-luokkiaan tavalliseen tapaan ja ajaa sitten komennot:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;./manage.py schemamigration --auto &amp;lt;appname&amp;gt;&#xA;./manage.py migrate &amp;lt;appname&amp;gt;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Ei siis enää manuaalisia ALTER TABLE -komentoja ja oikeiden datatyyppien arvailemisia! Tämä helpottaa jatkuvaa kehitystä todella paljon.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mac OS X:n Mail-signaturet nätimmiksi</title>
      <link>https://kennethfalck.net/2010/09/21/mac-os-xn-mail-signaturet-n%C3%A4timmiksi/</link>
      <pubDate>Tue, 21 Sep 2010 17:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/09/21/mac-os-xn-mail-signaturet-n%C3%A4timmiksi/</guid>
      <description>&lt;p&gt;Mac OS X:n sisäänrakennettu Mail-sähköpostiohjelma on aika toimiva, mutta se tekee sähköpostien signatureista melkoista sotkua. Sotku syntyy, kun signatureja muokkaa Mailin asetuksissa WYSIWYG-editorilla. Vaikka koko signaturen muuttaa saman tyyliseksi, joukkoon jää silti sekalaisia div- ja span-elementtejä sekä niiden CSS-tyylityksiä.&lt;/p&gt;&#xA;&lt;p&gt;Jos haluaa kontrolloida täsmälleen, miltä sähköpostien signaturet näyttävät, kannattaa unohtaa WYSIWYG-editointi ja luoda signaturensa erilliseen HTML-tiedostoon vaikkapa vim-editoria käyttäen. Sen jälkeen HTML-tiedosto avataan Safarilla ja tallennetaan uuteen tiedostoon .webarchive-muotoon, joka on Mailin ymmärtämä formaatti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Digg v4:n ongelmat eivät NoSQL:n syytä</title>
      <link>https://kennethfalck.net/2010/09/11/digg-v4n-ongelmat-eiv%C3%A4t-nosqln-syyt%C3%A4/</link>
      <pubDate>Sat, 11 Sep 2010 12:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/09/11/digg-v4n-ongelmat-eiv%C3%A4t-nosqln-syyt%C3%A4/</guid>
      <description>&lt;p&gt;Webissä on keskusteltu viime aikoina paljon &lt;a href=&#34;http://digg.com/&#34;&gt;Diggin&lt;/a&gt; uuden version ongelmista, joista yksi on alustan epästabiilius kovan kuormituksen alla. Ongelmista on &lt;a href=&#34;http://www.reddit.com/r/programming/comments/db5xh/nosql_train_wreck_leads_to_resignation_of_diggs/&#34;&gt;syytetty&lt;/a&gt; siirtymistä &lt;a href=&#34;http://cassandra.apache.org/&#34;&gt;Cassandraan&lt;/a&gt;, joka on alkujaan Facebookin kehittämä NoSQL-tietokanta ja nykyään Apache-projekti.&lt;/p&gt;&#xA;&lt;p&gt;Jos asiaa kuitenkin tutkii hieman sensaatio-otsikoita syvemmälle, &lt;a href=&#34;http://www.quora.com/Is-Cassandra-to-blame-for-Digg-v4s-technical-failures&#34;&gt;käy nopesti ilmi&lt;/a&gt;, että tietokanta ei ole Diggin ainoa ongelmakohta. Taustalla on ilmeisimmin kuormitusongelmia arkkitehtuurin monissa eri osissa. Tämän lisäksi Cassandra on muutenkin käytössä esimerkiksi &lt;a href=&#34;http://www.reddit.com/&#34;&gt;Redditissä&lt;/a&gt;, joka ei ole kärsinyt vastaavista ongelmista.&lt;/p&gt;&#xA;&lt;p&gt;Diggnationin &lt;a href=&#34;http://revision3.com/diggnation/kevintalksdigg&#34;&gt;uusimmassa jaksossa&lt;/a&gt; CEO Kevin Rose itse asiassa kertoo, että Diggin aiempi, MySQL:n varaan rakennettu versio kärsi jo niin suurista suorituskykyongelmista, että siirtyminen Cassandraan oli oikeastaan välttämätöntä. Vanhasta versiosta jouduttiin poistamaan ominaisuuksia käytöstä, koska MySQL-pohjainen arkkitehtuuri ei enää pystynyt pyörittämään niitä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Selain-cachen automaattityhjennys</title>
      <link>https://kennethfalck.net/2010/09/10/selain-cachen-automaattityhjennys/</link>
      <pubDate>Fri, 10 Sep 2010 01:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/09/10/selain-cachen-automaattityhjennys/</guid>
      <description>&lt;p&gt;Kehittelin tässä yksinkertaisen systeemin, joka lisää blogini CSS-, JavaScript- ja kuva-URLien alkuun Git-versiohallinnan tämänhetkisen master-commitin tunnisteen. Tämän pitäisi huolehtia automaattisesti siitä, että kun otan käyttöön saitista uuden version, niin vanhat staattiset tiedostot katoavat selainten välimuisteista.&lt;/p&gt;&#xA;&lt;p&gt;Esimerkiksi aiempi:&lt;/p&gt;&#xA;&lt;p&gt;/static/css/style.css&lt;/p&gt;&#xA;&lt;p&gt;on nyt:&lt;/p&gt;&#xA;&lt;p&gt;/*728b697e242cc2cfb41cf7584140617ce03cf3f9/static/css/style.css&lt;/p&gt;&#xA;&lt;p&gt;Olisi kiintoisaa kuulla kommentteja, aiheuttaako tämä ongelmia tai muuten vaan outoja ilmiöitä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Git push -varmuuskopiointi</title>
      <link>https://kennethfalck.net/2010/08/31/git-push-varmuuskopiointi/</link>
      <pubDate>Tue, 31 Aug 2010 17:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/08/31/git-push-varmuuskopiointi/</guid>
      <description>&lt;p&gt;Versiohallinnan varmuuskopiointi on perinteisesti hankalaa. Esimerkiksi Subversion käyttää keskitettyjä repositoryja, jotka muistuttavat ominaisuuksiltaan tietokantoja. Tietokantojakin on vaikea varmuuskopioida niiden ollessa jatkuvassa käytössä. Tätä varten Subversionissa on erillinen komento &amp;quot;svnadmin hotcopy&amp;quot;, jolla repositorysta voi tehdä kopion varmuuskopiointia varten.&lt;/p&gt;&#xA;&lt;p&gt;Git on puolestaan luonteeltaan hajautettu, joten varmuuskopiointi on helppo toteuttaa normaalilla push-toiminnallisuudella. Itse rakensin hiljattain järjestelmän, joka muodostuu seuraavista osista:&lt;/p&gt;&#xA;&lt;ol&gt;&lt;li&gt; Keskitetty varmuuskopiointipalvelin, jossa on yhteinen käyttäjätunnus ja hakemisto varmuuskopioiduille repositoryille.&lt;/li&gt;&lt;li&gt;Joukko muita palvelimia, joilla sijaitsee paikallisia Git-repositoryja erilaisten projektien tarpeiden mukaan.&lt;/li&gt;&lt;/ol&gt;&#xA;&lt;p&gt;Kuhunkin varmuuskopioitavaan Git-repositoryyn lisätään vakioitu backup-remote:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Twitterin OAuth käytössä</title>
      <link>https://kennethfalck.net/2010/08/26/twitterin-oauth-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Thu, 26 Aug 2010 19:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/08/26/twitterin-oauth-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Otin vihdoinkin oman blogini Twitter-integraatiossa käyttöön &lt;a href=&#34;http://dev.twitter.com/pages/auth&#34;&gt;OAuth-autentikoinnin&lt;/a&gt;. OAuth on aika monimutkainen, mutta onneksi Pythonille löytyy valmis &lt;a href=&#34;http://github.com/brosner/python-oauth2&#34;&gt;python-oauth2&lt;/a&gt;-kirjasto. Vielä helpommin Twitter-integraatio onnistuu &lt;a href=&#34;http://code.google.com/p/python-twitter/&#34;&gt;python-twitter&lt;/a&gt;-kirjastolla. Molemmat voi asentaa kätevästi easy_installilla.&lt;/p&gt;&#xA;&lt;p&gt;Nyt status-päivityksen lähettäminen on tällainen operaatio Pythonilla:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;import twitter&#xA;twitter.Api(username=&amp;#39;xxx&amp;#39;, password=&amp;#39;yyy&amp;#39;).PostUpdate(&amp;#39;Hello World&amp;#39;)&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Twitter on deprekoinut aiemman HTTP Basic -autentikointiin perustuvan API-rajapinnan, joka oli yksinkertainen mutta turvaton. Basic-autentikointia käyttäessä palvelussa on aina välillä katkoja, jotka aiheuttavat ikävästi virheitä, jos integraation rakentaa sillä. Jossain vaiheessa Basic-autentikointi poistunee käytöstä kokonaan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>JavaScript on luokaton kieli</title>
      <link>https://kennethfalck.net/2010/08/25/javascript-on-luokaton-kieli/</link>
      <pubDate>Wed, 25 Aug 2010 15:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/08/25/javascript-on-luokaton-kieli/</guid>
      <description>&lt;p&gt;Lueskelin juuri läpi mielenkiintoisen ja sopivan lyhyen kirjan nimeltä &lt;a href=&#34;http://www.amazon.com/JavaScript-The-Good-Parts-ebook/dp/B0026OR2ZY%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3DB0026OR2ZY&#34;&gt;JavaScript: The Good Parts&lt;/a&gt; (Amazonin Kindle-versio). Se suorittaa ytimekkään ruumiinavauksen JavaScript-kielelle, nostaa esiin sen hyvät puolet sekä varoittaa käyttämästä huonoja ominaisuuksia.&lt;/p&gt;&#xA;&lt;p&gt;Ajattelin käydä tässä läpi muutaman asian, jotka olivat minulle uusia tai ainakin harmaata aluetta omassa JavaScript-tuntemuksessa.&lt;/p&gt;&#xA;&lt;h2&gt;Prototyypit vs. luokat&lt;/h2&gt;&#xA;&lt;p&gt;JavaScriptissä ei ole luokkia, eikä sitä kannata ajatella luokkiin perustuvana ohjelmointikielenä. Monen ohjelmoijan ensireaktio tuntuu olevan se, että otetaan käyttöön tai kehitetään oma framework, joka simuloi luokkien toimintaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>If your Chromium OS image doesn&#39;t boot</title>
      <link>https://kennethfalck.net/2010/08/22/if-your-chromium-os-image-doesnt-boot/</link>
      <pubDate>Sun, 22 Aug 2010 15:01:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/08/22/if-your-chromium-os-image-doesnt-boot/</guid>
      <description>&lt;p&gt;So you built a Chromium OS image and copied it to a USB stick, but it only boots to a blank screen? Try this &lt;a href=&#34;http://groups.google.com/a/chromium.org/group/chromium-os-dev/browse_thread/thread/8052531c2be3a191/9b340bae99034924&#34;&gt; advice&lt;/a&gt; to override the root disk:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;While booting, hit Esc to bring up the Linux boot menu.&lt;/li&gt;&#xA;&lt;li&gt;Choose an overridden root disk by entering:&#xA;&amp;nbsp;&amp;nbsp; boot: chromeos-usb.A root=/dev/sdc3&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Depending on your hardware and disk configuration, you can try sdb3, sdc3, sdd3, etc. to find the right disk. For instance, Asus EeePC 901 has two built-in SSD drives (sda and sdb) so the correct USB device is sdc3.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenGL:ää aloittelemassa</title>
      <link>https://kennethfalck.net/2010/08/10/opengl%C3%A4%C3%A4-aloittelemassa/</link>
      <pubDate>Tue, 10 Aug 2010 13:54:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/08/10/opengl%C3%A4%C3%A4-aloittelemassa/</guid>
      <description>&lt;p&gt;Olen tänä kesänä lueskellut &lt;a href=&#34;http://www.amazon.co.uk/OpenGL-SuperBible-Comprehensive-Tutorial-Reference/dp/0321712617%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321712617&#34;&gt;OpenGL SuperBibleä&lt;/a&gt; ja opiskellut ihan ensimmäisiä perusteita siitä, miten 3D-sovelluksia rakennetaan. Ajattelin tiivistää tähän lyhyesti toimintaperiaatteita alkuun pääsemiseen.&lt;/p&gt;&#xA;&lt;p&gt;Mac OS X:ssä ohjelmoidessa on helpointa aloittaa käyttämällä &lt;a href=&#34;http://developer.apple.com/mac/library/documentation/Cocoa/Reference/ApplicationKit/Classes/NSOpenGLView_Class/Reference/Reference.html&#34;&gt;NSOpenGLView&lt;/a&gt;-näkymää. Kyseinen näkymä lisätään normaaliin tapaan Interface Builderissa omaan sovellukseen. Oletusarvoja on syytä heti muuttaa kahdesta propertystä:&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;Depth: 24-bit (tarvitaan syvyystarkistukseen, joka piilottaa objektien näkymättömissä olevat pinnat)&lt;/li&gt;&lt;li&gt;Buffer: [x] Double Buffer (normaali kaksoispuskurointi sulavaa animointia varten)&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;Tämän jälkeen on vielä tarpeen tehdä oma luokka, joka periytyy NSOpenGLView-luokasta. Sen nimi voi olla vaikka MyOpenGLView. Periytyminen tehdään normaaliin tapaan luomalla Xcodeen uusi luokka .h- ja .m-tiedostoineen ja määrittelemällä Interface Builderissa lisätyn NSOpenGLView-näkymän luokaksi MyOpenGLView.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apple Magic Mouse paremmaksi BetterTouchToolilla</title>
      <link>https://kennethfalck.net/2010/08/09/apple-magic-mouse-paremmaksi-bettertouchtoolilla/</link>
      <pubDate>Mon, 09 Aug 2010 17:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/08/09/apple-magic-mouse-paremmaksi-bettertouchtoolilla/</guid>
      <description>&lt;p&gt;Applen nykyinen &lt;a href=&#34;http://www.apple.com/fi/magicmouse/&#34;&gt;Magic Mouse&lt;/a&gt; on kiva tuote. Se yhdistää perinteisen langattoman hiiren tuntuman kosketuslevyjen multitouch-ominaisuuksiin. Webbisivujen skrollaaminen pelkästään hiiren pintaa koskettelemalla tuntuu miellyttävältä.&lt;/p&gt;&#xA;&lt;p&gt;Sisäänrakennetuista ominaisuuksista puuttuu kuitenkin hiiren keskinappi. Oikean hiirinapin saa kyllä konfiguroitua käyttöön yhdellä rastilla asetuksista, mutta keskinappi on unohtunut kokonaan. Itse käytän kyseistä painallusta webbilinkkien avaamiseen uuteen tabiin, joten en oikein tule toimeen ilman sitä.&lt;/p&gt;&#xA;&lt;p&gt;Kaikeksi onneksi asiaan löytyy korjaus. &lt;a href=&#34;http://blog.boastr.net/&#34;&gt;BetterTouchTool&lt;/a&gt; on ilmainen apuohjelma, jolla Magic Mouseen voi määritellä vapaasti erilaisia painalluksia ja eleitä. Itse käytin sitä lisätäkseni yksinkertaisen mappauksen &amp;quot;Single Finger Middle Click =&amp;gt; Middleclick&amp;quot;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google lopettaa Waven</title>
      <link>https://kennethfalck.net/2010/08/05/google-lopettaa-waven/</link>
      <pubDate>Thu, 05 Aug 2010 00:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/08/05/google-lopettaa-waven/</guid>
      <description>&lt;p&gt;Official Google Blog &lt;a href=&#34;http://googleblog.blogspot.com/2010/08/update-on-google-wave.html&#34;&gt;kirjoittaa&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;Wave has not seen the user adoption we would have liked. We don’t plan to continue developing Wave as a standalone product, but we will maintain the site at least through the end of the year and extend the technology for use in other Google projects.&lt;/blockquote&gt;&#xA;&lt;p&gt;Näyttäisi siis siltä, että koska Wavesta ei tullut hittiä, Google sulkee sen ja yrittää hyödyntää muissa palveluissaan ne osat, joille on käyttöä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>F.lux siirtää vuorokausirytmin</title>
      <link>https://kennethfalck.net/2010/08/02/f.lux-siirt%C3%A4%C3%A4-vuorokausirytmin/</link>
      <pubDate>Mon, 02 Aug 2010 13:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/08/02/f.lux-siirt%C3%A4%C3%A4-vuorokausirytmin/</guid>
      <description>&lt;p&gt;Otin &lt;a href=&#34;http://twitter.com/kennu/status/14231990155&#34;&gt;toukokuussa&lt;/a&gt; käyttöön &lt;a href=&#34;http://www.stereopsis.com/flux/&#34;&gt;F.luxin&lt;/a&gt;. Se on yksinkertainen sovellus, joka muuttaa näytön värilämpötilaa auringon laskiessa ja noustessa. Ilman F.luxia elimistö kuvittelee, että aurinko ei laske koskaan, jos viettää paljon aikaa iltaisinkin tietokoneen ääressä.&lt;/p&gt;&#xA;&lt;p&gt;F.lux toimii. Omalla kohdallani se on siirtänyt vuorokausirytmiä 2-4 tunnilla aikaisemmaksi. Tai oikeastaan aiemmin ei ollut mitään vuorokausirytmiä, vaan tuli tehtyä tietokoneella hommia monesti läpi yön, jos oli jokin kiinnostava projekti käynnissä. Nykyään aurinko laskee kaikilla näytöilläni klo 22 aikoihin ja klo 00 alkaa jo väsyttää. Viimeistään klo 02 nukahtaa melkein automaattisesti. Aamulla tulee sitten herättyä hämmentävän aikaisin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Fixing a broken Windows Update on Windows 7 64-bit</title>
      <link>https://kennethfalck.net/2010/07/29/fixing-a-broken-windows-update-on-windows-7-64-bit/</link>
      <pubDate>Thu, 29 Jul 2010 15:01:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/07/29/fixing-a-broken-windows-update-on-windows-7-64-bit/</guid>
      <description>&lt;p&gt;I recently noticed that my Windows 7 PC (64-bit) had not updated itself for a long time. When trying to manually run Windows Update, it would only open a dialog box saying:&lt;/p&gt;&#xA;&lt;p&gt;&amp;quot;Windows Update cannot currently check for updates because the service is not running&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;This happened despite the fact that the Windows Update service was, in fact, running and also properly configured as Automatic (Delayed Start).&lt;/p&gt;&#xA;&lt;p&gt;After unsuccesfully trying various built-in fixes in Windows 7 and also trying a downloadable Microsoft Fix It pack, I decided to run a Upgrade using the original Windows 7 installation CD. That finally fixed the problem and now Windows Update is functional again.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Syy x264-kehittäjien WebM-kritiikkiin</title>
      <link>https://kennethfalck.net/2010/07/13/syy-x264-kehitt%C3%A4jien-webm-kritiikkiin/</link>
      <pubDate>Tue, 13 Jul 2010 13:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/07/13/syy-x264-kehitt%C3%A4jien-webm-kritiikkiin/</guid>
      <description>&lt;p&gt;Web-videostandardeista kiinnostuneet muistanevat, että x264-kirjaston kehittäjät &lt;a href=&#34;http://x264dev.multimedia.cx/?p=377&#34;&gt;kritisoivat vahvasti&lt;/a&gt; VP8-codeccia Googlen &lt;a href=&#34;http://kfalck.net/2010/05/19/googlen-webm-on-webin-uusi-videostandardi&#34;&gt;julkaistua sen pari kuukautta sitten&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Nyt x264-projekti on julkaissut &lt;a href=&#34;http://mailman.videolan.org/pipermail/x264-devel/2010-July/007508.html&#34;&gt;kaupallisen version&lt;/a&gt; kirjastostaan. Lieneekö mikään ihme, että suhtautuminen oli niin negatiivista? Raha pyörittää maailmaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Git status kaikista työhakemistoista</title>
      <link>https://kennethfalck.net/2010/07/10/git-status-kaikista-ty%C3%B6hakemistoista/</link>
      <pubDate>Sat, 10 Jul 2010 14:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/07/10/git-status-kaikista-ty%C3%B6hakemistoista/</guid>
      <description>&lt;p&gt;Minulla on työkoneillani yleensä 20-30 eri Git-projektia checkattuna ulos. Joskus on helppo unohtaa checkata muutokset takaisin sisään, jos työstää samaan aikaan useita projekteja. Käytän tällaista bash-skriptiä apuna tarkistaakseni, missä projekteissa on muutoksia:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;#!/bin/sh&#xA;cd ~/Git&#xA;for ff in `find . -name .git`; do&#xA;  f=`dirname &amp;quot;$ff&amp;quot;`&#xA;  echo $f&#xA;  cd $f&#xA;  git status $*&#xA;  cd -&#xA;done&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Kuten skriptistä käy ilmi, pidän kaikkia projektejani Git-nimisen hakemiston alla. Sen alla olevat hakemistohierarkiat vaihtelevat, mutta onneksi jokaisessa Git-työhakemistossa on tasan yksi .git-alihakemisto, jonka avulla on helppo etsiä projektit.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iOS 4 SDK:sta puuttuvat toiminnot</title>
      <link>https://kennethfalck.net/2010/07/01/ios-4-sdksta-puuttuvat-toiminnot/</link>
      <pubDate>Thu, 01 Jul 2010 16:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/07/01/ios-4-sdksta-puuttuvat-toiminnot/</guid>
      <description>&lt;p&gt;Olen koodaillut tänä keväänä ja kesänä aika paljon iPad- ja iPhone-sovelluksia, lähinnä erilaisia prototyyppejä. Olen tunnistanut ainakin seuraavat kaksi jatkuvasti toistuvaa &amp;quot;patternia&amp;quot;, joihin olisi kiva löytää vakioitu ratkaisu.&lt;/p&gt;&#xA;&lt;h2&gt;NSURLConnection: Jonotettu tiedonsiirto&lt;/h2&gt;&#xA;&lt;p&gt;Useimmat sovellukseni rakentuvat siten, että Core Datalla määritellään tietorakenne eli joukko SQLite-tauluja ja niiden kenttiä. Sitten verkosta haetaan JSON-muotoista tietoa ja tallennetaan se kyseisiin tauluihin.&lt;/p&gt;&#xA;&lt;p&gt;iOS 4 SDK:n vakiotoiminnallisuus mahdollistaa vain yksittäisen taustalla latautuvan downloadin NSURLRequest- ja NSURLConnection-luokilla. Jokaista siirtoa varten pitää tehdä oma delegate-objekti, joka ymmärtää mitä vastaanotetulla tiedolla tehdään. Lisäksi sen pitää osata käynnistää seuraava tiedonsiirto edellisen päätyttyä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>23andMe-geenikartoitus</title>
      <link>https://kennethfalck.net/2010/06/27/23andme-geenikartoitus/</link>
      <pubDate>Sun, 27 Jun 2010 15:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/06/27/23andme-geenikartoitus/</guid>
      <description>&lt;p&gt;Tilasin pari kuukautta sitten erikoistarjouksesta &lt;a href=&#34;http://www.23andme.com&#34;&gt;23andMe.comin&lt;/a&gt; geenikartoituksen. Silloin hinta oli $99 + sylkinäytteen kuljetus, yhteensä $170 luokkaa. Normaali listahinta samalle täydelle kartoitukselle on $499. Kartoitus valmistui nyt.&lt;/p&gt;&#xA;&lt;p&gt;23andMe on varsin modernisti rakennettu web-palvelu. Pelkän geenikartan lisäksi se sisältää sosiaalisia toimintoja, joiden avulla löysin jo esimerkiksi kolme viidettä pikkuserkkua jostain päin USA:ta. Lisäksi käyttäjille esitetään koko ajan erilaisia pikkukyselyitä tupakoinnista, syömisestä, värisokeudesta ja sen tyyppisistä asioista. Geenikarttoihin yhdistettynä näistä syntyy mielenkiintoisia tilastollisia tuloksia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>ITNytin huuhaa-tietoturvauutisointia</title>
      <link>https://kennethfalck.net/2010/06/22/itnytin-huuhaa-tietoturvauutisointia/</link>
      <pubDate>Tue, 22 Jun 2010 09:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/06/22/itnytin-huuhaa-tietoturvauutisointia/</guid>
      <description>&lt;p&gt;Kun ITNyt uutisoi &lt;a href=&#34;http://www.itnyt.fi/node/292&#34;&gt;S-ryhmän WLAN-kirjautumisongelmasta&lt;/a&gt;, olin innoissani. Vihdoinkin suomalainen IT-uutispalvelu, joka harrastaa oikeaa tutkivaa journalismia!&lt;/p&gt;&#xA;&lt;p&gt;Myöhemmin lisätty uutinen &lt;a href=&#34;http://www.itnyt.fi/node/328&#34;&gt;Welhon ja Maxinetin ongelmista&lt;/a&gt; kuitenkin paljastaa, että kyse onkin vain brändeillä ratsastavasta julkisuustempusta, joka liioittelee ja vääristelee uhkaa. Welhon hotspotien WLAN-kirjautumiset on nimittäin SSL-suojattu. Olen itse ollut aikoinaan mukana suunnittelemassa niitä. Welhoon kirjautuminen on ihan yhtä turvallista kuin vaikkapa Googleen tai Facebookiin.&lt;/p&gt;&#xA;&lt;p&gt;ITNytin uutisoinnin taustalla onkin se vanha ja tunnettu tietoturvaongelma, että avoimen WLAN-tukiaseman rinnalle voi pystyttää valetukiaseman samalla SSID:llä ja huijata käyttäjän kytkeytymään siihen. Tässä ei ole mitään S-ryhmälle, Welholle tai Maxinetille spesifistä, vaan sama periaate toimii minkä tahansa avoimen tukiseman ollessa kyseessä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mac OS X ja &#34;next window&#34; -näppäin</title>
      <link>https://kennethfalck.net/2010/06/18/mac-os-x-ja-next-window-n%C3%A4pp%C3%A4in/</link>
      <pubDate>Fri, 18 Jun 2010 13:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/06/18/mac-os-x-ja-next-window-n%C3%A4pp%C3%A4in/</guid>
      <description>&lt;p&gt;Monille uusille Mac-käyttäjille tuntuu oudolta, että Cmd-Tab toimii eri logiikalla kuin Windowsin Alt-Tab. Windowsissa Alt-Tab ei tee eroa eri sovellusten kesken vaan vaihtaa kaikkien ikkunoiden välillä. Macissa taas Cmd-Tab vaihtaa sovellusten välillä, mutta kullakin sovelluksella voi olla auki useita ikkunoita.&lt;/p&gt;&#xA;&lt;p&gt;Oletuksena sovelluksen sisäinen ikkunan vaihto tapahtuu näppäinyhdistelmällä Cmd-&lt;code&gt;, joka on suomalaisessa näppäimistössä aika hankala. &lt;/code&gt;-merkki on siis &amp;quot;käänteinen heittomerkki&amp;quot;, jonka saa näppäinyhdistelmällä Shift-´.&lt;/p&gt;&#xA;&lt;p&gt;Tämä näppäinyhdistelmä kannattaa vaihtaa. Avaa ensin System Preferences, valitse sieltä Keyboard ja sen alta Keyboard Shortcuts -välilehti. Klikkaa vasemmanpuoleisesta listasta Keyboard &amp;amp; Text Input ja etsi sitten oikeanpuoleisesta listasta &amp;quot;Move focus to next window in application&amp;quot;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone 4 ja videopuhelut</title>
      <link>https://kennethfalck.net/2010/06/08/iphone-4-ja-videopuhelut/</link>
      <pubDate>Tue, 08 Jun 2010 00:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/06/08/iphone-4-ja-videopuhelut/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.apple.com/iphone/design/#design-video&#34;&gt;iPhone 4&lt;/a&gt; julkaistiin odotetusti ja Apple näyttää ajavan &lt;a href=&#34;http://www.apple.com/iphone/features/facetime.html#facetime-video&#34;&gt;FaceTimeä&lt;/a&gt; eli videopuheluita sen pääasiallisena myyntiargumenttina. Jännä nähdä, onnistuuko Steve Jobs tekemään niistä yhtä mainstreamia kuin kännykkäsurffailusta. Nokiahan ei ole onnistunut kummassakaan, vaikka aikaa on ollut.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.gizmodo.com.au/2010/06/what-is-iphone-4s-facetime-video-chat/&#34;&gt;Gizmodon mukaan&lt;/a&gt; FaceTime perustuu cocktailille avoimia standardeja&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;[FaceTime is] Based on many open standards, h.264, AAC, SIP, STUN, TURN, ICE, RTP, SRTP, Apple going to standards body tomorrow to make FaceTime an open industry standard.&lt;/blockquote&gt;&#xA;&lt;p&gt;Vaikuttaa siis hyvin samanlaiselta, kuin perinteiset SIP-pohjaiset VoIP-puhelut. Ei kovin nättiä, mutta toisaalta aika vakioitua. Tämä tarkoittaa myös, että kolmansien osapuolten on mahdollista toteuttaa videopalveluita suoraan nettiin. Perinteisissä Nokian käyttämissä WCDMA-videopuheluissahan näin ei ole ollut, vaan koko puhelinverkko on ollut täysin irrallisena Internetistä. Ehkä se on sen juuri takia jäänyt niin vähäiselle käytölle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blog upgraded to Django 1.2.1</title>
      <link>https://kennethfalck.net/2010/05/27/blog-upgraded-to-django-1.2.1/</link>
      <pubDate>Thu, 27 May 2010 15:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/05/27/blog-upgraded-to-django-1.2.1/</guid>
      <description>&lt;p&gt;My personal blog site has been upgraded to Django 1.2.1. For me, upgrading was a simple matter of running:&lt;/p&gt;&#xA;&lt;p&gt;sudo easy_install &lt;a href=&#34;http://media.djangoproject.com/releases/1.2/Django-1.2.1.tar.gz&#34;&gt;http://media.djangoproject.com/releases/1.2/Django-1.2.1.tar.gz&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Everything else seems to work fine after that, except that I had to change an import statement for email_re:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;-from django.forms.fields import email_re&#xA;+from django.core.validators import email_re&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;The regular expression is used for validating comment sender email addresess.&lt;/p&gt;&#xA;&lt;p&gt;&lt;span style=&#34;color:red&#34;&gt;Update:&lt;/span&gt;&lt;/p&gt;&#xA;&lt;p&gt;Also had to add CSRF support according to &lt;a href=&#34;http://docs.djangoproject.com/en/dev/ref/contrib/csrf/&#34;&gt;these instructions&lt;/a&gt; to make my custom comment form work.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How To Enable Chrome Web Store Applications on Mac OS X</title>
      <link>https://kennethfalck.net/2010/05/25/how-to-enable-chrome-web-store-applications-on-mac-os-x/</link>
      <pubDate>Tue, 25 May 2010 13:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/05/25/how-to-enable-chrome-web-store-applications-on-mac-os-x/</guid>
      <description>&lt;p&gt;The new &lt;a href=&#34;https://chrome.google.com/webstore&#34;&gt;Chrome Web Store&lt;/a&gt; will be based on &lt;a href=&#34;http://blog.ricodigo.com/2010/5/23/how-to-create-chrome-apps&#34;&gt;web applications&lt;/a&gt;. Applications can already be installed now by using a &lt;a href=&#34;http://www.google.com/chrome/eula.html?extra=devchannel&#34;&gt;developer build of Chrome&lt;/a&gt; and starting it with the --enable-apps option.&lt;/p&gt;&#xA;&lt;p&gt;On Windows the --enable-apps option can be added to the start menu shortcut of Chrome. On Mac OS X, you need to create a small shell script inside the Chrome bundle:&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;Open Terminal and go to /Applications/Google Chrome.app/Contents/MacOS&lt;/li&gt;&lt;li&gt;Rename &#34;Google Chrome&#34; (the binary) to &#34;Google Chrome.bin&#34;&lt;/li&gt;&lt;li&gt;Create a new text file called &#34;Google Chrome&#34; with the following contents:&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;pre&gt;&lt;code&gt;#!/bin/sh&#xA;exec &amp;quot;$0.bin&amp;quot; --enable-apps $@&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;ul&gt;&lt;li&gt;Make it executable with chmod 755 &#34;Google Chrome&#34;&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;Note that the same principle can be used to add command line options to any Mac OS X application. You may have to do this again after Chrome has been updated.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Googlen WebM on webin uusi videostandardi</title>
      <link>https://kennethfalck.net/2010/05/19/googlen-webm-on-webin-uusi-videostandardi/</link>
      <pubDate>Wed, 19 May 2010 20:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/05/19/googlen-webm-on-webin-uusi-videostandardi/</guid>
      <description>&lt;p&gt;No niin, nyt alkoi tapahtua &lt;a href=&#34;http://www.youtube.com/googledevelopers&#34;&gt;Google I/O&lt;/a&gt;:ssa (live stream):&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;&lt;a href=&#34;http://ajaxian.com/archives/webm-the-on2-codec-is-here-with-support-from-google-mozilla-and-opera&#34;&gt;VP8&lt;/a&gt; -videokoodekki julkaistiin odotetusti kuten itsekin aiemmin bloggailin.&lt;/li&gt;&lt;li&gt;Sitä ovat tukemassa ainakin Google Chrome, &lt;a href=&#34;http://hacks.mozilla.org/2010/05/firefox-youtube-and-webm/&#34;&gt;Mozilla Firefox&lt;/a&gt; ja Opera.&lt;/li&gt;&lt;li&gt;Uuden web-videostandardin nimi on &lt;a href=&#34;http://www.webmproject.org/&#34;&gt;WebM&lt;/a&gt; ja se muodostuu VP8-videosta, Vorbis -audiosta sekä yksinkertaistetusta Matroska-formaatista.&lt;/li&gt;&lt;li&gt;&lt;a href=&#34;http://hacks.mozilla.org/2010/05/firefox-youtube-and-webm/&#34;&gt;YouTube konvertoi&lt;/a&gt; kaikki videonsa (myös) WebM-muotoon.&lt;/ul&gt;&#xA;&lt;p&gt;WebM-projektin saitilta löytyy jo työkaluja &lt;a href=&#34;http://www.webmproject.org/tools/#ffmpeg_patches&#34;&gt;ffmpeg-patchien&lt;/a&gt; ja &lt;a href=&#34;http://www.webmproject.org/tools/#directshow_filters&#34;&gt;DirectShow-filtterien&lt;/a&gt; muodossa. Saatavilla on myös &lt;a href=&#34;http://www.webmproject.org/code/&#34;&gt;VP8 SDK&lt;/a&gt; sekä joukko kaupallisia työkaluja.&lt;/p&gt;&#xA;&lt;p&gt;Lisensoinnin suhteen WebM on &lt;a href=&#34;http://www.webmproject.org/about/faq/#licensing&#34;&gt;täysin rojalttivapaa&lt;/a&gt; ja itse koodi on julkaistu &lt;a href=&#34;http://www.webmproject.org/license/software/&#34;&gt;modifioidulla Apache/BSD-lisenssillä&lt;/a&gt;, jossa on suojapykälä kolmansien osapuolten patenttilitigaatiota vastaan. Tämän lisäksi Google myöntää &lt;a href=&#34;http://www.webmproject.org/license/bitstream/&#34;&gt;vapaan ja ilmaisen käyttöoikeuden&lt;/a&gt; kaikkiin Googlen patentteihin, jotka koskevat WebM:ää.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miksi Git on parempi kuin Mercurial</title>
      <link>https://kennethfalck.net/2010/05/17/miksi-git-on-parempi-kuin-mercurial/</link>
      <pubDate>Mon, 17 May 2010 21:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/05/17/miksi-git-on-parempi-kuin-mercurial/</guid>
      <description>&lt;p&gt;Tässä artikkelissa oli sen verran isoja pointteja, että päätin nostaa sen esiin: &lt;a href=&#34;http://blog.extracheese.org/2010/05/why-i-switched-to-git-from-mercurial.html&#34;&gt;Why I Switched to Git From Mercurial&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Nähtävästi siis Mercurial-versionhallintaohjelmisto:&lt;ul&gt;&lt;li&gt;Ei hallitse datamäärältään isoja repositoryja optimaalisesti.&lt;/li&gt;&lt;li&gt;Menee jopa rikki, jos repositoryyn laittaa liikaa dataa.&lt;/li&gt;&lt;li&gt;Sisältää komentoja, joilla voi tuhota dataa lopullisesti repositorysta turhan helposti.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&#xA;&lt;p&gt;Olen itse käyttänyt Gittiä aika huoleti isojen datamäärien varastoimiseen (esim. kuvien ja dokumenttien). Tällä perusteella tuntuu siltä, että valinta on ollut hyvä, sillä Gitillä ei ole niiden kanssa mitään ongelmia. Tarvittaessa olen pystynyt myös poistamaan Gitin historiasta isoja datatiedostoja, jos repositoryn koko on paisunut niiden vuoksi turhan isoksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPad-ohjelmointivinkkejä</title>
      <link>https://kennethfalck.net/2010/05/11/ipad-ohjelmointivinkkej%C3%A4/</link>
      <pubDate>Tue, 11 May 2010 02:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/05/11/ipad-ohjelmointivinkkej%C3%A4/</guid>
      <description>&lt;p&gt;Olen käyttänyt tänä keväänä paljon aikaa iPhone- ja iPad-ohjelmointiin. Tästä syystä en ole bloggaillut kovin paljon web-asioista, vaikka niitäkin yhä kehittelen.&lt;/p&gt;&#xA;&lt;p&gt;iPad-ohjelmointi on sikäli haastavaa, että isolla ruudulla esitettävät käyttöliittymät ja sisällöt vaativat paljon muistia. iPadissa on DRAM-muistia vain 256MB eli saman verran kuin iPhone 3GS:ssä. Näytön resoluutio ja kuvien koot ovat iPhoneen nähden nelinkertaisia, joten muistin kanssa pitää olla tarkkana.&lt;/p&gt;&#xA;&lt;p&gt;Eniten muistia vievät sellaiset käyttöliittymät, joissa näyttöä &amp;quot;flippaillaan&amp;quot; sormella oikealle ja vasemmalle. Muistissa täytyy pitää vähintään kolme näytöllistä tavaraa, jotta skrollaus toimii ripeästi kumpaan suuntaan tahansa. Aiempia näkymiä täytyy sitten jatkuvasti vapauttaa muistista sitä mukaa, kun niitä ei enää tarvita.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu 10.04 and afpd problems with Mac OS X mounts</title>
      <link>https://kennethfalck.net/2010/05/02/ubuntu-10.04-and-afpd-problems-with-mac-os-x-mounts/</link>
      <pubDate>Sun, 02 May 2010 19:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/05/02/ubuntu-10.04-and-afpd-problems-with-mac-os-x-mounts/</guid>
      <description>&lt;p&gt;If you have just upgraded to Ubuntu 10.04 Lucid Lynx, you may have noticed that mounting AFP volumes from Mac OS X no longer works. On the command line, you will get errors like this:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;mount_afp: AFPMountURL returned error -5014, errno is 89&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;The problem is simple and is described in &lt;a href=&#34;http://lists.apple.com/archives/macosx-interop/2007/Jul/msg00001.html&#34;&gt;this post from 2007&lt;/a&gt;. The Berkeley DB file format of existing &lt;strong&gt;.AppleDB&lt;/strong&gt; directories on Ubuntu has not been updated properly. The easiest fix is to just delete the old .AppleDB directory of your volume and run /etc/init.d/netatalk restart. By default, .AppleDB is in your home directory. AFP mounting will now work and a new database will be generated automatically.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Googlen VP8-video tulee vauhdilla</title>
      <link>https://kennethfalck.net/2010/04/29/googlen-vp8-video-tulee-vauhdilla/</link>
      <pubDate>Thu, 29 Apr 2010 15:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/04/29/googlen-vp8-video-tulee-vauhdilla/</guid>
      <description>&lt;p&gt;Google on ollut ahkerampi VP8-videocodecin edistämisessä kuin ajattelinkaan. &lt;a href=&#34;http://blog.streamingmedia.com/the_business_of_online_vi/2010/04/google-to-announce-list-of-vendors-who-will-support-vp8-on-may-19th.html&#34;&gt;Tämän uutisen mukaan&lt;/a&gt; yhteistyö online-videoteknologiayritysten kanssa on jo täydessä vauhdissa ja 19.5.2010 julkaistaan ilmeisesti suuri joukko tuotteita, jotka tukevat VP8-videota.&lt;/p&gt;&#xA;&lt;p&gt;Eli ei tässä jäädäkään odottelemaan open source -kirjastojen julkaisua, vaan Google painaa heti päälle yhteistyössä kaupallisten softavalmistajien kanssa. Webbiselaimille paine tukea VP8:a tulee olemaan vielä suurempi kuin ajateltiin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ensikokemuksia iPadista</title>
      <link>https://kennethfalck.net/2010/04/28/ensikokemuksia-ipadista/</link>
      <pubDate>Wed, 28 Apr 2010 19:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/04/28/ensikokemuksia-ipadista/</guid>
      <description>&lt;p&gt;Kylläpä tämä painaa paljon! 680g on yli tuplasti sen mihin on tottunut 290g Kindleä käsissä pitäessään. En ole siis mitenkään vakuuttunut, että iPad olisi välittömästi jonkinlainen Kindlentappaja sähköisen lukemisen saralla.&lt;/p&gt;&#xA;&lt;p&gt;Visuaalisesti ja toimivuudeltaan iPad on tietysti mahtava, kuten odotettiinkin. iPhoneen tottuneelle se ei ehkä kuitenkaan ole niin mullistava. Itse kiinnitin ensimmäisenä huomiota isoon virtuaalinäppäimistöön, joka mahdollistaa nyt ihan oikeasti kymmensormijärjestelmällä näppäilyn. Kirjoitan tätäkin olohuoneen nojatuolissa iPad sylissä. Asetuksista tosin puuttuu vielä suomenkielinen layout, jolla saisi myös ääkköset esiin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Djangolle NoSQL-tuki Google Summer of Codessa</title>
      <link>https://kennethfalck.net/2010/04/27/djangolle-nosql-tuki-google-summer-of-codessa/</link>
      <pubDate>Tue, 27 Apr 2010 15:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/04/27/djangolle-nosql-tuki-google-summer-of-codessa/</guid>
      <description>&lt;p&gt;Tämä on mainio uutinen: Alex Gaynor kehittää tänä vuonna &lt;a href=&#34;http://www.allbuttonspressed.com/blog/django/2010/04/Official-nonrel-NoSQL-support-in-Google-Summer-of-Code&#34;&gt;Djangon NoSQL-tukea&lt;/a&gt; Google Summer of Code -projektina. Sama kaveri väänsi viime vuoden GSoCissa Djangolle &lt;a href=&#34;http://alexgaynor.net/2009/nov/10/the-state-of-multidb-in-django/&#34;&gt;multi-db-tuen&lt;/a&gt;, jolla Django-webbisaitteja voi skaalata lisäämällä useita rinnakkaisia SQL-tietokantoja jakamaan kuormitusta. Se on tulossa ihan tuotantokäyttöön &lt;a href=&#34;http://code.djangoproject.com/wiki/Version1.2Roadmap&#34;&gt;Django 1.2:ssa&lt;/a&gt; lähiviikkoina.&lt;/p&gt;&#xA;&lt;p&gt;Djangon NoSQL-tuki, tai siis virallisesti Django-nonrel, ei ole ihan yksinkertainen asia ratkaistavaksi. Sen ongelmista keskusteltiin hiljattain &lt;a href=&#34;http://djangodose.com/podcasts/callcast/episode/11/&#34;&gt;Django Dosen podcastissa&lt;/a&gt;. On päätettävä mitä NoSQL-tietokantoja tuetaan, ja siinä taas ratkaisee se, millaisia indeksointi- ja hakuominaisuuksia kustakin löytyy.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blogia yksinkertaistettu</title>
      <link>https://kennethfalck.net/2010/04/26/blogia-yksinkertaistettu/</link>
      <pubDate>Mon, 26 Apr 2010 02:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/04/26/blogia-yksinkertaistettu/</guid>
      <description>&lt;p&gt;Halusin hieman yksinkertaistaa blogisaittiani. Siirsin aiemmin oikealla puolella olleet linkkiblokit ylös valikkonapeiksi, joita painamalla saa kyseiset sisällöt esiin.&lt;/p&gt;&#xA;&lt;p&gt;Toisin sanoen saitti keskittyy nyt enemmän pelkästään itse ydinsisältöön eli blogikirjoituksiin. Olen alkanut uskoa samaan periaatteeseen oikeastaan kaikissa webbisaiteissa. Turha sälä piiloon ja itse asia pääosaan.&lt;/p&gt;&#xA;&lt;p&gt;&lt;span style=&#34;color:red&#34;&gt;Update:&lt;/span&gt;&lt;/p&gt;&#xA;&lt;p&gt;Samalla lisäsin myös Facebook-kommentointimahdollisuuden kokeeksi. Se tulee tavallisten kommenttien perään artikkelisivuilla. En ole kauhean innokas siirtämään kommenttejani kokonaan Facebookiin, mutta kommentointi-widgettiä on ihan mielenkiintoista kokeilla. Silläkin uhalla, että nämä kaikki widgetit tekevät sivuista taas vähän monimutkaisia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Facebookin Like-nappi blogissani</title>
      <link>https://kennethfalck.net/2010/04/22/facebookin-like-nappi-blogissani/</link>
      <pubDate>Thu, 22 Apr 2010 18:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/04/22/facebookin-like-nappi-blogissani/</guid>
      <description>&lt;p&gt;Otin käyttöön Facebookin eilen julmaiseman uuden Like-napin. Sen pitäisi näkyä näiden artikkeleiden yhteydessä aiemman oman Like-nappini sijaan.&lt;/p&gt;&#xA;&lt;p&gt;Lisäksi blogiartikkeleissa on uuden Open Graph -speksin mukaiset semanttiset metadata-tagit tähän malliin:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;&amp;lt;meta property=&amp;quot;og:title&amp;quot;&#xA;  content=&amp;quot;iPad on merkki tietotekniikan kypsymisestä&amp;quot; /&amp;gt;&#xA;&amp;lt;meta property=&amp;quot;og:image&amp;quot;&#xA;  content=&amp;quot;http://kfalck.net/static/files/thumbs/ipad3.png&amp;quot; /&amp;gt;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Facebookin pitäisi tunnistaa noiden perusteella linkeille miellyttävä otsikko ja thumbnail-kuva.&lt;/p&gt;&#xA;&lt;p&gt;&lt;span style=&#34;color:red&#34;&gt;Update:&lt;/span&gt;&lt;/p&gt;&#xA;&lt;p&gt;Yllämainittujen tagien lisäksi kannattaa lisätä myös seuraavanlaiset, niin Facebook näyttää feedissä millä saitilla liketetty juttu on:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;&amp;lt;meta property=&amp;quot;og:site_name&amp;quot; content=&amp;quot;K. Falck&amp;#39;s Blog&amp;quot; /&amp;gt;&#xA;&amp;lt;meta property=&amp;quot;og:description&amp;quot; content=&amp;quot;K. Falck&amp;#39;s Blog&amp;quot; /&amp;gt;&lt;/code&gt;&lt;/pre&gt;</description>
    </item>
    <item>
      <title>Google vapauttikin VP8:n</title>
      <link>https://kennethfalck.net/2010/04/14/google-vapauttikin-vp8n/</link>
      <pubDate>Wed, 14 Apr 2010 15:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/04/14/google-vapauttikin-vp8n/</guid>
      <description>&lt;p&gt;Tänään ilmestyneessä Tietokone-lehden numerossa 4/2010 spekuloin kolumnissani, että Googlen pitäisi vapauttaa ostamansa TrueMotion &lt;a href=&#34;http://en.wikipedia.org/wiki/VP7&#34;&gt;VP7&lt;/a&gt; -codec vapaaseen käyttöön web-standardiksi. Ajatukseni oli, että tuoreempi &amp;lt;href=&amp;quot;&lt;a href=&#34;http://en.wikipedia.org/wiki/VP8&amp;quot;&amp;gt;VP8&#34;&gt;http://en.wikipedia.org/wiki/VP8&amp;quot;&amp;gt;VP8&lt;/a&gt;&lt;/a&gt; voisi jäädä kaupalliseen käyttöön, koska vanhempi VP7:kin oli jo H.264:n teholuokkaa.&lt;/p&gt;&#xA;&lt;p&gt;Kuinka ollakaan, Google ei jäänyt vehtailemaan vanhojen versioiden kanssa vaan on ilmeisesti saman tien &lt;a href=&#34;http://ajaxian.com/archives/google-to-open-source-on2-vp8-codec-at-google-io&#34;&gt;julkaisemassa VP8:n open sourceksi&lt;/a&gt;. Tämä on aivan loistava uutinen sekä webin käyttäjien, sisällöntuottajien että selainvalmistajien kannalta.&lt;/p&gt;&#xA;&lt;p&gt;Kunhan Google virallisesti julkaisee VP8:n, on kaikkien sisällöntuottajien intresseissä tarjota sitä vaihtoehtona mp4-formaatille. Luonteva siirtymä voi syntyä siten, että perinteiset Flash-playerit soittavat edelleen mp4:ää, ja saittien HTML5-versiot taas alkavat käyttää VP8:aa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhonen moniajo syynä kääntäjärajoituksiin?</title>
      <link>https://kennethfalck.net/2010/04/11/iphonen-moniajo-syyn%C3%A4-k%C3%A4%C3%A4nt%C3%A4j%C3%A4rajoituksiin/</link>
      <pubDate>Sun, 11 Apr 2010 06:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/04/11/iphonen-moniajo-syyn%C3%A4-k%C3%A4%C3%A4nt%C3%A4j%C3%A4rajoituksiin/</guid>
      <description>&lt;p&gt;Applen uusin iPhone-kehittäjäsopimus &lt;a href =&#34;http://www.appleinsider.com/articles/10/04/08/apples_iphone_4_sdk_license_bans_flash_java_mono_apps.html&#34;&gt;kieltää muut kuin natiivit Objective-C-sovellukset&lt;/a&gt;. Muutos on herättänyt närää esimerkiksi &lt;a href=&#34;http://www.appleinsider.com/articles/10/04/09/adobe_evangelist_lashes_out_at_apple_over_iphone_4_0.html&#34;&gt;Adoben taholta&lt;/a&gt;. CS5-pakettihan tulee sisältämään Flash-to-iPhone-export-työkalun, jonka käyttäminen ei nyt olekaan mahdollista.&lt;/p&gt;&#xA;&lt;p&gt;AppleInsiderilla on kuitenkin mahdollinen selitys rajoitukselle: se on ehkä tehty  &lt;a href=&#34;http://www.appleinsider.com/articles/10/04/09/apples_prohibition_of_flash_built_apps_in_iphone_4_0_related_to_multitasking.html&#34;&gt;tulevan iPhone-moniajon takia&lt;/a&gt;. Uusi moniajo tulee tiettävästi analysoimaan taustalla pyöriviä sovelluksia &amp;quot;lennossa&amp;quot; ja vapauttamaan niiden varaamaa muistia sekä pysäyttämään turhia säikeitä automaattisesti.&lt;/p&gt;&#xA;&lt;p&gt;Tällainen analysointi ei ole mahdollista, jos sovellusta ajetaan jonkinlaisessa virtuaalikoneessa, kuten Flash- tai Java-VM:ssä. Flash-eksportatut sovellukset ovat tiettävästi muutenkin melkoisia resurssisyöppöjä, sillä ne &lt;a href=&#34;http://news.ycombinator.com/item?id=1250595&#34;&gt;linkittävät suureen staattiseen apukirjastoon&lt;/a&gt;, joka sisältää Flashin kaikki toiminnot.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPad on merkki tietotekniikan kypsymisestä</title>
      <link>https://kennethfalck.net/2010/04/04/ipad-on-merkki-tietotekniikan-kypsymisest%C3%A4/</link>
      <pubDate>Sun, 04 Apr 2010 15:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/04/04/ipad-on-merkki-tietotekniikan-kypsymisest%C3%A4/</guid>
      <description>&lt;p&gt;Ensimmäiset iPadit ovat nyt &lt;a href=&#34;http://www.appleinsider.com/articles/10/04/03/high_quality_unboxing_photos_of_apples_new_ipad.html&#34;&gt;asiakkaiden käsissä&lt;/a&gt; USA:ssa. Samalla on alkanut melko odotetusti vastarinnan aalto, joka kritisoi iPadin suljettua ympäristöä. &lt;a href=&#34;http://piorkowski.ca/rev/2010/04/apple-ipad/&#34;&gt;Eräskin artikkeli&lt;/a&gt; vertaa iPadia lego-settiin, jonka voi koota ainoastaan yhdellä, valmistajan määrittelemällä tavalla.&lt;/p&gt;&#xA;&lt;p&gt;Lego-vertaus on siitä mielenkiintoinen, että se kuvaa hyvin perinteistä tietotekniikkaa. Viimeisten 30 vuoden aikana ihmiset ovat tottuneet PC:ihin, joihin pitää asentaa itse käyttöjärjestelmä, tarvittavat sovellukset ja parhaimmillaan jopa koota itse laitteen komponentit. Jotkut meistä ovat hyviä tällaisessa näpräilyssä ja osaavat rakentaa toimivia, omaan käyttöön optimoituja PC:itä. Useimmille se on lähes ylivoimaista, ja tuloksena syntyy juuri ja juuri kasassa pysyviä rakennelmia, jotka tuppaavat murenemaan ja lahoamaan käytön myötä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin pystytät oma wave-palvelimen</title>
      <link>https://kennethfalck.net/2010/02/18/n%C3%A4in-pystyt%C3%A4t-oma-wave-palvelimen/</link>
      <pubDate>Thu, 18 Feb 2010 22:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/02/18/n%C3%A4in-pystyt%C3%A4t-oma-wave-palvelimen/</guid>
      <description>&lt;p&gt;Google Wave on ollut viime aikoina aika kuollut, mutta päätin silti kokeilla &lt;a href=&#34;http://dst.samizdat.info/2010/02/18/4872/&#34;&gt;tämän keskustelun&lt;/a&gt; inspiroimana oman wave-palvelimen pystyttämistä. Tämä osoittautui täysin mahdolliseksi seuraavilla komponenteilla:&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;Ubuntu 9.10&lt;/li&gt;&lt;li&gt;ejabberd (XMPP-palvelin)&lt;/li&gt;&lt;li&gt;&lt;a href=&#34;http://code.google.com/p/wave-protocol/&#34;&gt;Google Wave Federation Prototype Server&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;Tämä wave-palvelin ei tarjoa Google Waven kaltaista webbikäyttöliittymää, vaan XMPP-pohjaisen rajapinnan, johon voi ottaa yhteyttä wave-clientillä. Softan mukana tulee konsolipohjainen clientti, joka näkyy oheisessa kuvakaappauksessa.&lt;/p&gt;&#xA;&lt;p&gt;Federaation juju on siinä, että jossain vaiheessa oikeasta Google Wavestakin voi avata minun itseni hostaamia waveja ja osallistua niissä käytäviin keskusteluihin. Esimerkiksi tämän blogin kommenttikeskustelut voisi tarjoilla waveina, joita voi seurailla ja joihin voi osallistua Google Wavesta tai mistä tahansa muustakin wave-järjestelmästä käsin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ohjelmoijat eivät vanhene</title>
      <link>https://kennethfalck.net/2010/02/18/ohjelmoijat-eiv%C3%A4t-vanhene/</link>
      <pubDate>Thu, 18 Feb 2010 15:42:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/02/18/ohjelmoijat-eiv%C3%A4t-vanhene/</guid>
      <description>&lt;p&gt;Slashdot käsittelee mielenkiintoista aihetta: &lt;a href=&#34;http://developers.slashdot.org/story/10/02/17/1642213/Logans-Run-Syndrome-In-Programming&#34;&gt;missä ovat yli 40-vuotiaat ohjelmoijat&lt;/a&gt;?&lt;/p&gt;&#xA;&lt;p&gt;Esille nousee ainakin kaksi syytä ohjelmoijien katoamiseen iän myötä. Toisaalta teknisesti pätevät koodaajat pyritään ehkä puoliväkisinkin nostamaan management-asemiin. Ja toisaalta uuden työvoiman palkkaamisessa suositaan nuoria, vastavalmistuneita tyyppejä, jotka tekevät hommia paljon halvemmalla kuin kokeneet.&lt;/p&gt;&#xA;&lt;p&gt;Itseäni näin 35-vuotiaana pohdituttaa, onko tässä myös syy siihen, miksi maailma on täynnä bugista ja tehotonta koodia. Sitä mukaa kun ohjelmoijat alkavat iän myötä kypsyä ja tuottaa (toivon mukaan) laadukasta koodia, markkinat työntävät heidät väkisin muihin tehtäviin. Tilalle tulee uusi sukupolvi, joka joutuu käymään omat oppivuotensa läpi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Flash ei toimi kovin hyvin Maemossakaan</title>
      <link>https://kennethfalck.net/2010/02/05/flash-ei-toimi-kovin-hyvin-maemossakaan/</link>
      <pubDate>Fri, 05 Feb 2010 00:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/02/05/flash-ei-toimi-kovin-hyvin-maemossakaan/</guid>
      <description>&lt;p&gt;Apple saa paljon vihoja siitä, etteivät iPhone ja iPad tue Flashia. Mutta nyt Flash-tuki on disabloitu myös &lt;a href=&#34;http://blog.pavlov.net/2010/01/27/firefox-for-maemo-rc3/&#34;&gt;Firefoxin Maemo-versiosta&lt;/a&gt;. Taustalla on Flash-pluginin kehno toimivuus monilla saiteilla:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;The Adobe Flash plugin used on many sites degraded the performance of the browser to the point where it didn’t meet our standards. If you wish to enable our experimental plugin support, you will be able to manually via about:config, but do so at your own risk.&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Mielestäni Appleenkin kohdistettu badwill on nyt syytä kohdistaa todelliseen syypäähän eli Adobeen, joka ei tunnu saavan aikaiseksi toimivia Flash-plugineja oikein millekään alustalle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chrome 5 &#34;beta&#34; Macille</title>
      <link>https://kennethfalck.net/2010/02/03/chrome-5-beta-macille/</link>
      <pubDate>Wed, 03 Feb 2010 04:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/02/03/chrome-5-beta-macille/</guid>
      <description>&lt;p&gt;Minulta kesti hetken selvittää, että Chrome 5 -selainta ei saa Macille vielä beta-channelin kautta, vaan se pitää asentaa dev-channelista. Nämä molemmat kanavat löytyvät Googlen &lt;a href=&#34;http://dev.chromium.org/getting-involved/dev-channel&#34;&gt;Early Access Release Channels&lt;/a&gt;-sivulta.&lt;/p&gt;&#xA;&lt;p&gt;Toisin sanoen kyseessä ei ole vielä beta-versio (tämän hetkinen Mac-beta on 4.x) vaan kehitysversio. Otin kuitenkin käyttöön Chrome 5.0.307.1 devin ja huomasin ilokseni, että tässä versiossa on mukana Bookmark Sync. Chrome osaa nyt kirjautua Google-tunnuksilla sisään ja synkronoida kirjamerkit eri koneiden kesken.&lt;/p&gt;&#xA;&lt;p&gt;Täytyy kokeilla hetken aikaa, onko dev-versio riittävän stabiili käyttää. Aiempaan beta-versioon voi palata suhteellisen helposti lataamalla vain Chromen uudelleen beta-channelista ja vetämällä sen vanhan päälle. Preferenssit ja historiat saattaa joutua tyhjentämään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>N900:n tehdasasetusten palautus vaatii hakkeritaitoja</title>
      <link>https://kennethfalck.net/2010/02/02/n900n-tehdasasetusten-palautus-vaatii-hakkeritaitoja/</link>
      <pubDate>Tue, 02 Feb 2010 15:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/02/02/n900n-tehdasasetusten-palautus-vaatii-hakkeritaitoja/</guid>
      <description>&lt;p&gt;Halusin palauttaa käytössäni olleeseen N900-puhelimeen tehdasasetukset ja poistaa kaiken henkilökohtaisen informaation. Tämä osoittautui haastavammaksi kuin osasin odottaa.&lt;/p&gt;&#xA;&lt;p&gt;Käytännössä koko laite täytyy fläshätä uudelleen &lt;a href=&#34;http://thenokiaguide.com/2010/01/11/how-to-hard-reset-the-n900-resets-all-data/&#34;&gt;näiden ohjeiden mukaan&lt;/a&gt;. Fläshäys tapahtuu kahdessa osassa: ensin asennetaan uudelleen käyttöjärjestelmä ja sitten &amp;quot;vanilla data image&amp;quot;. Operaatio tehdään komentoriviohjelmalla.&lt;/p&gt;&#xA;&lt;p&gt;Lisäbonuksena Nokian flash-3.5-työkalu ei toimi Windows 7:ssä (eikä tiettävästi Vistassa), koska se käyttää unsigned-ajureita. Niiden asentaminen vaatisi PC:n buuttaamisen jotain nappulaa pohjassa pitäen. Itse en viitsinyt tähän lähteä, vaan käytin suosiolla netbookkini Ubuntu 9.10:tä. Ilmeisesti flash-työkalu toimii myös Mac OS X:ssä, mutta ei ollut Maccia käden ulottuvilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Node.js ja asynkroniset tietokannat</title>
      <link>https://kennethfalck.net/2010/02/02/node.js-ja-asynkroniset-tietokannat/</link>
      <pubDate>Tue, 02 Feb 2010 00:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/02/02/node.js-ja-asynkroniset-tietokannat/</guid>
      <description>&lt;p&gt;Viime aikoina &lt;a href=&#34;http://nodejs.org/&#34;&gt;Node.js&lt;/a&gt; on vilahdellut vähän väliä web-maailman blogeissa. Itse olen lukenut lähinnä &lt;a href=&#34;http://simonwillison.net/2009/Nov/23/node/&#34;&gt;tämän esittelyn&lt;/a&gt;, mutta se riitti kiinnostumaan aiheesta.&lt;/p&gt;&#xA;&lt;p&gt;Node.js:n perusajatuksena on viedä selaimista tuttu JavaScriptin asynkroninen luonne palvelinpuolelle. Jokainen web-suunnittelija on joskus kirjoittanut tämän tapaisen koodinpätkän:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;var msg = &amp;#39;Sekunti kului&amp;#39;;&#xA;setTimeout(function() {&#xA;    alert(msg);&#xA;}, 10000);&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Idea on, että selain ei jää 10 sekunniksi jumiin odottelemaan ajan kulumista. Sen sijaan se ajastetaan setTimeout()-funktiolla jatkamaan ohjelman suoritusta 10 sekunnin kuluttua. Odottelun aikana skripti ei kuluta selaimen resursseja millään lailla. Erityisen tärkeää on, että skriptiä varten ei tarvitse varata omaa dedikoitua prosessia tai säiettä CPU:sta täksi ajaksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pankit pihtaavat pääsyä tilitietoihin</title>
      <link>https://kennethfalck.net/2010/02/01/pankit-pihtaavat-p%C3%A4%C3%A4sy%C3%A4-tilitietoihin/</link>
      <pubDate>Mon, 01 Feb 2010 13:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/02/01/pankit-pihtaavat-p%C3%A4%C3%A4sy%C3%A4-tilitietoihin/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.arcticstartup.com/2010/02/01/osuuspankki-says-no-to-balancion/&#34;&gt;Arctic Startup bloggaa&lt;/a&gt;, että Osuuspankki ei salli käyttäjien lukea tilitietojaan &lt;a href=&#34;http://www.balancion.com/pub/&#34;&gt;Balancionin&lt;/a&gt; henkilökohtaisella taloudenhallintasovelluksella.&lt;/p&gt;&#xA;&lt;p&gt;Pankkien halun pitää kiinni tietoturvasta ymmärtää, mutta nyt se on mennyt liian pitkälle. Kehitys on selvästi taantunut, kun asiakkaat itsekään eivät pääse käsiksi tilitietoihinsa koneellisesti luettavassa muodossa. Esimerkiksi Nordealla ei ole minkäänlaista taloudenhallintaa, tilien saldohälytykset ovat hyvin alkeellisia (eivät tue sähköpostia), ja niin edelleen. Kilpailu täytyy avata kolmansien osapuolten tarjoamille taloudenhallintasovelluksille.&lt;/p&gt;&#xA;&lt;p&gt;Oikea ratkaisu olisi tarjota read-only-API-rajapinta, jolla asiakkaan valtuuttamat sovellukset pystyvät lukemaan tilihistoriaa sekä tietysti myös sijoitustietoja ja muuta henkilökohtaiseen taloudenhallintaan liittyvää. Tällöin pankki huolehtisi edelleen pankkisalaisuudesta, ja asiakas itse voisi päättää siitä, kenelle haluaa vapaaehtoisesti luovuttaa tilitietonsa. Valtuutus olisi pysyvästi voimassa, mutta sen voisi myös koska tahansa peruuttaa verkkopankista.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Salasanojen replikoiminen Djangoon</title>
      <link>https://kennethfalck.net/2010/01/29/salasanojen-replikoiminen-djangoon/</link>
      <pubDate>Fri, 29 Jan 2010 18:57:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/01/29/salasanojen-replikoiminen-djangoon/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.djangoproject.com/&#34;&gt;Django&lt;/a&gt; tallentaa normaalisti salasanat SHA1-hasheina, joissa on mukana myös 5-merkkinen &lt;a href=&#34;http://en.wikipedia.org/wiki/Salt_(cryptography)&#34;&gt;salt&lt;/a&gt;. Mutta jos salasanoja replikoi jostain toisesta systeemistä Djangoon, ne voi tallentaa myös MD5-hasheina tai ilman salttia. Tämä tarkoittaa, että melkein mistä tahansa tyypillisestä web-pohjaisesta käyttäjärekisteristä on suhteellisen helppoa replikoida käyttäjätunnukset ja salasanat Djangoon.&lt;/p&gt;&#xA;&lt;p&gt;Djangon itse luoma salasanakenttä näyttää tietokannassa suurin piirtein tältä:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sha1$abcde$9f228544172d611cbfb5b8c7111f51aac0a166ba&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Kentässä on siis peräkkäin algoritmi (sha1), salt (abcde) ja itse hashi (9f228544172d611cbfb5b8c7111f51aac0a166ba) dollarimerkeillä eroteltuna.&lt;/p&gt;&#xA;&lt;p&gt;Jos oletetaan, että legacy-järjestelmässä on käytetty pelkkää MD5-hashia ilman saltteja, niin siellä tietokantakenttään on tallennettu luultavasti jotain tällaista:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Applen iPad - pettymys vai uusi iPhone?</title>
      <link>https://kennethfalck.net/2010/01/27/applen-ipad-pettymys-vai-uusi-iphone/</link>
      <pubDate>Wed, 27 Jan 2010 22:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/01/27/applen-ipad-pettymys-vai-uusi-iphone/</guid>
      <description>&lt;p&gt;Apple julkaisi äsken odotetun &lt;a href=&#34;http://www.apple.com/ipad/&#34;&gt;iPadin&lt;/a&gt;, mutta wow-faktori jäi puuttumaan. Laite tekee periaatteessa ihan samaa kuin aiemmatkin netbookit ja tabletit: antaa surffata nettiä, kirjoittaa sähköpostia ja lukea e-kirjoja.&lt;/p&gt;&#xA;&lt;p&gt;Toisaalta alkuperäinen iPhone oli ihan samanlainen julkistus. Se ei ollut ensimmäinen kännykkä, jossa oli kosketusnäyttö tai webbiselain. Sen sijaan se oli ensimmäinen kännykkä, &lt;strong&gt;jossa nämä ominaisuudet toimivat todella hyvin&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Näkisin iPadin samanlaisena tuotteena. Se toteuttaa netbookien ja tablettien tyypilliset käyttötarkoitukset niin hyvin, että iPadin jälkeen ei enää huvita koskeakaan Microsoftin jumitteleviin kynätabletteihin tai Asuksen hitaisiin ja painaviin netbookkeihin. Apple on perinteisesti aina onnistunut optimoimaan käyttöjärjestelmän nopeuden hardwaren tasoa vastaavaksi. Ja iPad painaa 680g siinä missä kaikki netbookit ovat järjestään yli 1kg.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Markdown-tuki Djangon kommenteissa</title>
      <link>https://kennethfalck.net/2010/01/24/markdown-tuki-djangon-kommenteissa/</link>
      <pubDate>Sun, 24 Jan 2010 23:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/01/24/markdown-tuki-djangon-kommenteissa/</guid>
      <description>&lt;p&gt;Otin käyttöön blogissani Djangon &lt;a href=&#34;http://docs.djangoproject.com/en/1.1/ref/contrib/#markup&#34;&gt;markdown&lt;/a&gt;-tuen kommenteille. Testailen tässä yhteydessä niiden toimivuutta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Scalan epäintuitiivinen häntärekursio</title>
      <link>https://kennethfalck.net/2010/01/23/scalan-ep%C3%A4intuitiivinen-h%C3%A4nt%C3%A4rekursio/</link>
      <pubDate>Sat, 23 Jan 2010 16:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/01/23/scalan-ep%C3%A4intuitiivinen-h%C3%A4nt%C3%A4rekursio/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.scala-lang.org/&#34;&gt;Scalaa&lt;/a&gt; pidetään funktionaalisena ohjelmointikielenä, mutta sen tuki häntärekursille (tail recursion) on yllättävän rajoittunut. Tämä johtuu yksinkertaisesti siitä, että Java VM:n nykyinen versio ei tue häntärekursiota ollenkaan.&lt;/p&gt;&#xA;&lt;p&gt;Kuten &lt;a href=&#34;http://stackoverflow.com/questions/1702831/scala-and-tail-recursion&#34;&gt;tämä artikkeli&lt;/a&gt; selittää, Scalan metodit toimivat häntärekursiivisesti ainoastaan jos ne on määritelty final-tyyppiseksi. Tällöin Scala pystyy optimoimaan ne while-loopiksi. Muussa tapauksessa metodikutsut luovat aina uuden stack framen siltä varalta, että itseään kutsuva metodi onkin overridattu jossakin perityssä luokassa.&lt;/p&gt;&#xA;&lt;p&gt;Väärin:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;class Generator {&#xA;  def generate(l: Long): Long = {&#xA;    if (l &amp;gt; 1000000) return l&#xA;    generate(l+1)&#xA;  }&#xA;}&#xA;&lt;p&gt;scala&amp;gt; new Generator().generate(0)&#xA;java.lang.StackOverflowError&#xA;at Generator.generate(&amp;lt;console&amp;gt;:4&amp;hellip;&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linkkien esikatselu Djangossa</title>
      <link>https://kennethfalck.net/2010/01/20/linkkien-esikatselu-djangossa/</link>
      <pubDate>Wed, 20 Jan 2010 23:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/01/20/linkkien-esikatselu-djangossa/</guid>
      <description>&lt;p&gt;Leikin hieman &lt;a href=&#34;http://github.com/AdamN/python-webkit2png/&#34;&gt;python-webkit2png&lt;/a&gt;:llä ja tein kotisivujeni Shared Links -osioon esikatselun. Niistä linkeistä, joille esikatselukuva on generoitu, pitäisi kyseisen kuvan tulla näkyviin, kun vie hiiren linkin päälle.&lt;/p&gt;&#xA;&lt;p&gt;Python-webkit2png käyttää Qt-kirjastoa ja WebKit-moottoria esikatselukuvan renderöintiin. Omat asetukseni generoivat kuvia 800x600 pikselin kokoisella virtuaaliselaimella, jossa ei ole Flashia eikä JavaScriptiä. Sen jälkeen kuvat pienennetään kokoon 400x300, mikä tekee niistä tällä hetkellä hieman kökön näköisiä.&lt;/p&gt;&#xA;&lt;p&gt;Djangossa tämä operaatio ajetaan cronissa management commandina. Se käy läpi ne linkit, joilla ei vielä ole esikatselukuvaa, ja tallentaa uudet kuvat kunkin linkin ImageField-kenttään. Joillekin linkeille tämä epäonnistuu, koska asetin renderöinnin maksimiajaksi 60 sekuntia, ja maailmalta löytyy edelleen kovin raskaita saitteja, jotka eivät siinä ajassa kerkeä latautua kokonaan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Git-versiohallinnan yksinkertainen rakenne</title>
      <link>https://kennethfalck.net/2010/01/20/git-versiohallinnan-yksinkertainen-rakenne/</link>
      <pubDate>Wed, 20 Jan 2010 17:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/01/20/git-versiohallinnan-yksinkertainen-rakenne/</guid>
      <description>&lt;p&gt;Artikkeli &lt;a href=&#34;http://www.newartisans.com/2008/04/git-from-the-bottom-up.html&#34;&gt;Git from the bottom up&lt;/a&gt; kuvailee seikkaperäisesti Git-versiohallinnan rakenteen, joka muodostuu pelkästään blob-, tree- ja commit-objekteista. Artikkelin lukemalla oivaltaa nopeasti, mitä monet Gitin antamat mystiset virheilmoitukset oikeastaan tarkoittavat, mikä on HEAD ja mikä on master, ja niin edelleen.&lt;/p&gt;&#xA;&lt;p&gt;Omana lyhyenä yhteenvetona voin tiivistää, että Gitissä on todellakin vain kolmenlaisia dataobjekteja:&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;Blob on yhden tiedoston sisältö.&lt;/li&gt;&lt;li&gt;Tree on kokoelma blobeja (tiedostoja) ja toisia tree-objekteja (alihakemistoja).&lt;/li&gt;&lt;li&gt;Commit on projektin tila tiettynä ajanhetkenä, koostuen tilan kuvaavasta tree-objektista sekä mahdollisista parent- ja child-commiteista.&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;Versiohallinnan historia muodostuu commit-objektien parent-suhteista. Seuraamalla parent-ketjua alkuun asti voi käydä läpi koko historian.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Git pull -päivityksen esikatselu</title>
      <link>https://kennethfalck.net/2010/01/20/git-pull-p%C3%A4ivityksen-esikatselu/</link>
      <pubDate>Wed, 20 Jan 2010 15:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/01/20/git-pull-p%C3%A4ivityksen-esikatselu/</guid>
      <description>&lt;p&gt;Versiohallintaa käyttäessä on usein tarpeen esikatsella, mitä muutoksia työhakemiston päivittäminen ajan tasalle keskitetystä repositorystä tulee tekemään. Subversionissa tähän on komento &amp;quot;svn status -u&amp;quot;, joka vertaa työhakemistoa repositoryyn ja näyttää muuttuvat tiedostot.&lt;/p&gt;&#xA;&lt;p&gt;Gitissä käytetään yleensä päivittämiseen &amp;quot;git pull&amp;quot; -komentoa, joka tekee ensin fetch-operaation ja mergettää sitten muutokset paikalliseen työhakemistoon. Jos haluaa kuitenkin esikatsella muutokset, täytyy ensin ajaa fetch käsin:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;# git fetch&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Sitten muutokset oman työhakemiston ja repositoryn välillä saa näkyviin log-komennolla:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Star Trek Online Beta</title>
      <link>https://kennethfalck.net/2010/01/14/star-trek-online-beta/</link>
      <pubDate>Thu, 14 Jan 2010 17:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2010/01/14/star-trek-online-beta/</guid>
      <description>&lt;p&gt;Ennakkotilasin viime viikolla Verkkokaupasta &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=45458&#34;&gt;Star Trek Onlinen&lt;/a&gt; ja sain siitä hyvästä kutsun kokeilemaan betaa jo nyt. Ensimmäisten questien perusteella vaikuttaa oikein lupaavalta peliltä! Vartin sisään pelaamisen aloittamisesta pääsee jo tappamaan Borgeja vaiheisella, ohjaamaan USS Enterprise -tyyppistä avaruusalusta ja ammuskelemaan fotonitorpedoja sekä johtamaan away-tiimiä planeetan pinnalle.&lt;/p&gt;&#xA;&lt;p&gt;En osaa verrata STO:ta aiempiin Star Trek -peleihin, kun en ole niitä juurikaan pelaillut, mutta yhdistelmä avaruusaluksella lentämisestä ja planeettojen pinnalla liikkumisesta tuntuu onnistuneelta. Jää nähtäväksi, miten nämä painottuvat pitemmälle pelatessa ja löytyykö pelistä riittävästi mielenkiintoista progressiota, jotta sitä jaksaa pelata kuukausia tai vuosia WoWin tapaan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Koodasin vähän C&#43;&#43;:aa ja...</title>
      <link>https://kennethfalck.net/2009/12/24/koodasin-v%C3%A4h%C3%A4n-c-aa-ja.../</link>
      <pubDate>Thu, 24 Dec 2009 02:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/12/24/koodasin-v%C3%A4h%C3%A4n-c-aa-ja.../</guid>
      <description>&lt;p&gt;...muistin miksi pidän dynaamisesta tyypityksestä:&lt;/p&gt;&#xA;&lt;p&gt;error: passing ‘const std::vector&amp;lt;std::basic_string&amp;lt;char, std::char_traits&amp;lt;char&amp;gt;, std::allocator&amp;lt;char&amp;gt; &amp;gt;, std::allocator&amp;lt;std::basic_string&amp;lt;char, std::char_traits&amp;lt;char&amp;gt;, std::allocator&amp;lt;char&amp;gt; &amp;gt; &amp;gt; &amp;gt;’ as ‘this’ argument of ‘void std::vector&amp;lt;_Tp, _Alloc&amp;gt;::push_back(const _Tp&amp;amp;) [with _Tp = std::basic_string&amp;lt;char, std::char_traits&amp;lt;char&amp;gt;, std::allocator&amp;lt;char&amp;gt; &amp;gt;, _Alloc = std::allocator&amp;lt;std::basic_string&amp;lt;char, std::char_traits&amp;lt;char&amp;gt;, std::allocator&amp;lt;char&amp;gt; &amp;gt; &amp;gt;]’ discards qualifiers&lt;/p&gt;&#xA;&lt;p&gt;PS. Hyvää joulua! :-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>SQL-kyselyiden eliminoiminen Djangosta</title>
      <link>https://kennethfalck.net/2009/12/17/sql-kyselyiden-eliminoiminen-djangosta/</link>
      <pubDate>Thu, 17 Dec 2009 03:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/12/17/sql-kyselyiden-eliminoiminen-djangosta/</guid>
      <description>&lt;p&gt;Django-sovellus on suhteellisen helppoa rakentaa siten, että se lataa kaiken tarvittavan välimuistista, eikä tee ollenkaan SQL-tietokantahakuja. Omien datamallien lisäksi on kuitenkin huomioitava muutama Djangon sisäänrakennettu komponentti, jotka yrittävät väkisin tehdä SQL-hakuja. Ne voi eliminoida seuraavasti.&lt;/p&gt;&#xA;&lt;h2&gt;1. Välimuistittava authentication backend&lt;/h2&gt;&#xA;&lt;p&gt;Jos käyttäjä on kirjautunut sisään, Django kutsuu jokaisella hakupyynnöllä authentication backendin get_user()-funktiota. Normaalisti tämä lataa käyttäjän tiedot SQL-tietokannasta. Tietokantahaun voi välttää toteuttamalla oman backendin, joka osaa pitää tiedot välimuistissa esimerkiksi omaa kustomoitua User-mallia käyttäen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Staattiset datatyypit vs. proprietaariset DOM-mallit</title>
      <link>https://kennethfalck.net/2009/12/16/staattiset-datatyypit-vs.-proprietaariset-dom-mallit/</link>
      <pubDate>Wed, 16 Dec 2009 23:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/12/16/staattiset-datatyypit-vs.-proprietaariset-dom-mallit/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://kfalck.net/2009/12/14/vahva-tyypitys-on-kuollut&#34;&gt;Aiemman blogikirjoituksen&lt;/a&gt; kommenteissa on käyty kiihkeää keskustelua, joka on kilpistynyt osittain siihen, onko staattisesta tyypityksestä haittaa koodaamisessa vai ei. Apo argumentoi eräänä vaihtoehtona, että tekemällä oman DOM-APIa muistuttavan rajapinnan voidaan ohittaa tiettyjä staattisen tyypityksen ongelmia.&lt;/p&gt;&#xA;&lt;p&gt;Vedän tähän kuitenkin yhteen syitä, miksi ohjelmointikielen natiivit, dynaamiset datatyypit ovat parempia kuin omatekoinen DOM-malli. Käytän esimerkkinä alkuperäistä caseani eli tekstimuotoisten JSON-objektien muuntamista ohjelmallisesti käsiteltävään muotoon ja takaisin tekstimuotoon. Samalla kuitenkin tarkastelen ongelmaa yleisessä tapauksessa, eli muutenkin kuin pelkkien JSON-objektien käsittelyssä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Relaxed Inc: CouchDB-startup-yritys</title>
      <link>https://kennethfalck.net/2009/12/15/relaxed-inc-couchdb-startup-yritys/</link>
      <pubDate>Tue, 15 Dec 2009 20:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/12/15/relaxed-inc-couchdb-startup-yritys/</guid>
      <description>&lt;p&gt;CouchDB:n kehittäjä Damien Katz kertoo &lt;a href=&#34;http://damienkatz.net/2009/12/relaxed_inc.html&#34;&gt;perustaneensa startupin&lt;/a&gt; nimeltä Relaxed Inc. Kavereilla on pari miljoonaa dollaria pääomaa ja meinaavat rakentaa CouchDB:n ympärille kunnon ekosysteemin ja liiketoimintaa.&lt;/p&gt;&#xA;&lt;p&gt;Olisikohan tässä nyt se lopullinen sysäys NoSQL-tietokantojen tulemisessa mainstreamiksi? Itse olen aina pitänyt CouchDB:stä eniten ja toivotan startupille onnea ja menestystä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to disable Google Chrome spell checking on Mac OS X</title>
      <link>https://kennethfalck.net/2009/12/15/how-to-disable-google-chrome-spell-checking-on-mac-os-x/</link>
      <pubDate>Tue, 15 Dec 2009 17:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/12/15/how-to-disable-google-chrome-spell-checking-on-mac-os-x/</guid>
      <description>&lt;div style=&#34;color:red&#34;&gt;Note: This article is pretty old. Check the comments for people&#39;s experiences with newer versions of Chrome.&lt;/div&gt;&#xA;&lt;p&gt;If you are using Chrome Beta:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;p&gt;Quit Chrome&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;p&gt;Edit ~/Library/Application\ Support/Google/Chrome/Default/Preferences&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;p&gt;Add an entry that says:&lt;/p&gt;&#xA;&lt;p&gt; &amp;quot;spellcheck&amp;quot;: {&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;&amp;quot;dictionary&amp;quot;: &amp;quot;&amp;quot;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt; }&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;p&gt;Restart Chrome&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;When you add the entry at the end of the file, make sure to add a &amp;quot;,&amp;quot; at the end of the previous entry. The result should look something like this:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;...&#xA;   &amp;quot;webkit&amp;quot;: {&#xA;      &amp;quot;webprefs&amp;quot;: {&#xA;         &amp;quot;inspector_settings&amp;quot;: &amp;quot;lastActivePanel:string:scripts\n&amp;quot;&#xA;      }&#xA;   },&#xA;   &amp;quot;spellcheck&amp;quot;: {&#xA;      &amp;quot;dictionary&amp;quot;: &amp;quot;&amp;quot;&#xA;   }&#xA;}&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;If you are using Chromium, the file is ~/Library/Application\ Support/Chromium/Default/Preferences.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Staattinen tyypitys vs. C&#43;&#43; const</title>
      <link>https://kennethfalck.net/2009/12/14/staattinen-tyypitys-vs.-c-const/</link>
      <pubDate>Mon, 14 Dec 2009 21:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/12/14/staattinen-tyypitys-vs.-c-const/</guid>
      <description>&lt;p&gt;Staattisesta tyypityksestä luopuminen on vähän samanlainen juttu, kuin C++:n const-avainsanasta luopuminen oli aikoinaan 1990-luvulla. Itse koin tuolloin hirveää tuskaa opiskellessani Javaa, kun muuttujia ja metodien parametrejä ei voinutkaan enää määritellä const-tyyppisiksi.&lt;/p&gt;&#xA;&lt;p&gt;C++:n const-avainsanan tarkoitushan on antaa suunnittelijalle täsmällinen kontrolli siihen, mitkä metodit voivat muuttaa olioiden sisältöä ja mitkä eivät. Jos joku muuttuja on määritelty constiksi, sen kautta voidaan kutsua ainoastaan const-metodeita, jotta voidaan olla varmoja, ettei muuttujan sisältö muutu.&lt;/p&gt;&#xA;&lt;p&gt;Tämä kaikki oli tosi hienoa, mutta aiheutti aivan mielettömän overheadin C++-ohjelmiin, kun ohjelmoijan piti jokaisessa mahdollisessa käänteessä huolehtia siitä, että const-määreet menivät oikein. Monet ohjelmoijat jättivät constin kokonaan pois ohjelmistaan, jolloin constiton ja constillinen ohjelmakoodi eivät voineet kunnolla kutsua toisiaan. Väliin tarvittiin tukuttain rumia typecastauksia, jotka mitätöivät koko constin idean.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vahva tyypitys on kuollut</title>
      <link>https://kennethfalck.net/2009/12/14/vahva-tyypitys-on-kuollut/</link>
      <pubDate>Mon, 14 Dec 2009 13:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/12/14/vahva-tyypitys-on-kuollut/</guid>
      <description>&lt;p&gt;Olen nyt tehnyt muutaman harrasteprojektin kahdella staattisesti tyypitetyllä kielellä: Scalalla ja Go:lla. Molemmissa tapauksissa olen törmännyt kohtuuttomiin hankaluuksiin heti, kun pitäisi käsitellä JSON-muotoista dataa.&lt;/p&gt;&#xA;&lt;p&gt;Staattisen tyypityksen perusongelma on, että se vaatii kaikkien tietorakenteiden olevan ennalta määritellyn tyypityksen mukaisia. Esimerkiksi JSON-rakenne voi kyllä olla tällainen:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;{ &amp;quot;title&amp;quot;:  &amp;quot;Otsikko&amp;quot;,&#xA;  &amp;quot;text&amp;quot;:   &amp;quot;Teksti&amp;quot;,&#xA;  &amp;quot;author&amp;quot;: &amp;quot;Kirjoittaja&amp;quot; }&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Ylläoleva rakenne voitaisiin kuvata Go:ssa tyypillä map[string]string tai Scalassa tyypillä Map[String, String].&lt;/p&gt;&#xA;&lt;p&gt;Mutta heti, jos jokin kentistä on vähän erilainen, tulee ongelmia:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uusi kolumni Tietokone-lehdessä</title>
      <link>https://kennethfalck.net/2009/12/11/uusi-kolumni-tietokone-lehdess%C3%A4/</link>
      <pubDate>Fri, 11 Dec 2009 14:54:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/12/11/uusi-kolumni-tietokone-lehdess%C3%A4/</guid>
      <description>&lt;p&gt;Tietokone-lehden numerosta 12/2009 löytyy uusin kolumnini nimellä &amp;quot;SQL on tiensä päässä&amp;quot;. Tarkoitus on kirjoitella kerran kuussa vastaavia juttuja, joissa käsittelen jossain määrin samoja kehitysasioita kuin omassa blogissani, mutta pyrin vetämään niitä vähän enemmän yhteen aina jonkin aiheen tiimoilta.&lt;/p&gt;&#xA;&lt;p&gt;Jos joku sattuu lukemaan kolumnin ja käymään tällä sivustolla, palautetta saa ihan mielellään laittaa tätä kautta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Torrent-tiedostoparseri Scalalla</title>
      <link>https://kennethfalck.net/2009/11/30/torrent-tiedostoparseri-scalalla/</link>
      <pubDate>Mon, 30 Nov 2009 03:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/30/torrent-tiedostoparseri-scalalla/</guid>
      <description>&lt;p&gt;Käsittelen tässä artikkelissa torrent-tiedostojen parsimista sillä oletuksella, että käytössä ei ole mitään valmista kirjastoa niiden käsittelyyn.&lt;/p&gt;&#xA;&lt;p&gt;Perinteinen (huono) tapa parsia dataa on käyttää indexOf()- ja strpos()-tyyppisiä funktioita. Tästä syntyy monimutkaisia for/while-lauserakenteita ja helposti hajoavia oletuksia siitä, että datan joukosta löytyy tiettyjä merkkejä tietyistä kohdista.&lt;/p&gt;&#xA;&lt;p&gt;Toinen tapa on toteuttaa tilakone, joka luuppaa dataa tavu tavulta eteenpäin ja pitää yllä tilamuuttujia siitä, missä kohdassa ollaan. Tilakoneesta tulee kovin monimutkainen, jos tietorakenteet voivat olla rekursiivisia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Funktionaalisesta ohjelmoinnista: PHP vs. Scala</title>
      <link>https://kennethfalck.net/2009/11/26/funktionaalisesta-ohjelmoinnista-php-vs.-scala/</link>
      <pubDate>Thu, 26 Nov 2009 18:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/26/funktionaalisesta-ohjelmoinnista-php-vs.-scala/</guid>
      <description>&lt;p&gt;Funktionaalinen ohjelmointi on hirveän monille teknisesti muutoin valistuneille täysin vieras käsite. Olen huomannut tämän ihan konkreetisesti käydessäni netti- ja livekeskusteluita tuttavieni kanssa. Useimpien ensimmäinen reaktio on yrittää selittää funktionaaliset käsitteet proseduraalisen ohjelmoinnin kautta. Tämä on vähän sama, kuin yrittäisi hahmottaa miltä vieras hedelmä maistuu katselemalla vain sen värejä ja muotoja televisiosta. :-)&lt;/p&gt;&#xA;&lt;p&gt;Koska aihe kiinnostaa minua, ajattelin käsitellä tässä muutamaa funktionaalisen ohjelmoinnin hyödyllistä ominaisuutta. Argumenttini on, että nämä ominaisuudet pystyvät tekemään koodista tehokkaampaa, selkeämpää ja bugittomampaa kuin perinteinen ohjelmointi. Esimerkkikieliksi vertailussa sopivat PHP, jota koodataan useimmiten erittäin proseduraalisesti, sekä Scala, joka puolestaan on hyvin funktionaalinen kieli.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kindle Store EDGE-yhteydellä</title>
      <link>https://kennethfalck.net/2009/11/25/kindle-store-edge-yhteydell%C3%A4/</link>
      <pubDate>Wed, 25 Nov 2009 16:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/25/kindle-store-edge-yhteydell%C3%A4/</guid>
      <description>&lt;p&gt;Olen Ranskassa työmatkalla ja päivitin Kindleni firmwaren. Samalla sen EDGE-yhteys rupesi toimimaan ja pääsin Amazonin online-kauppaan suoraan Kindlestä.&lt;/p&gt;&#xA;&lt;p&gt;Toimiikohan se jo Suomessakin?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chrome OS, Eee PC 901 ja WiFi sekä ääkköset</title>
      <link>https://kennethfalck.net/2009/11/23/chrome-os-eee-pc-901-ja-wifi-sek%C3%A4-%C3%A4%C3%A4kk%C3%B6set/</link>
      <pubDate>Mon, 23 Nov 2009 06:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/23/chrome-os-eee-pc-901-ja-wifi-sek%C3%A4-%C3%A4%C3%A4kk%C3%B6set/</guid>
      <description>&lt;p&gt;Tässä pari vinkkiä Chrome OS käyttämiseksi mukavammin Asus Eee PC 901:ssä.&lt;/p&gt;&#xA;&lt;h2&gt;WiFi&lt;/h2&gt;&#xA;&lt;p&gt;Chrome OS:n tämänhetkinen versio ei sisällä 901:n WiFin tarvitsemia Ralink-ajureita. Ne saa kuitenkin enabloitua kun kääntää kernelin itse &lt;a href=&#34;http://www.chromium.org/chromium-os/building-chromium-os&#34;&gt;Googlen ohjeiden&lt;/a&gt; mukaan. Tarvittava muutos tehdään tiedostoon&lt;/p&gt;&#xA;&lt;pre&gt;src/third_party/kernel/files/chromeos/config/chromeos-intel-menlow&#xA;&lt;/pre&gt;&#xA;&lt;p&gt;Tiedosto on tavallinen Linuxin kernel-konfiguraatio. Siihen lisätään rivi CONFIG_STAGING=y (vanhan # CONFIG_STAGING is not set -rivin tilalle). Tämän jälkeen ajurien pitäisi tulla mukaan kerneliin, kun sen kääntää normaaliin tapaan build_kernel.sh:lla.&lt;/p&gt;&#xA;&lt;h2&gt;Ääkköset&lt;/h2&gt;&#xA;&lt;p&gt;Chrome OS:n oletusnäppäimistö on US-mallinen. Suomenkielisen näppäimistön saa helpoiten käyttöön avaamalla terminaalin painamalla Ctrl-Alt-T ja kirjoittamalla komennon:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chrome OS kokeilussa</title>
      <link>https://kennethfalck.net/2009/11/20/chrome-os-kokeilussa/</link>
      <pubDate>Fri, 20 Nov 2009 18:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/20/chrome-os-kokeilussa/</guid>
      <description>&lt;p&gt;Sain vihdoin käännettyä ja asennettua Chrome OS:n kehitysversion eli &lt;a href=&#34;http://www.chromium.org/chromium-os&#34;&gt;Chromium OS:n&lt;/a&gt;. Tappelin pitkään sisäänkirjautumisen kanssa, sillä Chrome OS:ään kirjaudutaan sisään Google-tunnuksilla ja kirjautuminen ei jostain syystä toiminut vaan herjasi sertifikaattivirhettä. Lopulta huomasin, että käyttöjärjestelmää &lt;a href=&#34;http://sites.google.com/a/chromium.org/dev/chromium-os/building-chromium-os/build-instructions&#34;&gt;kääntäessä&lt;/a&gt; voi määritellä local account -tunnuksen, jolla voi sitten kirjautua käyttämällä muotoa &amp;quot;&lt;a href=&#34;mailto:&amp;#116;&amp;#x75;&amp;#x6e;&amp;#x6e;&amp;#x75;&amp;#115;&amp;#64;&amp;#103;&amp;#109;&amp;#97;&amp;#x69;&amp;#108;&amp;#x2e;&amp;#x63;&amp;#x6f;&amp;#x6d;&#34;&gt;&amp;#116;&amp;#x75;&amp;#x6e;&amp;#x6e;&amp;#x75;&amp;#115;&amp;#64;&amp;#103;&amp;#109;&amp;#97;&amp;#x69;&amp;#108;&amp;#x2e;&amp;#x63;&amp;#x6f;&amp;#x6d;&lt;/a&gt;&amp;quot;.&lt;/p&gt;&#xA;&lt;p&gt;Normaalisti Chrome OS:ään siis kirjaudutaan Google-tunnuksella. Tämän jälkeen käynnistyy Chrome-selain, joka kirjautuu automaattisesti sisään Gmailiin ja Google Calendariin. (Kokeillessani jouduin kirjautumaan niihin manuaalisesti sisään, mutta sen jälkeen sessio pysyi voimassa.) Selainta voi käyttää ihan tavalliseen tapaan ja jos sen sulkee, se vain käynnistyy uudelleen. Selaimen yläpalkkiin on integroitu myös kellonaika ja päivämäärä, akun latausaste, Wi-Fin ja muiden verkkojen hallinta sekä käyttöjärjestelmän ja selaimen asetukset.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin korjaat FeedBurnerin rumat URLit</title>
      <link>https://kennethfalck.net/2009/11/20/n%C3%A4in-korjaat-feedburnerin-rumat-urlit/</link>
      <pubDate>Fri, 20 Nov 2009 05:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/20/n%C3%A4in-korjaat-feedburnerin-rumat-urlit/</guid>
      <description>&lt;p&gt;FeedBurner näyttää alkaneen lisätä automaattisesti URLeihin inhottavan &amp;quot;?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=blablabla&amp;quot;-parametrin, joka on ilmeisesti tarkoitettu integroitumaan Google Analyticsin kanssa. Ajatus on varmaan ollut teoriassa kaunis, mutta lopputuloksena on tosi ikäviä URLeja, joita on hankala pasteta.&lt;/p&gt;&#xA;&lt;p&gt;Asia korjaantuu ottamalla FeedBurnerin asetuksista pois tämä alimmainen &amp;quot;Track clicks as a traffic source&amp;quot; -rasti:&lt;/p&gt;&#xA;&lt;p&gt;Reach — unique number of people who view or click your feed content&#xA;[x] Item views&#xA;[x] Item link clicks&#xA;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[  ] Track clicks as a traffic source in Google Analytics&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python vs. PHP: Miten koodi tiivistyy</title>
      <link>https://kennethfalck.net/2009/11/19/python-vs.-php-miten-koodi-tiivistyy/</link>
      <pubDate>Thu, 19 Nov 2009 23:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/19/python-vs.-php-miten-koodi-tiivistyy/</guid>
      <description>&lt;p&gt;Olen käynyt aiemmassa &lt;a href=&#34;http://kfalck.net/2009/11/12/pythonin-katevat-and-or-lausekkeet&#34;&gt;blogikirjoituksessa&lt;/a&gt; keskustelua PHP:n ja Pythonin eroista koodin tiiviyden suhteen. Siellä heittämäni esimerkit eivät olleet parhaita mahdollisia, joten ajattelin kirjoittaa tähän erikseen muutamista eroista, joiden uskon oikeasti tekevän Pythonista PHP:tä paremman kielen. Kirjoitan otsikot englanniksi, kun en oikein tunne näiden käsitteiden suomenkielisiä nimiä.&lt;/p&gt;&#xA;&lt;h2&gt;List comprehensionit&lt;/h2&gt;&#xA;&lt;p&gt;Web-sovellusohjelmoinnissa on aika yleinen tilanne luupata läpi taulukko, suorittaa taulukon jokaiselle jäsenelle jokin operaatio, ja tallentaa tulokset uuteen taulukkoon. PHP:ssä voisi ottaa esimerkin, jossa artikkeleista kerätään lista niiden kategorioista pieninä kirjaimina:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uusien kommenttien sähköposti-ilmoitukset</title>
      <link>https://kennethfalck.net/2009/11/15/uusien-kommenttien-s%C3%A4hk%C3%B6posti-ilmoitukset/</link>
      <pubDate>Sun, 15 Nov 2009 23:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/15/uusien-kommenttien-s%C3%A4hk%C3%B6posti-ilmoitukset/</guid>
      <description>&lt;p&gt;Koodasin tähän Django-pohjaiseen blogisysteemiini tuen sähköposti-ilmoituksille uusista kommenteista. Testailen niitä tämän artikkelin kommenteissa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>IRC-yhteysohjelma Go-kielellä</title>
      <link>https://kennethfalck.net/2009/11/15/irc-yhteysohjelma-go-kielell%C3%A4/</link>
      <pubDate>Sun, 15 Nov 2009 17:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/15/irc-yhteysohjelma-go-kielell%C3%A4/</guid>
      <description>&lt;p&gt;Päätin harjoitella &lt;a href=&#34;http://golang.org/&#34;&gt;Go&lt;/a&gt;-ohjelmointia tekemällä yksinkertaisen IRC-yhteysohjelman. Se toimii Macissa terminaalissa ja käyttää ncurses-kirjastoa tekstipohjaisen käyttöliittymän piirtämiseen ruudulle.&lt;/p&gt;&#xA;&lt;p&gt;Varsinainen IRC-protokollakirjasto on eroteltu omaksi moduuliksi, jotta sitä voisi jatkokehittää ja hyödyntää esimerkiksi bottien toteuttamisessa. Tällä hetkellä se osaa lähinnä avata yhteyden serverille ja liittyä kanavalle sekä kutsua sovelluskohtaisia callback-funktioita, kun jotain tapahtuu. Pääohjelma sijaitsee irc.IRCClient.Run()-metodissa, joka kuuntelee joukkoa go-channeleita ja reagoi niistä tuleviin syötteisiin.&lt;/p&gt;&#xA;&lt;p&gt;Tässä lähdekoodi BSD-lisenssillä. Makefile on tehty Mac OS X:lle ja kääntää ohjelman 64-bittiseksi binääriksi. Se pitäisi olla melko triviaalia muokata toimimaan Linuxissa. Monimutkaisuutta aiheuttaa lähinnä ncurses-wrapperin kääntäminen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vierityspalkin Twitter-listaus</title>
      <link>https://kennethfalck.net/2009/11/14/vierityspalkin-twitter-listaus/</link>
      <pubDate>Sat, 14 Nov 2009 19:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/14/vierityspalkin-twitter-listaus/</guid>
      <description>&lt;p&gt;Pääsin listalle: &lt;a href=&#34;http://vierityspalkki.fi/2009/11/13/vierityspalkin-twitter-listaus/&#34;&gt;Vierityspalkin Twitter-listaus&lt;/a&gt;. Hetken ihmettelinkin, miksi tuli niin paljon uusia followaajia tänään. :-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pythonin and-or-lausekkeet</title>
      <link>https://kennethfalck.net/2009/11/12/pythonin-and-or-lausekkeet/</link>
      <pubDate>Thu, 12 Nov 2009 23:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/12/pythonin-and-or-lausekkeet/</guid>
      <description>&lt;p&gt;&lt;span style=&#34;color:red&#34;&gt;[UPDATE: Katso kommenteista parempi tapa tehdä tämä.]&lt;/span&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tämä on uusi lempilausekkeeni Pythonissa:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;result = condition and option1 or option2&#xA;# Esim:&#xA;name = user.is_authenticated() and user.username or u&amp;#39;anonymous&amp;#39;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Tuo vastaa täydellisesti C:stä ja Javasta tuttua ?:-ehtolauseketta:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;name = user.is_authenticated() ? user.username : &amp;quot;anonymous&amp;quot;;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Nyt ei tarvitse enää pitkiä if-else-lauseita, kun Pythonin boolean-logiikka hoitaa homman noin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Go-kääntäjän asentaminen Ubuntuun</title>
      <link>https://kennethfalck.net/2009/11/11/go-k%C3%A4%C3%A4nt%C3%A4j%C3%A4n-asentaminen-ubuntuun/</link>
      <pubDate>Wed, 11 Nov 2009 16:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/11/go-k%C3%A4%C3%A4nt%C3%A4j%C3%A4n-asentaminen-ubuntuun/</guid>
      <description>&lt;p&gt;Kokeilin asentaa Googlen uuden Go-kääntäjän Ubuntu 9.10:een. Se sujui helposti &lt;a href=&#34;http://golang.org/doc/install.html&#34;&gt;asennusohjeiden&lt;/a&gt; mukaan. Go on saatavilla tällä hetkellä Linuxille ja Mac OS X:lle.&lt;/p&gt;&#xA;&lt;p&gt;Tiivistäen tein seuraavat asiat: (rootilla oli jo ennestään /root/bin polussa)&lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;sudo su -&lt;/li&gt;&lt;li&gt;apt-get install mercurial bison gcc libc6-dev ed&lt;/li&gt;&lt;li&gt;export GOROOT=/root/go&lt;/li&gt;&lt;li&gt;export GOARCH=386&lt;/li&gt;&lt;li&gt;export GOOS=linux&lt;/li&gt;&lt;li&gt;hg clone -r release https://go.googlecode.com/hg/ $GOROOT&lt;/li&gt;&lt;li&gt;cd $GOROOT/src&lt;/li&gt;&lt;li&gt;./all.bash&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;Käytin GOARCH=386 koska Ubuntu-virtuaalikoneeni on 32-bittinen. Muuten tulee käyttää GOARCH=amd64 Googlen ohjeiden mukaisesti.&lt;/p&gt;&#xA;&lt;p&gt;Asentamisen jälkeen voi tehdä tämänkaltaisen hello.go -ohjelman:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;package main&#xA;import &amp;quot;fmt&amp;quot;&#xA;&lt;p&gt;func main() {&#xA;fmt.Printf(&amp;quot;Hello World\n&amp;quot;);&#xA;}&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu One ja CouchDB Karmic Koalassa</title>
      <link>https://kennethfalck.net/2009/11/08/ubuntu-one-ja-couchdb-karmic-koalassa/</link>
      <pubDate>Sun, 08 Nov 2009 04:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/08/ubuntu-one-ja-couchdb-karmic-koalassa/</guid>
      <description>&lt;p&gt;Hankkiuduin lopullisesti eroon &lt;a href=&#34;http://www.eeebuntu.org/&#34;&gt;Eeebuntusta&lt;/a&gt;, koska se ei tue Ubuntu 9.10 Karmic Koalaa. Itse asiassa &lt;a href=&#34;http://forum.eeebuntu.org/viewtopic.php?f=25&amp;t=4492&#34;&gt;foorumin mukaan&lt;/a&gt; Eeebuntu aikoo siirtyä Ubuntusta Debian Unstable -pohjaiseksi, joten kiinnostukseni siihen lopahti muutenkin.&lt;/p&gt;&#xA;&lt;p&gt;Asensin Eee PC 901:eeni puhtaalta pöydältä &lt;a href=&#34;http://www.ubuntu.com/getubuntu/download-netbook&#34;&gt;Ubuntu 9.10 Netbook Remixin&lt;/a&gt; ja se toimii mainiosti ilman kummempaa virittelyä. Aluksi WLAN-yhteys ei auennut, mutta se vaati vain normaalin Fn-F2-näppäinyhdistelmän painamisen, jotta WLAN-kortti meni päälle.&lt;/p&gt;&#xA;&lt;p&gt;Hienoin ominaisuus 9.10 Karmic Koalassa on Ubuntu One, joka vastaa idealtaan Applen MobileMe-palvelua. Se synkronoi Ubuntun keskitetyn palvelimen kautta työpöytäinformaation, kuten muistiinpanot, kontaktit ja Firefoxin kirjanmerkit käyttäjän kaikkien koneiden välillä. Palvelu on Linuxille tyypilliseen tapaan vähän hiomaton, mutta idealtaan ja taustateknologialtaan oikein lupaava.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Complete Guide to Google Wave (Kindle Edition)</title>
      <link>https://kennethfalck.net/2009/11/06/the-complete-guide-to-google-wave-kindle-edition/</link>
      <pubDate>Fri, 06 Nov 2009 13:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/06/the-complete-guide-to-google-wave-kindle-edition/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://completewaveguide.com/guide/The_Complete_Guide_to_Google_Wave&#34;&gt;The Complete Guide to Google Wave&lt;/a&gt; is a user manual for Google Wave, written by Gina Trapani and Adam Pash of &lt;a href=&#34;http://lifehacker.com/&#34;&gt;Lifehacker&lt;/a&gt;. It&amp;#39;s currently (Nov 5, 2009) only available as a preview edition in HTML format on their Wiki-based site.&lt;/p&gt;&#xA;&lt;p&gt;I converted a snapshot of the current HTML chapters into Kindle format:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://kfalck.net/pub/completewaveguide_kindle.zip&#34;&gt;http://kfalck.net/pub/completewaveguide_kindle.zip&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;To read it, download the zip, uncompress it, and put the .mbp and .mobi files into your Kindle&amp;#39;s documents folder via USB.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Varnish käytössä blogissani</title>
      <link>https://kennethfalck.net/2009/11/05/varnish-k%C3%A4yt%C3%B6ss%C3%A4-blogissani/</link>
      <pubDate>Thu, 05 Nov 2009 02:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/05/varnish-k%C3%A4yt%C3%B6ss%C3%A4-blogissani/</guid>
      <description>&lt;p&gt;Nopeutin blogini toimintaa hiukan ottamalla käyttöön &lt;a href=&#34;http://varnish.projects.linpro.no/&#34;&gt;Varnishin&lt;/a&gt;. Se on HTTP-reverse-proxy, joka pitää webbisivuja välimuistissa ja palvelee niitä tehokkaammin kuin Apache ja Django pystyvät niitä tuottamaan. Pikaisesti testattuna tämä vaatimaton virtuaalikoneeni pystyy palvelemaan nyt noin 400 hakupyyntöä sekunnissa, kun se ilman Varnishia jäi alle sadan.&lt;/p&gt;&#xA;&lt;p&gt;Varnish on siitä mukava, että se osaa cachettaa sivuja, vaikkei niissä olisi &amp;quot;virallisia&amp;quot; Cache-Control-headereita. &lt;a href=&#34;http://varnish.projects.linpro.no/wiki/VCL&#34;&gt;VCL&lt;/a&gt;-kielellä voi rakentaa oman logiikan sille, mitä cachetetaan ja mitä ei. Oletuksena sellaiset sivut jätetään pois cachesta, joissa on käytetty cookieita tai authorization-headereita, jotta käyttäjäkohtainen data pysyisi erillään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kindlen vaihtelu yksityisten ja firman ostosten välillä onnistuu</title>
      <link>https://kennethfalck.net/2009/11/03/kindlen-vaihtelu-yksityisten-ja-firman-ostosten-v%C3%A4lill%C3%A4-onnistuu/</link>
      <pubDate>Tue, 03 Nov 2009 00:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/03/kindlen-vaihtelu-yksityisten-ja-firman-ostosten-v%C3%A4lill%C3%A4-onnistuu/</guid>
      <description>&lt;p&gt;Kokeilin tänään käytännössä, että firmalle ostetun Kindlen voi kytkeä väliaikaisesti omaan yksityiseen Amazon-tiliinsä. Sitten voi ostaa omalla rahalla e-kirjan, siirtää sen Kindleen, ja lopuksi jälleen palauttaa Kindlen kytketyksi firman tiliin. Molempien tilien kautta ostetut kirjat ovat edelleen luettavissa laitteella.&lt;/p&gt;&#xA;&lt;p&gt;Tämä on sikäli loogista, ettei suomalaisella Kindlellä ole mitään yhteyttä nettiin, eikä se edes tiedä mihin tiliin se on kytketty. Amazonin kauppa vain myöntää DRM:llä lukuoikeudet tietylle Kindlelle sarjanumeron perusteella, ja Kindlejä voi liikutella eri tilien välillä vapaasti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Automaattiset herätykset iCalista SqueezeBoxiin</title>
      <link>https://kennethfalck.net/2009/11/01/automaattiset-her%C3%A4tykset-icalista-squeezeboxiin/</link>
      <pubDate>Sun, 01 Nov 2009 23:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/01/automaattiset-her%C3%A4tykset-icalista-squeezeboxiin/</guid>
      <description>&lt;p&gt;Kyllästyin asettelemaan herätyskelloon herätysaikaa manuaalisesti joka päivä, joten hommasin makuuhuoneeseen &lt;a href=&#34;http://www.logitechsqueezebox.com/products/squeezebox-radio.html&#34;&gt;SqueezeBox Radion&lt;/a&gt; ja integroin sen Mac OS X:n iCal-kalenteriin.&lt;/p&gt;&#xA;&lt;p&gt;Tein tätä varten iCaliin erillisen &amp;quot;Alarms&amp;quot;-kalenterin, johon herätykset asetetaan kalenterimerkintöinä. Niiden URL-kenttään voi lisäksi laittaa herätyksessä soitettavan playlistin. Jos se on tyhjä, oletukseksi tulee &lt;a href=&#34;http://www.di.fm/progressive/&#34;&gt;DI FM Progressive&lt;/a&gt; -nettiradio.&lt;/p&gt;&#xA;&lt;p&gt;Integrointi osoittautui suhteellisen helpoksi pienellä Python-skriptillä, joka hakee ensin iCalista viikon kalenterimerkinnät ja syöttää ne sitten samalla koneella pyörivään SqueezeBox Serveriin CLI-rajapinnan kautta. Mac OS X tukee Snow Leopardista (10.6) lähtien natiivisti kaikkia tarvittavia Python-rajapintoja. SqueezeBoxin CLI puolestaan on yksinkertainen TCP-yhteys, johon kirjoitetaan ja luetaan tekstirivejä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drizzlestä korvaaja MySQL:lle?</title>
      <link>https://kennethfalck.net/2009/11/01/drizzlest%C3%A4-korvaaja-mysqllle/</link>
      <pubDate>Sun, 01 Nov 2009 18:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/11/01/drizzlest%C3%A4-korvaaja-mysqllle/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://launchpad.net/drizzle&#34;&gt;Drizzle&lt;/a&gt; on mielenkiintoinen projekti, joka kehittää MySQL:n pohjalta uutta kevyempää ja nopeampaa tietokantamoottoria webbisovellusten käyttöön.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;Drizzle is a community-driven project based on the popular MySQL DBMS that is focused on MySQL&#39;s original goals of ease-of-use, reliability and performance.&#xA;&lt;p&gt;The Drizzle team is removing non-essential code, refactoring the remaining code, switching to a microkernel architecture (with well-defined APIs) and generally making Drizzle into a lean, mean query-running machine.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Avoimen koodin pohjana on siis MySQL, mutta kaverit meinaavat poistaa siitä turhaa painolastia ja tehdä moottorista tehokkaamman ja skaalautuvamman. MySQL:n sisälmyksiin jonkin verran tutustuneena tiedän, ettei tehtävä voi olla helppo, mutta kuitenkin mahdollinen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>CouchDB tuleekin työpöydälle eikä palvelimiin</title>
      <link>https://kennethfalck.net/2009/10/30/couchdb-tuleekin-ty%C3%B6p%C3%B6yd%C3%A4lle-eik%C3%A4-palvelimiin/</link>
      <pubDate>Fri, 30 Oct 2009 13:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/30/couchdb-tuleekin-ty%C3%B6p%C3%B6yd%C3%A4lle-eik%C3%A4-palvelimiin/</guid>
      <description>&lt;p&gt;Eilen julkaistussa Ubuntu 9.10:ssä on &lt;a href=&#34;http://damienkatz.net/2009/10/koala_on_the_loose.html&#34;&gt;mukana CouchDB 0.10&lt;/a&gt; mutta hieman toisin kuin itse ajattelin. Se onkin nimittäin tarkoitettu HTML-pohjaisten työpöytäsovellusten alustaksi, kuten &lt;a href=&#34;http://jchrisa.net/drl/_design/sofa/_show/post/What-CouchDB-brings-to-HTML5&#34;&gt;tämäkin kirjoitus&lt;/a&gt; visioi.&lt;/p&gt;&#xA;&lt;p&gt;Tunnetuin CouchDB-pohjainen työpöytäsovellus lienee tällä hetkellä &lt;a href=&#34;http://damienkatz.net/2009/10/mozilla_raindrop.html&#34;&gt;Mozilla Raindrop&lt;/a&gt;. Sen idea on konsolidoida käyttäjän kaikki yhteisölliset ja sosiaaliset keskustelut yhteen paikkaan ja CouchDB lieneekin tähän mitä mainioin alusta. Sovellusten kehittämistä helpottaa &lt;a href=&#34;http://www.mikealrogers.com/archives/664&#34;&gt;couchdb-wsgi&lt;/a&gt;, jolla CouchDB:n &amp;quot;sisällä&amp;quot; voi ajaa WSGI-sovelluksia kuten vaikkapa Djangoa.&lt;/p&gt;&#xA;&lt;p&gt;HTML-pohjainen desktop-sovellus ei siis enää edellytä Apachen ja MySQL:n asentamista, vaan pelkkä CouchDB riittää. Mutta miten mahtaa CouchDB pärjätä ja skaalautua julkisen webin sovellusten puolella palvelimissa?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ensikokemukset Kindlestä</title>
      <link>https://kennethfalck.net/2009/10/29/ensikokemukset-kindlest%C3%A4/</link>
      <pubDate>Thu, 29 Oct 2009 21:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/29/ensikokemukset-kindlest%C3%A4/</guid>
      <description>&lt;p&gt;Amazon toimitti vihdoin viime viikonloppuna tilaamani &lt;a href=&#34;http://www.amazon.com/Wireless-Reading-Display-International-Generation/dp/B0015T963C%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3DB0015T963C &#34;&gt;Kindlen&lt;/a&gt;. Oli pakko tilata, kun &lt;a href=&#34;http://akibjorklund.com/&#34;&gt;Aki&lt;/a&gt; esitteli perjantaina omaansa ;-)&lt;/p&gt;&#xA;&lt;p&gt;Ensituntuma oli heti positiivinen. Kindle oli pakattu yksinkertaiseen pakkaukseen eikä mukana ollut turhaa krääsää. USA-mallinen virtapiuha säikäytti ensin, mutta osoittautui ihan tavalliseksi Micro USB -kaapeliksi, jossa oli vain irrotettava jenkkisähköadapteri toisessa päässä.&lt;/p&gt;&#xA;&lt;p&gt;Kindlen näytöstä kertoo paljon se, että luulin oletuksena näkyvää &amp;quot;welcome&amp;quot;-viestiä painetuksi tarraksi. Se kuitenkin katosi kytkettyäni laitteen lataukseen ja tilalle tuli &amp;quot;USB Drive Mode&amp;quot; -ilmoitus. Kyseisessä moodissa Kindle lataa akkuaan ja näkyy PC:ssä tai Macissa ulkoisena 2GB kovalevynä. Siihen voi kopioida e-kirjoja ja muita tiedostoja vetämällä ne documents-kansioon.&lt;/p&gt;</description>
    </item>
    <item>
      <title>HTML5 käytännössä</title>
      <link>https://kennethfalck.net/2009/10/29/html5-k%C3%A4yt%C3%A4nn%C3%B6ss%C3%A4/</link>
      <pubDate>Thu, 29 Oct 2009 11:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/29/html5-k%C3%A4yt%C3%A4nn%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://diveintohtml5.org/semantics.html&#34;&gt;Dive into HTML5: What Does It All Mean&lt;/a&gt; on hyvä katsaus käytännön HTML5:een ja siihen, miten sitä voi hyödyntää jo tänä päivänä ihan tavallisten webbisivujen tekemisessä. Omakin sivustoni on jo merkitty &amp;quot;!DOCTYPE html&amp;quot;:ksi, mutta en ole vielä käyttänyt HTML5:n elementtejä juurikaan.&lt;/p&gt;&#xA;&lt;p&gt;Tuttuun tapaan IE:ssä (mukaanlukien IE8) on kaikenlaisia bugeja, jotka tekevät siitä epäyhteensopivan HTML5:n kanssa, mutta artikkeli esittää myös keinoja niiden kiertämiseksi. Muissa selaimissa HTML5 toimii hyvin ja on miellyttävällä tavalla yksinkertaisempi ja selkeämpi kuin aiemmat HTML4- ja XHTML-standardit.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amazon-suositukset ja Django</title>
      <link>https://kennethfalck.net/2009/10/27/amazon-suositukset-ja-django/</link>
      <pubDate>Tue, 27 Oct 2009 15:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/27/amazon-suositukset-ja-django/</guid>
      <description>&lt;p&gt;Piilotin blogistani toistaiseksi Amazonin kirja- ja musiikkisuositukset, koska en ole lisännyt pitkään aikaan mitään uutta niihin. Ajattelin kuitenkin kertoa lyhyesti millä tekniikalla ne voi toteuttaa Djangossa ja Pythonissa.&lt;/p&gt;&#xA;&lt;p&gt;Perustana toimii &lt;a href=&#34;http://code.google.com/p/boto/&#34;&gt;Boto&lt;/a&gt;, joka on Python-kielinen kirjasto kaikille Amazonin web-serviceille. Se kattaa pääasiassa pilvipalvelut, kuten EC2:n ja S3:n, mutta sopii myös Product Advertising API:n käyttöön.&lt;/p&gt;&#xA;&lt;p&gt;Oma koodini näyttää suurin piirtein tältä:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;class ProductManager(models.Manager):&#xA;    def get_amazon_xml(self, asin):&#xA;        &amp;quot;&amp;quot;&amp;quot;Get product info from Amazon service.&amp;quot;&amp;quot;&amp;quot;&#xA;        aws_conn = AWSQueryConnection(&#xA;            aws_access_key_id=settings.AWS_ACCESS_KEY_ID,&#xA;            aws_secret_access_key=settings.AWS_SECRET_ACCESS_KEY,&#xA;             is_secure=False, host=&amp;#39;ecs.amazonaws.co.uk&amp;#39;)&#xA;        aws_conn.SignatureVersion = &amp;#39;2&amp;#39;&#xA;        params = dict(&#xA;            Service=&amp;#39;AWSECommerceService&amp;#39;,&#xA;            Version=&amp;#39;2009-10-01&amp;#39;,&#xA;            SignatureVersion=aws_conn.SignatureVersion,&#xA;            AWSAccessKeyId=settings.AWS_ACCESS_KEY_ID,&#xA;            AssociateTag=settings.AWS_ASSOCIATE_TAG,&#xA;            Operation=&amp;#39;ItemLookup&amp;#39;,&#xA;            ItemId=asin,&#xA;            ResponseGroup=&amp;#39;ItemAttributes,Images&amp;#39;,&#xA;            Timestamp=time.strftime(&amp;quot;%Y-%m-%dT%H:%M:%S&amp;quot;, time.gmtime()))&#xA;        qs, signature = aws_conn.get_signature(params, &amp;#39;GET&amp;#39;, &amp;#39;/onca/xml&amp;#39;)&#xA;        qs = &amp;#39;/onca/xml?&amp;#39; + qs + &amp;#39;&amp;amp;Signature=&amp;#39; + urllib.quote(signature)&#xA;        return ET.parse(aws_conn._mexe(verb, qs, None, headers={}))&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Tuossa haetaan  tuotteen tiedot XML:nä ASIN-koodin perusteella. Python-henkisesti koko homma hoituu muutamalla rivillä koodia ,vaikkakin osa riveistä on vähän pitkiä, kun parametrejä tarvitaan niin paljon. Parametrien määrä johtuu siitä, että Boto tukee samalla geneerisellä rajapinnalla kaikkia Amazonin eri palveluita. Oleellisinta koko hommassa on aws_conn.get_signature(), joka allekirjoittaa hakupyynnön.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uusi blogialusta ja spämmit</title>
      <link>https://kennethfalck.net/2009/10/27/uusi-blogialusta-ja-sp%C3%A4mmit/</link>
      <pubDate>Tue, 27 Oct 2009 12:55:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/27/uusi-blogialusta-ja-sp%C3%A4mmit/</guid>
      <description>&lt;p&gt;Aktivoin Djangosta SEND_BROKEN_LINK_EMAILS -ominaisuuden, eli saan postia aina kun joku saa aikaiseksi 404-virheen. Siitä huomaa, että vanhan Drupal-saitin comment-URLeihin tulee jatkuvaa satunnaista pommitusta. Ilmeisesti &lt;a href=&#34;http://mollom.com/&#34;&gt;Mollom&lt;/a&gt; hoiti sillä puolella spämmifiltteröinnin tehokkaasti, sillä spämmejä tuli harvoin läpi kommentteihin asti.&lt;/p&gt;&#xA;&lt;p&gt;Tässä Django-saitissa en vielä miettinyt spämmikontrollia lainkaan. Täytyy seurailla, alkaako roskakommentteja tulla, ja pitääkö integroida kommenttisysteemi johonkin filtteriin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blogini siirtyi uudelle Django-alustalle</title>
      <link>https://kennethfalck.net/2009/10/27/blogini-siirtyi-uudelle-django-alustalle/</link>
      <pubDate>Tue, 27 Oct 2009 02:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/27/blogini-siirtyi-uudelle-django-alustalle/</guid>
      <description>&lt;p&gt;Blogini (kfalck.net) on siirtynyt uudelle Django-pohjaiselle alustalle. Samalla ulkoasu uudistui hieman modernimmaksi. Kiitos Tanjalle avusta layoutin ja värien kanssa.&lt;/p&gt;&#xA;&lt;p&gt;Tämän blogin &lt;a href=&#34;http://kfalck.net/2004/09/06/me-too&#34;&gt;ensimmäinen merkintä&lt;/a&gt; kirjoitettiin 6.9.2004 omalla PHP-pohjaisella blogijärjestelmällä. Sen jälkeen siirryin vähäksi aikaa WordPressiin, sitten pitemmäksi aikaa Drupaliin ja nyt lopulta Djangoon. Olen onnistunut pääosin siirtämään joka kerta vanhat artikkelit ja kommentit uuteen systeemiin ja niin tälläkin kertaa.&lt;/p&gt;&#xA;&lt;p&gt;Luovuin Drupalista sen vuoksi, että halusin tarkempaa kontrollia järjestelmän toimintoihin. Drupal palvelee hyvin niin kauan kuin sen valmiit toiminnot ja moduulit kelpaavat sellaisenaan. Joskus alkaa kuitenkin ärsyttää, että saitille ilmestyy uusia toimintoja, linkkejä ja URLeja sinne sun tänne, ja jokaista moduulia pitäisi olla siivoilemassa erikseen, jos haluaa ne pois.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Wave-clienttejä alkaa ilmestyä AIRille, Mac OS X:lle ja iPhonelle</title>
      <link>https://kennethfalck.net/2009/10/22/wave-clienttej%C3%A4-alkaa-ilmesty%C3%A4-airille-mac-os-xlle-ja-iphonelle/</link>
      <pubDate>Thu, 22 Oct 2009 23:57:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/22/wave-clienttej%C3%A4-alkaa-ilmesty%C3%A4-airille-mac-os-xlle-ja-iphonelle/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://lifehacker.com/5387800/waver-is-a-compact-google-wave-client&#34;&gt;Lifehacker uutisoi&lt;/a&gt; Wave-clienteistä. &lt;a href=&#34;http://www.getwaveboard.com/&#34;&gt;Waveboard&lt;/a&gt; 0.6 on natiivi Mac OS X -client-ohjelma, joka näyttää uusien viestien määrän dock-ikonissa ja hälyttelee niistä Growlilla. Käyttöliittymä on normaali selainpohjainen Google Wave omassa ikkunassaan. Tulossa on myös iPhone-sovellus.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.adobe.com/cfusion/marketplace/index.cfm?event=marketplace.offering&amp;offeringid=16581&amp;marketplaceid=1&#34;&gt;Waver&lt;/a&gt; 1.0 taas on AIR-pohjainen Wave-clientti, joka näyttää yksinkertaisen näkymän Inboxiin ja antaa selailla waveja yksitellen. Sen pitäisi toimia kaikilla alustoilla.&lt;/p&gt;&#xA;&lt;p&gt;Nämä softat ovat vielä aika raakileita, mutta on tervetullutta olla jokin keino seurata Waven uusia viestejä tarvitsematta kyttäillä sitä selaimessa vähän väliä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Wave on liian sidottu Javaan</title>
      <link>https://kennethfalck.net/2009/10/15/google-wave-on-liian-sidottu-javaan/</link>
      <pubDate>Thu, 15 Oct 2009 13:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/15/google-wave-on-liian-sidottu-javaan/</guid>
      <description>&lt;p&gt;Sam Ruby tutkii blogissaan &lt;a href=&#34;http://intertwingly.net/blog/2009/06/01/Wave-Robot-Ruby-Client&#34;&gt;Google Wave APIa&lt;/a&gt; ja toteaa, että sen protokolla on sidottu Javan tietorakenteisiin hyvin matalalla tasolla. Yksittäisen kuvan välittäminen palvelimelle vaatii tällaisen rakenteen:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;{&#xA;  &amp;#39;javaClass&amp;#39;: &amp;#39;java.util.ArrayList&amp;#39;,&#xA;  &amp;#39;list&amp;#39;: [{&#xA;    &amp;#39;type&amp;#39;: &amp;#39;IMAGE&amp;#39;,&#xA;    &amp;#39;properties&amp;#39;: {&#xA;      &amp;#39;javaClass&amp;#39;: &amp;#39;java.util.HashMap&amp;#39;,&#xA;      &amp;#39;map&amp;#39;: {&#xA;        &amp;#39;url&amp;#39;: &amp;#39;http://example.com/foo.jpg&amp;#39;,&#xA;        &amp;#39;width&amp;#39;: 100,&#xA;        &amp;#39;height&amp;#39;: 100&#xA;      }&#xA;    },&#xA;    &amp;#39;java_class&amp;#39;: &amp;#39;com.google.wave.api.Image&amp;#39;&#xA;  }]&#xA;}&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Tämä on malliesimerkki siitä, miten protokollia EI pitäisi suunnitella. Täsmälleen saman asian saisi aikaan yksinkertaisellakin JSON-rakenteella, mutta ilmeisesti Google on käyttänyt Wavessa käyttänyt jotakin automaattista serialisointia, joka generoi tällaisia kauheuksia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Civilization Revolution iPhonelle</title>
      <link>https://kennethfalck.net/2009/10/11/civilization-revolution-iphonelle/</link>
      <pubDate>Sun, 11 Oct 2009 08:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/11/civilization-revolution-iphonelle/</guid>
      <description>&lt;p&gt;Todella hyvä peli iPhonelle: &lt;a href=&#34;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=324563544&amp;mt=8&#34;&gt;Civilization Revolution&lt;/a&gt;. Peli on yksinkertaistettu versio Civilizationista ja toimii mainiosti puhelimessa. Perusidea on sama kuin oikeassa Civilizationissa, mutta peli etenee nopeammin ja sisältää vähemmän mikromanagerointia (esim. workereita ei ole lainkaan).&lt;/p&gt;&#xA;&lt;p&gt;Ainoa negatiivinen puoli on joukkojen liikuttelun ja maailman selaamisen yleinen kankeus iPhonen pieneltä näytöltä. Tämä ei ole välttämättä pelin vika, sillä asiaa on kyllä mietitty, mutta ruudulle ei vain mahdu niin paljon kerrallaan. Pelin kontrolleihin kyllä tottuu aika äkkiä ja se toimii sutjakasti kun huomaa hyödyntää pinch-zoomia. Kosketusnäyttö sopii oikeastaan Civilization-tyyppisille peleille paremmin kuin hiiri.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Comment Notifyn testailua</title>
      <link>https://kennethfalck.net/2009/10/09/comment-notifyn-testailua/</link>
      <pubDate>Fri, 09 Oct 2009 17:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/09/comment-notifyn-testailua/</guid>
      <description>&lt;p&gt;Otin käyttöön &lt;a href=&#34;http://drupal.org/project/comment_notify&#34;&gt;Comment Notify&lt;/a&gt; -moduulin tänne blogisaitille, mutta syystä tai toisesta notifikaatioita ei lähde, vaikka niitä pyytäisi. Testailen tässä ketjussa sitä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tokyo Tyrant ja atomiset operaatiot Lualla</title>
      <link>https://kennethfalck.net/2009/10/06/tokyo-tyrant-ja-atomiset-operaatiot-lualla/</link>
      <pubDate>Tue, 06 Oct 2009 17:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/06/tokyo-tyrant-ja-atomiset-operaatiot-lualla/</guid>
      <description>&lt;p&gt;Olen jatkanut tutustumista NoSQL-tietokantoihin (tai vaihtoehtoisesti &amp;quot;AltDB&amp;quot; -- tämä nimi ei ole vielä oikein ottanut tuulta). Eräs yksinkertaisimmista ja tehokkaimmista on Tokyo Tyrant, joka muodostuu oikeastaan kahdesta palasesta:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://1978th.net/tokyocabinet/&#34;&gt;Tokyo Cabinet&lt;/a&gt; on C-kielinen tietokantakirjasto.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://1978th.net/tokyotyrant/&#34;&gt;Tokyo Tyrant&lt;/a&gt; on tietokantapalvelin, joka käyttää Tokyo Cabinetia.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Tokyo Cabinet vastaa idealtaan &lt;a href=&#34;http://www.oracle.com/technology/products/berkeley-db/index.html&#34;&gt;Berkeley DB&lt;/a&gt; -kirjastoa, jonka voi niinikään upottaa omaan sovellukseensa. Tokyo Cabinet on tiettävästi äärimmäisen tehokas, pystyen yli &lt;a href=&#34;http://www.igvita.com/2009/02/13/tokyo-cabinet-beyond-key-value-store/&#34;&gt;miljoonaan operaatioon sekunnissa&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Tokyo Tyrant lisää Cabinetin päälle verkkokerroksen, joten se on luonnollisesti hitaampi. Kehittäjän oman esityksen mukaan Tyrant pystyy noin &lt;a href=&#34;http://www.scribd.com/doc/12016121/Tokyo-Cabinet-and-Tokyo-Tyrant-Presentation&#34;&gt;58000 operaatioon sekunnissa&lt;/a&gt;. Nämä luvut riippuvat tietysti palvelinraudasta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin varmuuskopioit Google Docsit omalle koneelle</title>
      <link>https://kennethfalck.net/2009/10/02/n%C3%A4in-varmuuskopioit-google-docsit-omalle-koneelle/</link>
      <pubDate>Fri, 02 Oct 2009 02:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/02/n%C3%A4in-varmuuskopioit-google-docsit-omalle-koneelle/</guid>
      <description>&lt;p&gt;Olen alkanut käyttää Google Docsia yhä useampaan tarkoitukseen henkilökohtaisessa tietojenkäsittelyssä. En viitsi enää kirjoitella omia dokumenttejani ja taulukoitani Officella tai OpenOfficella tiedostoiksi, kun ne on helpompi laittaa Google Docsiin. Omat vaatimukseni ovat sen verran yksinkertaisia, että Google Docs riittää mainiosti.&lt;/p&gt;&#xA;&lt;p&gt;Samalla on tullut tarve saada nämä dokumentit varmuuskopioitua Google Docsista omalle koneelle siltä varalta, että netti katkeaa pitemmäksi ajaksi tai Google menee vaikka konkurssiin.&lt;/p&gt;&#xA;&lt;p&gt;Pienellä googlailulla löytyikin heti tähän tarkoitukseen työkalu nimeltä &lt;a href=&#34;http://code.google.com/p/gdatacopier/&#34;&gt;gdatacopier&lt;/a&gt;. Se koostuu kahdesta Python-skriptistä, joita on tarkoitus ajaa komentoriviltä:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chicago Boss: Erlang on Rails</title>
      <link>https://kennethfalck.net/2009/10/02/chicago-boss-erlang-on-rails/</link>
      <pubDate>Fri, 02 Oct 2009 01:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/02/chicago-boss-erlang-on-rails/</guid>
      <description>&lt;p&gt;Tämä on mielenkiintoinen uusi projekti: &lt;a href=&#34;http://www.chicagoboss.org/&#34;&gt;Chicago Boss&lt;/a&gt;. Se pyrkii yhdistämään Ruby on Railsin idean ja Djangon template-kielen Erlangin tehokkuuteen ja skaalautuvuuteen. Samansuuntaista on aiemmin yrittänyt &lt;a href=&#34;http://erlyweb.org/&#34;&gt;ErlyWeb&lt;/a&gt;, joka näyttää kuitenkin jo kuolleen pystyyn.&lt;/p&gt;&#xA;&lt;p&gt;ErlyWebistä puuttuivat kokonaan data-modelit ja se perustui YAWS-webbipalvelimeen. ErlTL-kielellä oli käytännössä aika hankala koodata webbisivuja.&lt;/p&gt;&#xA;&lt;p&gt;Chicago Boss puolestaan käyttää &lt;a href=&#34;http://code.google.com/p/mochiweb/&#34;&gt;MochiWebiä&lt;/a&gt; palvelinalustana ja toteuttaa ActiveRecordin kaltaiset data-modelit omalla &lt;a href=&#34;http://www.chicagoboss.org/api-record.html&#34;&gt;BossRecord&lt;/a&gt;-APIllaan. Tietokantarajapintana on trendikkäästi äärimmäisen tehokas &lt;a href=&#34;http://1978th.net/tokyotyrant/&#34;&gt;Tokyo Tyrant&lt;/a&gt;, ja tarkoitus on tukea muitakin. Erityisen kiva juttu on Djangon template-kieltä vastaava &lt;a href=&#34;http://www.chicagoboss.org/api-view.html&#34;&gt;ErlyDTL&lt;/a&gt;, jonka ansiosta HTML-sivujen lomaan ei tarvitse ripotella Erlangia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Welho palautti sananvapauden</title>
      <link>https://kennethfalck.net/2009/10/01/welho-palautti-sananvapauden/</link>
      <pubDate>Thu, 01 Oct 2009 11:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/10/01/welho-palautti-sananvapauden/</guid>
      <description>&lt;p&gt;Welhon &lt;a href=&#34;http://www.welho.fi/yksityisille/tietoawelhosta/tiedotteet/tiedote_20090921&#34;&gt;tiedotteen mukaan&lt;/a&gt; poliisin webbisivujen suodatuslista ei ole enää käytössä automaattisesti kaikille asiakkaille, vaan sen saa käyttöön erillisestä pyynnöstä halutessaan.&lt;/p&gt;&#xA;&lt;p&gt;Esimerkiksi Matti Nikin &lt;a href=&#34;http://lapsiporno.info/&#34;&gt;lapsiporno.info&lt;/a&gt; näkyy taas. Kannattaa muuten lukea Lex Oksanen -blogista &lt;a href=&#34;http://blogit.tietokone.fi/lexoksanen/?p=234&#34;&gt;Päivä, jolloin parodia kuoli?&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Onko Mantis paras bugiseurantajärjestelmä?</title>
      <link>https://kennethfalck.net/2009/09/30/onko-mantis-paras-bugiseurantaj%C3%A4rjestelm%C3%A4/</link>
      <pubDate>Wed, 30 Sep 2009 18:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/30/onko-mantis-paras-bugiseurantaj%C3%A4rjestelm%C3%A4/</guid>
      <description>&lt;p&gt;Olen kokeillut aikojen saatossa erilaisia bugiseurantajärjestelmiä. &lt;a href=&#34;http://www.bugzilla.org/&#34;&gt;Bugzilla&lt;/a&gt; oli jotenkin kovin monimutkainen. &lt;a href=&#34;http://trac.edgewall.org/&#34;&gt;Trac&lt;/a&gt; on hankala ottaa käyttöön, permissiot ovat sekavia ja tuntuma muutenkin epämääräinen. &lt;a href=&#34;http://www.atlassian.com/software/jira/&#34;&gt;JIRA&lt;/a&gt; taas vaatii jonkin ihme open source -sponsorisopimuksen tai muuten se maksaa maltaita.&lt;/p&gt;&#xA;&lt;p&gt;Toimivimmaksi on osoittautunut &lt;a href=&#34;http://www.mantisbt.org/&#34;&gt;Mantis&lt;/a&gt;. Se on helppo asentaa (läjä PHP-skriptejä ja yksi konfiguraatiotiedosto). Ubuntussa riittää apt-get install mantis sekä Apacheen Alias /mantis /usr/share/mantis/www.&lt;/p&gt;&#xA;&lt;p&gt;Olisi tietysti kiva, jos Mantis integroituisi Git-versiohallintaan. Ilmeisesti tämä ominaisuus on tulossa 1.2-versioon pluginina. Kokeilin aiemmin Tracin Git-integraatiota ja se oli aika fail Ubuntussa, kun Python-kirjastot eivät asentuneet kunnolla. Manuaalisesti asentamalla Tracin Git-plugin toimii, mutta sitten kyllästyin Tracin permissioiden kanssa sekoiluun, kun se ei antanut luoda milestoneja webistä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Jinja2 sucks with Django i18n</title>
      <link>https://kennethfalck.net/2009/09/29/jinja2-sucks-with-django-i18n/</link>
      <pubDate>Tue, 29 Sep 2009 18:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/29/jinja2-sucks-with-django-i18n/</guid>
      <description>&lt;p&gt;Until now, &lt;a href=&#34;http://jinja.pocoo.org/2/&#34;&gt;Jinja2&lt;/a&gt; was my favorite template engine over Django 1.1&amp;#39;s default templates. It provides more flexibility and performs much better.&lt;/p&gt;&#xA;&lt;p&gt;However, if the website requires language translation support, Jinja2 sucks. Django has a nice automatic feature to collect all translations for a project by simply running:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;django-admin.py makemessages -a&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Then it&amp;#39;s easy to edit the translation files of each language in locale/(language)/LC_MESSAGES/django.po and finally compile them with one command:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;django-admin.py compilemessages&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;This is very simple and automatic, and everything is centralized in one file per language. But with Jinja2, it doesn&amp;#39;t work any more, because Django&amp;#39;s makemessages doesn&amp;#39;t detect the Jinja2 templates. Apparently it&amp;#39;s caused by Jinja2 choosing to use different template tags for translations than Django does.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Safari 4 vs. Firefox 3.5</title>
      <link>https://kennethfalck.net/2009/09/29/safari-4-vs.-firefox-3.5/</link>
      <pubDate>Tue, 29 Sep 2009 16:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/29/safari-4-vs.-firefox-3.5/</guid>
      <description>&lt;p&gt;Olen käyttänyt useamman viikon Safari 4:ää (pääasiassa Macissa) ja todennut, että kyllä sillä surffaa ja kehittää. Aiemmin käytin pääsiassa Firefoxia vuosien ajan. Safari häviää Firefoxille kolmessa asiassa:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;URL-kentän inkrementaalinen haku on huono. Se etsii oletuksena tekstiä webbiosoitteiden alusta, joka on harvoin se mitä oikeasti kaipaan. Firefoxin &#34;&lt;a href=&#34;http://blog.mozilla.com/blog/2008/04/21/a-little-something-awesome-about-firefox-3/&#34;&gt;awesome bar&lt;/a&gt;&#34; taas etsii tekstiä sekä osoitteista että otsikoista (myös niiden keskeltä), ja ensimmäinen hakutulos on lähes aina juuri se oikea.&lt;/li&gt;&#xA;&lt;li&gt;Tabeja sulkiessa Safari ei muista missä järjestyksessä ne avattiin, vaan hyppää suljetusta tabista seuraavaan vasemmalla. Tämä on todella ärsyttävää, kun on esimerkiksi paljon tabeja auki ja lukee vasemmanpuoleisimmassa Google Readeria. Firefox osaa palata tabin sulkiessa sinne mistä tultiinkin ja käyttö on jouhevaa.&lt;/li&gt;&#xA;&lt;li&gt;Safarin kehitystyökalut ovat toimivia, mutta eivät pärjää Firebugille ja sen plugineille. Erityisesti Firebugin Net panel toimii paremmin ja osaa näyttää kaikki HTTP-pyynnöt headereineen, sisältöineen ja vastauksineen. Ajax-debuggailussa se on ihan oleellista.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Safari kuitenkin voittaa Firefoxin sivujen latautumisen nopeudessa ja yleisessä stabiiliudessa niin selvästi, että sitä käyttää mielellään puutteista huolimatta. Minulla tuppaakin olemaan aina auki molemmat selaimet, ja käyn Firefoxin puolella lähinnä debuggailemassa asioita Firebugilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python-luokkien metaohjelmointia</title>
      <link>https://kennethfalck.net/2009/09/27/python-luokkien-metaohjelmointia/</link>
      <pubDate>Sun, 27 Sep 2009 00:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/27/python-luokkien-metaohjelmointia/</guid>
      <description>&lt;p&gt;Pythonissa luokkia määritellessä on toisinaan tarvetta viitata luokkaan itseensä. Tyypillinen esimerkki on datamalliluokka, joka luo &amp;quot;managerin&amp;quot; huolehtimaan kyseisen mallin varastoimasta datasta:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;class Manager(object):&#xA;    def __init__(self, model):&#xA;        self.model = model&#xA;    def get(self):&#xA;        return self.model()&#xA;&lt;p&gt;class Model(object):&#xA;pass&lt;/p&gt;&#xA;&lt;p&gt;class User(Model):&#xA;objects = Manager(User) # tämä ei toimi näin&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ongelmana tässä siis on, miten välittää uudelle Manager-objektille tieto siitä, mihin malliluokkaan se liittyy. Tämä olisi myös kätevää automatisoida niin, ettei jokainen Modelin perivä luokka joudu manuaalisesti luomaan objects-attribuuttia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Yksinkertaista moniperintää Rubyn ja Pythonin mixineillä</title>
      <link>https://kennethfalck.net/2009/09/23/yksinkertaista-moniperint%C3%A4%C3%A4-rubyn-ja-pythonin-mixineill%C3%A4/</link>
      <pubDate>Wed, 23 Sep 2009 15:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/23/yksinkertaista-moniperint%C3%A4%C3%A4-rubyn-ja-pythonin-mixineill%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://en.wikipedia.org/wiki/Multiple_inheritance#Criticisms&#34;&gt;Moniperintään&lt;/a&gt; liittyy useita ongelmia, joiden vuoksi esimerkiksi Java ja monet muut ohjelmointikielet eivät tue sitä. Javassa käytetään &lt;a href=&#34;http://en.wikipedia.org/wiki/Java_interface&#34;&gt;interfaceja&lt;/a&gt; simuloimaan moniperintää. Interfaceissa ei voi kuitenkaan olla ohjelmakoodia, joten ohjelmoijan pitää itse toteuttaa kaikki interfaceen liittyvät toiminnot omassa luokassaan. Seurauksena on sitä ikävää turhaa bloattia, josta Java-ohjelmat ovat tunnettuja.&lt;/p&gt;&#xA;&lt;h3&gt;Rubyn mixinit&lt;/h3&gt;&#xA;Rubyssa moniperintä on ratkaistu &lt;a href=&#34;http://en.wikipedia.org/wiki/Mixin&#34;&gt;mixineillä&lt;/a&gt;, jotka ovat oikein kaunis ja yksinkertainen tapa lisätä valmiita toimintoja omiin luokkiin. Tämä on kätevää pitkälti sen vuoksi, että kielessä on dynaaminen tyypitys. Mixin on käytännössä valmiita apumetodeita sisältävä moduuli. Nämä apumetodit voi lisätä &#34;lennossa&#34; omaan olioonsa extend-kutsulla:&#xA;&lt;pre&gt;&lt;code&gt;module Sayable&#xA;  def say&#xA;    puts @message&#xA;  end&#xA;end&#xA;&#xA;class Hello&#xA;  def initialize&#xA;    @message = &amp;#39;Hello, World&amp;#39;&#xA;  end&#xA;end&#xA;&#xA;hello = Hello.new&#xA;hello.extend Sayable&#xA;hello.say&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Jos apumetodit haluaa lisätä pysyvästi mukaan omaan luokkaansa, sen voi tehdä luokkamäärittelyssä include-kutsulla:&lt;/p&gt;</description>
    </item>
    <item>
      <title>NoSQL-transaktioita kahdenkertaisella kirjanpidolla</title>
      <link>https://kennethfalck.net/2009/09/20/nosql-transaktioita-kahdenkertaisella-kirjanpidolla/</link>
      <pubDate>Sun, 20 Sep 2009 04:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/20/nosql-transaktioita-kahdenkertaisella-kirjanpidolla/</guid>
      <description>&lt;p&gt;Osui silmiin &lt;a href=&#34;http://stackoverflow.com/questions/299723/can-i-do-transactions-and-locks-in-couchdb&#34;&gt;tämä keskustelu&lt;/a&gt; transaktioiden toteuttamisesta NoSQL-tietokannoissa. Eräs ehdotettu ratkaisumalli on kahdenkertainen kirjanpito, jossa pidetään yllä saldotiedon lisäksi joukkoa avoimia &amp;quot;velkakirjoja&amp;quot;.&lt;/p&gt;&#xA;&lt;p&gt;Ratkaistava ongelmahan on, että jos henkilöllä A on tilillään vaikkapa 100 euroa, niin miten hallitaan tilanne, jossa hän tekee yhtäaikaa kaksi tilisiirtoa henkilöille B ja C. Suoritettavat tarkistukset ja operaatiot ovat seuraavanlaiset:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;A &amp;gt;= 100 (tarkistetaan, että saldo riittää)&lt;/li&gt;&#xA;&lt;li&gt;B += 100 (siirretään B:lle 100 EUR)&lt;/li&gt;&#xA;&lt;li&gt;A -= 100 (vähennetään A:n saldosta 100 EUR)&lt;/li&gt;&#xA;&lt;li&gt;A &amp;gt;= 100 (tässä kohtaa käsittely keskeytyy koska katetta ei enää ole)&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Jos operaatiot sattuvat tapahtumaan vähän eri järjestyksessä, lopputulos on erilainen:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal-navigointimoduuli: Taxonomy footer</title>
      <link>https://kennethfalck.net/2009/09/19/drupal-navigointimoduuli-taxonomy-footer/</link>
      <pubDate>Sat, 19 Sep 2009 16:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/19/drupal-navigointimoduuli-taxonomy-footer/</guid>
      <description>&lt;p&gt;Tuli pitkästä aikaa koodattua hiukan Drupalilla. Tein tänne omalle saitilleni yksinkertaisen navigointi-footerin, joka näyttää artikkelien kategoriat. Siitä tuli ihan irrallinen moduuli, joten pistän tähän jakoon, public domain. Tästä on varmasti enemmän iloa esimerkkikoodina kuin varsinaisena tuotantomoduulina. :-)&lt;/p&gt;&#xA;&lt;p&gt;Moduuli tuottaa blokin, jossa on kaksiulotteinen taulurakenne. Taulun thead-osuudessa ovat päätason kategoriat ja tbody-osuudessa niiden alakategoriat. Monimutkaisemmat hierarkiat vaativat tuon rakenteen miettimistä vähän eri lailla, mutta omiin tarpeisiini se täsmää. Omassa teemassani olen sijoittanut blokin erilliseen fatfooter-diviin ja tyylittänyt sen sitten CSS:llä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Datastoren emulointia MongoDB:llä</title>
      <link>https://kennethfalck.net/2009/09/16/google-datastoren-emulointia-mongodbll%C3%A4/</link>
      <pubDate>Wed, 16 Sep 2009 18:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/16/google-datastoren-emulointia-mongodbll%C3%A4/</guid>
      <description>&lt;p&gt;Viime päivinä olen kokeillut &lt;a href=&#34;http://www.mongodb.org/&#34;&gt;MongoDB&lt;/a&gt;-tietokantaa. Mongo on kunnianhimoinen projekti, joka pyrkii tekemään NoSQL-tiedonkäsittelystä yhtä joustavaa kuin relaatiokannoista. Sen tietomalli pohjautuu vapaamuotoisiin JSON-rakenteisiin, joita voi indeksoida ja joihin voi kohdistaa monimutkaisiakin hakuja.&lt;/p&gt;&#xA;&lt;p&gt;Kokeiluprojektissani olen implementoinut &lt;a href=&#34;http://code.google.com/appengine/docs/python/datastore/&#34;&gt;Google Datastore API:n&lt;/a&gt; kanssa yhteensopivaa model-rajapintaa MongoDB:n päälle. Tämän tarkoituksena on se, että Django-sovellus voisi käyttää samoja tietokantamalleja sekä Google App Enginessä että paikallisesti MongoDB:n kanssa.&lt;/p&gt;&#xA;&lt;p&gt;Projekti on ollut yllättävän helppo, sillä MongoDB:n kyselyrajapinta on yksinkertainen mutta hyvin joustava. Google Datastoressa tyypillinen kysely saattaisi näyttää tältä:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Valinnan paikka: Python &amp; Django vs. Ruby on Rails</title>
      <link>https://kennethfalck.net/2009/09/15/valinnan-paikka-python-django-vs.-ruby-on-rails/</link>
      <pubDate>Tue, 15 Sep 2009 13:41:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/15/valinnan-paikka-python-django-vs.-ruby-on-rails/</guid>
      <description>&lt;p&gt;Olen käyttänyt viime aikoina paljon energiaa sen pohtimiseen, kumpi on parempi alusta kehittää web-sovelluksia: Python-pohjainen Django vai Ruby on Rails.&lt;/p&gt;&#xA;&lt;h4&gt;Ruby on Rails&lt;/h4&gt;&#xA;Kypsä ja elegantti, mutta kärsii suorituskyvyn rajallisuudesta. Ruby on Railsilla on vaivatonta tehdä siistejä sovelluksia, joissa kaikilla komponenteilla on vakioitu paikkansa. Toisen kehittäjän tai alihankkijan on helppo omaksua projektin rakenne. Rubyssä jopa koodin sisennys on vakioitu aina 2 spaceen.&#xA;&lt;h4&gt;Python &amp; Django&lt;/h4&gt;&#xA;&#34;Hakkerihenkinen&#34;, helposti muokattava, erittäin suorituskykyinen. Ongelmana jokaisen projektin erilaisuus, kun sovellusten komponentteja toteutetaan eri tavoilla ja sijoitellaan sinne tänne. Ei esimerkiksi vakioitua paikkaa layout-tason templateille, omille apukirjastoille, cronjob-skripteille ja vastaaville osioille. Yrityksen pitää itse määritellä policyt näille.&#xA;&lt;h4&gt;Kumpi tärkeämpää, eleganttius vai suorituskyky?&lt;/h4&gt;&#xA;Tähän se valinta kilpistyy. Pythonilla on isoja valtteja reaalimaailmassa, kuten esimerkiksi Googlen &lt;a href=&#34;http://en.wikipedia.org/wiki/Google_App_Engine&#34;&gt;App Engine&lt;/a&gt; -tuki sekä hiljattain ilmestynyt FriendFeedin/Facebookin &lt;a href=&#34;http://www.tornadoweb.org/&#34;&gt;Tornado&lt;/a&gt;-webbipalvelin. Ruby on Rails puolestaan tuntuu olevan vähän pienempien pelurien alusta, mutta toisaalta kuitenkin Twitter käyttää sitä.&#xA;&lt;p&gt;Kumman sinä valitsisit?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Cassandran tietomallia opiskelemassa</title>
      <link>https://kennethfalck.net/2009/09/13/cassandran-tietomallia-opiskelemassa/</link>
      <pubDate>Sun, 13 Sep 2009 17:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/13/cassandran-tietomallia-opiskelemassa/</guid>
      <description>&lt;p&gt;Kokeilin tänä viikonloppuna eräässä harrasteprojektissa &lt;a href=&#34;http://incubator.apache.org/cassandra/&#34;&gt;Cassandraa&lt;/a&gt;. Cassandra on Facebookin kehittämä skaalautuva NoSQL-tietokanta. Se perustuu melko yksinkertaiseen key-value-tietomalliin, joka on kuitenkin hiukan hankalampi hahmottaa kuin esimerkiksi CouchDB:n dokumenttimalli.&lt;/p&gt;&#xA;&lt;h3&gt;Rivit ja avaimet&lt;/h3&gt;&#xA;&lt;p&gt;Cassandrassa jokaisella tallennetulla rivillä on avain. Tavallisesti avain on joko UUID (&amp;#39;e8b57734-86c9-48f5-bbf7-fe95085f90e11&amp;#39;) tai sitten jokin muu yksilöivä merkkijono, kuten käyttäjätunnus tai sähköpostiosoite. Kun tietokantapalvelimia on useita, Cassandra hajauttaa rivit eri palvelimille tämän avaimen mukaan.&lt;/p&gt;&#xA;&lt;p&gt;Riviavaimilla voi tehdä ainoastaan suoria hakuja noutaakseen yhden tietyn rivin tietokannasta. Cassandran Thrift-APIssa tämä on &lt;strong&gt;get&lt;/strong&gt;-haku. Alempana näkyvästä esimerkkikannasta voisi etsiä minun käyttäjätietoni haulla &lt;strong&gt;get(&amp;quot;Users&amp;quot;, &amp;quot;e8b57734-86c9-48f5-bbf7-fe95085f90e1&amp;quot;)&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Suorituskykyvertailua: Ruby on Rails vs. Tornado</title>
      <link>https://kennethfalck.net/2009/09/12/suorituskykyvertailua-ruby-on-rails-vs.-tornado/</link>
      <pubDate>Sat, 12 Sep 2009 15:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/12/suorituskykyvertailua-ruby-on-rails-vs.-tornado/</guid>
      <description>&lt;p&gt;Tämä on ehkä hieman epäortodoksinen vertailu, mutta mittailin huvikseni Facebookin hiljattain julkaiseman &lt;a href=&#34;http://www.tornadoweb.org/&#34;&gt;Tornado 0.1:n&lt;/a&gt; sekä myöskin uusimman &lt;a href=&#34;http://rubyonrails.org/&#34;&gt;Ruby on Rails 2.3.4:n&lt;/a&gt; suorituskykyä.&lt;/p&gt;&#xA;&lt;table&gt;&#xA;&lt;thead&gt;&#xA;&lt;tr&gt;&#xA;  &lt;td style=&#34;font-weight:bold&#34;&gt;Framework&lt;/td&gt;&#xA;  &lt;td style=&#34;font-weight:bold&#34;&gt;Language&lt;/td&gt;&#xA;  &lt;td style=&#34;font-weight:bold&#34;&gt;Server&lt;/td&gt;&#xA;  &lt;td style=&#34;font-weight:bold&#34; align=&#34;right&#34;&gt;Request/s&lt;/td&gt;&#xA;&lt;/tr&gt;&#xA;&lt;/thead&gt;&#xA;&lt;tbody&gt;&#xA;&lt;tr&gt;&#xA;  &lt;td&gt;Tornado 0.1 (git)&lt;/td&gt;&#xA;  &lt;td&gt;Python 2.6.2&lt;/td&gt;&#xA;  &lt;td&gt;Nginx 0.6.35&lt;/td&gt;&#xA;  &lt;td align=&#34;right&#34;&gt;1961.11&lt;/td&gt;&#xA;&lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;  &lt;td&gt;Ruby on Rails 2.3.4&lt;/td&gt;&#xA;  &lt;td&gt;Ruby 1.9.1&lt;/td&gt;&#xA;  &lt;td&gt;Apache 2.2.11/Passenger 2.2.5&lt;/td&gt;&#xA;  &lt;td align=&#34;right&#34;&gt;421.94&lt;/td&gt;&#xA;&lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;  &lt;td&gt;Ruby on Rails 2.3.4&lt;/td&gt;&#xA;  &lt;td&gt;Ruby 1.9.1&lt;/td&gt;&#xA;  &lt;td&gt;Nginx 0.7.61/Passenger 2.2.5&lt;/td&gt;&#xA;  &lt;td align=&#34;right&#34;&gt;470.47&lt;/td&gt;&#xA;&lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;  &lt;td&gt;Plain HTML serving&lt;/td&gt;&#xA;  &lt;td&gt;(none)&lt;/td&gt;&#xA;  &lt;td&gt;Nginx 0.7.61&lt;/td&gt;&#xA;  &lt;td align=&#34;right&#34;&gt;6317.71&lt;/td&gt;&#xA;&lt;/tr&gt;&#xA;&lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;Mittaukset on tehty samalla koneella kuin &lt;a href=&#34;http://kfalck.net/2009/07/13/web-framework-bootstrap-performance-comparison&#34;&gt;tämä aiempi vertailu&lt;/a&gt;, mutta käyttiksenä oli nyt Ubuntu 9.04. Testiohjelmana &amp;quot;ab -n 100000 -c 25&amp;quot;. Testattu sovellus oli yksinkertainen &amp;quot;hello world&amp;quot;, eli tässä mitattiin lähinnä kattorajaa frameworkien suorituskyvyille. Mukana myös vertailun vuoksi staattisen HTML:n jakelu Nginxillä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>BitTorrent trackers powered by Google</title>
      <link>https://kennethfalck.net/2009/09/11/bittorrent-trackers-powered-by-google/</link>
      <pubDate>Fri, 11 Sep 2009 14:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/11/bittorrent-trackers-powered-by-google/</guid>
      <description>&lt;p&gt;Tämä on hauska idea, jota olen itsekin pohtinut viime aikoina: &lt;a href=&#34;http://torrentfreak.com/run-a-free-bittorrent-tracker-on-google-090910/&#34;&gt;Google App Enginen päällä pyörivä BitTorrent-tracker&lt;/a&gt;. Tarkoitusta varten on julkaistu valmis softa nimeltä &lt;a href=&#34;http://freshmeat.net/projects/atrack#release_305062&#34;&gt;atrack&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Olisin varmaan kokeillutkin tätä, ellen olisi vähän huolissani, että mitä Google on mieltä tällaisista sovelluksista. BitTorrent-palveluiden tarjoamisessa ei pitäisi sinänsä olla mitään laitonta, mutta viime aikoina on kuitenkin tuomittu monia tahoja, sammuteltu verkkoyhteyksiä ja aiheutettu ties mitä ongelmia heille.&lt;/p&gt;&#xA;&lt;p&gt;App Enginen lisäksi toinen kiintoisa alusta voisi olla Amazon EC2 samaan tarkoitukseen. Mitäpä sitä turhaan ostamaan omia laitesaleja ja räkeittäin servereitä, kun koko Pirate Bay -konseptin voisi virtualisoida pilveen ja rahoittaa kustannukset mainoksilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Growl 1.2 beta 2 Snow Leopardiin</title>
      <link>https://kennethfalck.net/2009/09/11/growl-1.2-beta-2-snow-leopardiin/</link>
      <pubDate>Fri, 11 Sep 2009 02:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/11/growl-1.2-beta-2-snow-leopardiin/</guid>
      <description>&lt;p&gt;Kiusaako Growlin puute Snow Leopardissa? Siitä on jo saatavilla 64-bittinen &lt;a href=&#34;http://growl.info/beta.html&#34;&gt;beta2-versio&lt;/a&gt;, joka näyttäisi toimivan ihan hyvin.&lt;/p&gt;&#xA;&lt;p&gt;Mukana tulevat GrowlMail- ja GrowlSafari-pluginit eivät vielä toimi ihan kunnolla, mutta varsinainen Growl futaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Safari: AdBlock and keyword search with Privoxy</title>
      <link>https://kennethfalck.net/2009/09/11/safari-adblock-and-keyword-search-with-privoxy/</link>
      <pubDate>Fri, 11 Sep 2009 00:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/11/safari-adblock-and-keyword-search-with-privoxy/</guid>
      <description>&lt;p&gt;After switching from Firefox to Safari 4 on Snow Leopard, the two features I miss the most are ad blocking and keyword searches. Luckily both can be added with &lt;a href=&#34;http://www.privoxy.org/&#34;&gt;Privoxy&lt;/a&gt;, which acts as a local HTTP proxy and filters Safari&amp;#39;s requests.&lt;/p&gt;&#xA;&lt;p&gt;The easiest way to install Privoxy is with &lt;a href=&#34;http://www.macports.org/&#34;&gt;MacPorts&lt;/a&gt;. Once it&amp;#39;s running, Safari needs to be configured to use Web Proxy Server 127.0.0.1 : 8118. Most ads should then be blocked automatically.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Windows Vista / 7 Remote BSOD</title>
      <link>https://kennethfalck.net/2009/09/09/windows-vista-/-7-remote-bsod/</link>
      <pubDate>Wed, 09 Sep 2009 23:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/09/windows-vista-/-7-remote-bsod/</guid>
      <description>&lt;p&gt;Tiedossa pitkästä aikaa hupia ja viihdettä koko perheelle nyt vain yhdellä SMB-paketilla:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://seclists.org/fulldisclosure/2009/Sep/0039.html&#34;&gt;http://seclists.org/fulldisclosure/2009/Sep/0039.html&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Sopii mainiosti ohjelmanumeroksi esimerkiksi julkisiin WLAN-verkkoihin ja LAN-partyihin..&lt;/p&gt;</description>
    </item>
    <item>
      <title>Snow Leopard: Creator lähti, UTI jäi</title>
      <link>https://kennethfalck.net/2009/09/08/snow-leopard-creator-l%C3%A4hti-uti-j%C3%A4i/</link>
      <pubDate>Tue, 08 Sep 2009 22:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/08/snow-leopard-creator-l%C3%A4hti-uti-j%C3%A4i/</guid>
      <description>&lt;p&gt;Lueskelin Slashdotista &lt;a href=&#34;http://apple.slashdot.org/story/09/09/08/1519215/Snow-Leopard-Snubs-Document-Creator-Codes?from=rss&#34;&gt;Applen luopuneen creator-koodeista&lt;/a&gt;. Tämä on varmaan pitkän linjan macisteille kaihoisaa, kun dokumentteihin ei enää liity perinteisiä &amp;quot;TEXT&amp;quot;- ja &amp;quot;MooV&amp;quot;-koodeja.&lt;/p&gt;&#xA;&lt;p&gt;Toisaalta Mac OS X ei kuitenkaan toimi pelkästään tiedostopäätteiden varassa. Se käyttää &lt;a href=&#34;http://developer.apple.com/macosx/uniformtypeidentifiers.html&#34;&gt;Uniform Type Identifier&lt;/a&gt; -tunnisteita (UTI) dokumenttien assosioimiseen oikeisiin sovelluksiin. Itse en ollut aiemmin tietoinen koko UTI-järjestelmästä, joten otin hieman selvää.&lt;/p&gt;&#xA;&lt;p&gt;Applen &lt;a href=&#34;http://developer.apple.com/mac/library/documentation/Carbon/Conceptual/understanding_utis/understand_utis_conc/understand_utis_conc.html#//apple_ref/doc/uid/TP40001319-CH202-CHDHIJDE&#34;&gt;dokumentaatio&lt;/a&gt; selittää logiikan. Esimerkiksi UTI-tyyppiä &lt;em&gt;public.mpeg&lt;/em&gt; tukeva sovellus pystyy avaamaan sekä &lt;em&gt;.mpg&lt;/em&gt;- että &lt;em&gt;.mpeg&lt;/em&gt;-päätteiset tiedostot. Käyttöjärjestelmä ei erottele sen tarkemmin kumpaa päätettä jokin tiedosto on. Samaan UTIin mäppäytyvät myös MIME-tyypit &lt;em&gt;video/mpeg&lt;/em&gt;, &lt;em&gt;video/mpg&lt;/em&gt;, &lt;em&gt;video/x-mpeg&lt;/em&gt; ja &lt;em&gt;video/x-mpg&lt;/em&gt;, joten netistä ladatut tiedostotkin aukeavat aina oikealla sovelluksella.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google AdSense for feeds</title>
      <link>https://kennethfalck.net/2009/09/08/google-adsense-for-feeds/</link>
      <pubDate>Tue, 08 Sep 2009 22:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/08/google-adsense-for-feeds/</guid>
      <description>&lt;p&gt;Huomasin, että FeedBurnerin kautta kierrätettäviin RSS-feedeihin on helppo lisätä Googlen AdSense-mainoksia muutamalla klikkauksella. Kokeilen sitä omassakin feedissäni. Jos sinne tulee jotain tosi ärsyttävää, niin AdBlock purree. Itse tosin olen sitä mieltä, että tähän blogiin usein mätchää AdSensen kautta ihan kiinnostavia mainoksia esimerkiksi avoimista työpaikoista, joten ei kannata välttämättä blokata :-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Remote Desktopin aktivointi Windows 7:ssä</title>
      <link>https://kennethfalck.net/2009/09/07/remote-desktopin-aktivointi-windows-7ss%C3%A4/</link>
      <pubDate>Mon, 07 Sep 2009 17:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/07/remote-desktopin-aktivointi-windows-7ss%C3%A4/</guid>
      <description>&lt;p&gt;Vihdoin keksin miten Remote Desktop -pääsy sallitaan Windows 7:ssä. Control Panelia selailemalla löytyvät ensin &lt;em&gt;Windows Firewall&lt;/em&gt; -asetukset, joiden alta sen voi sallia &lt;em&gt;Allow a program or feature through Windows Firewall&lt;/em&gt; -kohdan alta klikkaamalla &lt;em&gt;Remote Desktop&lt;/em&gt; päälle, mutta eihän se tietenkään riitä. Tämän lisäksi pitää mennä &lt;em&gt;System&lt;/em&gt;-asetuksiin, valita &lt;em&gt;Remote Settings&lt;/em&gt;, ja sen alta &lt;em&gt;Allow connections from any version of Remote Desktop (less secure)&lt;/em&gt; sekä tietysti vielä &lt;em&gt;Apply&lt;/em&gt; tai &lt;em&gt;OK&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Olen varmaan käyttänyt liikaa Maccia, kun tällainen Windowsin ajattelutapa ei tahdo enää tulla luonnostaan... (Macissa mennään System Preferenceistä &lt;em&gt;Sharing&lt;/em&gt;-kohtaan ja näpäytetään &lt;em&gt;Screen Sharing&lt;/em&gt; -rasti päälle :-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Snow Leopard 64-bit vs. 32-bit applications</title>
      <link>https://kennethfalck.net/2009/09/06/snow-leopard-64-bit-vs.-32-bit-applications/</link>
      <pubDate>Sun, 06 Sep 2009 02:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/06/snow-leopard-64-bit-vs.-32-bit-applications/</guid>
      <description>&lt;p&gt;After installing Snow Leopard and a few extra applications that I use daily, here is the breakdown of 64-bit vs. 32-bit applications.&lt;/p&gt;&#xA;&lt;p&gt;Sadly, none of the third party applications are 64-bit yet. Luckily, Xcode 3.2 (included on the Snow Leopard install DVD) now defaults to generating universal binaries with the x86_64, i386 and ppc architectures enabled for Release builds, so we should be seeing a lot of third party 64-bit apps soon.&lt;/p&gt;</description>
    </item>
    <item>
      <title>HTML/CSS: Kuvien upottaminen lähdekoodiin base64-muodossa</title>
      <link>https://kennethfalck.net/2009/09/05/html/css-kuvien-upottaminen-l%C3%A4hdekoodiin-base64-muodossa/</link>
      <pubDate>Sat, 05 Sep 2009 23:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/05/html/css-kuvien-upottaminen-l%C3%A4hdekoodiin-base64-muodossa/</guid>
      <description>&lt;p&gt;Osui ensimmäistä kertaa silmiin tällainen &lt;a href=&#34;http://www.greywyvern.com/code/php/binary2base64&#34;&gt;tekniikka&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;background-image:url(data:image/png;base64,iVBOR...);&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Eli kuvan voi voi upottaa suoraan osaksi URL-osoitetta käyttämällä data-protokollaa. Toimii sekä CSS:ssä että HTML:ssä.&lt;/p&gt;&#xA;&lt;p&gt;Onkohan kellään kokemuksia tämän toimivuudesta käytännössä eri selaimissa? Tietyissä tilanteessa tällä voi vähentää paljon pienten kuvien turhaa noutamista erillisinä HTTP-pyyntöinä. Esim. &lt;a href=&#34;http://news.google.com/&#34;&gt;Google News&lt;/a&gt; käyttää tätä uutisten thumbnaileissa.&lt;/p&gt;&#xA;&lt;p&gt;Tämä on ehkä jossain määrin vaihtoehto &lt;a href=&#34;http://www.alistapart.com/articles/sprites&#34;&gt;sprite-imageille&lt;/a&gt;, joskin vaikea hyödyntää, mikäli samaa kuvaa pitäisi käyttää useassa paikassa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Snow Leopard puhtaalta pöydältä</title>
      <link>https://kennethfalck.net/2009/09/03/snow-leopard-puhtaalta-p%C3%B6yd%C3%A4lt%C3%A4/</link>
      <pubDate>Thu, 03 Sep 2009 18:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/09/03/snow-leopard-puhtaalta-p%C3%B6yd%C3%A4lt%C3%A4/</guid>
      <description>&lt;p&gt;Posti toi eilen Snow Leopard -DVD:n ja päätin piruuttaan kokeilla, miten hyvin aiemman Leopardin päälle päivittäminen toimisi. Eihän se hyvin mennyt. Lopputulos oli epämääräinen sekoitus uutta käyttistä ja kaikenlaisia vanhoja sovelluksia, asetuksia ja ajureita. MacBookini mm. päätyi kerran sleep-tilaan, josta se ei enää herännyt. Microsoftin Office 2008 auto-update veti sen myös jumiin.&lt;/p&gt;&#xA;&lt;p&gt;Tämä on tietysti aivan normaalia. Kaikki power-userit tietävät, että sen enempää Windowsia kuin Maccia ei kannata päivittää vaan asentaa aina puhtaalta pöydältä. Linux (ainakin Ubuntu) on ainoa käyttöjärjestelmä, joka osaa oikeasti päivittyä uusiin releaseihin ongelmitta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal 7 kärsii versiohallintaongelmista</title>
      <link>https://kennethfalck.net/2009/08/31/drupal-7-k%C3%A4rsii-versiohallintaongelmista/</link>
      <pubDate>Mon, 31 Aug 2009 05:01:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/31/drupal-7-k%C3%A4rsii-versiohallintaongelmista/</guid>
      <description>&lt;p&gt;Drupal-kehittäjä Daniel F. Kudwien kirjoittaa &lt;a href=&#34;http://www.unleashedmind.com/en/blog/sun/drupal-7-not-ready-yet&#34;&gt;Drupal 7:n tilanteesta&lt;/a&gt;. Mielenkiintoisesti Drupal-projektin käyttämä CVS,  joka alkaa olla versiohallinnassa melkoinen muinaisjäänne, on osoittautunut pullonkaulaksi projektin hallinnassa. CVS:llä on ilmeisesti niin vaikea hallita mergejä branchien välillä, että Drupalista ei saada tehtyä rinnakkaista &amp;quot;feature freeze&amp;quot; -versiota, vaan uusien ominaisuuksien kehitys pitää pysäyttää kokonaan.&lt;/p&gt;&#xA;&lt;p&gt;Drupal 7 code freezestä on puhuttu jo aika pitkään, mutta taitaa olla vaikeaa saada innostuneet kehittäjät pysäyttämään kehitys ja keskittymään bugien korjaamiseen. Esimerkiksi Gitiin siirtyminen voisi auttaa Drupal-projektia tekemään molempia yhtäaikaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Scrum-höpöhöpöä?</title>
      <link>https://kennethfalck.net/2009/08/29/scrum-h%C3%B6p%C3%B6h%C3%B6p%C3%B6%C3%A4/</link>
      <pubDate>Sat, 29 Aug 2009 18:23:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/29/scrum-h%C3%B6p%C3%B6h%C3%B6p%C3%B6%C3%A4/</guid>
      <description>&lt;p&gt;Slashdotiin ilmestyi &lt;a href=&#34;http://ask.slashdot.org/story/09/08/29/0228215/Highly-Paid-Developers-As-ScrumMasters?from=rss&#34;&gt;mielenkiintoinen artikkeli&lt;/a&gt; Scrum-metodologiasta. Tai oikeastaan mielenkiintoisia ovat kommentit, joiden viesti on pääasiassa &amp;quot;unohda se typerä kikkailu metodologioilla ja rupea koodaamaan, niin saat jotain aikaiseksikin!&amp;quot; :-D&lt;/p&gt;&#xA;&lt;p&gt;Kommenteista heijastuu myös kritiikkiä esimerkiksi pariohjelmointia kohtaan, jota sanotaan todella hitaaksi verrattuna kokeneiden ohjelmoijien itsenäiseen työskentelyyn.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Snow Leopardin uusista lowlevel-ominaisuuksista</title>
      <link>https://kennethfalck.net/2009/08/28/snow-leopardin-uusista-lowlevel-ominaisuuksista/</link>
      <pubDate>Fri, 28 Aug 2009 23:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/28/snow-leopardin-uusista-lowlevel-ominaisuuksista/</guid>
      <description>&lt;p&gt;Applelta on ilmestynyt artikkeli, joka listaa &lt;a href=&#34;http://developer.apple.com/mac/library/releasenotes/MacOSX/WhatsNewInOSX/Articles/MacOSX10_6.html#//apple_ref/doc/uid/TP40008898-SW1&#34;&gt;Snow Leopardin uusia ominaisuuksia&lt;/a&gt; kehittäjän näkökulmasta. Nostan tähän suomeksi esiin muutaman kiinnostavimman:&lt;/p&gt;&#xA;&lt;dl&gt;&#xA;&lt;dt&gt;&lt;strong&gt;Grand Central&lt;/strong&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;Tarjoaa sovelluksille helpon mekanismin multicore-prosessorien hyödyntämiseen. Sovelluksen lähdekoodiin merkitään alueita, joita saa ajaa rinnakkain, ja GCD käynnistelee niitä sitten eri coreihin samaan aikaan.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;strong&gt;NSCache/libcache&lt;/strong&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;Antaa sovelluksen varata omia välimuistejaan siten, että käyttöjärjestelmä voi vapauttaa niitä, mikäli muistia tarvitaan &#34;oikeaan&#34; käyttöön.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;strong&gt;64-bit kernel&lt;/strong&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;64-bittisyys mahdollistaa tietysti suuremman muistin käytön, mutta nyt kaikkea ylimääräistä voidaan hyödyntää myös levyvälimuistina. Lisäksi kun käytössä on useita näytönohjaimia, niiden näyttömuistia voidaan hyödyntää yhtaikaa (vaikka se ylittäisi 1.5GB).&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;strong&gt;OpenCL&lt;/strong&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;OpenCL:llä voi tehdä pieniä ohjelmia (kerneleitä), joita ajetaan näytönohjainten huipputehokkaissa GPU-prosessoreissa. Sovellus voi kirjoittaa näytönohjaimen videomuistiin dataa, jota kernel sitten käsittelee GPU:ssa ja palauttaa tulokset niinikään videomuistin kautta. &lt;a href=&#34;http://developer.apple.com/mac/library/documentation/Performance/Conceptual/OpenCL_MacProgGuide/Example:Hello,World/Example:Hello,World.html&#34;&gt;Hello-esimerkki&lt;/a&gt; näyttää mallia.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;strong&gt;Sudden Termination&lt;/strong&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;Tämä on mielenkiintoinen optimointi, joka nopeuttaa sellaisten sovellusten sulkeutumista, joiden ei tarvitse tallennella mitään lopuksi. Ne tapetaan välittömästi SIGKILL-signaalilla käyttöjärjestelmän sammuessa. Kaipaisikohan Windows jotain vastaavaa? :D&lt;/dd&gt;&#xA;&lt;/dl&gt;&#xA;&lt;p&gt;Itse odottelen vielä omaa Snow Leopardiani, jonka pitäisi saapua ensi viikolla..&lt;/p&gt;</description>
    </item>
    <item>
      <title>Subversionista Gitiin: Näin hoidetaan branchit fiksusti</title>
      <link>https://kennethfalck.net/2009/08/25/subversionista-gitiin-n%C3%A4in-hoidetaan-branchit-fiksusti/</link>
      <pubDate>Tue, 25 Aug 2009 16:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/25/subversionista-gitiin-n%C3%A4in-hoidetaan-branchit-fiksusti/</guid>
      <description>&lt;p&gt;Subversion on vakiintunut meillä töissä web-projektien versiohallintatyökaluksi. Se on kuitenkin tuskallisen hankala, jos on tarvetta hallita brancheja ja yhdistellä niiden välillä muutoksia. Edes Subversion 1.5:n &lt;a href=&#34;http://subversion.tigris.org/merge-tracking/&#34;&gt;merge tracking&lt;/a&gt; ei tunnu parantavan tilannetta ratkaisevasti, vaan edelleen merget menevät kovin helposti sekaisin ja branchien yhteyteen tallentuu ikävää metadataa, joka voi mennä rikki.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://git-scm.com/&#34;&gt;Git&lt;/a&gt; taas hoitaa branchit paljon paremmin. Siinä missä Subversion käsittelee brancheja tavallisina hakemistoina, joille on vain annettu erityinen merkitys, Git ymmärtää sisäisesti mitä branch oikeasti tarkoittaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miksi 64 bittiä voi olla hitaampi kuin 32</title>
      <link>https://kennethfalck.net/2009/08/24/miksi-64-bitti%C3%A4-voi-olla-hitaampi-kuin-32/</link>
      <pubDate>Mon, 24 Aug 2009 01:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/24/miksi-64-bitti%C3%A4-voi-olla-hitaampi-kuin-32/</guid>
      <description>&lt;p&gt;Tämä &lt;a href=&#34;http://blogs.adobe.com/jnack/2009/08/a_64-bit_reality_check.html&#34;&gt;Adoben blogiartikkeli&lt;/a&gt; kertoo hyvin, miksi 64-bittinen koodi ei ole mitenkään automaattisesti tehokkaampaa kuin 32-bittinen. 64-bittiset opcodet, pointterit ja rekisteripinot täyttävät prosessorin sisäisen cachen paljon nopeammin, joten 64-bittisen koodin suoritus voi olla hitaampaa kuin 32-bittisen. Pääasiallinen etu saadaan vain silloin, kun yksittäinen sovellus tarvitsee yli 4GB muistia.&lt;/p&gt;&#xA;&lt;p&gt;Toinen tekniikkaa tuntematonta väkeä hämmentävä seikka on se, että 64-bittiset kernelit tarvitsevat 64-bittiset laiteajurit. Monessa blogissa &lt;a href=&#34;http://gizmodo.com/5343443/snow-leopard-currently-restricts-64+bit-booting-to-newer-macs&#34;&gt;on ihmetelty&lt;/a&gt;, miksi Mac OS X Snow Leopard käynnistyy oletuksena 32-bittisellä kernelillä, vaikka siinä olisi 64-bittinenkin. Syy on yksinkertaisesti se, että lukemattomilla ihmisillä on käytössään vanhoja oheislaitteita, joille on saatavilla ainoastaan 32-bittiset ajurit, eivätkä nämä laitteet toimisi 64-bittisessä kernelissä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>64-bittistä keskeytysten ohjelmointia</title>
      <link>https://kennethfalck.net/2009/08/23/64-bittist%C3%A4-keskeytysten-ohjelmointia/</link>
      <pubDate>Sun, 23 Aug 2009 23:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/23/64-bittist%C3%A4-keskeytysten-ohjelmointia/</guid>
      <description>&lt;p&gt;Olen kirjoitellut viime aikoina paljon x86-64-arkkitehtuurin ohjelmoinnista Long Modessa eli täydessä 64-bittisessä moodissa. Kokeiluissani pysäytin aina keskeytykset ohjelman alussa (CLI).&lt;/p&gt;&#xA;&lt;p&gt;Keskeytyksiä kuitenkin tarvitaan heti, kun halutaan esimerkiksi lukea näppäimistöä tai ajastaa toimintoja. &lt;a href=&#34;http://www.ctyme.com/intr/rb-0043.htm&#34;&gt;IRQ0&lt;/a&gt; (System Timer / INT 0x08) on yksinkertainen kello, joka laukeaa 18.2 kertaa sekunnissa. &lt;a href=&#34;http://www.ctyme.com/intr/rb-0045.htm&#34;&gt;IRQ1&lt;/a&gt; (Keyboard / INT 0x09) puolestaan laukaistaan aina käyttäjän painaessa jotain näppäintä.&lt;/p&gt;&#xA;&lt;p&gt;Jos IRQ:t (Interrupt ReQuest) eivät ole tuttuja, niin ne ovat &lt;a href=&#34;http://en.wikipedia.org/wiki/Intel_8259&#34;&gt;8259 PIC -kontrollerin&lt;/a&gt; generoimia laitteistokeskeytyksiä. IRQ:t 0-7 laukaisevat keskeytykset 0x08-0x0f ja IRQ:t 8-15 taas keskeytykset 0x70-0x77. Näiden lisäksi prosessori käyttää sisäisesti keskeytyksiä 0x00-0x1f. Kaikki muut keskeytykset ovat ohjelmoijan vapaasti käytettävissä ja kutsuttavissa INT-komennolla. Esimerkiksi Linuxin system callit käyttävät keskeytystä INT 0x80.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin teet oman käyttöjärjestelmän (osa 3)</title>
      <link>https://kennethfalck.net/2009/08/21/n%C3%A4in-teet-oman-k%C3%A4ytt%C3%B6j%C3%A4rjestelm%C3%A4n-osa-3/</link>
      <pubDate>Fri, 21 Aug 2009 03:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/21/n%C3%A4in-teet-oman-k%C3%A4ytt%C3%B6j%C3%A4rjestelm%C3%A4n-osa-3/</guid>
      <description>&lt;p&gt;Kirjoitin aiemmin &lt;a href=&#34;http://kfalck.net/2009/08/19/nain-teet-oman-kayttojarjestelman-osa-1&#34;&gt;osassa 1&lt;/a&gt; MBR-bootloaderista ja &lt;a href=&#34;http://kfalck.net/2009/08/20/nain-teet-oman-kayttojarjestelman-osa-2&#34;&gt;osassa 2&lt;/a&gt; Protected Modesta sekä A20-linjasta. Näillä eväillä pääsee jo 32-bittiseen tilaan ja hyödyntämään 4GB muistia, mutta nykyään kaikki prosessorit tukevat myös 64-bittisyyttä.&lt;/p&gt;&#xA;&lt;p&gt;Standardia 64-bittistä tilaa kutsutaan &lt;a href=&#34;http://en.wikipedia.org/wiki/Long_mode&#34;&gt;Long Modeksi&lt;/a&gt; ja se on AMD:n kehittämä laajennus x86-prosessoreihin. Tässä tilassa rekisterit ovat 64-bittisiä ja muistia osoitetaan fyysisillä 52-bittisillä sekä virtuaalisilla 48-bittisillä osoitteilla.&lt;/p&gt;&#xA;&lt;p&gt;Long Modeen on Protected Modea hankalampi siirtyä, koska se vaatii myös sivutuksen (paging) aktivoinnin. Sivutus taas edellyttää hieman monimutkaisen &lt;a href=&#34;http://en.wikipedia.org/wiki/PML4&#34;&gt;PML4&lt;/a&gt;-rakenteen määrittelyä. Lisäksi &lt;a href=&#34;http://en.wikipedia.org/wiki/Global_Descriptor_Table&#34;&gt;GDT&lt;/a&gt; on vähän eri muotoinen, koska senkin pitää tukea 64-bittisiä osoitteita. Itselläni kului koko päivä näiden kiemuroiden opiskelemiseen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin teet oman käyttöjärjestelmän (osa 2)</title>
      <link>https://kennethfalck.net/2009/08/20/n%C3%A4in-teet-oman-k%C3%A4ytt%C3%B6j%C3%A4rjestelm%C3%A4n-osa-2/</link>
      <pubDate>Thu, 20 Aug 2009 15:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/20/n%C3%A4in-teet-oman-k%C3%A4ytt%C3%B6j%C3%A4rjestelm%C3%A4n-osa-2/</guid>
      <description>&lt;p&gt;Kirjoitin &lt;a href=&#34;http://kfalck.net/2009/08/19/nain-teet-oman-kayttojarjestelman-osa-1&#34;&gt;edellisessä osassa&lt;/a&gt; PC:n bootloaderin ohjelmoimisesta. Tässä vaiheessa x86-prosessori on kuitenkin vielä melko rajoittuneessa 8086-emulaatiotilassa:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;16-bittinen moodi (segmentointi käytössä)&lt;/li&gt;&#xA;&lt;li&gt;muistin maksimimäärä 1MB&lt;/li&gt;&#xA;&lt;li&gt;ei muistinsuojausta, sivutusta, task switchingia jne.&lt;/li&gt;&#xA;&lt;li&gt;koodin koko rajoittuu BIOSin lataamaan 512 tavuun&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Muutamalla askeleella päästään paljon mielenkiintoisempaan 32-bittiseen tilaan:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;ladataan lisää koodia muistiin USB-tikulta BIOS interrupt 0x13:lla&lt;/li&gt;&#xA;&lt;li&gt;siirrytään x86 Protected Modeen (32-bit)&lt;/li&gt;&#xA;&lt;li&gt;aktivoidaan yli 1MB muisti asettamalla A20-linja 8042-kontrollerilla&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3&gt;BIOS INT 0x13&lt;/h3&gt;&#xA;Koska MBR-bootloaderiin mahtuu alle 512 tavua koodia, sen on käytännössä pakko ladata lisää koodia muistiin käyttämällä BIOSia. BIOS on jo tallentanut tiedon käynnistyslevystä DL-rekisteriin. Levyn ensimmäinen blokki (512 tavua) on MBR, joten on helppoa tallentaa loput kernelistä seuraaviin blokkeihin ja lukea ne kerralla muistiin. Tämä esimerkki lataa 20 blokkia (10 kilotavua) osoitteeseen 0x0800:0000 ja käynnistää kernelin:&#xA;&lt;pre&gt;&lt;code&gt;load_kernel:                ; DL must contain boot drive&#xA;        mov ah, 0x02        ; read sectors from drive&#xA;        mov al, 20          ; sectors to read&#xA;        mov ch, 0x00        ; track&#xA;        mov cl, 0x02        ; sector&#xA;        mov dh, 0x00        ; head&#xA;        mov bx, 0x0800&#xA;        mov es, bx          ; buffer segment&#xA;        mov bx, 0           ; buffer address&#xA;        int 0x13            ; INT 13 - BIOS load sector&#xA;        jnc boot_kernel     ; on success, load the code&#xA;        jmp $               ; hang after failing&#xA;boot_kernel:&#xA;        jmp 0x0000:0x8000   ; long jump to kernel code&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Erillisen 10 kilotavuisen kernel-koodin voi laittaa suoraan bootloader.asm-tiedostoon MBR:n perään, tai sitten sen voi sijoittaa erilliseen kernel.asm-tiedostoon. Binäärikoodiksi käännetyt erilliset tiedostot voi helposti yhdistää tähän tapaan:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin teet oman käyttöjärjestelmän (osa 1)</title>
      <link>https://kennethfalck.net/2009/08/19/n%C3%A4in-teet-oman-k%C3%A4ytt%C3%B6j%C3%A4rjestelm%C3%A4n-osa-1/</link>
      <pubDate>Wed, 19 Aug 2009 17:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/19/n%C3%A4in-teet-oman-k%C3%A4ytt%C3%B6j%C3%A4rjestelm%C3%A4n-osa-1/</guid>
      <description>&lt;p&gt;Kesäloman viimeisen viikon kunniaksi päätin koodata oman käyttöjärjestelmän. En niinkään tehdäkseni omaa Linux-kloonia, vaan kokeillakseni millaista nykyään on ohjelmoida raakaa x86-arkkitehtuurin PC:tä.&lt;/p&gt;&#xA;&lt;p&gt;Oman käyttöjärjestelmän tekeminen on yllättävän helppoa, jos osaa koodata hieman &lt;a href=&#34;http://en.wikipedia.org/wiki/X86_assembly_language&#34;&gt;assemblerilla&lt;/a&gt;. PC:t käynnistyvät nykyään USB-tikulta ja vielä kätevämpää on tehdä kokeiluja esimerkiksi &lt;a href=&#34;http://www.virtualbox.org/&#34;&gt;VirtualBoxissa&lt;/a&gt;. Debuggaamisessa toimii hyvin &lt;a href=&#34;http://bochs.sourceforge.net/&#34;&gt;Bochs&lt;/a&gt;, jonka logeista näkee heti, mikä meni vikaan ja mitä prosessorin rekistereissä oli silloin.&lt;/p&gt;&#xA;&lt;p&gt;Assembly-koodaaminen onnistuu kätevimmin Linuxilla tai Mac OS X:llä, jonka mukana tulee &lt;a href=&#34;http://www.nasm.us/&#34;&gt;NASM&lt;/a&gt; (Netwide Assembler) sekä &lt;a href=&#34;http://gcc.gnu.org/&#34;&gt;GCC&lt;/a&gt; ja muut tarvikkeet. Yksinkertaisen MBR-bootloaderin voi tehdä pelkästään NASMia käyttäen (esimerkki alempana).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Firefox: Clear Recent History ei tyhjennä Flash-keksejä</title>
      <link>https://kennethfalck.net/2009/08/13/firefox-clear-recent-history-ei-tyhjenn%C3%A4-flash-keksej%C3%A4/</link>
      <pubDate>Thu, 13 Aug 2009 14:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/13/firefox-clear-recent-history-ei-tyhjenn%C3%A4-flash-keksej%C3%A4/</guid>
      <description>&lt;p&gt;Tämä oli minulle pieni yllätys: Firefoxin &amp;quot;Clear Recent History&amp;quot; -toiminto tyhjentää kyllä selaimen historian ja keksit, mutta Flash-pluginiin tallentuu monilta saiteilta erikseen omia keksejä, jotka jäävät jäljelle. Ne pitää poistaa esimerkiksi &lt;a href=&#34;http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager07.html&#34;&gt;Flash Settings Managerilla&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Firefoxille löytyy myös &lt;a href=&#34;https://addons.mozilla.org/en-US/firefox/addon/6623&#34;&gt;BetterPrivacy&lt;/a&gt;-niminen laajennus, joka valvoo Flash-keksejä (virallisesti nimeltään &lt;a href=&#34;http://en.wikipedia.org/wiki/Local_Shared_Object&#34;&gt;Local Shared Objects&lt;/a&gt;) sekä muutamia muita porsaanreikiä yksityisyydensuojassa. Sen voi määritellä tyhjentämään kaikki roskat aina Firefoxista poistuessa.&lt;/p&gt;&#xA;&lt;p&gt;Luin aiheesta &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=38462&amp;tyyppi=1&#34;&gt;Tietokoneen uutisesta&lt;/a&gt; ja sitä käsiteltiin hiljattain myös &lt;a href=&#34;http://yro.slashdot.org/story/09/08/11/1947208/Adobe-Flash-Cookies-Raising-Privacy-Questions-Again?from=rss&#34;&gt;Slashdotissa&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>PHP:stä on tulossa todella ruma</title>
      <link>https://kennethfalck.net/2009/08/13/phpst%C3%A4-on-tulossa-todella-ruma/</link>
      <pubDate>Thu, 13 Aug 2009 13:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/13/phpst%C3%A4-on-tulossa-todella-ruma/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.sitepoint.com/blogs/2009/08/13/are-php-namespaces-bad/&#34;&gt;Tämä artikkeli&lt;/a&gt; puolustelee PHP:n namespace-syntaksia ja pitää sitä ihan kohtuullisena saavutuksena, kun huomioidaan millaiset rajoitukset PHP:n aiempi historia asettaa syntaksille. Minusta taas PHP:stä on tulossa niin ruma ja ikävä, että haluan pyrkiä eroon sen käytöstä kokonaan.&lt;/p&gt;&#xA;&lt;p&gt;PHP:n perusongelmahan on siinä, että kieli on kehittynyt hiljalleen vuosia kestäneen evoluution myötä. Syntaksia on viritelty sitä mukaa, kun uusia ominaisuuksia on tarvittu. Kehityskaari muistuttaa ehkä vähän Perliä, johon niinikään ympättiin objektiorientoituneet toiminnot jälkeenpäin. Perlissäkin ne ovat sekavia eikä niitä ole kiva käyttää.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Orange Montagne: The Metaverse Manifesto</title>
      <link>https://kennethfalck.net/2009/08/08/orange-montagne-the-metaverse-manifesto/</link>
      <pubDate>Sat, 08 Aug 2009 23:55:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/08/orange-montagne-the-metaverse-manifesto/</guid>
      <description>&lt;p&gt;[amazon 0615144438 thumbnail] Orange Montagnen &lt;a href=&#34;http://www.amazon.co.uk/Metaverse-Manifesto-Orange-Montagne/dp/0615144438%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0615144438&#34;&gt;The Metaverse Manifesto&lt;/a&gt; on viihdyttävän dramaattinen julistus virtuaalimaailmojen ja avatarien &amp;quot;taistelusta&amp;quot; perinteisiä korporaatioita ja median luomaa maailmankuvaa vastaan. Kirja on julkaistu vuonna 2007, jolloin &lt;a href=&#34;http://secondlife.com/&#34;&gt;Second Life&lt;/a&gt; oli vielä nouseva juttu. Itse törmäsin siihen ihan sattumalta Amazonissa ja päätin lukaista läpi.&lt;/p&gt;&#xA;&lt;p&gt;Eniten tässä manifestissä ärsyttää se, että Orange Montagne uskoo syvästi immateriaalioikeuksiin ja informaation rajoittamiseen kaupanteon välineenä. Ymmärrän kyllä syyn, sillä Second Lifeen on sisäänrakennettu DRM-järjestelmä, jonka ansiosta moni pystyy tekemään siellä oikeaa rahaa virtuaalituotteilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sonera iPhone 3GS: Uskomatonta kohtelua</title>
      <link>https://kennethfalck.net/2009/08/06/sonera-iphone-3gs-uskomatonta-kohtelua/</link>
      <pubDate>Thu, 06 Aug 2009 14:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/06/sonera-iphone-3gs-uskomatonta-kohtelua/</guid>
      <description>&lt;p&gt;Varasin iPhone 3GS:n Soneralta heti kun se tuli ennakkovarattavaksi. Vähän myöhemmin tuote tuli myös nettikauppaan, josta tietysti myös tilasin sen heti kun mahdollista. Tilauksen yhteydessä iPhone oli pakko maksaa heti pankkimaksulla (564 eur). Muuta vaihtoehtoa ei ollut, jos halusi minimikuukausimaksun.&lt;/p&gt;&#xA;&lt;p&gt;Tänään Soneran Kampin myymälästä soiteltiin, että iPhone on saapunut, ja minun pitäisi käydä sen noutamassa ja maksamassa. Ihmettelin maksamista, koska olin jo maksanut iPhonen etukäteen netissä. Neuvottiin soittelemaan asiakaspalveluun.&lt;/p&gt;&#xA;&lt;p&gt;Soneran asiakaspalvelussa ystävällinen mies kertoi, että nettitilaus menee aivan eri reittiä kuin ennakkovaraukset. Tuote tulee postissa aikanaan joskus syyskuussa. Tästä ei tietenkään millään tavalla varoiteltu nettitilauksen yhteydessä, vaikka oli jo aiemmin tehnyt ennakkovarauksen. Käytännössä siis syntyi kaksi erillistä tilausta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>IE6 No More</title>
      <link>https://kennethfalck.net/2009/08/05/ie6-no-more/</link>
      <pubDate>Wed, 05 Aug 2009 15:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/05/ie6-no-more/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://mashable.com/2009/08/04/ie6-no-more/&#34;&gt;Mashable&lt;/a&gt; raportoi &lt;a href=&#34;http://www.ie6nomore.com/&#34;&gt;IE6 No More&lt;/a&gt;-kampanjasta, jonka taustalla on useita tunnettuja web-startuppeja. Ota sinäkin IE6-varoitusbanneri &lt;a href=&#34;http://www.ie6nomore.com/code-samples.html&#34;&gt;täältä&lt;/a&gt; ja sijoita se kotisivullesi heti body-tagin perään.&lt;/p&gt;&#xA;&lt;p&gt;Varoitus näyttää tällaiselta, kun sivuille surffaa IE6:lla:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://kfalck.net/sites/default/files/images/ie6nomore.png&#34;&gt;&lt;img src=&#34;https://kennethfalck.net/images/sites/default/files/images/ie6nomore.preview.png&#34; style=&#34;border:none;max-width:500px&#34;/&gt;&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>NoSQL-tietokantoja vertailussa</title>
      <link>https://kennethfalck.net/2009/08/05/nosql-tietokantoja-vertailussa/</link>
      <pubDate>Wed, 05 Aug 2009 14:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/05/nosql-tietokantoja-vertailussa/</guid>
      <description>&lt;p&gt;BJ Clark vertailee &lt;a href=&#34;http://bjclark.me/2009/08/04/nosql-if-only-it-was-that-easy/&#34;&gt;muutamia NoSQL-tietokantoja&lt;/a&gt; ja niiden skaalautuvuutta. Vertailu vahvisti näkemystäni siitä, että tällä hetkellä mielenkiintoisimmat NoSQL-tietokantaratkaisut ovat &lt;strong&gt;CouchDB&lt;/strong&gt;, &lt;strong&gt;Voldemort&lt;/strong&gt; ja &lt;strong&gt;Cassandra&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Nämä skaalautuvat (*):&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://project-voldemort.com/&#34;&gt;Voldemort&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://incubator.apache.org/cassandra/&#34;&gt;Cassandra&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://aws.amazon.com/s3/&#34;&gt;Amazon S3&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Nämä eivät skaalaudu (*):&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://tokyocabinet.sourceforge.net/&#34;&gt;Tokyo Cabinet/Tyrant&lt;/a&gt; (vain client-side hashing)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://code.google.com/p/redis/&#34;&gt;Redis&lt;/a&gt; (vain client-side hashing)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.mongodb.org/display/DOCS/Home&#34;&gt;MongoDB&lt;/a&gt; (vain replikointi)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.mysql.com/&#34;&gt;MySQL&lt;/a&gt; (toimii key-value-storena kuten esim. Tokyo)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Vertailusta jäivät pois ainakin:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://couchdb.apache.org/&#34;&gt;CouchDB&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://memcachedb.org/&#34;&gt;MemcacheDB&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://aws.amazon.com/simpledb/&#34;&gt;Amazon SimpleDB&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;(*) Skaalautumisella tarkoitetaan tässä sitä, että tietokantajärjestelmä itsessään mahdollistaa uusien serverien lisäämisen ja kuormituksen hajauttamisen niiden välille.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Scala yhdistää Javan ja Pythonin hyvät puolet?</title>
      <link>https://kennethfalck.net/2009/08/01/scala-yhdist%C3%A4%C3%A4-javan-ja-pythonin-hyv%C3%A4t-puolet/</link>
      <pubDate>Sat, 01 Aug 2009 22:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/08/01/scala-yhdist%C3%A4%C3%A4-javan-ja-pythonin-hyv%C3%A4t-puolet/</guid>
      <description>&lt;p&gt;Kiinnostuin tänään &lt;a href=&#34;http://www.scala-lang.org/&#34;&gt;Scalasta&lt;/a&gt;. Olen aiemmin ohittanut sen olankohautuksella, koska se pohjautuu Java VM:ään. On tullut sellainen olo, että mitä tuota nyt opiskelemaan, kun saman voi tehdä Javallakin jos haluaa.&lt;/p&gt;&#xA;&lt;p&gt;Nyt kuitenkin lukaisin läpi Programming in Scala &lt;a href=&#34;http://www.artima.com/samples/chapter1.pdf&#34;&gt;Chapter 1&lt;/a&gt;:n ja &lt;a href=&#34;http://www.artima.com/samples/chapter2.pdf&#34;&gt;Chapter 2&lt;/a&gt;:n. Niistä käy hyvin ilmi Scalan idea. Otetaan Javan syntaksista pois kaikki turha tauhka, jota ohjelmoijat yleensä joutuvat näpyttelemään. Lisätään Pythonista tuttuja funktionaalisia ominaisuuksia ja muita apuvälineitä, joilla koodaamisesta tulee tehokkampaa.&lt;/p&gt;&#xA;&lt;p&gt;Lopputulos on mielenkiintoinen hybridi objektiorientoituneiden ja funktionaalisten kielten välillä, joka on täysin yhteensopiva olemassaolevien Java VM -ympäristöjen ja kirjastojen kanssa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Making of Second Life</title>
      <link>https://kennethfalck.net/2009/07/24/the-making-of-second-life/</link>
      <pubDate>Fri, 24 Jul 2009 13:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/24/the-making-of-second-life/</guid>
      <description>&lt;p&gt;[amazon 0061353205 thumbnail] &lt;a href=&#34;http://www.amazon.co.uk/Making-Second-Life-Notes-World/dp/0061353205%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0061353205&#34;&gt;The Making of Second Life&lt;/a&gt; on mielenkiintoinen katsaus &lt;a href=&#34;http://secondlife.com/&#34;&gt;Second Lifen&lt;/a&gt; historiaan sen perustamisesta vuonna 2003 lähtien. Kirjoittaja (Wagner James Au) on taustaltaan entinen &amp;quot;lindeniläinen&amp;quot; eli työskenteli aikanaan Second Lifeä pyörittävän Linden Labsin leivissä kirjoittaen artikkeleita virtuaalimaailman kehityksestä.&lt;/p&gt;&#xA;&lt;p&gt;Tämä kirja ei ole tarkoitettu syvälliseksi analyysiksi Second Lifen bisnesmalleista tai teknologiasta. Se on enemmänkin taustoittava teos, jossa haastatellaan esimerkiksi Linden Labsin entistä CEO:ta &lt;a href=&#34;http://en.wikipedia.org/wiki/Philip_Rosedale&#34;&gt;Philip Rosedalea&lt;/a&gt; sekä monia merkittäviä vaikuttajia Second Lifen maailman sisältä. Oli mielenkiintoista lukea, millaisia visioita Second Lifeen alun perin liittyi, ja miten monet niistä muovautuivat ajan mittaan erilaisiksi, kun alustaa avattiin käyttäjille yhä enemmän ja annettiin sen kehittyä vapaasti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Viestintävirasto heittää .NETin romukoppaan?</title>
      <link>https://kennethfalck.net/2009/07/17/viestint%C3%A4virasto-heitt%C3%A4%C3%A4-.netin-romukoppaan/</link>
      <pubDate>Fri, 17 Jul 2009 16:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/17/viestint%C3%A4virasto-heitt%C3%A4%C3%A4-.netin-romukoppaan/</guid>
      <description>&lt;p&gt;Digitodayn mukaan &lt;a href=&#34;http://www.digitoday.fi/data/2009/07/17/viestintavirasto-panee-verkkotunnusjarjestelman-uusiksi/200916517/66&#34;&gt;Viestintävirasto uudistaa verkkotunnusjärjestelmän&lt;/a&gt; ja haluaa aloittaa puhtaalta pöydältä hyödyntääkseen uutta tekniikkaa. Accenturen toteuttama vanha järjestelmä on rakennettu .NETin ja SQL Serverin päälle.&lt;/p&gt;&#xA;&lt;p&gt;Kiintoisaa nähdä, tuleeko uusi järjestelmä vielä perustumaan Microsoftin teknologiaan. Itse olen joskus hajoillut nykyiseen järjestelmään, joka käyttää __VIEWSTATEja ja muita hirveyksiä sivuilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Oma pilvi Eucalyptuksella ja Xenillä</title>
      <link>https://kennethfalck.net/2009/07/17/oma-pilvi-eucalyptuksella-ja-xenill%C3%A4/</link>
      <pubDate>Fri, 17 Jul 2009 06:55:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/17/oma-pilvi-eucalyptuksella-ja-xenill%C3%A4/</guid>
      <description>&lt;p&gt;Nyt minullakin on oma pilvi. Se oli melko helppoa rakentaa &lt;a href=&#34;http://www.eucalyptus.com/&#34;&gt;Eucalyptuksella&lt;/a&gt;, joka tarjoaa Amazon EC2 -yhteensopivan pilvirajapinnan.&lt;/p&gt;&#xA;&lt;p&gt;Tyypillinen Eucalyptus-pilvi muodostuu kolmenlaisista komponenteista:&lt;/p&gt;&#xA;&lt;dl&gt;&#xA;&lt;dt&gt;&lt;strong&gt;Cloud Controller&lt;/strong&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;Keskitetty webbikäyttöliittymä koko pilveen. Klusterit, käyttäjät, sertifikaatit ja avaimet rekisteröidään tänne.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;strong&gt;Cluster Controller&lt;/strong&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;Yhtä klusteria (IP-aliverkkoa) hallinnoiva kontrolleri. Jakaa noodeille IP-osoitteet DHCP:llä ja tarkkailee niiden kuormitusta.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;strong&gt;Node Controller&lt;/strong&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;Yksittäinen noodi, joka ajaa varsinaisia virtuaalikoneita Xenin tai KVM:n alla. Näitä voi olla vaikka kuinka paljon.&lt;/dd&gt;&#xA;&lt;/dl&gt;&#xA;&lt;p&gt;Käytössäni oli tähän melko vanhoja Xeon-palvelimia, jotka eivät tukeneet rautapohjaista virtualisointia. Sen vuoksi jouduin käyttämään Xeniä, joka osaa virtualisoida pelkällä softalla. Tämä kuitenkin edellyttää, että noodin host-käyttöjärjestelmää ajetaan erityisellä xen-kernelillä. Ubuntu 9.04:stä löytyy kaikki muu tarvittava, mutta ei tätä kerneliä. Siksi piti asentaa &lt;a href=&#34;http://www.chrisk.de/blog/2008/12/how-to-run-xen-in-ubuntu-intrepid-without-compiling-a-kernel-by-yourself/&#34;&gt;tämän ohjeen mukaan&lt;/a&gt; Debianista tarvittavat xen-paketit kaikille noodeille ja buutata ne Xen-Linuxiin. Xenistä pitää myös muistaa enabloida http-kuuntelija, jotta Eucalyptus voi ohjata sitä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lukitsematon iPhone 3GS Italiasta</title>
      <link>https://kennethfalck.net/2009/07/16/lukitsematon-iphone-3gs-italiasta/</link>
      <pubDate>Thu, 16 Jul 2009 00:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/16/lukitsematon-iphone-3gs-italiasta/</guid>
      <description>&lt;p&gt;SwitchX:n blogista: &lt;a href=&#34;http://www.weblogi.com/2009/07/15/iphone-3gs-italiasta&#34;&gt;iPhone 3GS Italiasta&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linux/Mac OS X: Vältä ikuisesti pitenevä PATH</title>
      <link>https://kennethfalck.net/2009/07/14/linux/mac-os-x-v%C3%A4lt%C3%A4-ikuisesti-pitenev%C3%A4-path/</link>
      <pubDate>Tue, 14 Jul 2009 17:26:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/14/linux/mac-os-x-v%C3%A4lt%C3%A4-ikuisesti-pitenev%C3%A4-path/</guid>
      <description>&lt;p&gt;Minulla on paha tapa lisätä .bashrc:hen tämän tyyppisiä lauseita:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;PATH=&amp;quot;$PATH:$HOME/bin&amp;quot;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Tuo toimii muuten ihan hyvin, mutta jos sama .bashrc ajetaan moneen kertaan, PATHin perään lisätään joka kerta $HOME/bin uudelleen.&lt;/p&gt;&#xA;&lt;p&gt;Nyt otin vihdoin tavaksi korvata tuon lauseen tällä:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;echo &amp;quot;$PATH&amp;quot;|grep -qF &amp;quot;$HOME/bin&amp;quot; || PATH=&amp;quot;$PATH:$HOME/bin&amp;quot;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Eli lisätään kyseinen polku PATH-muuttujaan vain jos se ei sieltä jo löydy.&lt;/p&gt;&#xA;&lt;p&gt;Update: Typo korjattu, kiitos Tommi E. ;-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Web framework bootstrap performance comparison</title>
      <link>https://kennethfalck.net/2009/07/13/web-framework-bootstrap-performance-comparison/</link>
      <pubDate>Mon, 13 Jul 2009 05:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/13/web-framework-bootstrap-performance-comparison/</guid>
      <description>&lt;p&gt;This is a simple comparison of the bootstrap performance of some popular MVC web frameworks. The test is a simple &amp;quot;Hello World&amp;quot; application on each framework with no database operations. This measures the theoretical upper limit of what you can get out of each framework. It&amp;#39;s basically equivalent to how much CPU the framework uses in the bootstrap process.&lt;/p&gt;&#xA;&lt;p&gt;The &amp;quot;Hello World&amp;quot; is built with a two-layer template on each framework. A top-level template renders the HTML layout and an inner template renders the contents of the page (inside the body tag). The HTML title is passed as a parameter to the top-level template.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vahva tyypittäminen tekee kehityksestä jäykkää</title>
      <link>https://kennethfalck.net/2009/07/12/vahva-tyypitt%C3%A4minen-tekee-kehityksest%C3%A4-j%C3%A4ykk%C3%A4%C3%A4/</link>
      <pubDate>Sun, 12 Jul 2009 18:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/12/vahva-tyypitt%C3%A4minen-tekee-kehityksest%C3%A4-j%C3%A4ykk%C3%A4%C3%A4/</guid>
      <description>&lt;p&gt;Tämän blogini kommenteissa &lt;a href=&#34;http://symbiatch.jutut.fi/&#34;&gt;Symbiatch&lt;/a&gt; nosti esiin kiintoisan kysymyksen siitä, miten vahva tyypittäminen vaikutttaa web-ohjelmoinnin tehokkuuteen.&lt;/p&gt;&#xA;&lt;p&gt;Olen käynyt aikoinaan läpi webbipuolella ASP/VBScript-aikakauden, jolloin saatiin aikaan paljon tuhoa kielen tyypittömyydellä ja unohtamalla Option Explicit -määre skriptien alusta. Siksi on ihan ymmärrettävää, että Microsoft-ihmiset uskovat vahvaan tyypittämiseen ja kannattavat C#:aa. Itsekin kannattaisin, jos olisin rajoittunut siihen teknologiakenttään.&lt;/p&gt;&#xA;&lt;p&gt;Tuon jälkeen olen kuitenkin tutustunut kypsempiin vapaasti tyypitettyihin kieliin, kuten PHP:hen ja Pythoniin. Ne ovat opettaneet, että sovelluksista voi tehdä luotettavia myös ilman vahvaa tyypitystä. Samalla ne (varsinkin Python) ovat osoittaneet, miten paljon joustavampaa ja tehokkaampaa löyhästi tyypitetty kehitys on web-maailmassa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hesari johtaa harhaan piraattiotsikoinnillaan</title>
      <link>https://kennethfalck.net/2009/07/12/hesari-johtaa-harhaan-piraattiotsikoinnillaan/</link>
      <pubDate>Sun, 12 Jul 2009 02:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/12/hesari-johtaa-harhaan-piraattiotsikoinnillaan/</guid>
      <description>&lt;p&gt;Mielenkiintoinen veto Hesarilta: &lt;a href=&#34;http://www.hs.fi/talous/artikkeli/Piratismiin+suhtaudutaan+entist%C3%A4+kielteisemmin/1135247596383?ref=rss&#34;&gt;&amp;quot;Piratismiin suhtaudutaan entistä kielteisemmin&amp;quot;&lt;/a&gt;. Otsikon perusteella jokainen olettanee kyseen olevan nettipiratismista. Artikkelin lukemalla kuitenkin selviää, että tutkimuksessa kyseltiinkin niistä fyysisistä piraattituotteista, joita myydään toreilla.&lt;/p&gt;&#xA;&lt;p&gt;Taas laski Hesarin journalistisen integriteetin pisteet minun silmissäni. Tekijänoikeuspropaganda ei sovi sanomalehteen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pythonin luokkamuuttujat eivät ole instanssimuuttujia (aloittelijamokat)</title>
      <link>https://kennethfalck.net/2009/07/10/pythonin-luokkamuuttujat-eiv%C3%A4t-ole-instanssimuuttujia-aloittelijamokat/</link>
      <pubDate>Fri, 10 Jul 2009 20:41:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/10/pythonin-luokkamuuttujat-eiv%C3%A4t-ole-instanssimuuttujia-aloittelijamokat/</guid>
      <description>&lt;p&gt;Vaikka olen ohjelmoinut Pythonilla jo jonkin aikaa, opin tämän vasta nyt kantapään kautta:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;class Pizza(object):&#xA;  tyyppi = &amp;#39;tavallinen&amp;#39; # tästä tulee luokkamuuttuja&#xA;&lt;p&gt;def &lt;strong&gt;init&lt;/strong&gt;(self):&#xA;self.juusto = &#39;tupla&#39; # tästä tulee instanssimuuttuja&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;&#xA;&lt;p&gt;Oleellinen ero on siinä, että luokkamuuttujan muuttaminen vaikuttaa kaikkiin luokan instansseihin:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;capricciosa = Pizza()&#xA;mexicana = Pizza()&#xA;# molemmat ovat tyyppiä &amp;#39;tavallinen&amp;#39;&#xA;&lt;p&gt;Pizza.tyyppi = &#39;pannu&#39;&lt;/p&gt;&#xA;&lt;h1 id=&#34;nyt-molemmat-ovat-tyyppiä-39pannu39&#34;&gt;&#xA;  nyt molemmat ovat tyyppiä &#39;pannu&#39;&lt;/code&gt;&lt;/pre&gt;&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#nyt-molemmat-ovat-tyyppi%c3%a4-39pannu39&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;p&gt;En tajunnut tätä heti, koska luokkamuuttujien määrittely näyttää Pythonissa samalta kuin instanssimuuttujien määrittely PHP/Java/C#-tyyppisissä kielissä. Ne kuitenkin vastaavat näiden kielten &amp;quot;static&amp;quot;-muuttujia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Microsoft tulee kaksi vuotta jäljessä</title>
      <link>https://kennethfalck.net/2009/07/09/microsoft-tulee-kaksi-vuotta-j%C3%A4ljess%C3%A4/</link>
      <pubDate>Thu, 09 Jul 2009 17:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/09/microsoft-tulee-kaksi-vuotta-j%C3%A4ljess%C3%A4/</guid>
      <description>&lt;p&gt;Lueskelin uusinta &lt;a href=&#34;http://msdn.microsoft.com/en-us/magazine/dd980906.aspx&#34;&gt;MSDN Magazinea&lt;/a&gt;. Mielenkiintoista, miten Microsoft käsittelee nyt sellaisia aiheita &amp;quot;kuumina uutuuksina&amp;quot;, jotka olivat uusia muilla alustoilla toimiville web-kehittäjille noin kaksi vuotta sitten.&lt;/p&gt;&#xA;&lt;p&gt;Artikkeleissa puhutaan esimerkiksi RESTistä, MVC:stä ja hajautetuista cacheista. Kuin pisteenä i:n päällä on C#:n &amp;quot;uusi&amp;quot; tietotyyppi nimeltä Tuple, joka on ollut esimerkiksi Pythonissa ja Rubyssa 90-luvun alkupuolelta lähtien.&lt;/p&gt;&#xA;&lt;p&gt;Väistämättä tulee sellainen tunne, että Microsoft sätkii nyt kuolinkouristusten vallassa. Se yritti vielä hiljattain jatkaa omaa vendorlock-linjaansa WebFormeilla, SOAP Web Serviceillä ja vastaavilla hirvittävillä .NET-teknologioilla. Nyt on yllättäen ihan toinen ääni kellossa, kun muu maailma onkin valinnut MVC:n, RESTin ja muut avoimet ja valmistajariippumattomat teknologiat.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Helppoa testausta: Python, Django ja doctest/unittest</title>
      <link>https://kennethfalck.net/2009/07/09/helppoa-testausta-python-django-ja-doctest/unittest/</link>
      <pubDate>Thu, 09 Jul 2009 04:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/09/helppoa-testausta-python-django-ja-doctest/unittest/</guid>
      <description>&lt;p&gt;Ryhdyin tänään toteuttamaan unit-testausta erääseen &lt;a href=&#34;http://www.djangoproject.com/&#34;&gt;Django&lt;/a&gt;-pohjaiseen web-projektiin. Ohjelmointikielenä on siis Python. Olen erittäin tyytyväinen siihen, miten kätevästi koko projektin voi testata yhdistelemällä sopivasti &lt;a href=&#34;http://docs.python.org/library/unittest.html&#34;&gt;unittest&lt;/a&gt;- ja &lt;a href=&#34;http://docs.python.org/library/doctest.html&#34;&gt;doctest&lt;/a&gt;-testejä.&lt;/p&gt;&#xA;&lt;p&gt;Django tukee &lt;a href=&#34;http://docs.djangoproject.com/en/1.0/topics/testing/&#34;&gt;molempia frameworkkeja&lt;/a&gt; automaattisesti. Testipatteriston voi ajaa läpi yhdellä komennolla, joka näyttää onnistuessaan suunnilleen tältä:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;$ ./manage.py test&#xA;&lt;h2 id=&#34;heading&#34;&gt;&#xA;  &amp;hellip;&amp;hellip;&amp;hellip;&amp;hellip;&amp;hellip;..&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#heading&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Ran 17 tests in 2.780s&lt;/p&gt;&#xA;&lt;p&gt;OK&#xA;Destroying test database&amp;hellip;&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;&#xA;&lt;p&gt;Aloitin testien rakentamisen luomalla joukon luokkia, jotka perivät unittest.TestCasen. Ne tyhjentävät tietokannan ja luovat sinne esimerkkidataa jokaista testiä varten. Näissä luokissa suoritetaan sellaiset laajemmat testit, jotka eivät liity pelkästään yksittäisiin funktioihin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lowcarb-oluet Suomessa</title>
      <link>https://kennethfalck.net/2009/07/06/lowcarb-oluet-suomessa/</link>
      <pubDate>Mon, 06 Jul 2009 23:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/06/lowcarb-oluet-suomessa/</guid>
      <description>&lt;p&gt;Netissä osui silmiin vertailu &lt;a href=&#34;http://www.bellaonline.com/articles/art14302.asp&#34;&gt;lowcarb-jenkkioluista&lt;/a&gt;. Light-oluiden hiilihydraattipitoisuus vaihtelee varsin paljon välillä 0-10 g/100g, joten jos haluaa pitää hiilarit minimissä, on syytä katsoa oluiden energiapitoisuuksia hiukan tarkemmin.&lt;/p&gt;&#xA;&lt;p&gt;Tässä lyhyt oma koosteeni suomalaisista lowcarb-oluista, verkkosivuilta kerättynä (osa on light-oluita ja osa on tavallisia):&lt;/p&gt;&#xA;&lt;table&gt;&#xA;&lt;thead&gt;&#xA;&lt;tr&gt;&lt;td&gt;Tuote&lt;/td&gt;&lt;td&gt;hiilihydr./100g&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;/thead&gt;&#xA;&lt;tbody&gt;&#xA;&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.sinebrychoff.fi/page.php?page_id=106&amp;id=288&#34;&gt;Koff Lite&lt;/a&gt;&lt;/td&gt;&lt;td&gt;0.3 g&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.sinebrychoff.fi/page.php?page_id=106&amp;id=289&#34;&gt;Carlsberg Lite&lt;/a&gt;&lt;/td&gt;&lt;td&gt;0.4 g&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.sinebrychoff.fi/page.php?page_id=106&amp;id=34&#34;&gt;Light Beer&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1.5 g&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.sinebrychoff.fi/page.php?page_id=106&amp;id=15&#34;&gt;Koff III&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2.2 g&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;&lt;a href=&#34;http://www.sinebrychoff.fi/page.php?page_id=106&amp;id=374&#34;&gt;Koff Surfer&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2.2 g&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;Kuinka ollakaan, kaikki yllämainitut oluet ovat Sinebrychoffin tuotteita. Useimmat tavalliset oluet ovat pitoisuudeltaan 2.5g tai enemmän enkä lähtenyt niitä listaamaan. &lt;a href=&#34;http://www.hartwall.fi/fi/Juomat/tuoteryhmat/Oluet/&#34;&gt;Hartwallin valikoimassa&lt;/a&gt; kaikki oluet on dokumentoitu yli 3g:ksi. Olvilla puolestaan ei ole ilmoitettu hiilaripitoisuuksia lainkaan, mutta &lt;a href=&#34;http://www.olvi.fi/web/fi/158&#34;&gt;A. Le Coq DRY Ice Beer&lt;/a&gt; olisi kiintoisaa selvittää.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Älypää-peli iPhonelle iTunes-storessa</title>
      <link>https://kennethfalck.net/2009/07/03/%C3%A4lyp%C3%A4%C3%A4-peli-iphonelle-itunes-storessa/</link>
      <pubDate>Fri, 03 Jul 2009 16:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/03/%C3%A4lyp%C3%A4%C3%A4-peli-iphonelle-itunes-storessa/</guid>
      <description>&lt;p&gt;Täytyypä mainostaa hiukan, sillä ensimmäinen toteuttamani kaupallinen iPhone-sovellus &lt;a href=&#34;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=310728488&amp;mt=8&#34;&gt;Älypää-peli&lt;/a&gt; on nykyään myynnissä iTunes-storessa.&lt;/p&gt;&#xA;&lt;p&gt;Pelin ensimmäinen versio on tarkoituksella hyvin simppeli ja edullinen (0,79e) eikä siinä ole kovin laajaa kysymyspatteria mukana. Palautteen perusteella kysymysten määrä onkin se mitä pelaajat haluaisivat lisää.&lt;/p&gt;&#xA;&lt;p&gt;Kannattaa kokeilla jos on käytössä iPhone tai iPod touch ;-) Pelin julkaisija on työnantajani Sanoma Entertainment.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Multiple databases and sharding with Django</title>
      <link>https://kennethfalck.net/2009/07/01/multiple-databases-and-sharding-with-django/</link>
      <pubDate>Wed, 01 Jul 2009 02:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/07/01/multiple-databases-and-sharding-with-django/</guid>
      <description>&lt;div style=&#34;color:#bbbbbb;margin-bottom:1em;font-style:italic&#34;&gt;Disclaimer: I&#39;m still learning Django so there may be smarter ways of doing the things I describe here. I also haven&#39;t tested this much though the principle seems to work. The example code has been edited and may not be fully correct.&lt;/div&gt;&#xA;&lt;h3&gt;Background&lt;/h3&gt;&#xA;By default, Django 1.0 supports only a single, hardcoded database connection, defined by the settings.DATABASE_XXX variables. All models use the same connection.&#xA;&lt;p&gt;A scalable website needs several different database connections when MySQL is used. Models might be stored in separate databases, and sometimes a read-only replica of a database might be used for querying. For sharding purposes, several different databases might be used for the same model.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Enforcing unique usernames on CouchDB</title>
      <link>https://kennethfalck.net/2009/06/29/enforcing-unique-usernames-on-couchdb/</link>
      <pubDate>Mon, 29 Jun 2009 19:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/29/enforcing-unique-usernames-on-couchdb/</guid>
      <description>&lt;div style=&#34;color:#bbbbbb;margin-bottom:2em;font-style:italic&#34;&gt;Disclaimer: I&#39;m still learning CouchDB so there may be smarter ways of doing the things I propose here.&lt;/div&gt;&#xA;&lt;h3&gt;The problem&lt;/h3&gt;&#xA;&lt;p&gt;A typical requirement of any website is to enforce all registered usernames (and sometimes also email addresses) to be unique. This is trivial to do with a relational database like MySQL, but CouchDB doesn&amp;#39;t have unique keys.&lt;/p&gt;&#xA;&lt;h3&gt;The standard solution&lt;/h3&gt;&#xA;&lt;p&gt;The usual way is to make the username (as chosen by the user) the _id of the User document. That will enforce uniqueness, but it also makes it difficult to change the username later, when there are lots of references to the document using the _id. It also doesn&amp;#39;t solve the problem of having additional uniqueness requirements for other fields like email addresses.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nielsen trollaa: Stop Password Masking</title>
      <link>https://kennethfalck.net/2009/06/24/nielsen-trollaa-stop-password-masking/</link>
      <pubDate>Wed, 24 Jun 2009 17:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/24/nielsen-trollaa-stop-password-masking/</guid>
      <description>&lt;p&gt;Jakob Nielsen heittää uusimmassa Alertboxissaan ilmoille &lt;a href=&#34;http://www.useit.com/alertbox/passwords.html&#34;&gt;melkoisen trollin&lt;/a&gt;. Nielsenin mukaan webbisaittien pitäisi alkaa näyttää käyttäjien kirjoittamat salasanat selkokielisinä ruudulla, ja korkeintaan tarjota erillinen checkbox, jolla ne saa halutessaan piiloon.&lt;/p&gt;&#xA;&lt;p&gt;Minusta tämä on yksinkertaisesti typerää sekä tietoturvan että käytettävyyden kannalta:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Tietoturva huononisi radikaalisti&lt;/strong&gt;, kun maailma täyttyisi monitoreista, joilla on suoraan näkyvillä käyttäjien tunnuksia ja salasanoja. Olisi äärimmäisen helppoa napata monitoreista valokuvia tai painaa näkyvillä olevia salasanoja mieleensä.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Käytettävyys huononisi radikaalisti&lt;/strong&gt;, kun käyttäjät yrittäisivät epätoivoisesti peitellä toisella kädellä monitorin salasanakenttää ja näpytellä toisella kädellä salasanaa. (En usko että moni huomaisi salasanan piilottavaa checkboxia.)&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Käyttäjät tuntisivat epäluottamusta&lt;/strong&gt; kyseistä webbipalvelua kohtaan, joka räikeästi paljastaa heidän salasanansa kaikkien nähtäville. (Nielsen väittää täsmälleen päinvastaista.)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Siinä saattaisi kuitenkin olla järkeä, että salasana on &lt;strong&gt;oletuksena piilotettu&lt;/strong&gt;, ja sen saa halutessaan näkyviin erillisellä checkboxilla. Olen kuitenkin sitä mieltä, että tämä on parempi jättää selaimen ominaisuudeksi, ja käyttää edelleen input type=&amp;quot;password&amp;quot; -tyyppisiä lomakekenttiä aivan kuten ennenkin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Testing Drupal Twitter integration</title>
      <link>https://kennethfalck.net/2009/06/17/testing-drupal-twitter-integration/</link>
      <pubDate>Wed, 17 Jun 2009 10:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/17/testing-drupal-twitter-integration/</guid>
      <description>&lt;p&gt;Installed the Drupal &lt;a href=&#34;http://drupal.org/project/twitter&#34;&gt;Twitter&lt;/a&gt; module and testing if new blog post titles appear on my Twitter account.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Like this story</title>
      <link>https://kennethfalck.net/2009/06/16/like-this-story/</link>
      <pubDate>Tue, 16 Jun 2009 19:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/16/like-this-story/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.karihaakana.net/arkistot/2009/06/taessae_lauseessa_on_63_merkki.html&#34;&gt;Karin blogin kommenttien&lt;/a&gt; inspiroimana koodasin tähän blogiini simppelin &amp;quot;Like&amp;quot;-nappulan. Sen pitäisi toimia Facebookin tyyliin ajax-periaatteella. Kyseistä nappia voi läppäistä, jos kirjoitus viehätti, muttei huvita kokonaista kommenttia kuitenkaan kirjoittaa.&lt;/p&gt;&#xA;&lt;p&gt;Olen itse huomannut, että Facebookin &amp;quot;Like&amp;quot;-toiminto on paljon käyttökelpoisempi kuin erilaiset 5-tähden scoret tai &amp;quot;thumbs-up/down&amp;quot;-tyyppiset arvostelut. Ne vaativat arvostelijalta tietoista ajatustyötä, mutta Like-nappia voi painaa aika huoletta, jos jutussa vain on jotain hauskaa tai kiinnostavaa.&lt;/p&gt;&#xA;&lt;p&gt;PS. Hakkereille tiedoksi, että tätä Like-nappia on helppo huijata esim. keksit tyhjentämällä, mutta sillä onnistuu lähinnä muuttamaan yhtä counteria tietokannassa...&lt;/p&gt;</description>
    </item>
    <item>
      <title>ZFS ei näytä lunastavan lupauksiaan</title>
      <link>https://kennethfalck.net/2009/06/12/zfs-ei-n%C3%A4yt%C3%A4-lunastavan-lupauksiaan/</link>
      <pubDate>Fri, 12 Jun 2009 14:57:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/12/zfs-ei-n%C3%A4yt%C3%A4-lunastavan-lupauksiaan/</guid>
      <description>&lt;p&gt;Kun ensimmäistä kertaa luin &lt;a href=&#34;http://en.wikipedia.org/wiki/Zfs&#34;&gt;ZFS&lt;/a&gt;:stä jokunen vuosi sitten, olin innoissani. Vihdoinkin täysin virtuaalinen tiedostojärjestelmä, joka mahdollistaisi fyysisten levyjen lisäämisen ja poistamisen lennossa. Käyttäjä vain näkisi käytettävissä olevan kokonaislevytilan kasvavan tai pienenevän vastaavasti.&lt;/p&gt;&#xA;&lt;p&gt;Normaalistihan uuden fyysisen levyn lisääminen virtuaaliseen levyjärjestelmään edellyttää RAID-konfiguraation päivittämistä ja koko tiedostojärjestelmän luomista uudelleen. Se on ainoa keino saada usea fyysinen levy näkymään yhtenä virtuaalisena kokonaisuutena.&lt;/p&gt;&#xA;&lt;p&gt;Ei siis ihme, että Apple kiinnostui ZFS:stä. Sen idea sopisi mainiosti Mac OS X:ään, joka on muutenkin suunniteltu yksinkertaiseksi ja helppokäyttöiseksi mutta teknisesti edistyneeksi käyttöjärjestelmäksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Java on tarpeettoman monimutkaisuuden linnake</title>
      <link>https://kennethfalck.net/2009/06/09/java-on-tarpeettoman-monimutkaisuuden-linnake/</link>
      <pubDate>Tue, 09 Jun 2009 14:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/09/java-on-tarpeettoman-monimutkaisuuden-linnake/</guid>
      <description>&lt;p&gt;Jouduin taas pitkästä aikaa tekemään asioita Tomcatilla ja servleteillä eli konfiguroimaan Javaa. Voi hyvänen aika että se on edelleen hankalaa ja monimutkaista. Sadoittain erilaisia propertyjä, classpatheja, jarreja ja xml-tiedostoja, tolkuttoman pitkiä error traceja.&lt;/p&gt;&#xA;&lt;p&gt;Java-ihmisillä ei ilmeisesti koskaan käy edes mielessä, että arkkitehtuureja voisi yrittää yksinkertaistaa. Tämä on toisaalta loogista, koska he ovat lähinnä konsultteja, jotka saavat palkkion monimutkaisuuden luomisesta ja ymmärtämisestä.&lt;/p&gt;&#xA;&lt;p&gt;Omassa tapauksessani piti tehdä simppeli servletti, joka kutsuu toisaalla olevaa SOAP-rajapintaa ja tulostaa sen palauttaman arvon. Käytännössä tämä edellytti ainakin seuraavia asioita (serverinä Ubuntu 9.04):&lt;/p&gt;</description>
    </item>
    <item>
      <title>Applen WWDC herätti taas tunteita</title>
      <link>https://kennethfalck.net/2009/06/09/applen-wwdc-her%C3%A4tti-taas-tunteita/</link>
      <pubDate>Tue, 09 Jun 2009 03:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/09/applen-wwdc-her%C3%A4tti-taas-tunteita/</guid>
      <description>&lt;p&gt;Jos Apple jotain osaa, niin herättää tunteita: niin positiivisia kuin negatiivisiakin. Monien &lt;a href=&#34;http://www.tuaw.com/2009/06/08/wwdc-live-first-reactions-from-attendees-post-keynote/&#34;&gt;Mac-ihmisten reaktio&lt;/a&gt; uuteen iPhoneen oli odotetusti positiivinen, kun taas jotkut Nokian tuotteisiin ihastuneemmat &lt;a href=&#34;http://blogit.tietokone.fi/ossi/2009/06/iphone-3-gs-loysa-paivitys/&#34;&gt;suorastaan trollailevat&lt;/a&gt; &amp;quot;pettymystään&amp;quot;. Engadget &lt;a href=&#34;http://www.engadget.com/2009/06/08/apple-wwdc-2009-the-good-the-bad-and-the-ugly/&#34;&gt;veti yhteen&lt;/a&gt; hyviä ja huonoja uutisia.&lt;/p&gt;&#xA;&lt;p&gt;Minusta Applen iPhone-päivitys oli onnistunut ja taloudelliseen tilanteeseen hyvin sovitettu. Ei lähdetty pröystäilemään millään hienouksilla, vaan päivitettiin iPhone ajan tasalle HSDPA-tuella, 32GB-NAND-muistilla sekä tietysti iPhone OS 3.0:n pitkään toivotuilla ominaisuuksilla, kuten copy-paste-tuella ja MMS-viesteillä. Hintahan pysyi samana, ja vanhaa 3G-mallia saa nyt sitten halvemmalla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Onnittelut Ruotsin Piraattipuolueelle</title>
      <link>https://kennethfalck.net/2009/06/08/onnittelut-ruotsin-piraattipuolueelle/</link>
      <pubDate>Mon, 08 Jun 2009 01:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/08/onnittelut-ruotsin-piraattipuolueelle/</guid>
      <description>&lt;p&gt;Onnittelut Ruotsin Piraattipuolueelle &lt;a href=&#34;http://digg.com/tech_news/Pirate_Party_Wins_and_Enters_The_European_Parliament_Torre&#34;&gt;pääsystä EU-parlamenttiin&lt;/a&gt;! Harmittelen vain, että Yleisradio esitti niin asiantuntemattomia lausuntoja puolueen toiminnasta ja tavoitteista. Tässä linkki &lt;a href=&#34;http://www.piratpartiet.se/international/suomi&#34;&gt;Piratpartietin periaatteisiin ja tavoitteisiin&lt;/a&gt;, joita siis ovat muunmuassa:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;tekijänoikeuksien keston rajoittaminen viiteen vuoteen&lt;/li&gt;&#xA;&lt;li&gt;ei-kaupallisen kopioinnin vapaa salliminen&lt;/li&gt;&#xA;&lt;li&gt;DRM-tekniikoiden ja kohtuuttomien lisenssiehtojen kieltäminen&lt;/li&gt;&#xA;&lt;li&gt;patenttijärjestelmän hylkääminen (erityisesti ohjelmisto- ja lääkepatentit)&lt;/li&gt;&#xA;&lt;li&gt;kansalaisten yksityisyyden turvaaminen ja valvonnan rajoittaminen&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Toivottavasti piraatti-MEPit nostavat liikkeen medianäkyvyyttä myös Suomessa ja pakottavat toimittajatkin hieman sivistämään itseään siitä, mistä tässä liikehdinnässä oikeasti on kyse.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Chrome for Mac/Linux</title>
      <link>https://kennethfalck.net/2009/06/05/google-chrome-for-mac/linux/</link>
      <pubDate>Fri, 05 Jun 2009 14:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/05/google-chrome-for-mac/linux/</guid>
      <description>&lt;p&gt;Näemmä Chromesta on nyt tarjolla &lt;a href=&#34;http://dev.chromium.org/getting-involved/dev-channel&#34;&gt;esiversioita Macille ja Linuxille&lt;/a&gt;. Ainakin Mac-version on jo aiemminkin voinut ladata &lt;a href=&#34;http://build.chromium.org/buildbot/snapshots/sub-rel-mac/&#34;&gt;automaattisista buildeista&lt;/a&gt;. Ei sitä vielä kannata käyttää selaimena, mutta sillä on hyvä testata yhteensopivuutta, jos kehittää webbisaitteja.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eee PC 901: Takaisin Linuxiin - Eeebuntu 3.0</title>
      <link>https://kennethfalck.net/2009/06/02/eee-pc-901-takaisin-linuxiin-eeebuntu-3.0/</link>
      <pubDate>Tue, 02 Jun 2009 16:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/06/02/eee-pc-901-takaisin-linuxiin-eeebuntu-3.0/</guid>
      <description>&lt;p&gt;Kokeiltuani hetken Windows 7 RC:tä Eee PC 901:ssä kyllästyin siihen. Office 2007:n asentaminen ei onnistunut, koska se tahtoo väkisin asentaa C-asemalle monta sataa megaa tauhkaa. Myöskään Visual Studio 2008 ei asentunut, koska se on puolestaan välttämätöntä laittaa C:lle yli gigatavu tavaraa, vaikka disabloisi kaikki ominaisuudet ja määrittelisi asennuksen D:lle.&lt;/p&gt;&#xA;&lt;p&gt;Nyt kun Ubuntusta on uusi netbook-optimoitu 9.04-versio, päätin kokeilla sitä. En tosin ihan perusasennusta, vaan otin &lt;a href=&#34;http://www.eeebuntu.org/&#34;&gt;Eeebuntu Netbook Remix 3.01:n&lt;/a&gt;, joka on optimoitu Asus Eee-PC:ille. Asennus sujui näppärästi suoraan usb-tikulta. Eeebuntu ei tarjoa valmiita .img-tiedostoja tikulle poltettavaksi, mutta iso-image on helppo polttaa &lt;a href=&#34;http://unetbootin.sourceforge.net/&#34;&gt;Unetbootinilla&lt;/a&gt;. Tämä onnistui jopa Macilla VirtualBoxissa pyörivästä XP:stä, kun mounttasi vain USB-tikun virtuaalikoneeseen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>DrupalCamp Helsinki onnistui mainiosti</title>
      <link>https://kennethfalck.net/2009/05/28/drupalcamp-helsinki-onnistui-mainiosti/</link>
      <pubDate>Thu, 28 May 2009 18:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/28/drupalcamp-helsinki-onnistui-mainiosti/</guid>
      <description>&lt;p&gt;Täyteenbuukattu &lt;a href=&#34;http://drupalcamp.fi/materials&#34;&gt;DrupalCamp Helsinki&lt;/a&gt; oli hieno kokemus. Kiitokset siitä &lt;a href=&#34;http://moana.fi/vesa-palmu&#34;&gt;Vesa Palmulle&lt;/a&gt; ja mulle organisoijille sekä minut kutsuneelle &lt;a href=&#34;http://www.brainalliance.com/&#34;&gt;Brain Alliancelle&lt;/a&gt; ja muille sponsoreille.&lt;/p&gt;&#xA;&lt;p&gt;Itselleni parhainta antia olivat professional trackin teknisemmät esitykset, kuten Seppo Jaakolan &lt;a hreF=&#34;http://codership.blogspot.com/2009/05/mysqlgalera-release-06.html&#34;&gt;MySQL/Galera&lt;/a&gt;-katsaus reaaliaikaiseen multi-master-klusterointiin Drupalin kanssa.&lt;/p&gt;&#xA;&lt;p&gt;Mieleen jäi erityisesti myös Todd Ross Nienkerkin esitys &lt;a href=&#34;http://960.gs/&#34;&gt;960.gs&lt;/a&gt; CSS-frameworkista ja sen soveltamisesta Drupaliin &lt;a href=&#34;http://drupal.org/project/ninesixty&#34;&gt;NineSixty-teeman&lt;/a&gt; avulla.&lt;/p&gt;&#xA;&lt;p&gt;Nokialla (tai oikeastaan Nitrolla) oli kiintoisa esitys WURFLia käyttävästä &lt;a href=&#34;http://drupal.org/project/mobileplugin&#34;&gt;Mobile Plugin -moduulista&lt;/a&gt;, jolla Drupalin saa vaihtamaan automaattisesti teemaa ja esim. skaalaaman kuvia päätelaitteen mukaisesti. Aikaa olisi saanut käyttää tähän aiheeseen enemmänkin, Drupaliin täysin liittymättömien markkinointipuheiden sijaan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android G1 Cupcake (1.5)</title>
      <link>https://kennethfalck.net/2009/05/28/android-g1-cupcake-1.5/</link>
      <pubDate>Thu, 28 May 2009 15:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/28/android-g1-cupcake-1.5/</guid>
      <description>&lt;p&gt;T-Mobile G1 Android -puhelimeni ilmoitti tänä aamuna vihdoinkin, että uusi firmware-päivitys on saatavilla. Hyväksyin asennuksen ja se meni läpi ongelmitta 10 minuutissa. Nyt firmis on sitten versiota 1.5 ja Linux-kernel 2.6.27, eli melko ajantasalla ollaan.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://smarttouchphones.com/whats-new-in-android-15-cupcake-full-feature-list/&#34;&gt;Cupcake-päivityksen uudet ominaisuudet&lt;/a&gt; eivät kauheasti paista päällepäin, vaan kännykkä näyttää ja tuntuu samalta kuin ennenkin.&lt;/p&gt;&#xA;&lt;p&gt;Esimerkiksi Androidin kalenteri on edelleen yhtä surkea kuin ennenkin. En oikein käsitä sen kuukausinäkymää: näkymässä on joka päivän kohdalla vain vihreä pallukka indikoimassa tapahtumia. Kun sitä klikkaa, joutuu kokoruudun päivänäkymään, josta ei enää pääse takaisin, vaan Back-nappi sulkee koko kalenterin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Asus Eee PC 901 ja Windows 7</title>
      <link>https://kennethfalck.net/2009/05/27/asus-eee-pc-901-ja-windows-7/</link>
      <pubDate>Wed, 27 May 2009 03:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/27/asus-eee-pc-901-ja-windows-7/</guid>
      <description>&lt;p&gt;Luettuani paljon hyvää Windows 7:n toimivuudesta netbook-tason PC:issä päätin kokeilla &lt;a href=&#34;http://forum.eeeuser.com/viewtopic.php?id=57299&amp;p=1&#34;&gt;tätä ohjetta&lt;/a&gt; ja asentaa Windows 7 RC:n Asus Eee PC 901:een. Olen aiemmin ajanut kyseisessä koneessa riisuttua XP:tä, joka on toiminut melko huonosti.&lt;/p&gt;&#xA;&lt;p&gt;Vaikka yllä linkittämäni ohje on kehno, asennus sujui silti mainiosti. Vaikeinta oli saada luotua USB-tikulle aktiivinen NTFS-partitio, jonka tein lopulta &lt;a href=&#34;http://kmwoley.com/blog/?p=345&#34;&gt;näiden ohjeiden mukaan&lt;/a&gt;. Eee PC piti myöskin buutata eri kohdasta kuin ohjeessa sanotaan (ei &amp;quot;Single Flash Reader&amp;quot; vaan se toinen USB-valinta). Sitten asennus lähti pörräämään. Olin myöskin jo aiemmin downgradennut BIOSin versioon 1101, koska monet ovat raportoineet uudempien toimimattomuudesta Windows 7:n kanssa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Oikeus: Poliisin nettiestosta ei voi valittaa</title>
      <link>https://kennethfalck.net/2009/05/25/oikeus-poliisin-nettiestosta-ei-voi-valittaa/</link>
      <pubDate>Mon, 25 May 2009 16:42:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/25/oikeus-poliisin-nettiestosta-ei-voi-valittaa/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.hs.fi/artikkeli/1135246227007?ref=irc&#34;&gt;Hesari kirjoittaa&lt;/a&gt;: &amp;quot;Jos keskusrikospoliisi lisää lapsipornon vastaiselle estolistalleen jonkin verkkosivuston, ei lisäyksestä voi valittaa oikeuteen. Tähän päätyi Helsingin hallinto-oikeus, joka käsitteli nettiaktivisti Matti Nikin valitusta estoa kritisoivan sivustonsa joutumisesta poliisin listalle.&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Onpahan mielenkiintoinen tilanne saatu aikaan. Poliisi voi siis mielin määrin lisäillä estolistalle mitä tahansa saitteja, kukaan ei valvo kyseistä toimintaa, eikä siitä voi myöskään valittaa mihinkään.&lt;/p&gt;&#xA;&lt;p&gt;(Alun perin listalle piti laittaa ulkomaisia, lapsipornoa sisältäviä saitteja. Matti Nikin sivusto ei ole kumpaakaan.)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Äänikynnysjärjestelmä uhkaa demokratiaa</title>
      <link>https://kennethfalck.net/2009/05/19/%C3%A4%C3%A4nikynnysj%C3%A4rjestelm%C3%A4-uhkaa-demokratiaa/</link>
      <pubDate>Tue, 19 May 2009 19:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/19/%C3%A4%C3%A4nikynnysj%C3%A4rjestelm%C3%A4-uhkaa-demokratiaa/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.piraattipuolue.fi/lehdisto/lehdistotiedotteet/256-aanikynnysjarjestelma&#34;&gt;Äänikynnysjärjestelmä uhkaa demokratiaa &lt;/a&gt;&lt;/p&gt;&#xA;&lt;div style=&#34;color:#666666;padding-left:2em;padding-bottom:1em&#34;&gt;&#34;Hallituksen esittämä äänikynnysjärjestelmä on uhka suomalaiselle demokratialle. &#39;Puoluekentän pirstaloitumista&#39; kitkemään tehty esitys tekee minkä lupaa: sementoi entistä vahvemmin nykyiset eduskuntapuolueet vallan kahvaan ja haittaa pienpuolueiden ja heidän kannattajiensa äänen kuulumista eduskunnassa. Yli sadantuhannen suomalaisen äänet voisivat päätyä käytännössä hylätyiksi ehdotetulla 3 % äänikynnyksellä. &#39;Samantien voitaisiin kirjata lakiin tämänhetkiset eduskuntapuolueet ainoiksi sallituiksi puolueiksi&#39;, kommentoi Piraattipuolueen puheenjohtaja Pasi Palmulehto.&#34;&lt;/div&gt;&#xA;&lt;p&gt;Olisi mielenkiintoista kuulla, tietääkö joku oikeasti päteviä perusteluita äänikynnysten käyttöönotolle? Onko tarkoitus todellakin nimenomaan &lt;em&gt;estää&lt;/em&gt; pienten puolueiden pääseminen vaikuttamaan eduskuntaan?&lt;/p&gt;</description>
    </item>
    <item>
      <title>We&#39;re All The Pirate Bay</title>
      <link>https://kennethfalck.net/2009/05/18/were-all-the-pirate-bay/</link>
      <pubDate>Mon, 18 May 2009 03:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/18/were-all-the-pirate-bay/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://thepiratebay.org/special/2009mmtpb.php&#34;&gt;We&amp;#39;re All The Pirate Bay&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;object width=&#34;425&#34; height=&#34;344&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/1fCHoI0h7Tc&amp;hl=en&amp;fs=1&#34;&gt;&lt;/param&gt;&lt;param name=&#34;allowFullScreen&#34; value=&#34;true&#34;&gt;&lt;/param&gt;&lt;param name=&#34;allowscriptaccess&#34; value=&#34;always&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/1fCHoI0h7Tc&amp;hl=en&amp;fs=1&#34; type=&#34;application/x-shockwave-flash&#34; allowscriptaccess=&#34;always&#34; allowfullscreen=&#34;true&#34; width=&#34;425&#34; height=&#34;344&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chilling Effects</title>
      <link>https://kennethfalck.net/2009/05/16/chilling-effects/</link>
      <pubDate>Sat, 16 May 2009 00:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/16/chilling-effects/</guid>
      <description>&lt;p&gt;Google: &amp;quot;In response to a complaint we received under the US Digital Millennium Copyright Act, we have removed 1 result(s) from this page. If you wish, you may read the DMCA complaint that caused the removal(s) at ChillingEffects.org.&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Fuck this.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Windows, PC-Suite ja ajan hukkaaminen Säätämiseen</title>
      <link>https://kennethfalck.net/2009/05/13/windows-pc-suite-ja-ajan-hukkaaminen-s%C3%A4%C3%A4t%C3%A4miseen/</link>
      <pubDate>Wed, 13 May 2009 22:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/13/windows-pc-suite-ja-ajan-hukkaaminen-s%C3%A4%C3%A4t%C3%A4miseen/</guid>
      <description>&lt;p&gt;Tulipa käytettyä reilut neljä tuntia isän Acer-kannettavan parissa (siinä on luonnollisesti suomenkielinen Windows XP). Tarkoitus oli luoda Nokian kännykällä ja USB-kaapelilla nettiyhteys, mikä loppujen lopuksi ihmeen kaupalla onnistuikin.&lt;/p&gt;&#xA;&lt;p&gt;Aika vierähti taas kerran siihen epämääräiseen jatkuvaan sekoiluun, josta Windows-käyttäjän arki muodostuu. Erilaiset ohjelmat jumiutuvat, katoavat näkymättömiin taustalle, lakkaavat päivittämästä ikkunaansa, herjailevat outoja virheilmoituksia, käynnistelevät konetta uudelleen ja latautuvat ikuisuuksia tuntuvan ajan buutissa.&lt;/p&gt;&#xA;&lt;p&gt;Pahan alku ja juuri lienee &amp;quot;Elisa Tietoturvapalvelu&amp;quot;, joka yrittää blokata kaikkea mahdollista, ja todennäköisesti hidastaa koneen toimintaa 50+%.  Miten näistä tietoturvahirviöistä oikein päästäisiin eroon? Sisko onneksi jo siirtyi Mac-käyttäjäksi ja peruutti oman tietoturvapalvelunsa tarpeettomana.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Silverlight: Stack Overflow async-IO:lla</title>
      <link>https://kennethfalck.net/2009/05/09/silverlight-stack-overflow-async-iolla/</link>
      <pubDate>Sat, 09 May 2009 16:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/09/silverlight-stack-overflow-async-iolla/</guid>
      <description>&lt;p&gt;Yllätyin hieman, kun koodailin erästä Silverlight 3 -projektia, joka käyttää asynkronisia lukuoperaatioita HTTP-yhteyksissä. Luettuaan melko suuren määrän dataa verkosta ohjelma sai yhtäkkiä Stack Overflow -virheilmoituksen, vaikkei sille ollut mitään järjellistä selitystä.&lt;/p&gt;&#xA;&lt;p&gt;Pienellä googlailulla kävi ilmi, että &lt;a href=&#34;http://weblogs.asp.net/justin_rogers/archive/2004/05/06/127580.aspx&#34;&gt;.NETin asynkroniset operaatiot eivät olekaan aina asynkronisia&lt;/a&gt;. Joskus Stream.BeginRead() suorittaa lukuoperaation välittömästi synkronisesti, jolloin callback-metodia kutsutaan jo ennen kuin BeginRead() palautuu.&lt;/p&gt;&#xA;&lt;p&gt;.NETin &amp;quot;luonnollinen&amp;quot; tapa suorittaa asynkronisia operaatioita on tällainen:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;Stream stream;&#xA;AsyncCallback callback = new AsyncCallback(ReadComplete);&#xA;&lt;p&gt;void StartReading()&#xA;{&#xA;stream.BeginRead(callback, null);&#xA;}&lt;/p&gt;</description>
    </item>
    <item>
      <title>VirtualBox 2.2.2 ja Visual Studio 2008</title>
      <link>https://kennethfalck.net/2009/05/08/virtualbox-2.2.2-ja-visual-studio-2008/</link>
      <pubDate>Fri, 08 May 2009 14:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/08/virtualbox-2.2.2-ja-visual-studio-2008/</guid>
      <description>&lt;p&gt;Näyttäisi siltä, että Visual Studio 2008 toimii vihdoinkin kunnolla &lt;a href=&#34;http://www.virtualbox.org/&#34;&gt;VirtualBox&lt;/a&gt; 2.2.2:n alle asennetussa XP:ssä. Aiemmin Visual Studion asennus on kaatanut koko virtuaalikoneen.&lt;/p&gt;&#xA;&lt;p&gt;Tulin kokeilleeksi tätä kun halusin asentaa &lt;a href=&#34;http://silverlight.net/getstarted/silverlight3/default.aspx&#34;&gt;Silverlight 3 beta SDK:n&lt;/a&gt; iMacciin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sulava päivitys Ubuntu 9.04:ään</title>
      <link>https://kennethfalck.net/2009/05/04/sulava-p%C3%A4ivitys-ubuntu-9.04%C3%A4%C3%A4n/</link>
      <pubDate>Mon, 04 May 2009 14:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/05/04/sulava-p%C3%A4ivitys-ubuntu-9.04%C3%A4%C3%A4n/</guid>
      <description>&lt;p&gt;Virtuaalipalvelin, jolla tämäkin saitti pyörii, päivittyi viime viikolla Ubuntu 9.04:ään ja näyttää toimivan mainiosti kuten ennenkin. Päivitys meni kyselemättä läpi, poislukien muutama apache-ssl-konffitiedosto, joita olin muokannut oletuksista.&lt;/p&gt;&#xA;&lt;p&gt;Ainoa kauneusvirhe on Pythonin oletusversion päivittyminen 2.6:een, mikä aiheuttaa muutamia deprecation-varoituksia. Kaikki kyllä toimii. Korjasin kauneusvirheet toistaiseksi vaihtamalla muutamiin skripteihin alkuun&lt;/p&gt;&#xA;&lt;p&gt;#!/usr/bin/python2.5&lt;/p&gt;&#xA;&lt;p&gt;jolloin ne pyörivät vanhalla versiolla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Teletunnistetiedot hukkaan</title>
      <link>https://kennethfalck.net/2009/04/28/teletunnistetiedot-hukkaan/</link>
      <pubDate>Tue, 28 Apr 2009 21:42:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/28/teletunnistetiedot-hukkaan/</guid>
      <description>&lt;p&gt;Tämä on loistavaa kehitystä: &lt;a href=&#34;http://arstechnica.com/telecom/news/2009/04/second-swedish-ip-decides-to-nuke-ip-address-logs.ars&#34;&gt;&#xA;Second Swedish ISP decides to nuke IP address logs&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Toivotaan, että yhteyshistoriattomasta Internet-operoinnista tulee kilpailuvaltti kaikille operaattoreille.&lt;/p&gt;</description>
    </item>
    <item>
      <title>H1N1 progress on Google Maps</title>
      <link>https://kennethfalck.net/2009/04/28/h1n1-progress-on-google-maps/</link>
      <pubDate>Tue, 28 Apr 2009 03:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/28/h1n1-progress-on-google-maps/</guid>
      <description>&lt;p&gt;[New map: &lt;a href=&#34;http://flutracker.rhizalabs.com/&#34;&gt;http://flutracker.rhizalabs.com/&lt;/a&gt;]&lt;/p&gt;</description>
    </item>
    <item>
      <title>Twitterin skaalaaminen In Memory Data Grideillä</title>
      <link>https://kennethfalck.net/2009/04/15/twitterin-skaalaaminen-in-memory-data-grideill%C3%A4/</link>
      <pubDate>Wed, 15 Apr 2009 17:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/15/twitterin-skaalaaminen-in-memory-data-grideill%C3%A4/</guid>
      <description>&lt;p&gt;Luin mielenkiintoisen artikkelin &lt;a href=&#34;http://highscalability.com/designing-scalable-twitter&#34;&gt;In Memory Data Grideistä&lt;/a&gt; (highscalability.com) ja niiden soveltamisesta Twitterin kaltaisiin palveluihin.&lt;/p&gt;&#xA;&lt;p&gt;Yleensähän webbipalvelut rakennetaan SQL-tietokannan päälle ja lisätään joukko memcached-palvelimia, jotka pitävät tietoa välimuistissa. Varastoitu tieto on &amp;quot;tyhmiä&amp;quot; bittijonoja, tyypillisesti serialisoituja PHP-objekteja, jotka sitten myöhemmin palautetaan henkiin Apachen sisällä. Kaikki logiikka sijoitetaan Apachessa ajettavaan PHP:hen, yleensä model-objekteihin.&lt;/p&gt;&#xA;&lt;p&gt;IMDG-lähestymistavassa ei varastoidakaan memcachediin pelkkiä tyhmiä bittijonoja, vaan pidetään muistissa aktiivisia objekteja, jotka voivat suorittaa itsenäisiä operaatioita klusterin kullakin noodilla. Tähän on olemassa useita kaupallisia Java-pohjaisia tuotteita, kuten &lt;a href=&#34;http://highscalability.com/ibm-websphere-extreme-scale-imdg&#34;&gt;IBM WebSphere eXtreme Scale&lt;/a&gt; ja &lt;a href=&#34;http://www.gigaspaces.com/&#34;&gt;GigaSpaces XAP&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mac OS X ja USB-levyjen turha heräily</title>
      <link>https://kennethfalck.net/2009/04/15/mac-os-x-ja-usb-levyjen-turha-her%C3%A4ily/</link>
      <pubDate>Wed, 15 Apr 2009 16:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/15/mac-os-x-ja-usb-levyjen-turha-her%C3%A4ily/</guid>
      <description>&lt;p&gt;Yksi asia minua ärsyttää Macissa. Kun ulkoinen USB-kovalevy on virransäästötilassa (pysähtyneenä), se tuppaa käynnistymään aina, kun jostain ohjelmasta avataan &amp;quot;Save As&amp;quot; -dialogi. En oikein tiedä johtuuko tämä siitä, että kyseinen levy näkyy dialogin Devices-listassa, vai skannaako sovellus kaikki kovalevyt läpi ja aiheuttaa sillä heräämisen.&lt;/p&gt;&#xA;&lt;p&gt;Tapahtuukohan samaa Windowsissa? Pysyvätkö USB-levyt nukkumassa, kunnes niihin oikeasti navigoi Explorerin kautta sisään, vai heräilevätkö ne toisinaan tarpeettomasti sovellusten tehdessä asioita?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Omat lyhyet URL-osoitteet käyttöön</title>
      <link>https://kennethfalck.net/2009/04/13/omat-lyhyet-url-osoitteet-k%C3%A4ytt%C3%B6%C3%B6n/</link>
      <pubDate>Mon, 13 Apr 2009 21:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/13/omat-lyhyet-url-osoitteet-k%C3%A4ytt%C3%B6%C3%B6n/</guid>
      <description>&lt;p&gt;TinyURL on ihan nollakasia ja nyt on trendikästä tehdä omat lyhyet URL:t itse, joten päätin minäkin liittyä joukkoon. Tein pääsiäisen lomaprojektina simppelin uudelleenohjaussysteemin tänne omalle saitilleni:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Rekisteröin niin lyhyen domainin kuin mahdollista: &lt;a href=&#34;http://flk.me&#34;&gt;flk.me&lt;/a&gt; (tämä kfalck.net ei paljon lyhene, mutta tuo ei ainakaan lyhene enää mitenkään :-).&lt;/li&gt;&#xA;&lt;li&gt;Toteutin simppelin PHP/MySQL-pohjaisen redirect-palvelun, joka generoi aliaksia kuten &lt;a href=&#34;http://flk.me/cl&#34;&gt;http://flk.me/cl&lt;/a&gt;.&lt;/li&gt;&#xA;&lt;li&gt;Koodasin Drupal-moduulin, joka generoi uusille artikkeleille lyhyet URLit em. palvelua käyttäen ja varastoi ne noodien yhteyteen.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Ajatus tähän syntyi lukiessani &lt;a href=&#34;http://benramsey.com/archives/specifying-revcanonical-with-http/&#34;&gt;artikkelia rev=&amp;quot;canonical&amp;quot; -ehdotuksesta&lt;/a&gt;. Tämä lisäisi HTML:ään mahdollisuuden lisätä dokumenttiin &amp;lt;link rev=&amp;quot;canonical&amp;quot;&amp;gt; -tagi, joka kertoo sen lyhennetyn URLin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin pelastat hampaasi pienellä vaivalla</title>
      <link>https://kennethfalck.net/2009/04/10/n%C3%A4in-pelastat-hampaasi-pienell%C3%A4-vaivalla/</link>
      <pubDate>Fri, 10 Apr 2009 05:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/10/n%C3%A4in-pelastat-hampaasi-pienell%C3%A4-vaivalla/</guid>
      <description>&lt;p&gt;Bloggailen aika harvoin tämän tyyppisistä asioista, mutta nyt täytyy. Kävin nimittäin tänään hammaslääkärin tarkastuksessa ja sain kymmenen pistettä ja papukaijamerkin. Ennen olen aina kärsinyt jatkuvasta hammaskivestä, aroista ikenistä ja karieksesta. Kaikki vaivat olivat kadonneet puolessa vuodessa.&lt;/p&gt;&#xA;&lt;p&gt;Tästä on sataprosenttisesti kiittäminen &lt;a href=&#34;http://www.amazon.co.uk/TePe-Interdental-Brush-Yellow-0-7mm/dp/B001AI8AR6%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3DB001AI8AR6&#34;&gt;TePen hammasväliharjoja&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Suosittelen niitä lämpimästi kaikille, joille pelkkä hammaslanka ei tehoa. Oikea harjakoko on helppo löytää kokeilemalla tai hammaslääkäriltä kysymällä. Koko purukaluston hoitamiseen tarvitsee tyypillisesti useita eri kokoisia harjoja. Itselläni tarvittava range on noin 0.45mm - 0.8mm.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Acquia Drupalin automaattipäivitys Subversionilla</title>
      <link>https://kennethfalck.net/2009/04/09/acquia-drupalin-automaattip%C3%A4ivitys-subversionilla/</link>
      <pubDate>Thu, 09 Apr 2009 21:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/09/acquia-drupalin-automaattip%C3%A4ivitys-subversionilla/</guid>
      <description>&lt;p&gt;Drupalin päivittäminen jatkuvasti uusiin versiohin on välillä tuskallista, varsinkin jos pyörittää useita servereitä ja niillä useita eri Drupal-saitteja.&lt;/p&gt;&#xA;&lt;p&gt;Acquia tarjoaa tähän kiintoisan ratkaisun: &lt;a href=&#34;http://acquia.com/documentation/getting-started/fresh-install/svn&#34;&gt;Subversion-repositoryn, joka päivittyy aina uusimpaan Drupal-releaseen&lt;/a&gt;. Branchi on tägätty &amp;quot;1.x-6.x&amp;quot; eli sieltä tulee vain Acquia 1.x-sarjan (Drupal 6.x-sarjan) versioita.&lt;/p&gt;&#xA;&lt;p&gt;Ajattelinkin kokeilla virittää omaan blogiini automaattipäivityksen, joka ajaa &amp;quot;svn updatea&amp;quot; säännöllisesti ja kutsuu sen jälkeen update.php:tä niin, että tietokantakin päivittyy automaattisesti ajan tasalle. Tämä voisi olla aika nätti automaattipäivitysratkaisu sellaisille Drupal-saiteille, jotka pyörivät hiljaa taustalla ja jotka unohtuvat muuten päivittää säännöllisesti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>WordPress MU on sontaa</title>
      <link>https://kennethfalck.net/2009/04/06/wordpress-mu-on-sontaa/</link>
      <pubDate>Mon, 06 Apr 2009 03:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/06/wordpress-mu-on-sontaa/</guid>
      <description>&lt;p&gt;Kyllästyin juuri totaalisesti &lt;a href=&#34;http://mu.wordpress.org/&#34;&gt;WordPress MU:hun&lt;/a&gt; (multiuser). Meillä on töissä käytetty sitä sisäisten blogien toteuttamiseen. Se oli ennenkin kamala viritys, mutta päivitys 2.7-versioon rikkoi ylläpitokäyttöliittymänkin. Nyt editori jää välillä jumiin minuutin ajaksi suorittaessaan jotain JavaScriptiä. Kuviakaan ei voi enää lisäillä suoraan uutta blogientryjä kirjoittaessa.&lt;/p&gt;&#xA;&lt;p&gt;WordPress on ikäänkuin blogiohjelmistojen Microsoft Windows. Se on saatu näyttämään ensikatsomalta korealta (joskin aivan liian monimutkaiselta). Mitä enemmän sitä käyttää, sitä enemmän törmää läpimädän arkkitehtuurin aiheuttamiin oireisiin. Kuten nyt vaikkapa siihen, että WordPress MU tallentaa saitin domainin miljoonaan paikkaan tietokannassa, eikä sitä voi muuttaa enää jälkeenpäin (helposti/järkevästi).&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone-sovellusten optimointia fiksulla MVC-ohjelmoinnilla</title>
      <link>https://kennethfalck.net/2009/04/04/iphone-sovellusten-optimointia-fiksulla-mvc-ohjelmoinnilla/</link>
      <pubDate>Sat, 04 Apr 2009 19:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/04/iphone-sovellusten-optimointia-fiksulla-mvc-ohjelmoinnilla/</guid>
      <description>&lt;p&gt;Applen tarjoama &lt;a href=&#34;http://developer.apple.com/iphone/&#34;&gt;iPhone SDK&lt;/a&gt; on kuin karkkia koodaajalle. Interface Builderilla on niin helppoa rakennella WYSIWYG-näkymiä komponenteista, että jää helposti opiskelematta paljon taustatietoutta. Sellaista taustatietoutta, jonka avulla voi a) tehdä sovelluksista tehokkaampia ja nopeampia sekä b) välttää käyttöliittymämokat, kun tekee asiat suositellulla tavalla.&lt;/p&gt;&#xA;&lt;p&gt;Pari asiaa, jotka ovat auenneet itselleni viime aikoina muutamia harrasteprojekteja koodaillessa:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;iPhonen MVC-malli pitää opiskella ja sisäistää kunnolla, ennen kuin lähtee sähläämään omien kontrollereiden kanssa.&lt;/li&gt;&#xA;&lt;li&gt;Melkein kaikki tavallisen sovelluksen navigaatiotarpeet on helppo toteuttaa yhdistelemällä valmiita Tab Controllereita, Navigation Controllereita ja Table View Controllereita sopivasti sisäkkäin.&lt;/li&gt;&#xA;&lt;li&gt;Useimmiten iPhone SDK:n sisäänrakennetut kontrolleriluokat (UIViewController ja sen perilliset) huolehtivat kaikesta automaattisesti. Niitä kannattaa laajentaa vain sen verran, että saa omat datakentät täytettyä ja käsiteltyä.&lt;/li&gt;&#xA;&lt;li&gt;Näkymät (UIView ja sen perilliset) kannattaa hajauttaa erillisiin .xib-tiedostoihin, jolloin sovellus käynnistyy paljon nopeammin ja näkymiä lataillaan vasta tarvittaessa.&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;[amazon 1430216263 thumbnail] Eräs tapa opiskella iPhonea alusta lähtien on &lt;a href=&#34;http://www.amazon.co.uk/Beginning-iPhone-Development-Exploring-SDK/dp/1430216263%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1430216263&#34;&gt;Beginning iPhone Development&lt;/a&gt; -kirja. Se on hieman pitkäpiimäinen ja käy läpi paljon manuaalisia toimenpiteitä, jotka normaalisti tehdään Xcoden projektipohjilla. Mutta lukemalla tärkeät osuudet siitä saa hyvän mielikuvan &amp;quot;oikeasta&amp;quot; tavasta toteuttaa iPhone-sovelluksia MVC-mallin mukaisesti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Git voittaa Subversionin 6-0</title>
      <link>https://kennethfalck.net/2009/04/03/git-voittaa-subversionin-6-0/</link>
      <pubDate>Fri, 03 Apr 2009 17:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/04/03/git-voittaa-subversionin-6-0/</guid>
      <description>&lt;p&gt;Olen hiljalleen siirtynyt henkilökohtaisessa käytössä kokonaan Subversionista &lt;a href=&#34;http://git-scm.com/&#34;&gt;Gitiin&lt;/a&gt;. Aloitan nykyään kaikki uudet projektit Gitillä ja käytän Subversionia lähinnä yhteistyökumppaneiden kanssa toimiessa.&lt;/p&gt;&#xA;&lt;p&gt;Huonoja kokemuksia Subversionista: Otimme eräässä projektissa käyttöön automaattiset branchit ja merget. Subversion 1.5 osaa pitää kirjaa brancheista mergeinfo-propertyn avulla. Se siis muistaa, mistä kohdasta branch aloitettiin, ja mitä osuuksia siitä on mergetetty takaisin trunkkiin.&lt;/p&gt;&#xA;&lt;p&gt;Valitettavasti tämä on silti kovin työlästä. Kehittäjän täytyy pitää työhakemistossaan erikseen omaa branchia ja erikseen trunkkia. Sitten pitää ajella niihin svn mergeä ja merge --reintegratea vuorotellen. (Ja muistaa kumpi on kumpi.) Vähän väliä tulee &amp;quot;maagisia&amp;quot; näkymättömiä muutoksia commitattavaksi, kun Subversion päivittelee mergeinfoa, ja niistä syntyy ehkä uusia revisioita. Kaiken kaikkiaan siis kovin epämääräinen fiilis. Tämä koko toiminnallisuus on selvästi lisätty Subversioniin vasta jälkeenpäin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Yii Framework pesee Zend Frameworkin 10x</title>
      <link>https://kennethfalck.net/2009/03/30/yii-framework-pesee-zend-frameworkin-10x/</link>
      <pubDate>Mon, 30 Mar 2009 21:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/30/yii-framework-pesee-zend-frameworkin-10x/</guid>
      <description>&lt;p&gt;Luin juuri läpi &lt;a href=&#34;http://www.yiiframework.com/doc/guide/index&#34;&gt;The Definitive Guide to Yii Frameworkin&lt;/a&gt; (136s, saatavana PDF:nä) ja olen vaikuttunut. Yii tarjoaa Zendiä vastaavan MVC-ympäristön omien web-sovellusten kehittämiseen, mutta on paljon tehokkaampi ja monipuolisempi. Bongattu täältä: &lt;a href=&#34;http://www.dzone.com/links/rss/top_10_php_mvc_framworks.html&#34;&gt;Top 10 PHP MVC Frameworks&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Tehokkuutta tuo se, että Yii-sovelluksista saa karsittua pois turhan bloatin. Komponentit ladataan &amp;quot;on-demandina&amp;quot; vasta kun niitä oikeasti tarvitaan. Tuotantokäyttöä varten on tarjolla optimoitu yiilite.php, joka lataa bootstrapin kerralla muistiin, joten aikaa ei kulu hukkaan yksittäisten pikkuobjektien pyörittelyyn.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vinkki: iPhone paranee radikaalisti kontaktiryhmillä</title>
      <link>https://kennethfalck.net/2009/03/21/vinkki-iphone-paranee-radikaalisti-kontaktiryhmill%C3%A4/</link>
      <pubDate>Sat, 21 Mar 2009 17:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/21/vinkki-iphone-paranee-radikaalisti-kontaktiryhmill%C3%A4/</guid>
      <description>&lt;p&gt;Minulla on historiallisesti ollut sadoittain yhteystietoja kännykässä. Useimmat ovat vanhoja bisneskontakteja tai tuttuja, joihin en ole ollut vuosiin yhteyksissä, mutta joita en ole kuitenkaan halunnut poistaa lopullisesti.&lt;/p&gt;&#xA;&lt;p&gt;Hiljattain huomasin, että iPhone tukee mainiosti kontaktien ryhmittelyä. Ryhmittelyn voi tehdä helposti esimerkiksi Macissa Address Bookissa vetämällä kontaktit haluttuihin ryhmiin.&lt;/p&gt;&#xA;&lt;p&gt;Parasta tässä on se, että iPhone muistaa mikä ryhmä on käytössä. Kun lähettää tekstiviestiä tai soittaa puhelua, näkyviin tulee oletuksena kyseinen ryhmä. Itselleni loin ryhmän nimeltä &amp;quot;Quick&amp;quot;, jossa on parikymmentä useimmin kontaktoimaani henkilöä, ja muihin pääsen käsiksi parilla klikkauksella tarvittaessa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kaikkien aikojen paras scifi-kirja</title>
      <link>https://kennethfalck.net/2009/03/21/kaikkien-aikojen-paras-scifi-kirja/</link>
      <pubDate>Sat, 21 Mar 2009 15:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/21/kaikkien-aikojen-paras-scifi-kirja/</guid>
      <description>&lt;p&gt;Minulla on ollut pitkään aukko sivistyksessä &lt;a href=&#34;http://en.wikipedia.org/wiki/William_gibson&#34;&gt;William Gibsonin&lt;/a&gt; kirjojen suhteen. Ne olivat suuressa suosiossa BBS-aikoina 90-luvun alussa, mutta itse lueskelin silloin enemmän &lt;a href=&#34;http://en.wikipedia.org/wiki/Arthur_C._Clarke&#34;&gt;Clarken&lt;/a&gt; ja &lt;a href=&#34;http://en.wikipedia.org/wiki/Isaac_asimov&#34;&gt;Asimovin&lt;/a&gt; kaltaista kirjallisuutta kuin cyberpunkia.&lt;/p&gt;&#xA;&lt;p&gt;Nyttemmin olen alkanut paikata tätä aukkoa. Luin jokunen vuosi sitten Neal Stephensonin &lt;a href=&#34;http://en.wikipedia.org/wiki/Snow_crash&#34;&gt;Snow Crashin&lt;/a&gt;, joka on &amp;quot;metaverse&amp;quot;-termin äiti. Sittemmin käsiini osuivat jostain Gibsonin &lt;a href=&#34;http://en.wikipedia.org/wiki/Count_Zero&#34;&gt;Count Zero&lt;/a&gt; ja &lt;a href=&#34;http://en.wikipedia.org/wiki/Virtual_Light&#34;&gt;Virtual Light&lt;/a&gt;, jotka olivat kyllä hyviä, mutta jotenkin vaikeasti lähestyttäviä.&lt;/p&gt;&#xA;&lt;p&gt;Näiden kirjojen inspiroimana päätin etsiä käsiini &lt;a href=&#34;http://en.wikipedia.org/wiki/Neuromancer&#34;&gt;Neuromancerin&lt;/a&gt;, joka on Gibsonin esikoiskirja ja ehkä kaikkein aikojen kuuluisin cyberpunk-romaani. Olin kuitenkin kokenut aiemmat kirjat sen verran raskaiksi, että halusin lukea Neuromancerin suomeksi, joten metsästin &lt;a href=&#34;http://huuto.net/fi/&#34;&gt;huuto.netistä&lt;/a&gt; Arto Häilän käännöksen &lt;a href=&#34;http://fi.wikipedia.org/wiki/Neurovelho&#34;&gt;Neurovelho&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>IE8 ja IE7 helposti VirtualBoxilla</title>
      <link>https://kennethfalck.net/2009/03/20/ie8-ja-ie7-helposti-virtualboxilla/</link>
      <pubDate>Fri, 20 Mar 2009 20:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/20/ie8-ja-ie7-helposti-virtualboxilla/</guid>
      <description>&lt;p&gt;Tuli testattua, että olemassaoleva Windows XP -virtuaalikone on helppo duplikoida VirtualBoxissa uudeksi koneeksi, ja asentaa siihen sitten IE8. Näin voi testailla saitteja rinnakkain sekä IE7:llä että IE8:lla erillisissä virtuaalikoneissa.&lt;/p&gt;&#xA;&lt;p&gt;Kloonaaminen tapahtuu käytännössä kahdessa askeleessa, esimerkiksi &lt;a href=&#34;http://srackham.wordpress.com/cloning-and-copying-virtualbox-virtual-machines/&#34;&gt;näiden ohjeiden mukaan&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Kloonataan virtuaalinen kovalevy (VDI-tiedosto) VBoxManage-työkalulla.&lt;/li&gt;&#xA;&lt;li&gt;Luodaan uusi virtuaalikone, jolla on sama konfiguraatio kuin vanhalla ja käytetään uutta VDI:tä sen levynä. Konfiguraatio pitää luoda käsin, mutta siinä ei ole paljon muuta aseteltavaa kuin muistin koko.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Ennen levyn kloonaamista kannattaa ajaa kaikki Windows Update -päivitykset valmiiksi sisään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal ja RDFa vievät webiä semanttiseksi</title>
      <link>https://kennethfalck.net/2009/03/17/drupal-ja-rdfa-viev%C3%A4t-webi%C3%A4-semanttiseksi/</link>
      <pubDate>Tue, 17 Mar 2009 11:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/17/drupal-ja-rdfa-viev%C3%A4t-webi%C3%A4-semanttiseksi/</guid>
      <description>&lt;p&gt;Dries kirjoittaa &lt;a href=&#34;http://buytaert.net/rdfa-and-drupal&#34;&gt;Drupalista ja RDFa:sta&lt;/a&gt;. Pointtina on, että Drupal-pohjaiset saitit sisältävät luonnostaan paljon semanttista informaatiota niihin tallennetusta sisällöstä. Tavallisesti tämä informaatio on &amp;quot;piilossa&amp;quot;, koska se esitetään vain visuaalisessa muodossa käyttäjälle HTML:nä.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.w3.org/TR/xhtml-rdfa-primer/&#34;&gt;RDFa:n&lt;/a&gt; avulla (X)HTML:n sekaan voidaan upottaa semanttisia merkintöjä. Normaalisti sivun otsikko ja tekijän nimi merkittäisiin ehkä h2- ja h3-tageilla. RDFa:lla ne voidaan tunnistaa näin:&lt;/p&gt;&#xA;&lt;pre style=&#34;padding:0.5em;background:#eee;border:1px solid #ccc&#34;&gt;&#xA;&amp;lt;div xmlns:dc=&#34;http://purl.org/dc/elements/1.1/&#34;&amp;gt;&#xA;   &amp;lt;h2 property=&#34;dc:title&#34;&amp;gt;The trouble with Bob&amp;lt;/h2&amp;gt;&#xA;   &amp;lt;h3 property=&#34;dc:creator&#34;&amp;gt;Alice&amp;lt;/h3&amp;gt;&#xA;&amp;lt;/div&amp;gt;&#xA;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://dublincore.org/&#34;&gt;Dublin Coren&lt;/a&gt; lisäksi RDFa:sta viitataan esim. &lt;a href=&#34;http://www.foaf-project.org/&#34;&gt;FOAFiin&lt;/a&gt;, jolla voi merkitä tarkempia kontaktitietoja, kuten puhelinnumeroita ja sähköpostiosoitteita, sekä &lt;a href=&#34;http://creativecommons.org/&#34;&gt;Creative Commonsiin&lt;/a&gt;, joka sopii lisenssitietojen tunnistamiseen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ljubljana, Slovenia on hyvä paikka</title>
      <link>https://kennethfalck.net/2009/03/16/ljubljana-slovenia-on-hyv%C3%A4-paikka/</link>
      <pubDate>Mon, 16 Mar 2009 22:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/16/ljubljana-slovenia-on-hyv%C3%A4-paikka/</guid>
      <description>&lt;p&gt;Olen ollut tässä maassa vasta tunnin ajan, mutta olen jo päättänyt, että Slovenian pääkaupunki Ljubljana on hyvä paikka. Tähän on useita syitä, jotka luettelen seuraavaksi.&lt;/p&gt;&#xA;&lt;p&gt;Ensinnäkin kaikki puhuvat täällä sujuvaa englantia. Mukaanlukien taksikuski. Taksi oli  helppo saada Joe Pu?nikin lentokentältä heti ovensuusta. Kuski alkoi puhua suomalaisesta lätkästä ja Saku Koivusta, tiesi myös Matti Nykäsen :-D Taksikokemus oli hyvin samanlainen kuin Suomessa: iso siisti mersu, sama hintataso, kuitti tuli luonnostaan. Annoin 3 euroa tippiä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OLPC:n Windows-version voi unohtaa?</title>
      <link>https://kennethfalck.net/2009/03/15/olpcn-windows-version-voi-unohtaa/</link>
      <pubDate>Sun, 15 Mar 2009 19:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/15/olpcn-windows-version-voi-unohtaa/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://mobile.slashdot.org/article.pl?sid=09/03/12/1726253&amp;from=rss&#34;&gt;Slashdotin mukaan&lt;/a&gt; OLPC-tietokoneen seuraava &lt;a href=&#34;http://en.wikipedia.org/wiki/OLPC_XO-2#Technology&#34;&gt;XO-2&lt;/a&gt;-malli tulee luultavimmin perustumaan ARM-prosessoriin, jolla saadaan parempi akunkesto kuin x86-suorittimilla.&lt;/p&gt;&#xA;&lt;p&gt;Tämä tarkoittanee käytännössä myös Windows-version hautaamista lopullisesti, sillä XP:tä sen paremmin kuin Vistaa tai Windows 7:kään ei ole olemassa ARM-alustalle. Linuxista puolestaan on lukuisia valmiita ARM-versioita.&lt;/p&gt;&#xA;&lt;p&gt;Toisaalta Slahdotin kommenteissa on sellainenkin mielenkiintoinen näkökulma, että netbook-markkina on jo luonnostaan pudottanut pikkuläppäreiden kustannukset alle 300 euron. Eivät ne ihan vielä 100 dollarissa ole, mutta läheltä liippaa. Kolmaalta XO-2:n kustannustavoite on edeltäjäänsä pienempi, 75 dollaria.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin MacBook maksoi itsensä takaisin</title>
      <link>https://kennethfalck.net/2009/03/15/n%C3%A4in-macbook-maksoi-itsens%C3%A4-takaisin/</link>
      <pubDate>Sun, 15 Mar 2009 15:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/15/n%C3%A4in-macbook-maksoi-itsens%C3%A4-takaisin/</guid>
      <description>&lt;p&gt;Matkustan huomenna Sloveniaan erääseen kokoukseen, jossa tarvitsen mukanani PHP-pohjaista palvelinjärjestelmää. Koska lähden matkaan heti talvilomani jälkeen, stressasin hiukan, miten saan kyseisen systeemin toimimaan läppärissäni käyttämättä koko lomaani siihen.&lt;/p&gt;&#xA;&lt;p&gt;Kaikeksi onneksi minulla on työkoneena MacBook. Sen käyttöjärjestelmässä on valmiina Apache ja PHP sekä MySQL-kirjastot. Piti siis lähinnä asentaa MySQL-palvelimen asennuspaketti sekä replikoida data omalle läppärille. Koko hommaan kului kymmenisen minuuttia.&lt;/p&gt;&#xA;&lt;p&gt;Mac OS X:stä oli vielä tässä tapauksessa muutama erityinen lisäilo:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Palvelinjärjestelmään kuuluu myös pari C:llä koodattua CGI-sovellusta. Ne kääntyivät suoraan olemassaolevalla Makefilellä.&lt;/li&gt;&#xA;&lt;li&gt;Python-apuskriptit toimivat sellaisinaan.&lt;/li&gt;&#xA;&lt;li&gt;Järjestelmään liittyy erillinen datalevy, jonka ratkaisin matkustaessa käyttämällä 1TB USB-levyä. Tämä oli helppo sijoittaa oikeaan kohtaan hakemistohierarkiassa parilla symlinkillä.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Jälleen kerran voin siis suositella lämpimästi Maccien käyttöä erityisesti webbikehittäjille. Ympäristö on helppo virittää samanlaiseksi kuin normaali LAMP-alusta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Design Patterns: Elements of Reusable Object-Oriented Software</title>
      <link>https://kennethfalck.net/2009/03/13/design-patterns-elements-of-reusable-object-oriented-software/</link>
      <pubDate>Fri, 13 Mar 2009 17:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/13/design-patterns-elements-of-reusable-object-oriented-software/</guid>
      <description>&lt;p&gt;[amazon 0201633612 thumbnail] Tulipa luettua näin talvilomalla vihdoinkin läpi &lt;a href=&#34;http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612&#34;&gt;Design Patterns: Elements of Reusable Object-Oriented Software&lt;/a&gt; (Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides).&lt;/p&gt;&#xA;&lt;p&gt;Tämä kirja on varmasti tuttu kaikille ohjelmistosuunnittelijoille, jotka ovat tehneet töitä muunkin kuin kevyiden webbisaittien parissa. Gamma ja kumppanit ovat kartoittaneet OO-patterneja 90-luvun alusta lähtien. Tämäkin kirja on julkaistu jo 1995.&lt;/p&gt;&#xA;&lt;p&gt;Tieto ei ole lainkaan vanhentunut. Koodiesimerkit ovat C++:aa, mutta sinänsä ne pätevät yhtälailla vaikkapa PHP:hen tai Pythoniin. Aika monet tässä kirjassa dokumentoidut patternit ovat tuttuja esimerkiksi Javasta, jonka kautta erilaiset factory-metodit, singleton-objektit ja iteraattorit ovat tulleet monille meistä tutuiksi. Nykyään monet näistä pattereneista ovat osana kaikkia OO-frameworkkeja tavalla tai toisella.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kevätsiivousta</title>
      <link>https://kennethfalck.net/2009/03/11/kev%C3%A4tsiivousta/</link>
      <pubDate>Wed, 11 Mar 2009 03:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/11/kev%C3%A4tsiivousta/</guid>
      <description>&lt;p&gt;Tänään tein vihdoinkin sen mitä olen suunnitellut jo nelisen vuotta: heivasin roskiin / kierrätykseen kaikki ne tavarat, jotka ovat lojuneet koskemattomina kaapeissa viime muutosta lähtien. Voin sanoa, että tunne on vapauttava. Litomaan lähti vaatteita, verhoja, laukkuja, keittiökamoja, sähkötarvikkeita, joulukoristeita, lautapelejä, kodinelektroniikkaa ja paljon muuta krääsää.&lt;/p&gt;&#xA;&lt;p&gt;Nurkissa on kyllä sellaistakin, josta ei vaan raaski luopua. Kuten esimerkiksi C-64, Amiga 2000, PSX, PS2 sekä joukko erilaisia syntikoita, miksereitä ja efektilaitteita. Turhasta PC-raudasta olen onneksi oppinut hankkiutumaan eroon, vaikka edelleen kovalevyjä, kaapeleita, ruuveja, muistipiirejä ja PCI-kortteja tuppaa lojumaan hyllyissä. Siirtyminen kokonaan valmiiksi koottuihin koneisiin, lähinnä Macceihin, helpottaa näiden heivaamista roskiin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miten vuotaisit yrityssalaisuuden netissä?</title>
      <link>https://kennethfalck.net/2009/03/06/miten-vuotaisit-yrityssalaisuuden-netiss%C3%A4/</link>
      <pubDate>Fri, 06 Mar 2009 00:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/03/06/miten-vuotaisit-yrityssalaisuuden-netiss%C3%A4/</guid>
      <description>&lt;p&gt;Nyt kun Lex Nokia on hyväksytty, on kiintoisaa pohtia, millä eri tavoin sitä voi kiertää. Käsittääkseni organisoitua keskustelua tästä aiheesta ei ole kielletty. :-) (Totean myös varmuudeksi, että itse en tällaista omalla työpaikallani koskaan tekisi, mutta on vain hauska pohtia teknisiä keinoja, koska tunnen aihetta hiukan.)&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;1. SFTP&lt;/strong&gt;&#xA;Olettaen että ssh-portti on auki, helpointa olisi siirtää tiedosto SFTP:llä jollekin palvelimelle. Palvelin voisi sijaita esim. Amazonin EC2-pilvessä, jolloin sen omistajan selvittäminen saattaisi olla melko hankalaa. Tarvittaessa palvelinyhteyttä voisi kierrättää tcp-tunneloinnilla monenkin osoitteen kautta. SFTP on salattu, joten tiedoston sisällöstä tai nimestä ei jäisi mihinkään tietoa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dokumenttitietokantojen simulointia MySQL:llä</title>
      <link>https://kennethfalck.net/2009/02/28/dokumenttitietokantojen-simulointia-mysqlll%C3%A4/</link>
      <pubDate>Sat, 28 Feb 2009 17:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/28/dokumenttitietokantojen-simulointia-mysqlll%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://bret.appspot.com/entry/how-friendfeed-uses-mysql&#34;&gt;FriendFeedillä&lt;/a&gt; on kiintoisa tietokantaratkaisu. He ovat rakentaneet CouchDB:n kaltaisen dokumenttitietokannan MySQL:n päälle. Ideana on tallentaa varsinainen data JSON-enkoodattuna yhteen ainoaan blob-sarakkeeseen. Haut tehdään käyttäen erillisiä aputauluja, joissa on tarvittavat kentät indeksoituna.&lt;/p&gt;&#xA;&lt;p&gt;Ratkaisu ei ole kovin relaatiomallin mukainen, mutta vaikuttaa toimivalta, olettaen että järjestelmää käytetään aina dataobjektien läpi. Ja niinhän nykyään useimmiten tehdäänkin. Dataobjektit huolehtivat, että blobiin tallentuu esimerkiksi tällainen JSON-dokumentti:&lt;/p&gt;&#xA;&lt;pre style=&#34;padding:1em;border:1px solid #ccc;background:#eee&#34;&gt;&#xA; {&#34;name&#34;: &#34;John Doe&#34;,&#xA;  &#34;email&#34;: &#34;john.doe@example.com&#34;}&#xA;&lt;/pre&gt;&#xA;&lt;p&gt;Sitten ne tallentavat index_name-tauluun name-kentän ja index_email-tauluun email-kentän. Näitä pidetään yllä aina kun dokumentteja lisätään, muokataan tai poistetaan. Tuosta on aika helppo tehdä yleiskäyttöinen siten, että jossain konfiguraatiotiedostossa kerrotaan mitkä JSON-kentät indeksoidaan omiin tauluihinsa, ja vaikka automaattisesti ajaa CREATE TABLE:tkin tarvittaessa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Microsoftin Azure-pilvi tukehtuu bloattiin?</title>
      <link>https://kennethfalck.net/2009/02/24/microsoftin-azure-pilvi-tukehtuu-bloattiin/</link>
      <pubDate>Tue, 24 Feb 2009 11:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/24/microsoftin-azure-pilvi-tukehtuu-bloattiin/</guid>
      <description>&lt;p&gt;The Register kertoo Microsoftin suunnittelevan &lt;a href=&#34;http://www.theregister.co.uk/2009/02/23/sql_server_azure/&#34;&gt;täyden SQL Server -tuen lisäämistä Azureen&lt;/a&gt;. Tämä on melkoinen kontrasti Googlen ja Amazonin lähestymistavalle. Kyseiset toimijathan ovat toteuttaneet omat, äärimmäisen yksinkertaistetut DataStore- ja SimpleDB-rajapintansa pilvitietokannoille.&lt;/p&gt;&#xA;&lt;p&gt;Pystyn jo näkemään, miten Microsoft-kehittäjät yrittävät viedä nykyiset SQL Server -pohjaiset web-sovelluksensa sellaisinaan pilveen ja epäonnistuvat surkeasti. SQL ei skaalaudu millään kunnolla siinä ympäristössä, vaan monimutkaisuus aiheuttaa sille kaikenlaisia rajoituksia, johtaen pullonkauloihin ja/tai toimimattomiin osasovelluksiin. Microsoft laittaa sen &amp;quot;väkisin&amp;quot; toimimaan -- samaan tapaan kuin se on toteuttanut monet muutkin bloat-ominaisuudet Windows-käyttöjärjestelmiin. Tällä kertaa vain ero toimivuudessa Googleen ja Amazoniin nähden tulee olevaan ratkaiseva.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Piraattien juhlaa Tukholmassa</title>
      <link>https://kennethfalck.net/2009/02/23/piraattien-juhlaa-tukholmassa/</link>
      <pubDate>Mon, 23 Feb 2009 03:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/23/piraattien-juhlaa-tukholmassa/</guid>
      <description>&lt;p&gt;Mielenkiintoinen näkökulma Ruotsin Pirate Bay -oikeudenkäyntiin: Ensimmäisen viikon päättymistä juhlittiin &lt;a href=&#34;http://piraattiliitto.org/uutiset/2009/02/piraatit-paattivat-oikeudenkayntiviikon-juhliin-kokoomusnuorten-vapauspalkinto-tpbll&#34;&gt;Spectrial Kopimi Partyssa&lt;/a&gt;. Eipä tule heti mieleen vastaavanlaista tilaisuutta järjestetyn oikeudenkäynnin yhteydessä, ainakaan syytettyjen toimesta.&lt;/p&gt;&#xA;&lt;p&gt;Aiheesta juttu &lt;a href=&#34;http://torrentfreak.com/pirate-bay-ends-first-trial-week-partying-090221/&#34;&gt;TorrentFreakissa&lt;/a&gt; ja &lt;a href=&#34;http://picasaweb.google.se/Kingkong.in.kambodja/PirateParty#&#34;&gt;bilekuvia Picasassa&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Brightkitessä</title>
      <link>https://kennethfalck.net/2009/02/20/brightkitess%C3%A4/</link>
      <pubDate>Fri, 20 Feb 2009 19:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/20/brightkitess%C3%A4/</guid>
      <description>&lt;p&gt;Olen nyt olemassa &lt;a href=&#34;http://brightkite.com/people/kennu&#34;&gt;Brightkitessä&lt;/a&gt;, jossa on viime aikoina nähty aika paljon vanhoja Jaiku-käyttäjiä.&lt;/p&gt;&#xA;&lt;p&gt;Brightkite tuntuu kivalta käyttää ja se on vahvasti integroitunut lokaatioon. Vaikuttaa ensimmäiseltä onnistuneelta lokaatiokonseptilta. Käyttö ei mitenkään edellytä esimerkiksi iPhone-GPS-sovelluksen asentamista, vaan lokaatioihin voi check-innata myös helposti kirjoittamalla webiin missä on.&lt;/p&gt;&#xA;&lt;p&gt;Tällä hetkellä oma mikrobloggailuni jakaantuu Facebookin, Jaikun, Twitterin ja Brightkiten välille jollain satunnaisehkolla jakaumalla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mitä ottaisit mukaasi tulipalon sattuessa?</title>
      <link>https://kennethfalck.net/2009/02/18/mit%C3%A4-ottaisit-mukaasi-tulipalon-sattuessa/</link>
      <pubDate>Wed, 18 Feb 2009 20:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/18/mit%C3%A4-ottaisit-mukaasi-tulipalon-sattuessa/</guid>
      <description>&lt;p&gt;On mielenkiintoinen kokemus herätä kolmen tunnin yöunien jälkeen siihen, että kerrostalon pihalla parveilee vilkkuvia paloautoja ja poliiseja ja joku soittaa ovisummeria.&lt;/p&gt;&#xA;&lt;p&gt;Minulle on sattunut nyt jo kaksi tällaista kokemusta tänä vuonna. Edellisellä kerralla kyse oli naapuritalosta, josta kärähti jonkun mummon keittiö. Tänään hälytys sattui oman talon kohdalle, mutta osoittautui sitten onneksi aiheettomaksi.&lt;/p&gt;&#xA;&lt;p&gt;Mielenkiintoisinta on se, mitä tulee tehtyä ja ajateltua juuri herättyään ja tajuttuaan, että jonkinlainen vaaratilanne voi olla päällä. Itselläni ei ole tällä hetkellä kotieläimiä tai muita asuinkumppaneita, joten huomasin ajatusten menevän tässä järjestyksessä:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Jaiku Echo: Oikea Google App Engine -sovellus</title>
      <link>https://kennethfalck.net/2009/02/17/jaiku-echo-oikea-google-app-engine-sovellus/</link>
      <pubDate>Tue, 17 Feb 2009 02:55:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/17/jaiku-echo-oikea-google-app-engine-sovellus/</guid>
      <description>&lt;p&gt;Kehitin viime viikonloppuna ensimmäisen oikean &lt;a href=&#34;http://code.google.com/appengine/&#34;&gt;Google App Engine&lt;/a&gt; -sovellukseni nimeltä &lt;a href=&#34;http://www.facebook.com/apps/application.php?id=61131029458&#34;&gt;Jaiku Echo&lt;/a&gt;. Se on melko yksinkertainen Facebook-sovellus, joka kaiuttaa käyttäjän jaikut Facebookiin status-päivityksiksi. Sovelluksella on tällä hetkellä kymmenkunta käyttäjää Facebookissa.&lt;/p&gt;&#xA;&lt;p&gt;Google App Enginen suurin ongelma tämäntyyppisissä sovelluksissa on &amp;quot;crontabin&amp;quot; puuttuminen. Sovelluksilla ei ole mitään keinoa suorittaa toimintoja ajastetusti. Siksi joudun kutsumaan omalta palvelimeltani kerran minuutissa tiettyä URLia, jonka yhteydessä AppEngine-sovellus suorittaa tarvittavan taustakäsittelyn.&lt;/p&gt;&#xA;&lt;p&gt;Tämäkin ratkaisu on ongelmallinen, sillä Google asettaa yhden HTTP-pyynnön aikarajaksi noin 30 sekuntia. Siinä ajassa ehtii käsitellä vain tietyn määrän asioita. Lisäksi kyseinen URL alkaa hälyttää Dashboardissa ikävästi punaisella (ks. kuva).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Quest Helperillä uutta iloa WoWiin</title>
      <link>https://kennethfalck.net/2009/02/15/quest-helperill%C3%A4-uutta-iloa-wowiin/</link>
      <pubDate>Sun, 15 Feb 2009 20:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/15/quest-helperill%C3%A4-uutta-iloa-wowiin/</guid>
      <description>&lt;p&gt;Asensin hiljattain ensimmäistä kertaa &lt;a href=&#34;http://wow.curse.com/downloads/wow-addons/details/quest-helper.aspx&#34;&gt;Quest Helper&lt;/a&gt; -laajennuksen WoWiin. Se paransi pelikokemusta uskomattoman paljon. Questien tekeminen ei ole enää satunnaista tarpomista ympäri maastoa, vaan Quest Helper näyttää kätevästi kartalla, mihin kannattaa seuraavaksi mennä missäkin järjestyksessä.&lt;/p&gt;&#xA;&lt;p&gt;Kyse ei ole siis niinkään questien spoilaamisesta, vaan suorittamisesta fiksussa järjestyksessä. Quest Helperin kartasta näkee esimerkiksi hyvin, milloin yksi alue on &amp;quot;tyhjennetty&amp;quot; ja kannattaa siirtyä eteenpäin.&lt;/p&gt;&#xA;&lt;p&gt;Warhammer Onlineen on sisäänrakennettu hieman samantapainen toiminnallisuus. Siinä questien suoritusalueet näkyvät kartalla, joten pelaaja tietää aika hyvin, missä on syytä liikkua. Pidän kuitenkin WoWin Quest Helperistä vielä enemmän, koska se kertoo myös optimaalisen reittijärjestyksen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apple TV modautuu helposti USB-tikulla</title>
      <link>https://kennethfalck.net/2009/02/12/apple-tv-modautuu-helposti-usb-tikulla/</link>
      <pubDate>Thu, 12 Feb 2009 02:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/12/apple-tv-modautuu-helposti-usb-tikulla/</guid>
      <description>&lt;p&gt;Kaivoin pitkästä aikaa esiin vanhan Apple TV:n, joka on ehtinyt jo firmware-versioon 2.3 Todettuani ettei iTunes-kaupasta vieläkään saa oikein mitään kiinnostavaa (muuta kuin ison läjän HD-video-podcasteja), ajattelin kokeilla modata Apple TV:n tukemaan vähän muutakin sisältöä.&lt;/p&gt;&#xA;&lt;p&gt;Modaaminen onnistuikin yllättävän helposti &lt;a href=&#34;http://code.google.com/p/atvusb-creator/&#34;&gt;atvusb-creatorilla&lt;/a&gt;, joka tekee USB-tikusta &amp;quot;patchstickin&amp;quot;. Apple TV käynnistetään tikku sisässä, jolloin siihen asentuu mm. ssh. Modauksen jälkeen valikoista voi helposti asennella esimerkiksi XBMC:n, jonka uusin versio päivittyy suoraan netistä Apple TV:hen.&lt;/p&gt;&#xA;&lt;p&gt;(Jos XBMC ei ole tuttu, niin se on monipuolinen mediasoitinohjelma, jolla voi esimerkiksi selailla SMB-levyjakoja ja UPnP-laitteita kotona ja soitella niiltä videoita.)&lt;/p&gt;</description>
    </item>
    <item>
      <title>EeePC 701 (4G) ja Windows XP nLite</title>
      <link>https://kennethfalck.net/2009/02/08/eeepc-701-4g-ja-windows-xp-nlite/</link>
      <pubDate>Sun, 08 Feb 2009 15:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/08/eeepc-701-4g-ja-windows-xp-nlite/</guid>
      <description>&lt;p&gt;Päätin viritellä hieman ylimääräiseksi jääneestä &lt;a href=&#34;http://en.wikipedia.org/wiki/ASUS_Eee_PC#Eee_700_series&#34;&gt;Eee PC 701 (4G)&lt;/a&gt;:stäni X10-kontrollerin kodin sähköjä ohjaamaan. Tätä varten laitteeseen piti saada asennettua Windows XP, jonka kanssa 4 gigatavun SSD-levy käy melko ahtaaksi.&lt;/p&gt;&#xA;&lt;p&gt;Kokeilin siis ensimmäistä kertaa &lt;a href=&#34;http://www.nliteos.com/&#34;&gt;nLite&lt;/a&gt;-työkalua, jolla Windows XP:n asennuslevystä voi tehdä kevennetyn version. Kokemus oli oikein positiivinen. Käytin pohjana XP:n ISO-imagea, jonka mounttasin ensin &lt;a href=&#34;http://www.slysoft.com/en/virtual-clonedrive.html&#34;&gt;Virtual CloneDrivellä&lt;/a&gt;. nLite luki sen sisään ja antoi sitten poistaa turhat sovellukset, ajurit ja komponentit Windows-asennuksesta. Lopuksi uudesta asennuspaketista generoitiin uusi buuttaava ISO-image.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sun tappaa (My)SQL:n ja on aikakin</title>
      <link>https://kennethfalck.net/2009/02/07/sun-tappaa-mysqln-ja-on-aikakin/</link>
      <pubDate>Sat, 07 Feb 2009 15:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/07/sun-tappaa-mysqln-ja-on-aikakin/</guid>
      <description>&lt;p&gt;MySQL:n perustajien &lt;a href=&#34;http://uk.reuters.com/article/rbssTechMediaTelecomNews/idUKN0646800220090206&#34;&gt;Mårten Mickosin ja Monty Wideniuksen eroaminen Sunilta&lt;/a&gt; on saanut minut taas pohtimaan MySQL:n ja sitä myötä yleensäkin koko SQL-tietokantojen tulevaisuutta. Olen jo ennenkin &lt;a href=&#34;http://kfalck.net/2008/04/08/internet-skaalautuu-ja-relaatiotietokanta-kuolee&#34;&gt;ennustanut SQL:n kuolemaa&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Viime aikoina olen tutustunut entistä tiiviimmin sekä &lt;a href=&#34;http://code.google.com/appengine/docs/python/datastore/&#34;&gt;Googlen Datastoreen&lt;/a&gt; että &lt;a href=&#34;http://couchdb.apache.org/&#34;&gt;CouchDB:hen&lt;/a&gt;. Näiden uudenlaisten tietokanta-alustojen samankaltaisuus on mielestäni selvä merkki siitä, että jotain suurta on tapahtumassa ja uusi paradigma syntymässä.&lt;/p&gt;&#xA;&lt;p&gt;Perinteinen SQL:hän toimii niin, että käyttäjä kertoo tietokannalle, minkälaisen tulosjoukon haluaisi saada. Sitten tietokannan pitäisi salamannopeasti päätellä, mikä on paras tapa saavuttaa kyseinen tulosjoukko. Apuna toimivat käyttäjän määrittelemät indeksit ja taulujen rivimäärätilastot. Joskus tietokanta sitten päätyy tekemään näiden pohjalta äärimmäisen epäoptimaalisia operaatioita, jotka kestävät useita sekunteja tai minuutteja, ja jumittavat webbipalvelun.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hesari Lex Nokiasta ja mielenosoitus alkavalla viikolla</title>
      <link>https://kennethfalck.net/2009/02/01/hesari-lex-nokiasta-ja-mielenosoitus-alkavalla-viikolla/</link>
      <pubDate>Sun, 01 Feb 2009 05:41:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/02/01/hesari-lex-nokiasta-ja-mielenosoitus-alkavalla-viikolla/</guid>
      <description>&lt;p&gt;Hesarissa on &lt;a href=&#34;http://www.hs.fi/artikkeli/1135243187834?ref=rss&#34;&gt;erittäin tyhjentävä kirjoitus&lt;/a&gt; Lex Nokian vaiheista ja taustoista.&lt;/p&gt;&#xA;&lt;p&gt;En lähde sitä puimaan tässä sen enempää, vaan kehotan lukemaan Hesarin jutun ja sen jälkeen osallistumaan torstaina 5.2.2009 järjestettävään &lt;a href=&#34;http://valvonta.info/2009/01/mielenosoitus-lex-nokiaa-vastaan-5-helmikuuta/&#34;&gt;mielenosoitukseen Lex Nokiaa vastaan&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Mielenosoituksesta on myös &lt;a href=&#34;http://www.facebook.com/home.php#/event.php?eid=45196038171&#34;&gt;Facebook-tapahtuma&lt;/a&gt; johon voi liittyä.&lt;/p&gt;&#xA;&lt;p&gt;Tämän lisäksi on myös adressi: &lt;a href=&#34;http://www.adressit.com/lex_nokia&#34;&gt;Pysäytetään Lex Nokia&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dualscreen, Growl ja Warcraft-hidastelu</title>
      <link>https://kennethfalck.net/2009/01/31/dualscreen-growl-ja-warcraft-hidastelu/</link>
      <pubDate>Sat, 31 Jan 2009 18:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/31/dualscreen-growl-ja-warcraft-hidastelu/</guid>
      <description>&lt;p&gt;Jos käytät Growlia ja pelaat World of Warcraftia, olet saattanut kärsiä pelin hidastumisesta aina toisinaan, kun näytön nurkkaan ilmestyy Growl-ilmoituksia esimerkiksi uudesta sähköpostista tai jaikuista ja pikaviesteistä.&lt;/p&gt;&#xA;&lt;p&gt;Itse huomasin juuri, että Growlin asetuksista (System Preferences | Growl | Display Options | Screen) voi valita, mille näytölle ilmoitukset putkahtavat. Siispä siirsin ne kakkosnäyttöön, jolloin ykkösnäytöllä voi pelata häiriöttä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mac OS X -ajurit Logitech G15-näppikselle</title>
      <link>https://kennethfalck.net/2009/01/31/mac-os-x-ajurit-logitech-g15-n%C3%A4ppikselle/</link>
      <pubDate>Sat, 31 Jan 2009 08:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/31/mac-os-x-ajurit-logitech-g15-n%C3%A4ppikselle/</guid>
      <description>&lt;p&gt;Huomasin, että Logitechiltä on ilmestynyt beta-versio &lt;a href=&#34;http://www.logitech.com/index.cfm/434/180&amp;cl=roeu,en?osid=9&#34;&gt;Mac OS X -ajureista G15-näppäimistölle&lt;/a&gt;. Kaivoin kokeilumielessä vanhan G15:ni esiin ja kyllähän se toimii. LCD:ssä on samantapaiset sovellukset kuin Windows-puolellakin ja peleille saa omat näppäinprofiilit.&lt;/p&gt;&#xA;&lt;p&gt;Vinkkinä Windows-näppäimistön käyttöön Macissa: System Preferencesistä (Keyboard  &amp;amp; Mouse | Modifier Keys ...) kannattaa vaihtaa Option- ja Command-näppäimet keskenään. Silloin peukalo osuu luonnostaan omppunäppäimen kohdalle (Windowsissa Alt), ja Windows-näppäin taas toimii vasempana Alttina.&lt;/p&gt;&#xA;&lt;p&gt;Olen itse aika tottunut kotona &lt;a href=&#34;http://www.apple.com/keyboard/&#34;&gt;Applen matalaprofiiliseen alumiininäppikseen&lt;/a&gt;, joten en tiedä viitsinkö siirtyä G15:een enää. Windows-layout aiheuttaa pientä skitsofreniaa Macin käytössä, mutta voisihan sitä kokeilla, alkaako tökkiä pahemmin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Spotifykin rajoittaa musiikin maarajojen mukaan</title>
      <link>https://kennethfalck.net/2009/01/29/spotifykin-rajoittaa-musiikin-maarajojen-mukaan/</link>
      <pubDate>Thu, 29 Jan 2009 21:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/29/spotifykin-rajoittaa-musiikin-maarajojen-mukaan/</guid>
      <description>&lt;p&gt;No, Spotify olikin liian hyvää ollakseen totta. Nyt se sitten &lt;a href=&#34;http://www.spotify.com/blog/archives/2009/01/28/some-important-changes-to-the-spotify-music-catalogue/&#34;&gt;alkaa rajoittaa musiikin saatavuutta&lt;/a&gt; kuuntelijan maantieteellisen sijainnin mukaan.&lt;/p&gt;&#xA;&lt;p&gt;Itseltäni on jo kadonnut monia biisejä playlisteistä ja hauista. Alkaa mennä maku koko Spotifyhyn. Kiitos taas musiikkiyhtiöille, että pilasitte tämänkin mahdollisuuden tehdä musiikilla bisnestä netissä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django ja mod_wsgi auto-code-reloading</title>
      <link>https://kennethfalck.net/2009/01/20/django-ja-mod_wsgi-auto-code-reloading/</link>
      <pubDate>Tue, 20 Jan 2009 19:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/20/django-ja-mod_wsgi-auto-code-reloading/</guid>
      <description>&lt;p&gt;Tässäpä vinkki Django-käyttäjille, jotka tuskailevat Apachen kanssa mod_pythonilla. Se kun vaatii Apachen uudelleenkäynnistämisen aina, kun Python-koodia muutetaan.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://code.google.com/p/modwsgi/wiki/IntegrationWithDjango&#34;&gt;WSGI on parempi rajapinta&lt;/a&gt;, joka huolehtii muuttuneen Python-koodin uudelleenlataamisesta automaattisesti. Käyttöönotto on yhtä helppoa kuin mod_pythonin.&lt;/p&gt;&#xA;&lt;p&gt;Esimerkiksi Google App Engine käyttää WSGI:tä sovellusten pyörittämiseen. Etuna on, että kaikki konfiguraatio voidaan sijoittaa main.py-tiedostoon. Apachen tapauksessa ei siis tarvitse asetella ympäristömuuttujia tai muita virityksiä Apachen konfiguraatiotiedostoissa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Things 1.0</title>
      <link>https://kennethfalck.net/2009/01/18/things-1.0/</link>
      <pubDate>Sun, 18 Jan 2009 01:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/18/things-1.0/</guid>
      <description>&lt;p&gt;Bloggailin pari kuukautta sitten &lt;a href=&#34;http://kfalck.net/2008/11/11/things-getting-things-done&#34;&gt;Things&lt;/a&gt;-tehtävänhallintasoftasta (Mac OS X ja iPhone). Sittemmin siitä ilmestyi &lt;a href=&#34;http://culturedcode.com/things/&#34;&gt;1.0-versio&lt;/a&gt;, joka on nyt myynnissä $49.95 hintaan.&lt;/p&gt;&#xA;&lt;p&gt;Thingsistä on hiljalleen muodostunut kiinteä osa arkipäivää. Kirjoitan nykyään siihen heti ylös pienimmätkin tehtävät, joita en pysty heti hoitamaan pois alta. Matkan päällä laitan ne iPhonen Inboxiin, josta siirtelen ne myöhemmin oikeiden projektien alle ja tagitan prioriteetit. &lt;a href=&#34;http://en.wikipedia.org/wiki/Getting_Things_Done&#34;&gt;GTD&lt;/a&gt;:n idea saada ajatuksia häiritsevät pikkutehtävät pois mielestä toteutuu mainiosti.&lt;/p&gt;&#xA;&lt;p&gt;Aiemmin jaoin tehtävät &lt;em&gt;Next&lt;/em&gt; ja &lt;em&gt;Someday&lt;/em&gt; -kategorioihin. &lt;em&gt;Next&lt;/em&gt; tarkoittaa hommaa, joka pitää hoitaa lähiaikoina. Nyttemmin olen alkanut käyttää myös &lt;em&gt;Today&lt;/em&gt;-lokeroa, johon vedän ne tehtävät, jotka aion tehdä heti tai seuraavana työpäivänä. Se kannustaa mukavasti tavoitteellisuuteen, kun saa raksittua hommia pois ja päivän lopuksi lista on tyhjä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Extending and Embedding PHP</title>
      <link>https://kennethfalck.net/2009/01/15/extending-and-embedding-php/</link>
      <pubDate>Thu, 15 Jan 2009 00:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/15/extending-and-embedding-php/</guid>
      <description>&lt;p&gt;[amazon 067232704X thumbnail] Suosittelen lämpimästi tätä kirjaa kokeneille PHP-ohjelmoijille, jotka haluavat tutustua PHP:n sielunelämään hieman pintaa syvemmältä. Myös C:n osaaminen on tarpeen.&lt;/p&gt;&#xA;&lt;p&gt;Kirja tutustuttaa lukijan niihin eri tapoihin, joilla C-koodi voi olla vuorovaikutuksessa PHP-koodin kanssa. Tyypillisesti tämä tapahtuu PHP-laajennuksessa, joka tarjoaa konekielisiä funktioita PHP-koodin kutsuttavaksi. PHP-tulkin voi myös upottaa omaan sovellukseensa skriptikieleksi.&lt;/p&gt;&#xA;&lt;p&gt;Itselleni eräs mielenkiintoisimpia osuuksia oli kuvaus siitä, miten PHP käsittelee muuttujien arvoja eri tilanteissa (by-value ja by-reference), eli milloin muuttujan arvo kopioituu duplikaatiksi ja milloin siihen vain viitataan uudella viittauksella. Tämä on tärkeää, jos haluaa koodata tehokasta PHP-koodia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Windows 7 ja hirviö-start-menu</title>
      <link>https://kennethfalck.net/2009/01/10/windows-7-ja-hirvi%C3%B6-start-menu/</link>
      <pubDate>Sat, 10 Jan 2009 22:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/10/windows-7-ja-hirvi%C3%B6-start-menu/</guid>
      <description>&lt;p&gt;Totean aluksi, että pidän Windows 7:sta. Se tuntuu parin päivän satunnaisella käytöllä sliipatulta versiolta Vistasta, josta on otettu pois turhia ikävyyksiä.&lt;/p&gt;&#xA;&lt;p&gt;Uusi Start Menun ja Taskbarin yhdistelmä kuitenkin ihmetyttää minua. Microsoft on selvästi yrittänyt ottaa mallia Mac OS X:n Dockista, joka on yksinkertainen ja toimiva tapa hallita sovelluksia. Dockissahan kaikki yleisimmin käytetyt sovellukset näkyvät ruudun alareunassa riippumatta siitä, ovatko ne juuri nyt käynnissä vai ei. On siis tasan yksi tuttu tapa aktivoida sovellus.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Optimizing Zend Framework with include file consolidation and object serialization</title>
      <link>https://kennethfalck.net/2009/01/10/optimizing-zend-framework-with-include-file-consolidation-and-object-serialization/</link>
      <pubDate>Sat, 10 Jan 2009 02:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/10/optimizing-zend-framework-with-include-file-consolidation-and-object-serialization/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://framework.zend.com/&#34;&gt;Zend Framework 1.7.2&lt;/a&gt; is a cool PHP framework for developing MVC-style applications. It&amp;#39;s just very slow. I&amp;#39;m talking about the time it takes just to execute the bootstrap code, before even reaching your application code.&lt;/p&gt;&#xA;&lt;p&gt;The slowness seems to be caused by the large number of Zend_xxx classes, which are all located in separate PHP include files. At the beginning of every HTTP request, dozens of classes must be included and instantiated. You don&amp;#39;t even see most of it, because Zend Framework includes them automatically.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Windows 7 beta 1 (build 7000)</title>
      <link>https://kennethfalck.net/2009/01/08/windows-7-beta-1-build-7000/</link>
      <pubDate>Thu, 08 Jan 2009 05:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/08/windows-7-beta-1-build-7000/</guid>
      <description>&lt;p&gt;Tulipa imuroitua ja asennettua virallinen Windows 7 beta 1 (x86 build 7000), joka on nyt tarjolla MSDN-asiakkaille. Tämä on bitilleen sama versio kuin TPB:ssä jakelussa ollut ISO-image.&lt;/p&gt;&#xA;&lt;p&gt;Steve Ballmer julkaisi betan &lt;a href=&#34;http://www.microsoft.com/presspass/events/ces/default.mspx&#34;&gt;CES 2009 keynotessa&lt;/a&gt; ja sen pystyi heti imuroimaan MSDN:stä.&lt;/p&gt;&#xA;&lt;p&gt;Täytyy muuten sanoa, että Microsoftin keynotet ovat aika onnettomia Applen vastaaviin verrattuna... Epämääräisiä esityksiä siitä, miten Windows 7:n taskbar on vähän hankalampi ja monimutkaisempi kuin Vistassa, ja päälle paatosmaista julistusta miten Windows ja Microsoft hallitsevat kaikkien elämää nyt ja tulevaisuudessa. Mikseivät nämä kaverit voi nöyrtyä hieman ja tehdä vaan kiltisti sellaisia käyttöjärjestelmiä, joita ihmisten on kiva käyttää?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal 7 julkaistaan Q4/2009</title>
      <link>https://kennethfalck.net/2009/01/02/drupal-7-julkaistaan-q4/2009/</link>
      <pubDate>Fri, 02 Jan 2009 13:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/02/drupal-7-julkaistaan-q4/2009/</guid>
      <description>&lt;p&gt;Drupal 7 nähtävästi &lt;a href=&#34;http://hojtsy.hu/blog/2009-jan-01/drupal-7-be-released-q4-2009-plenty-time-contribute&#34;&gt;julkaistaan vasta Q4/2009&lt;/a&gt;. Aiheesta &lt;a href=&#34;http://buytaert.net/predictions-2009&#34;&gt;bloggaili itse Dries&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Merkittävinä teemoina tuntuvat pyörivän testaus/laadunvalvonta sekä tuki semanttiselle webille. Molemmat kiinnostavia aiheita Drupalin ulkopuolellakin, ja tulevat varmasti antamaan hyvää mallia web-kehitykseen yleisellä tasolla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone 3G Unlock ja Elisan SIM onnistui</title>
      <link>https://kennethfalck.net/2009/01/02/iphone-3g-unlock-ja-elisan-sim-onnistui/</link>
      <pubDate>Fri, 02 Jan 2009 04:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2009/01/02/iphone-3g-unlock-ja-elisan-sim-onnistui/</guid>
      <description>&lt;p&gt;Raportoin vaan lyhyesti, että onnistuin vihdoin asentamaan &lt;a href=&#34;http://blog.iphone-dev.org/post/67797811/dont-eat-yellowsn0w&#34;&gt;yellowsn0w 0.9.1&lt;/a&gt; -unlockin iPhone 3G:hen ja soittamaan sekä vastaanottamaan puheluita Elisan SIM-kortilla.&lt;/p&gt;&#xA;&lt;p&gt;Asentamiseen liittyi aika paljon yritystä ja erehdystä. Loppujen lopuksi palautin iPhoneen ensin iTunesilla virallisen 2.2-firmwaren, jailbreakkasin sen &lt;a href=&#34;http://thepiratebay.org/user/iphonedev/&#34;&gt;QuickPwnilla&lt;/a&gt; ja aktivoin puhelimen iTunesissa Soneran SIM-kortilla. Sitten asensin yellowsn0w:n Cydialla sen omasta lähteestä. Sen jälkeen piti vielä tehdä jonkinlainen yhdistelmä puhelimen buuttaamista, network-asetusten resetointia, airplane-moodissa käymistä ja SIM-kortin ottamista hetkeksi ulos. Yllä linkatusta blogikirjoituksesta löytyy neuvoja, mitä kannattaa kokeilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Erlang ottaa tehot irti multicore-suorittimista</title>
      <link>https://kennethfalck.net/2008/12/30/erlang-ottaa-tehot-irti-multicore-suorittimista/</link>
      <pubDate>Tue, 30 Dec 2008 18:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/30/erlang-ottaa-tehot-irti-multicore-suorittimista/</guid>
      <description>&lt;p&gt;HP on alkanut myydä &lt;a href=&#34;http://www.shopping.hp.com/series/category/desktops/d5100t_series/3/computer_store&#34;&gt;Quad&lt;/a&gt;-työasemia, joissa on 4 prosessoriydintä. Apple puolestaan on tarjonnut jo pitkään &lt;a href=&#34;http://www.apple.com/macpro/technology/processor.html&#34;&gt;2xQuad&lt;/a&gt;-työasemia, joissa on 8 prosessoriydintä. Tulevaisuuden trendi on selvästi yhä useammissa ytimissä. Intelin &lt;a href=&#34;http://en.wikipedia.org/wiki/Nehalem_%28CPU_architecture%29&#34;&gt;Nehalem&lt;/a&gt; ja &lt;a href=&#34;http://en.wikipedia.org/wiki/Keifer_%28microprocessor%29&#34;&gt;Keifer&lt;/a&gt;-arkkitehtuurit tähtäävät ainakin kahdeksaan ytimeen suoritinta kohden ja huhuja on ollut jopa 32-ytimisistä prosessoreista.&lt;/p&gt;&#xA;&lt;p&gt;Tietokoneiden keskusmuisti on kuitenkin aina jaettua kaikkien ytimien ja prosessorien kesken. Kun ohjelmoidaan perinteisillä ohjelmointikielillä, jotka voivat minä hetkenä hyvänsä muuttaa mitä tahansa muistialuetta, muisti täytyy lukita vähän väliä. Se aiheuttaa hitautta ja paljon potentiaalisia virhetilanteita. Tämä pätee erityisesti säieohjelmointiin, jossa käyttöjärjestelmän prosessisuojauksetkaan eivät auta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google-puhelimen varjopuolia</title>
      <link>https://kennethfalck.net/2008/12/16/google-puhelimen-varjopuolia/</link>
      <pubDate>Tue, 16 Dec 2008 13:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/16/google-puhelimen-varjopuolia/</guid>
      <description>&lt;p&gt;Käytettyäni tätä T-Mobile G1:tä muutamia viikkoja olen alkanut huomata sen huonot puolet. Kirjoitan esimerkiksi tätä blogientryä G1:lla, ja vaikka näppäimistöstä saa ääkköset pitämällä Ä:ta tai Ö:ta pohjassa, ne eivät jostain syystä toimi web-formeissa. Lisäksi aina kun käyttöliittymä palaa ääkkös-popupista takaisin web-lomakkeen kenttään, kentän koko teksti tulee valituksi, jolloin seuraava näppäily ylikirjoittaa sen. Douh!&lt;/p&gt;&#xA;&lt;p&gt;Androidista löytyy kaikenlaista vastaavaa pikkukiusaa, kun sitä käyttää tarpeeksi pitkään. Monia ongelmia ei ensin huomaa kokeillessa, mutta kun kännykkää tarvitsee jossain &amp;quot;kriittisessä&amp;quot; tilanteessa, ne ovat ilmeisiä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Paikallisesta Git-repositorysta keskitetty</title>
      <link>https://kennethfalck.net/2008/12/14/paikallisesta-git-repositorysta-keskitetty/</link>
      <pubDate>Sun, 14 Dec 2008 22:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/14/paikallisesta-git-repositorysta-keskitetty/</guid>
      <description>&lt;p&gt;Gitin joustavuus jaksaa vielä yllättää. Jos on aloittanut projektin paikallisena repositoryna, se on suhteellisen helppo muuttaa keskitetyksi &lt;a href=&#34;http://toolmantim.com/article/2007/12/5/setting_up_a_new_remote_git_repository&#34;&gt;näiden ohjeiden mukaan&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Toistan stepit vielä tähän. Ensin tyhjän repon luominen:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;mkdir /central/repository&lt;/li&gt;&#xA;&lt;li&gt;cd /central/repository&lt;/li&gt;&#xA;&lt;li&gt;git --bare init&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Sitten paikallisessa repositoryssa:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;git remote add origin /central/repository&lt;/li&gt;&#xA;&lt;li&gt;git push origin master&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Lopuksi vielä asetetaan paikallinen repo käyttämään keskitettyä pullaamiseen ja pushaamiseen:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;git config branch.master.remote origin&lt;/li&gt;&#xA;&lt;li&gt;git config branch.master.merge refs/heads/master&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Näin koko roska on siirtynyt remoteksi, ja toimii jatkossa samoin, kuin jos se olisi alun perinkin kloonattu remotesta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Smashing Pumpkins: Albumien aika ohi</title>
      <link>https://kennethfalck.net/2008/12/14/smashing-pumpkins-albumien-aika-ohi/</link>
      <pubDate>Sun, 14 Dec 2008 00:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/14/smashing-pumpkins-albumien-aika-ohi/</guid>
      <description>&lt;p&gt;Smashing Pumpkins on sitä mieltä että &lt;a href=&#34;http://www.techradar.com/news/audio/smashing-pumpkins-blame-itunes-for-album-demise-494441?src=rss&amp;attr=all&#34;&gt;musiikkialbumien aika on ohi&lt;/a&gt;. Vastaisuudessa julkaistaan vain sinkkuja.&lt;/p&gt;&#xA;&lt;p&gt;Minun on helppo olla samaa mieltä. Albumit ovat yleensä parin hyvän sinkun lisäksi täynnä pelkkää fillerip*skaa. Historiasta löytyy toki paljon poikkeuksiakin. Mutta pohjimmiltaan tässä on kyse siitä, että kuluttaja saa itse valita esimerkiksi iTunesissa shoppaillessaan, mitä haluaa ostaa.&lt;/p&gt;&#xA;&lt;p&gt;Ehkä Smashing Pumpkinskin saattaa vielä joskus tehdä niin hienon 60 minuutin mittaisen musiikkiteoksen, että kuluttajat haluavat ostaa sen kokonaisuutena.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Erlang, Yaws, ErlyWeb ja CouchDB</title>
      <link>https://kennethfalck.net/2008/12/13/erlang-yaws-erlyweb-ja-couchdb/</link>
      <pubDate>Sat, 13 Dec 2008 18:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/13/erlang-yaws-erlyweb-ja-couchdb/</guid>
      <description>&lt;p&gt;Tuli kokeiltua Erlang-pohjaista webbijulkaisujärjestelmää opiskelumielessä. Käytin kokeilussani itse käännettyjä softia, koska Red Hat ei tue mitään näistä valmiina rpm-paketteina. Sivuhuomautuksena voinkin todeta, että Red Hat imee eikä sitä kannata käyttää missään, ellei ole pakko.&lt;/p&gt;&#xA;&lt;p&gt;Tällä yhdistelmällä voi rakentaa MVC-mallin mukaisia webbisovelluksia, jotka käyttävät CouchDB:tä dokumenttitietokantana:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Erlang OTP R12B-5&lt;/li&gt;&#xA;&lt;li&gt;Yaws 1.77&lt;/li&gt;&#xA;&lt;li&gt;ErlyWeb 0.7.2&lt;/li&gt;&#xA;&lt;li&gt;CouchDB 0.8.1&lt;/li&gt;&#xA;&lt;li&gt;erlang_couchdb 0.2.3&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Testasin kuormankestoa ApacheBenchillä: tulos on keskimäärin 1000 pyyntöä sekunnissa, kun haetaan yksi dokumentti ja tulostetaan sen sisältö HTML:ksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Geneettinen Mona Lisa</title>
      <link>https://kennethfalck.net/2008/12/10/geneettinen-mona-lisa/</link>
      <pubDate>Wed, 10 Dec 2008 02:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/10/geneettinen-mona-lisa/</guid>
      <description>&lt;p&gt;Geneettinen ohjelmointi on alkanut kiinnostaa minua, tässä &lt;a href=&#34;http://rogeralsing.com/2008/12/07/genetic-programming-evolution-of-mona-lisa/&#34;&gt;mielenkiintoinen esimerkki&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Git clone vs. Subversion branch</title>
      <link>https://kennethfalck.net/2008/12/09/git-clone-vs.-subversion-branch/</link>
      <pubDate>Tue, 09 Dec 2008 14:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/09/git-clone-vs.-subversion-branch/</guid>
      <description>&lt;p&gt;Rupesin tässä miettimään, että &lt;strong&gt;branchaaminen&lt;/strong&gt; on itse asiassa huono tai jopa väärä termi sille, mihin Gitin käytöllä itse tähtään. Sen tulkitsee helposti negatiivisesti, kun on tottunut Subversionin jäyhiin brancheihin.&lt;/p&gt;&#xA;&lt;p&gt;Git itse käyttää termiä &lt;strong&gt;clone&lt;/strong&gt;. Eli repository kloonataan kehittäjä(tiimi)n käyttöön.&lt;/p&gt;&#xA;&lt;p&gt;Aihetta selväntääkseni ohessa samankaltaisen työprosessin vaiheet Subversionissa ja Gitissä:&lt;/p&gt;&#xA;&lt;table&gt;&#xA;&lt;tr&gt;&lt;td style=&#34;padding-top:1em&#34; colspan=&#34;2&#34;&gt;&lt;strong&gt;Työn aloitus&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;svn checkout&lt;/td&gt;&lt;td&gt;git clone&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td style=&#34;padding-top:1em&#34; colspan=&#34;2&#34;&gt;&lt;strong&gt;Työn iterointi (toistuu N kertaa)&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;svn update&lt;/td&gt;&lt;td&gt;git pull&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;(editoidaan)&lt;/td&gt;&lt;td&gt;(editoidaan)&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;git commit&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td style=&#34;padding-top:1em&#34; colspan=&#34;2&#34;&gt;&lt;strong&gt;Työn valmistuminen&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;svn commit&lt;/td&gt;&lt;td&gt;git push&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;Eli kuten tuosta käy ilmi, Subversion-työhakemistoa ei voi commitata paikallisesti, vaan commitissa kaikki muutokset menevät heti trunkkiin. Gitissä taas committeja voi tehdä mielin määrin, ja vasta push vie muutokset trunkkiin. Tämä tarkoittaa, että kehittäjällä on käytettävissään versiohallinnan rollback- ja historiaominaisuudet  aivan kuten erillisestä branchia työstäessään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Allekirjoita.fi</title>
      <link>https://kennethfalck.net/2008/12/08/allekirjoita.fi/</link>
      <pubDate>Mon, 08 Dec 2008 23:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/08/allekirjoita.fi/</guid>
      <description>&lt;p&gt;Pekka Piraatti muistuttaa: &lt;a href=&#34;http://www.allekirjoita.fi/&#34;&gt;Allekirjoita&lt;/a&gt; Piraattipuolueen kannattajakortti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Aika ruveta funktionaaliseksi koodaajaksi?</title>
      <link>https://kennethfalck.net/2008/12/08/aika-ruveta-funktionaaliseksi-koodaajaksi/</link>
      <pubDate>Mon, 08 Dec 2008 00:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/08/aika-ruveta-funktionaaliseksi-koodaajaksi/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://tech.slashdot.org/article.pl?sid=08%2F12%2F05%2F2346235&amp;from=rss&#34;&gt;Slashdot&lt;/a&gt; nostaa esiin &lt;a href=&#34;http://www.ddj.com/development-tools/212201710&#34;&gt;Dr Dobb&amp;#39;sin kiintoisan pointin&lt;/a&gt;: olemme siirtymässä multicore-prosessorien myötä uuteen paradigmaan, joka kenties edellyttää ohjelmoijilta funktionaalisiin kieliin siirtymistä. Muuten koodia ei voida automaattisesti hajauttaa coreihin.&lt;/p&gt;&#xA;&lt;p&gt;DDJ:n jutun mainitsemista kielistä itseäni kiinnostaa eniten &lt;a href=&#34;http://en.wikipedia.org/wiki/Erlang_(programming_language)&#34;&gt;Erlang&lt;/a&gt;. En ole koskaan koodannut sillä mitään, mutta olen seurannut viime vuosina sillä tehtyjä projekteja, kuten &lt;a href=&#34;http://en.wikipedia.org/wiki/Ejabberd&#34;&gt;ejabberd&lt;/a&gt;, Facebook chat ja tuoreimpana ilmiönä skaalautuva tietokantamoottori &lt;a href=&#34;http://en.wikipedia.org/wiki/CouchDB&#34;&gt;CouchDB&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Pienellä googlailulla Erlangiin webbikäyttöön liittyen löytyi &lt;a href=&#34;http://yaws.hyber.org/&#34;&gt;Yaws&lt;/a&gt;-webbipalvelin, &lt;a href=&#34;http://erlyweb.org/&#34;&gt;ErlyWeb&lt;/a&gt;-framework sovellusten kehittämiseen sekä &lt;a href=&#34;http://yarivsblog.com/articles/2006/10/17/introducting-erltl-a-simple-erlang-template-language/&#34;&gt;ErlTL&lt;/a&gt;-template-kieli sivupohjien toteuttamiseen. Nämä vielä yhdistettynä &lt;a href=&#34;http://incubator.apache.org/couchdb/&#34;&gt;CouchDB&lt;/a&gt;:hen, niin tuossahan alkaisi olla täysi setti kasassa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Siirtymässä Subversionista Gitiin</title>
      <link>https://kennethfalck.net/2008/12/06/siirtym%C3%A4ss%C3%A4-subversionista-gitiin/</link>
      <pubDate>Sat, 06 Dec 2008 03:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/06/siirtym%C3%A4ss%C3%A4-subversionista-gitiin/</guid>
      <description>&lt;p&gt;Olin vuosia sitten iloinen päästessäni eroon CVS:stä, kun Subversion kehitettiin. Sen jälkeen Subversionista onkin tullut aika universaali valinta versiohallintaan kaikissa mahdollisissa softaprojekteissa, vaikka sinä on omat puutteensa.&lt;/p&gt;&#xA;&lt;p&gt;Työryhmäkäytössä Subversionin selkein ongelma on ollut branchien hallinnasta puuttuva automatiikka. Projektista voi kyllä tehdä uuden branchin, kun haluaa työstää jotain ominaisuutta rauhassa, mutta muutosten yhdistäminen takaisin pääprojektiin saattaa osoittautua haastavaksi. On ollut pitkälti kehittäjän omalla vastuulla osata ottaa diffit oikeiden versioiden väliltä. Pääprojektiin ilmestyneiden muutosten yhdistäminen omaan branchiin on myöskin hankalaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu 8.10 käytössä</title>
      <link>https://kennethfalck.net/2008/12/03/ubuntu-8.10-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Wed, 03 Dec 2008 20:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/03/ubuntu-8.10-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Päivitin tämänkin palvelimen Ubuntu 8.10:een. Näytti menevän aika kiltisti päivitys läpi &lt;a href=&#34;http://www.ubuntu.com/getubuntu/upgrading&#34;&gt;virallisilla ohjeilla&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Applen virussuositus olikin uutisankka</title>
      <link>https://kennethfalck.net/2008/12/02/applen-virussuositus-olikin-uutisankka/</link>
      <pubDate>Tue, 02 Dec 2008 22:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/02/applen-virussuositus-olikin-uutisankka/</guid>
      <description>&lt;p&gt;Mielenkiintoinen anti-uutinen, joka ehti jo päästä &lt;a href=&#34;http://it.slashdot.org/article.pl?sid=08/12/02/1314208&amp;from=rss&#34;&gt;Slashdotiin&lt;/a&gt;, &lt;a href=&#34;http://www.theregister.co.uk/2008/12/02/apple_mac_av_advice/&#34;&gt;Registeriin&lt;/a&gt;, &lt;a href=&#34;http://blogs.zdnet.com/security/?p=2242&#34;&gt;ZDnetiin&lt;/a&gt; sekä jopa &lt;a href=&#34;http://news.bbc.co.uk/1/hi/technology/7760344.stm&#34;&gt;BBC:hen&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Apple julkaisi nimittäin kesällä 2007 &lt;a href=&#34;http://www.tuaw.com/2008/12/02/apple-updates-antivirus-version-numbers-security-savants-lose-g/&#34;&gt;knowledge base -artikkelin&lt;/a&gt;, jossa se yksinkertaisesti luetteli Mac OS:lle tarjolla olevia antivirus-ohjelmistoja. KB-artikkelia päivitettiin äskettäin, ja väärinymmärrys aiheutti laajan huhun siitä, että Apple olisi yllättäen suosittelemassa asiakkaitaan asentamaan useita antivirus-ohjelmistoja Macceihinsa.&lt;/p&gt;&#xA;&lt;p&gt;Saa nähdä päätyykö tämä uutisankka suomalaisiinkin uutispalveluihin...&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ensituntumaa OLPC:hen</title>
      <link>https://kennethfalck.net/2008/12/01/ensituntumaa-olpchen/</link>
      <pubDate>Mon, 01 Dec 2008 14:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/12/01/ensituntumaa-olpchen/</guid>
      <description>&lt;p&gt;Viime aikoina on tullut paljon ensituntumia moniin asioihin. Tänään sattui &lt;a href=&#34;http://hiit.fi/&#34;&gt;HIITissä&lt;/a&gt; vieraillessani tilaisuus kokeilla &lt;a href=&#34;http://en.wikipedia.org/wiki/OLPC_XO-1&#34;&gt;OLPC XO-1:tä&lt;/a&gt; (One Laptop Per Child). Kyseessä on siis se edullinen &amp;quot;lelu-pc&amp;quot;, jota on viety erilaisten kehittyvien maiden lapsille.&lt;/p&gt;&#xA;&lt;p&gt;OLPC:n käyttöliittymä on mielenkiintoinen. Se on hyvin verkkokeskeinen eikä muistuta mitään tuntemaani olemassaolevaa käyttöjärjestelmää. Outoudesta huolimatta käyttöliittymän idean hahmottaa nopeasti, kun laitetta räplää puolisen tuntia.&lt;/p&gt;&#xA;&lt;p&gt;Koska pohjalla on Linux, laitteen selainpuoli on kunnossa (Firefox 3). Kokeilemassani yksilössä oli Flash-pluginikin asennettu, joten pääsin toteamaan, että &lt;a href=&#34;http://pelikone.fi/&#34;&gt;Pelikone&lt;/a&gt; toimii OLPC:ssä ;-) Valitettavasti suorituskyky on sen verran vaatimaton, että useimmat Flash-pelit eivät kuitenkaan toimi kauhean hyvin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ensituntumaa Android-ohjelmoinnista</title>
      <link>https://kennethfalck.net/2008/11/30/ensituntumaa-android-ohjelmoinnista/</link>
      <pubDate>Sun, 30 Nov 2008 17:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/30/ensituntumaa-android-ohjelmoinnista/</guid>
      <description>&lt;p&gt;Saatuani G1-puhelimen innostuin tietysti myös kokeilemaan Android-ohjelmointia. Googleltahan löytyy &lt;a href=&#34;http://code.google.com/android/&#34;&gt;tarvittavat työkalut&lt;/a&gt; ilmaiseksi ohjelmien kehittämiseen Mac OS X:ssä, Linuxissa ja Windowsissa.&lt;/p&gt;&#xA;&lt;p&gt;Valitettavasti Android SDK ei mielestäni ole ihan täysin Googlen laatukriteerien tasalla. Se on käytännössä plugin Eclipse-kehitysympäristöön, joka tarjoaa wizardin sovelluspohjan luomiseen sekä muutaman pretty-XML-editorin ja esikatseluikkunan.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;GUI-käyttöliittymän&lt;/strong&gt; muokkaaminen on siis käytännössä XML:n muokkaamista ja tulosten esikatselua graafisessa ikkunassa. Tämä on aika kaukana iPhone SDK:n ympäristöstä, jossa GUI-elementtejä voi selailla ja drag&amp;#39;n&amp;#39;dropata käyttöliittymään suoraan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ensikokemuksia Google-puhelimesta</title>
      <link>https://kennethfalck.net/2008/11/28/ensikokemuksia-google-puhelimesta/</link>
      <pubDate>Fri, 28 Nov 2008 13:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/28/ensikokemuksia-google-puhelimesta/</guid>
      <description>&lt;p&gt;Kuten jo ehdinkin &lt;a href=&#34;http://kennu.jaiku.com/presence/49834468&#34;&gt;Jaikuilla&lt;/a&gt;, sain eilen tullattua Suomeen eBaysta tilaamani T-Mobile G1 -puhelimen. Tein sen virheen, että tilasin kuljetuksen U.S. Postal Servicellä, joten jouduin käymään pääpostissa täyttelemässä yrityksen tullausilmoituksen ja maksamassa ALV:n vielä omalla rahalla, kun firman luottokortti ei käynyt. Kaikki on kovin paljon helpompaa, kun käyttää aina vaan kuriireja.&lt;/p&gt;&#xA;&lt;p&gt;Google-puhelimessa on muutamia ärsyttäviä juttuja, joihin tosin tottuu aika pian. Valikkopohjainen käyttöliittymä on omaan makuuni tarpeettoman monimutkainen. Jotkut asiat pitää tehdä kosketusnäytöltä, jotkut erillisistä painonapeista, ja tekstiä varten taas pitää aina taittaa näppäimistö esiin. &amp;quot;Back&amp;quot;-toimintokin on jostain syystä sijoitettu erilliseen fyysiseen nappiin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal node-view-X.tpl.php requires node.tpl.php</title>
      <link>https://kennethfalck.net/2008/11/28/drupal-node-view-x.tpl.php-requires-node.tpl.php/</link>
      <pubDate>Fri, 28 Nov 2008 01:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/28/drupal-node-view-x.tpl.php-requires-node.tpl.php/</guid>
      <description>&lt;p&gt;I just got bitten by this (again) and spent many hours googling:&lt;/p&gt;&#xA;&lt;p&gt;If you use Drupal 6 Views and try to override a node-view-VIEWNAME.tpl.php template, you MUST also override the node.tpl.php template in your theme. Otherwise it won&amp;#39;t be picked up.&lt;/p&gt;&#xA;&lt;p&gt;Perhaps next time, Google will hit this blog entry and I&amp;#39;ll remember...&lt;/p&gt;</description>
    </item>
    <item>
      <title>Oletko kunnon amerikkalainen?</title>
      <link>https://kennethfalck.net/2008/11/27/oletko-kunnon-amerikkalainen/</link>
      <pubDate>Thu, 27 Nov 2008 12:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/27/oletko-kunnon-amerikkalainen/</guid>
      <description>&lt;p&gt;Tee &lt;a href=&#34;http://www.americancivicliteracy.org/resources/quiz.aspx&#34;&gt;U.S. Civics Quiz&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Oma tulos: You answered 24 out of 33 correctly - 72.73 %&lt;/p&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://samikki.jaiku.com/presence/49774125&#34;&gt;Jaiku&lt;/a&gt;)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Domain Transfer Completed</title>
      <link>https://kennethfalck.net/2008/11/22/domain-transfer-completed/</link>
      <pubDate>Sat, 22 Nov 2008 22:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/22/domain-transfer-completed/</guid>
      <description>&lt;p&gt;Neljän päivän siirto-operaatio onnistui, nyt kfalck.net ja muut domainini ovat GoDaddyn hoivissa. Hyvästit Network Solutionsille, sieltä en aio enää koskaan tilata mitään. GoDaddystakin olen kyllä kuullut pahaa, liittyen heidän spam-policyyn ja domainien lukkiutumiseen ilman hyvää syytä. Mutta katsotaan nyt.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone 3G SIM-unlock lähestyy</title>
      <link>https://kennethfalck.net/2008/11/21/iphone-3g-sim-unlock-l%C3%A4hestyy/</link>
      <pubDate>Fri, 21 Nov 2008 00:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/21/iphone-3g-sim-unlock-l%C3%A4hestyy/</guid>
      <description>&lt;p&gt;iPhone Dev Team blogittaa &lt;a href=&#34;http://blog.iphone-dev.org/post/60599514/the-silicon-chip-inside-her-head&#34;&gt;olevansa jo lähellä iPhone 3G SIM-unlockia&lt;/a&gt;. Ovat saaneet basebandin aika hyvin haltuun.&lt;/p&gt;&#xA;&lt;p&gt;Blogissa muistutetaan myös, että iPhonea ei kannata päivittää vielä 2.2-versioon, jos haluaa varmistua, että unlock onnistuu.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Valoautomaatiota ja liikkeentunnistusta</title>
      <link>https://kennethfalck.net/2008/11/20/valoautomaatiota-ja-liikkeentunnistusta/</link>
      <pubDate>Thu, 20 Nov 2008 21:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/20/valoautomaatiota-ja-liikkeentunnistusta/</guid>
      <description>&lt;p&gt;Tilaamani X10-laitteet saapuivat &lt;a href=&#34;http://www.intellihome.be/english/index.asp&#34;&gt;IntelliHomesta&lt;/a&gt; kahdessa päivässä. Loistavaa palvelua!&lt;/p&gt;&#xA;&lt;p&gt;Hauskin palikka on &lt;a href=&#34;http://www.intellihome.be/english/productview.asp?id=58&#34;&gt;LM13&lt;/a&gt;-liikkeentunnistin. Se lähettää &amp;quot;On&amp;quot;-viestin halutulla koodilla aina liikettä havaitessaan. Tämä riittääkin minulle, sillä koodasin &lt;a href=&#34;http://www.perceptiveautomation.com/indigo/index.html&#34;&gt;Indigoon&lt;/a&gt; pienen AppleScriptin, joka tarkkailee liikettä ja sammuttelee valoja, jos sitä ei havaita pitkään aikaan.&lt;/p&gt;&#xA;&lt;p&gt;Tilasin myös pari &lt;a href=&#34;http://www.intellihome.be/english/productview.asp?id=117&#34;&gt;LM15&lt;/a&gt;-lamppukantamoduulia, joissa on muutamia ongelmia. Ensinnäkin moduuli on sen verran pitkä, että se sopii huonosti jalkalamppuihin, joissa on pieni varjostin. Toisekseen se ei jostain syystä ruuvaudu sisään moniin Ikean jalkalamppuihin. LM15 onkin parhaimmillaan kattolampuissa, joihin olisi muuten vaikea saada mitään kytkintä väliin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Energian hukkaamisen välttämistä kotona</title>
      <link>https://kennethfalck.net/2008/11/19/energian-hukkaamisen-v%C3%A4ltt%C3%A4mist%C3%A4-kotona/</link>
      <pubDate>Wed, 19 Nov 2008 12:26:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/19/energian-hukkaamisen-v%C3%A4ltt%C3%A4mist%C3%A4-kotona/</guid>
      <description>&lt;p&gt;Olen aina vierastanut termiä &amp;#39;energian säästäminen&amp;#39;. Säästäminen viittaa siihen, että pitää luopua jostain.&lt;/p&gt;&#xA;&lt;p&gt;Sen sijaan energian hukkaamisen välttäminen on järkevää. Löysin kotoa monta paikkaa, joissa turhan energiankulutuksen voi eliminoida pienellä vaivalla.&lt;/p&gt;&#xA;&lt;p&gt;Ensimmäisenä steppinäni oli järjestellä jatkojohdot ja jakorasiat olohuoneesta uudelleen siten, että sain kaikki ne elektroniset laitteet, joita en käytä läheskään päivittäin tai edes viikottain, yhteisten katkaisimien taakse.&lt;/p&gt;&#xA;&lt;p&gt;Mittasin kulutusmittarilla, että energiaa säästyy tämän verran:&lt;/p&gt;&#xA;&lt;p&gt;Tv-laitteet: 45W&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Televisio, digiboksi, DVD-soitin, Xbox&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Äänentoisto: 25W&lt;/p&gt;</description>
    </item>
    <item>
      <title>MacBookin trackpad-päivitys ei auttanut</title>
      <link>https://kennethfalck.net/2008/11/19/macbookin-trackpad-p%C3%A4ivitys-ei-auttanut/</link>
      <pubDate>Wed, 19 Nov 2008 02:41:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/19/macbookin-trackpad-p%C3%A4ivitys-ei-auttanut/</guid>
      <description>&lt;p&gt;Apple julkaisi firmware-päivityksen uusien MacBookien trackpadeihin, ja se saattoi ehkä korjata joitain juttuja, joihin olin jo tottunut. Edelleen kärsin kuitenkin &amp;quot;horisontaalisen peukalon ongelmasta&amp;quot;, eli trackpadin klikkailu lappeellan olevalla peulalolla aiheuttaa hiirikursorin liikkumista hieman. Myöskin, kun peukkua pitää lappeellaan pohjassa valitakseen alueen tai tehdäkseen drag&amp;#39;n&amp;#39;dropin, kursori välillä töksähtelee. Johtunee siitä, että peukku ottaa useita kosketuspintoja trackpadin levyyn.&lt;/p&gt;&#xA;&lt;p&gt;Noin muuten olen alkanut pitää tästä MacBookista paljon. Näppäimistö ajautui sisään ihan toimivaksi ja mukavaksi käyttää. Sen taustavalo on loistava iltaisin. Ruudun kirkkaus on sen verran voimakas, ettei glossy-näytön heijastelu ole haitannut kertaakaan. Erityisesti olen ihastunut MacBookin kannen sulkijalukkomekanismiin, jota ei siis ole. Kansi vain laitetaan kiinni kuin kirja, ja avataan vastaavasti taittamalla se auki. Mikseivät kaikki läppärit toimi näin?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Domainit pois Network Solutionsista</title>
      <link>https://kennethfalck.net/2008/11/18/domainit-pois-network-solutionsista/</link>
      <pubDate>Tue, 18 Nov 2008 00:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/18/domainit-pois-network-solutionsista/</guid>
      <description>&lt;p&gt;Päätin siirtää kaikki domainini &lt;a href=&#34;http://godaddy.com/&#34;&gt;GoDaddyyn&lt;/a&gt;. Olen aiemmin pitänyt niitä Network Solutionsissa, koska rekisteröin ensimmäiset domainini vuoden &amp;#39;99 tienoilla. Silloin InterNIC-perintö oli vielä vahva ja Network Solutions oli luontevin paikka rekisteröidä uudetkin domainit.&lt;/p&gt;&#xA;&lt;p&gt;Vuosien varrella Network Solutions on alkanut ottaa päähän yhä enemmän monessakin suhteessa. Koko palvelu on kovin sekava käyttää ja sisältää paljon historian painolastia esimerkiksi erilaisten NIC-handlejen muodossa. Ja aina kun kirjautuu sisään, saitti yrittää kaupitella krääsää, niin että hädin tuskin löytää ylläpitoliittymän.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Teemojen periyttäminen Drupalissa</title>
      <link>https://kennethfalck.net/2008/11/11/teemojen-periytt%C3%A4minen-drupalissa/</link>
      <pubDate>Tue, 11 Nov 2008 21:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/11/teemojen-periytt%C3%A4minen-drupalissa/</guid>
      <description>&lt;p&gt;Kun Drupal 6.x -saitilla haluaa tehdä pieniä muutoksia olemassaolevaan teemaan, voi käyttää teemojen periyttämistä. Sen avulla alkuperäistä teemaa ei tarvitse kopioida ja muokata, vaan kaikki ominaisuudet periytyvät isäntäteemasta, ja niitä voi sitten ylikuormittaa tarpeen mukaan. Tästä on etua varsinkin silloin, kun isäntäteema saattaa päivittyä uusien versioiden myötä.&lt;/p&gt;&#xA;&lt;p&gt;Teema periytetään luomalla uusi teema, jonka .info-tiedosto näyttää tältä:&lt;/p&gt;&#xA;&lt;p&gt;name = Uusi teema&#xA;version = VERSION&#xA;core = 6.x&#xA;engine = phptemplate&#xA;base theme = garland&#xA;stylesheets[all][] = style-uusiteema.css&#xA;stylesheets[print][] = print-uusiteema.css&lt;/p&gt;</description>
    </item>
    <item>
      <title>Things - Getting Things Done</title>
      <link>https://kennethfalck.net/2008/11/11/things-getting-things-done/</link>
      <pubDate>Tue, 11 Nov 2008 19:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/11/things-getting-things-done/</guid>
      <description>&lt;p&gt;Olen alkanut käyttää uutta, vielä julkaisematonta tehtävänhallintasoftaa nimeltä &lt;a href=&#34;http://www.culturedcode.com/things/&#34;&gt;Things&lt;/a&gt;. Sen esiversio on saatavilla Mac OS X:lle ja iPhonelle.&lt;/p&gt;&#xA;&lt;p&gt;Thingsin mullistava keksintö on tagien käyttö perinteisten kiinteiden tietokenttien sijaan. Esimerkiksi tehtävien prioriteetit määritellään tageilla High, Medium ja Low. Omia prioriteetteja ja mitä tahansa muitakin tageja voi lisätä vapaasti, ja tehtäviä voi sitten suodatella tagien mukaan. Getting Things Done -metodologiassa lajitellaan tehtävät usein esimerkiksi niiden fyysisen sijainnin mukaan, joten tällaisia tagituksia on helppo tehdä lennosta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tip: MobileMe Sync 100% CPU Problem</title>
      <link>https://kennethfalck.net/2008/11/10/tip-mobileme-sync-100-cpu-problem/</link>
      <pubDate>Mon, 10 Nov 2008 21:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/10/tip-mobileme-sync-100-cpu-problem/</guid>
      <description>&lt;p&gt;If you&amp;#39;re suffering of MobileMe sync eating up 100% CPU on Mac OS X and the sync wheel running for a long time, check if there is a &amp;quot;synchronization warning&amp;quot; window in the background. That is the window that warns you when more than X percent of calendar entries are changing. It is easily lost behind other application windows.&lt;/p&gt;&#xA;&lt;p&gt;When that window is open on any of your computers (waiting for you to click), apparently nobody can sync and MobileMe will take 100% CPU while it&amp;#39;s trying.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lahjoitin Wikipedialle 24 EUR</title>
      <link>https://kennethfalck.net/2008/11/07/lahjoitin-wikipedialle-24-eur/</link>
      <pubDate>Fri, 07 Nov 2008 00:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/07/lahjoitin-wikipedialle-24-eur/</guid>
      <description>&lt;p&gt;Lahjoitin Wikipedialle $30 (24 EUR). Sen voi tehdä helposti PayPalilla &lt;a href=&#34;http://wikimediafoundation.org/wiki/Donate/en&#34;&gt;lahjoitussivulta&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Tuo summa on sellainen, ettei sen lahjoittamista tarvitse kauhean kauan pohdiskella. Wikipediaa tulee käytettyä nykyään niin paljon, että ihan mielelläni annan jotain takaisin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Käytettävyysanalyysi kuntavaalien äänestyskoneesta</title>
      <link>https://kennethfalck.net/2008/11/05/k%C3%A4ytett%C3%A4vyysanalyysi-kuntavaalien-%C3%A4%C3%A4nestyskoneesta/</link>
      <pubDate>Wed, 05 Nov 2008 16:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/05/k%C3%A4ytett%C3%A4vyysanalyysi-kuntavaalien-%C3%A4%C3%A4nestyskoneesta/</guid>
      <description>&lt;p&gt;Jaikusta bongattua: User Pointin Aapo Puskalan tekemä &lt;a href=&#34;http://www.userpoint.fi/aanestyspaate/index.html&#34;&gt;käytettävyysanalyysi&lt;/a&gt; kuntavaaleissa käytetystä TietoEnatorin äänestyskoneesta. Mukana on myös mainio ehdotus siitä, miten käyttöliittymän olisi voinut toteuttaa fiksusti.&lt;/p&gt;&#xA;&lt;p&gt;Parempi käyttöliittymä ei ratkaise sähköisen äänestämisen muita ongelmia, mutta on aiheena silti mielenkiintoinen. Eroavaisuudet TietoEnatorin ja Aapon käyttöliittymien välillä korostavat hienosti sitä, mistä käytettävyyssuunnittelussa todella on kyse. Asioita ei pidä selittää käyttäjälle, vaan käyttäjän pitää luonnostaan tuntea toimivansa oikein.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mihin katosi Yleisradion vaaliuutinen?</title>
      <link>https://kennethfalck.net/2008/11/05/mihin-katosi-yleisradion-vaaliuutinen/</link>
      <pubDate>Wed, 05 Nov 2008 14:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/05/mihin-katosi-yleisradion-vaaliuutinen/</guid>
      <description>&lt;p&gt;&lt;em&gt;&lt;a href=&#34;http://www.yle.fi/uutiset/ulkomaat/oikea/id106604.html&#34;&gt;&amp;quot;Liian innokas vaalituloksen julkaiseminen ei kannata&amp;quot;&lt;/a&gt; from YLE Pääuutiset Nov 4, 2008&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;&amp;quot;Maltti on valttia tv-yhtiöiden vaalilähetyksissä, arvioi YLE Uutisten ulkomaantoimituksen esimies Reijo Lindroos. Vaa&amp;#39;ankieliosavaltioiden äänimäärät pitävät jännitystä yllä keskiviikon aamupäivään saakka, eikä lopullista vaalitulosta kannata povata liian aikaisin.&amp;quot;&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Noin sanoo Google Reader, mutta kyseinen &lt;a href=&#34;http://www.yle.fi/uutiset/ulkomaat/oikea/id106604.html&#34;&gt;linkki YLEn saitille&lt;/a&gt; palauttaa vain tyhjän sivun. Onko Yleisradion normaalikäytäntö siivota pois jälkikäteen uutiset, joissa oma lausunto meni nolosti pieleen?&lt;/p&gt;&#xA;&lt;p&gt;Tässä tapauksessahan siis USA:n media julisti Obaman voittajaksi jo aamulla noin 6:30 tienoilla Suomen aikaa, vaikka joku YLEn esimies oli ennustanut ihan muuta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Obama 2008</title>
      <link>https://kennethfalck.net/2008/11/05/obama-2008/</link>
      <pubDate>Wed, 05 Nov 2008 05:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/05/obama-2008/</guid>
      <description>&lt;p&gt;Tänään tehtiin sitten historiaa monella tasolla. Luultavasti useammalla kuin vielä päällepäin näkyykään. Pitkästä aikaa tuntuu siltä, että maailmalla on jotain toivoa ja asiat muuttuu välillä paremmiksikin.&lt;/p&gt;&#xA;&lt;p&gt;Obamalla tulee myös olemaan suuri merkitys rotuennakkoluulojen poistamisessa. Olen huolestuneena seurannut rasististen asenteiden leviämistä meillä Suomessa, mistä perussuomalaisten vaalimenestys tuoreimpana osoituksena. Tummaihoisen presidentin näkeminen johtamassa maata, jonka kulttuuria niin kovasti ihannoimme, tulee varmasti muuttamaan tätä seuraavina vuosina.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ensikokemuksia uudesta MacBookista</title>
      <link>https://kennethfalck.net/2008/11/01/ensikokemuksia-uudesta-macbookista/</link>
      <pubDate>Sat, 01 Nov 2008 14:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/11/01/ensikokemuksia-uudesta-macbookista/</guid>
      <description>&lt;p&gt;Applen on lähes yhtä vaikea täyttää uudelle MacBookille asetettavia odotuksia kuin George Lucasin on tehdä uutta Star Wars -elokuvaa, joka ei olisi aina jollain tavalla pettymys. Etukäteis-hype ja huhut pitävät huolen siitä, että yleisö odottaa joka kerta jotain täysin ennenkuulumatonta ja mullistavaa.&lt;/p&gt;&#xA;&lt;p&gt;Ikävä kyllä MacBookissa on muutamia juttuja, joiden takia se ei ihan täytä niitä kriteerejä, joita yleensä Applen tuotteilta odottaisin. Listaan tässä ne, joihin olen törmännyt.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Näppäimistö&lt;/strong&gt; on halvan tuntuinen. Näppäinten tuntuma on vähän vaihteleva ja &amp;quot;koliseva&amp;quot;. Muutamat näppäimet kirskuvat ikävästi alumiinikehikkoa vasten. Tämä on tosin vaimentunut jo parissa päivässä, joten ilmeisesti se on lähinnä uutuudenkarheutta ja pientä viimeistelemättömyyttä uudessa valmistusprosessissa. Olen käyttänyt jo pitkään Applen &lt;a href=&#34;http://www.apple.com/keyboard/&#34;&gt;alumiinista näppäimistöä&lt;/a&gt; iMacin kanssa, joten odotin vastaavaa laatua.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Acquia Drupal käytössä</title>
      <link>https://kennethfalck.net/2008/10/30/acquia-drupal-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Thu, 30 Oct 2008 13:58:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/30/acquia-drupal-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Otin käyttöön &lt;a href=&#34;http://acquia.com/&#34;&gt;Acquia Drupalin&lt;/a&gt; tällä saitilla. Sen Community-tilaus on toistaiseksi ilmainen, joten tämä on hyvä tilaisuus kokeilla Acquiaa käytännössä.&lt;/p&gt;&#xA;&lt;p&gt;Siirtyminen tavallisesta Drupalista Acquiaan oli helppoa. Piti vain ensin disabloida ne third-party-moduulit, jotka Acquiassa kuuluvat &amp;quot;coreen&amp;quot;, ja sitten vaihtaa Acquia 1.0.2:n koodi vanhan Drupal 6.6:n tilalle. Lopuksi moduulit takaisin päälle ja homma toimii kuten ennenkin. Omat moduulit, oma teema sekä loput third-party-moduulit toimivat kakistelematta.&lt;/p&gt;&#xA;&lt;p&gt;Katsotaan onko Acquiasta sitten muuta iloa, kuin laajempi moduulivalikoima. Ainakin omat Drupal-saitit saa kivasti rekisteröityä Acquia Networkiin, jossa näkyy niiden uptime-status sekä esimerkiksi asentamattomat päivitykset. Hälytykset tulevat myöskin sähköpostilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google pilaa OpenID:n tahallaan</title>
      <link>https://kennethfalck.net/2008/10/30/google-pilaa-openidn-tahallaan/</link>
      <pubDate>Thu, 30 Oct 2008 08:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/30/google-pilaa-openidn-tahallaan/</guid>
      <description>&lt;p&gt;Google-tilien on julistettu &lt;a href=&#34;http://www.techcrunch.com/2008/10/29/your-gmail-account-is-now-an-openid/&#34;&gt;toimivan nyt OpenID:nä&lt;/a&gt;, mutta asia ei ole näin. Google-tili ei toimi OpenID:nä. Sillä ei voi kirjautua sisään saiteille, jotka tukevat OpenID:tä.&lt;/p&gt;&#xA;&lt;p&gt;Sen sijaan Googlella on &lt;a href=&#34;http://googledataapis.blogspot.com/2008/10/federated-login-for-google-account.html&#34;&gt;OpenID:tä muistuttava härpäke&lt;/a&gt;, joka vaatii custom-integraation jokaiselle sitä hyödyntävälle saitille. Tämä on kieroudessaan suorastaan microsoftmainen veto.&lt;/p&gt;&#xA;&lt;p&gt;PS. Tätä asiaa ei pidä sekoittaa muihin Googleen liittyviin OpenID-aktiviteetteihin, kuten &lt;a href=&#34;http://www.techcrunch.com/2008/01/18/google-offers-openid-logins-via-blogger/&#34;&gt;Blogger-tunnusten OpenID-käyttöön&lt;/a&gt; sekä erään kolmannen osapuolen toteuttamaan &lt;a href=&#34;http://openid-provider.appspot.com/&#34;&gt;OpenID-kirjautumiseen&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sähköinen äänestysjärjestelmä ei kelpaa</title>
      <link>https://kennethfalck.net/2008/10/26/s%C3%A4hk%C3%B6inen-%C3%A4%C3%A4nestysj%C3%A4rjestelm%C3%A4-ei-kelpaa/</link>
      <pubDate>Sun, 26 Oct 2008 22:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/26/s%C3%A4hk%C3%B6inen-%C3%A4%C3%A4nestysj%C3%A4rjestelm%C3%A4-ei-kelpaa/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.digitoday.fi/tietoturva/2008/10/26/effi-kuntavaalien-sahkoisen-aanestysjarjestelma-ei-kelpaa/200827880/66&#34;&gt;Digitoday vetää hyvin yhteen&lt;/a&gt; ongelmia sähköisessä äänestämisessä. Kovin vähän esimerkiksi Yleisradio on tuonut esiin näitä ongelmia. Erityisesti ärsyttää se, että sähköistä äänestämistä ujutetaan tällä tavalla muutamilla pikkukunnilla läpi. Paikoissa, joissa ihmiset eivät varmaan edes ymmärrä sen todellisia ongelmia ja riskejä. Sitten haastatellaan muutamaa urpoa uutisissa ja kuvitellaan että kaikki ovat tyytyväisiä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Onko Eggdrop ainoa irc-botti?</title>
      <link>https://kennethfalck.net/2008/10/26/onko-eggdrop-ainoa-irc-botti/</link>
      <pubDate>Sun, 26 Oct 2008 17:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/26/onko-eggdrop-ainoa-irc-botti/</guid>
      <description>&lt;p&gt;Tiedän ihmisiä, joilla on outoja fetissejä Tcl-ohjelmointikieleen, mutta en varsinaisesti kuulu heihin. Siksi etsinkin säännöllisesti parin vuoden välein jotain vaihtoehtoa &lt;a href=&#34;http://www.eggheads.org/&#34;&gt;Eggdropille&lt;/a&gt; irc-botiksi, mutta en ole koskaan löytänyt parempaakaan.&lt;/p&gt;&#xA;&lt;p&gt;Sattuisiko kellään, joka lukee tämän, olemaan vinkkejä esimerkiksi Pythonilla laajennettavasta botista? Edellytyksenä olisi myös, että kyseinen tuote/projekti on melko kypsä ja stabiili ja jonkinlaisen yhteisön tukema.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Piraattipuolue Alt-partyilla</title>
      <link>https://kennethfalck.net/2008/10/25/piraattipuolue-alt-partyilla/</link>
      <pubDate>Sat, 25 Oct 2008 15:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/25/piraattipuolue-alt-partyilla/</guid>
      <description>&lt;p&gt;Vielä viime hetken vinkkinä, että &lt;a href=&#34;http://wiki.piraattipuolue.fi/Alt_Party_2008&#34;&gt;Alt-partyilla&lt;/a&gt; Kaapelitehtaalla voi käydä allekirjoittamassa Piraattipuolueen kannattajakortin, mikäli haluaa osallistua toimintaan. Kannattajakorttihan ei johda puolueen jäsenyyteen, vaan korteilla ainoastaan osoitetaan, että puolueella on riittävä kiinnostus voidakseen asettaa ehdokkaita seuraavissa vaaleissa.&lt;/p&gt;&#xA;&lt;p&gt;Piraattipuolueen porukkaa oli ainakin eilen vielä myöhään illallakin paikalla keräämässä kortteja.&lt;/p&gt;&#xA;&lt;p&gt;Tämän hetken &lt;a href=&#34;http://wiki.piraattipuolue.fi/Kannattajakorttitilanne&#34;&gt;status&lt;/a&gt; näyttäisi olevan 1319/5000 (26,38%) eli vielä tarvitaan reilusti kortteja.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal-vinkki: Muista pakolliset Views-ehdot</title>
      <link>https://kennethfalck.net/2008/10/24/drupal-vinkki-muista-pakolliset-views-ehdot/</link>
      <pubDate>Fri, 24 Oct 2008 01:26:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/24/drupal-vinkki-muista-pakolliset-views-ehdot/</guid>
      <description>&lt;p&gt;Olen huomannut Drupal-saitteja pystyttäessä tietyn virheen toistuvan jatkuvasti: Unohdan aina lisätä &lt;a href=&#34;http://drupal.org/project/views&#34;&gt;Views&lt;/a&gt;-moduulilla tehtyihin näkymiin &amp;quot;pakolliset&amp;quot; ehdot. &lt;/p&gt;&#xA;&lt;p&gt;Tarkoitan näillä ehdoilla seuraavia:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Node:Published = True&lt;/li&gt;&#xA;&lt;li&gt;Node:Post date &amp;lt;= Current time - 1 seconds&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Eli näytetään vain ne noodit, jotka on julkaistu ja joiden julkaisuajankohta on menneisyydessä. Jos tekee paljon näkymiä ja unohtaa nämä ehdot, niin törmää myöhemmin ongelmiin, kun ajastus ja draftien käsittely ei toimi loogisesti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Yleisradio ja toivottomat maksukorttimiehet</title>
      <link>https://kennethfalck.net/2008/10/23/yleisradio-ja-toivottomat-maksukorttimiehet/</link>
      <pubDate>Thu, 23 Oct 2008 15:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/23/yleisradio-ja-toivottomat-maksukorttimiehet/</guid>
      <description>&lt;p&gt;Ehdotukset siirtää Yleisradion kanavat maksukortin taakse aiheuttavat minussa nykyään eräänlaisen tuskastuneen, hiljaisen raivon. Viimeksi tätä ehdottaa &lt;a href=&#34;http://www.karihaakana.net/arkistot/2008/10/mitae_tekemistae_asunnollani_o.html&#34;&gt;Kari Haakana blogissaan&lt;/a&gt; kovin huolettomasti.&lt;/p&gt;&#xA;&lt;p&gt;Eikö se jo uppoa ihmisten ymmärrykseen, että Yleisradio ei ole -- eikä sen ole tarkoitus olla -- kaupallinen tv-toimija. Kaupallisia toimijoita ovat esimerkiksi MTV ja Nelonen. Niiden tarkoitusperät ja toimintaehdot ovat täysin erilaisia kuin Yleisradion.&lt;/p&gt;&#xA;&lt;p&gt;Toivottava kehityssuunta olisi juuri päinvastainen kuin mikään &amp;quot;kansallinen maksu-tv&amp;quot;. Yleisradiosta pitäisi pikemminkin karsia pois tarpeettomat kaupalliset elementit, jotka lähinnä vääristävät kilpailua. Keskitytään siihen missä YLE on hyvä ja missä kaupalliset toimijat huonoja: yleissivistävät, kriittiset ja ajankohtaiset ohjelmat.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miksi World of Warcraft tuntuu vieläkin parhaimmalta</title>
      <link>https://kennethfalck.net/2008/10/20/miksi-world-of-warcraft-tuntuu-viel%C3%A4kin-parhaimmalta/</link>
      <pubDate>Mon, 20 Oct 2008 23:58:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/20/miksi-world-of-warcraft-tuntuu-viel%C3%A4kin-parhaimmalta/</guid>
      <description>&lt;p&gt;Yksi juttu täytyy todeta. Vaikka World of Warcraft on jo ikivanha ja sen grafiikkamoottori oli kuulemma vanha jo ilmestyessään, niin jostain syystä sen design tuntuu edelleen paremmalta kuin nämä uudemmat MMORPGit. Ei siis niinkään laadullisesti, vaan fiiliksellisesti.&lt;/p&gt;&#xA;&lt;p&gt;Muistan miten aloittelin Wowaamista ostettuani Terolta ylimääräisen pelipaketin keväällä 2005. Pelissä oli jotenkin todella mahtava fiilis heti alusta alkaen, kun loin hahmon vehreään Red Cloud Mesaan, löysin jylhäisen Thunderbluffin kaupungin ja pääsin lopulta kiertämään Barrensin auringon paahtamia savanneja.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kirjasuositus: The Non-Designer&#39;s Design Book</title>
      <link>https://kennethfalck.net/2008/10/18/kirjasuositus-the-non-designers-design-book/</link>
      <pubDate>Sat, 18 Oct 2008 18:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/18/kirjasuositus-the-non-designers-design-book/</guid>
      <description>&lt;p&gt;[amazon 0321534042 thumbnail] Suosittelen &lt;a href=&#34;&#34;&gt;tätä kirjaa&lt;/a&gt; lämpimästi kaikille teknisille ihmisille, jotka haluavat ymmärtää visuaalista suunnittelua paremmin.&lt;/p&gt;&#xA;&lt;p&gt;Kirjan lukeminen ei tee kenestäkään design-gurua. Tähän opukseen on kuitenkin saatu koottua joukko helposti omaksuttavia sääntöjä, joita noudattamalla omista töistä tulee johdonmukaisia ja siistejä.&lt;/p&gt;&#xA;&lt;p&gt;Monet säännöistä ovat sellaisia, joita me kaikki noudatamme luonnostaan. Usein lopputuloksessa on kuitenkin jotain vikaa, jota on vaikea tunnistaa konkreettisesti. Silloin sääntöjen tunteminen auttaa etsimään virheen ja korjaamaan sen.&lt;/p&gt;&#xA;&lt;p&gt;Williamsin kirja käsittelee visuaalista suunnittelua yleisellä tasolla panoastaen lähinnä tekstin latomiseen ruudulle (tai paperille) fiksusti. Se antaa selkeitä muistisääntöjä, jotka tulisi huomioida aina, kun suunnittelee jotain:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Saitin ulkoasusta</title>
      <link>https://kennethfalck.net/2008/10/18/saitin-ulkoasusta/</link>
      <pubDate>Sat, 18 Oct 2008 01:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/18/saitin-ulkoasusta/</guid>
      <description>&lt;p&gt;Jos joku ihmettelee tämän saitin ulkoasun muuttumista, niin olen tehnyt vähän erilaisia kokeiluja sen suhteen, miten suurempi kontrasti ja ryhmittely parantaisivat luettavuutta... Saattaa olla vielä designissä pientä hiomista, että se myös näyttäisi hyvältä ;-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kirjasuositus: Programming Collective Intelligence</title>
      <link>https://kennethfalck.net/2008/10/17/kirjasuositus-programming-collective-intelligence/</link>
      <pubDate>Fri, 17 Oct 2008 21:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/17/kirjasuositus-programming-collective-intelligence/</guid>
      <description>&lt;p&gt;[amazon 0596529325 thumbnail] &lt;a href=&#34;http://www.amazon.co.uk/Programming-Collective-Intelligence-Building-Applications/dp/0596529325%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596529325&#34;&gt;Tämä&lt;/a&gt; on ehdottomasti yksi mielenkiintoisimmista koskaan lukemistani IT-alan kirjoista. Collective Intelligence viittaa tässä yhteydessä algoritmeihin, jotka pyörittävät nykyajan Internetin toimintoja, kuten automaattisia tuotesuosituksia, spämmifilttereitä, hakukoneita ja vastaavia asioita. Siis kaikkea sellaista, mitä käyttäjien luomasta suuresta tietomassasta voidaan automaattisesti seuloa irti.&lt;/p&gt;&#xA;&lt;p&gt;Kirjan matematiikka on pidetty kohtuuden rajoissa. Kaikista algoritmeista on annettu Python-kieliset esimerkit, joten matematiikkaa ei tarvitse välttämättä edes ymmärtää. Sen pystyy kuitenkin omaksumaan lukiopohjalta. Esimerkit ovat muutenkin loistavia: ne hyödyntävät Internetissä olevia avoimia palveluita, kuten del.icio.us:ia, Facebookia ja Hot or Notia, ja suorittavat niistä saatavalla datalla kaikenlaista mielenkiintoista analysointia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kommenttien automaattinen seuraaminen RSS:llä</title>
      <link>https://kennethfalck.net/2008/10/17/kommenttien-automaattinen-seuraaminen-rssll%C3%A4/</link>
      <pubDate>Fri, 17 Oct 2008 03:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/17/kommenttien-automaattinen-seuraaminen-rssll%C3%A4/</guid>
      <description>&lt;p&gt;Lisäsin tälle saitilleni &lt;a href=&#34;http://drupal.org/project/commentrss&#34;&gt;commentrss&lt;/a&gt;-moduulin. Sillä saa Drupaliin erillisen RSS-feedin kaikista kommenteista, sekä myös artikkelikohtaiset feedit yksittäisten artikkelien kommenteista. Tämä jälkimmäinen ilmestyy myös wfw:commentRss-elementtinä päätason RSS-feediin, joten kyseistä ominaisuutta hyödyntävien sovellusten pitäisi osata se kaivaa sieltä.&lt;/p&gt;&#xA;&lt;p&gt;Tavoitteenani on saada aikaan joskus tilanne, että voin osallistua (omien ja muiden) blogien keskusteluihin, ja sen jälkeen Google Reader alkaa automaattisesti seurata kyseistä kommenttiketjua. Periaatteessa se olisikin jo mahdollista, jos joku vain pitäisi kirjaa siitä, mihin keskusteluihin olen osallistunut.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MacBook ja Warhammer Online - Success</title>
      <link>https://kennethfalck.net/2008/10/16/macbook-ja-warhammer-online-success/</link>
      <pubDate>Thu, 16 Oct 2008 18:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/16/macbook-ja-warhammer-online-success/</guid>
      <description>&lt;p&gt;TUAW raportoi, että &lt;a href=&#34;http://www.tuaw.com/2008/10/16/putting-the-macbook-through-the-paces-with-warhammer-online/&#34;&gt;Warhammer Online toimii hyvin uudella MacBookilla&lt;/a&gt; NVIDIAn 9400M-näytönohjaimella, 2.4 GHz prosessorilla ja 2GB muistilla. Testasivat peliä Boot Campin kautta XP:llä, mukana myös videota.&lt;/p&gt;&#xA;&lt;p&gt;Itsekin kerkesin jo tilata MacBookin, pitäisi tulla parin viikon kuluttua. Suurin ongelma/päätös tulee varmaankin olemaan se, laittaako dualbootiksi Windows XP vai Vista... Tähän mennessä kun olen luopunut jokaisesta Vista-asennuksestani ja palannut XP SP3:een.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uudet MacBookit - perus-MacBook voittaa?</title>
      <link>https://kennethfalck.net/2008/10/14/uudet-macbookit-perus-macbook-voittaa/</link>
      <pubDate>Tue, 14 Oct 2008 22:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/14/uudet-macbookit-perus-macbook-voittaa/</guid>
      <description>&lt;p&gt;Apple julkaisi sitten uuden &lt;a href=&#34;http://www.apple.com/fi/mac/&#34;&gt;MacBook&lt;/a&gt;-malliston, jossa kaikki läppärit on päivitetty. Minusta kaikkein mielenkiintoisimmalta mallilta vaikuttaa ihan perus-MacBook, jonka (maxxatut) speksit ovat:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;2.4GHz Intel Core 2 Duo&lt;/li&gt;&#xA;&lt;li&gt;4GB 1066MHz DDR3 SDRAM - 2x2GB&lt;/li&gt;&#xA;&lt;li&gt;320GB Serial ATA Drive @ 5400 rpm&lt;/li&gt;&#xA;&lt;li&gt;SuperDrive 8x (DVD±R DL/DVD±RW/CD-RW)&lt;/li&gt;&#xA;&lt;li&gt;Height:    2.41 cm (0.95 inch)&lt;/li&gt;&#xA;&lt;li&gt;Width:    32.5 cm cm (12.78 inches)&lt;/li&gt;&#xA;&lt;li&gt;Depth:    22.7 cm cm (8.94 inches)&lt;/li&gt;&#xA;&lt;li&gt;Weight:    2.04 kg kg (4.5 pounds)&lt;/li&gt;&#xA;&lt;li&gt;13.3-inch (diagonal) LED-backlit glossy widescreen display&lt;/li&gt;&#xA;&lt;li&gt;1280 by 800 native resolution&lt;/li&gt;&#xA;&lt;li&gt;NVIDIA GeForce 9400M graphics processor with 256MB of DDR3 SDRAM shared with main memory&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;Vähän harmittaa, ettei tullut Eee-tyyppistä Maccia. Uusi MacBook Air on edelleen suhteellisen kallis ja se on fyysisesti ihan saman kokoinen kuin MacBook, paksuutta ja painoa lukuunottamatta. Eikä siihen saa kuin 2GB RAMmia.</description>
    </item>
    <item>
      <title>FOWA 2008 -tiivistelmä</title>
      <link>https://kennethfalck.net/2008/10/12/fowa-2008-tiivistelm%C3%A4/</link>
      <pubDate>Sun, 12 Oct 2008 01:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/12/fowa-2008-tiivistelm%C3%A4/</guid>
      <description>&lt;p&gt;Tässäpä asioita, jotka jäivät päällimmäisinä mieleen &lt;a href=&#34;http://london2008.futureofwebapps.com/&#34;&gt;Future of Web Apps 2008&lt;/a&gt; -konferenssista Lontoosta.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Sosiaaliset verkostot&lt;/strong&gt; alkavat federoitua &lt;a href=&#34;http://en.wikipedia.org/wiki/Openid&#34;&gt;OpenID&lt;/a&gt;:n, &lt;a href=&#34;http://en.wikipedia.org/wiki/OAuth&#34;&gt;OAuthin&lt;/a&gt; ja &lt;a href=&#34;http://en.wikipedia.org/wiki/Opensocial&#34;&gt;OpenSocialin&lt;/a&gt; kaltaisten tekniikoiden myötä. Asetelmaksi muodostuu Facebook vs. kaikki muut. Facebookista on tullut sosiaalisen webin &amp;quot;microsoft&amp;quot;, joka pitää kiinni omista suljetuista API-rajapinnoistaan, kun taas kaikki muut (Google, Yahoo, MySpace jne) käyttävät yhteisiä, avoimia standardeja. Federoituminen tarkoittaa, että erilaisille uusille niche-palveluille on jatkossakin oma tilansa, ja ne voivat liittyä osaksi laajempaa sosiaalista verkostoa näiden teknologioiden kautta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Älä yövy Ramadassa</title>
      <link>https://kennethfalck.net/2008/10/09/%C3%A4l%C3%A4-y%C3%B6vy-ramadassa/</link>
      <pubDate>Thu, 09 Oct 2008 01:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/09/%C3%A4l%C3%A4-y%C3%B6vy-ramadassa/</guid>
      <description>&lt;p&gt;Tässä on arvosteluni Hotel Ramada London Docklandsista: Uskomatonta paskaa.&lt;/p&gt;&#xA;&lt;p&gt;Buukkasin täältä huoneen &lt;a href=&#34;http://futureofwebapps.com&#34;&gt;FOWA&lt;/a&gt;-konferenssin ajaksi. Ajattelin että Ramada on luotettava ketju, FOWA suositteli sitä, ja hotellin sivuilla annettiin ymmärtää, että se sijaitsee on aivan kyseisen tapahtumahallin yhteydessä. Neljä tähteä ja hienot näköalat Thames-joelle. Mitäpä sitä sen enempää pohtimaan.&lt;/p&gt;&#xA;&lt;p&gt;Vielä mitä. Ensinnäkään hotellihuoneessa ei ole minkäänlaista minibaaria tai muuta jäähdytysvälinettä. Netti maksaa 15 puntaa vuorokaudessa ja toimii ETHERNETillä. Ei tietoakaan WLANista. Eikä ethernet-kaapelista. Joskus muinoin kanniskelin omia kaapeleita mukana reissatessa, mutta luulin jo siirrytyn langattomaan aikaan hotelleissa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django 1.0</title>
      <link>https://kennethfalck.net/2008/10/08/django-1.0/</link>
      <pubDate>Wed, 08 Oct 2008 02:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/08/django-1.0/</guid>
      <description>&lt;p&gt;Huomasin vasta, että &lt;a href=&#34;http://www.djangoproject.com/weblog/2008/sep/03/1/&#34;&gt;Django 1.0&lt;/a&gt; on julkaistu. Kyseinen framework oli aika pitkään 0.x-versiossa.&lt;/p&gt;&#xA;&lt;p&gt;Django on hieno ja elegantti järjestelmä Python-pohjaisten webbisovellusten kehittämiseen, mutta itseäni harmittaa edelleen erilaiset pienet hankaluudet sen deployaamisessa. Kaikkein pahin ongelma on se, että Apache2/mod_python ei osaa ladata automaattisesti uudelleen muuttuneita skriptitiedostoja. Tämä tekee kehityksestä kovin hankalaa verrattuna tavalliseen PHP:hen. Auto-reload toimii kyllä Djangon omalla kehityspalvelimella, mutta sitten pitää taas viritellä Apacheen FCGI:tä, asentaa joku epämääräinen flup-kirjasto ja niin edelleen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>S-Pankki päivittäispankina</title>
      <link>https://kennethfalck.net/2008/10/06/s-pankki-p%C3%A4ivitt%C3%A4ispankina/</link>
      <pubDate>Mon, 06 Oct 2008 21:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/06/s-pankki-p%C3%A4ivitt%C3%A4ispankina/</guid>
      <description>&lt;p&gt;Minusta on kiva kilpailuttaa pankkeja. Olen pitänyt jo pitkään muutamia erilaisia säästötilejä eri pankeissa saadakseni kokemuksia nettipalveluista ja ollakseni jäätymättä liikaa yhden pankin asiakkaaksi.&lt;/p&gt;&#xA;&lt;p&gt;Nyt tuli avattua koemielessä ihan oikea tili Visa credit/debit -kortteineen &lt;a href=&#34;http://www.s-pankki.fi/&#34;&gt;S-Pankkiin&lt;/a&gt;. Visan saa sieltä ilmaiseksi ensi vuoden loppuun asti, eikä haittaa vaikka on Visa ja muita kortteja ennestään toisesta pankista. Minulla oli jo ennestään S-etukortti, joka muuttui aikoinaan S-tiliksi, ja nyt sain hakemuksen jättämisestä noin viikossa luottokorttiversion. Hakemuksenhan voi jättää suoraan &lt;a href=&#34;https://online.s-pankki.fi/&#34;&gt;verkkopankista&lt;/a&gt;, jos on käynyt hakemassa tunnusluvut esimerkiksi City-Sokoksesta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Slacker Uprising</title>
      <link>https://kennethfalck.net/2008/10/05/slacker-uprising/</link>
      <pubDate>Sun, 05 Oct 2008 16:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/05/slacker-uprising/</guid>
      <description>&lt;p&gt;Tulipa katsottua Michael Mooren &lt;a href=&#34;http://slackeruprising.com/&#34;&gt;Slacker Uprising&lt;/a&gt;, joka on virallisesti saatavilla vain Jenkkilässä, mutta joka on suhteellisen helppo löytää vapaasti nettijakelusta. Kyseinen elokuva on lähinnä feel good -dokumentti Mooren kiertueesta vuoden 2004 presidentinvaalien alla, tarkoituksena herättää nukkuvat äänestäjät. Siinä ei ole juurikaan poliittisesti kiinnostavaa sisältöä.&lt;/p&gt;&#xA;&lt;p&gt;USA:ssahan on käytössä meille suomalaisille varsin oudolta tuntuva &lt;a href=&#34;http://en.wikipedia.org/wiki/Voter_registration&#34;&gt;etukäteisrekisteröinti&lt;/a&gt;, jos haluaa äänestää vaaleissa. Tämä on yksi syy siihen, miksi äänestysprosentti on todella alhainen; vuonna 2004 se oli &lt;a href=&#34;http://en.wikipedia.org/wiki/Presidential_election#Voter_turnout&#34;&gt;56.69%&lt;/a&gt;. Suurin osa kansasta ei vain jaksa nähdä vaivaa, vaikka juuri näiden kansanryhmien etuja luultavasti ajaisi ei-republikaaniehdokas paljon paremmin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal ja Case Sanoma Entertainment</title>
      <link>https://kennethfalck.net/2008/10/01/drupal-ja-case-sanoma-entertainment/</link>
      <pubDate>Wed, 01 Oct 2008 16:54:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/10/01/drupal-ja-case-sanoma-entertainment/</guid>
      <description>&lt;p&gt;Tarkkasilmäiset surffarit saattavat huomata, että tänään julkaistu &lt;a href=&#34;http://www.sanomaentertainment.com/&#34;&gt;www.sanomaentertainment.com&lt;/a&gt; on toteutettu &lt;a href=&#34;http://drupal.org&#34;&gt;Drupalilla&lt;/a&gt;. Tarkemmin sanottuna Drupalin 6-versiolla, joka taipui tähän projektiin yllättävänkin hyvin. Kyseinen saittihan ei ole ihan tyypillistä CMS-sisältöä, vaan melko staattinen sivusto, jossa on muuttuvana sisältönä lähinnä uutisia. Kerron tässä kirjoituksessa muutamia havaintoja Drupalin käyttämisestä tällaisessa projektissa -- lähinnä teknisestä näkökulmasta.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Peruste Drupalin käytölle&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tässä projektissa halusimme saada käytännön tuntumaa ja kokemusta siitä, mihin käyttöön Drupal sopii ja millaisiin ongelmiin sen kanssa törmätään. Saitti on rakenteeltaan sen verran yksinkertainen, että sen olisi voinut tehdä staattisena HTML:näkin. Drupal toimii kuitenkin hyvänä pohjana sisällön ylläpidossa, sillä kaikki sisältö on hallittavissa sen valmiilla käyttöliittymällä. Juuri mitään ei tarvinnut koodata itse PHP:llä, vaan saitti syntyi Drupalin valmiita moduuleja yhdistellen. Teknisenä urakkana oli pääasiassa HTML/CSS-teeman rakentaminen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eee PC ja SSD-optimointivinkkejä</title>
      <link>https://kennethfalck.net/2008/09/25/eee-pc-ja-ssd-optimointivinkkej%C3%A4/</link>
      <pubDate>Thu, 25 Sep 2008 05:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/09/25/eee-pc-ja-ssd-optimointivinkkej%C3%A4/</guid>
      <description>&lt;p&gt;Tässä muutama vinkki Windows XP:n tehokkaampaan käyttöön SSD-levyjen kanssa:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.ocztechnologyforum.com/forum/showthread.php?t=42487&#34;&gt;Prefetcherin disablointi&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/regentry/46656.mspx?mfr=true&#34;&gt;NtfsDisableLastAccessUpdate&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/regentry/28231.mspx?mfr=true&#34;&gt;NtfsDisable8dot3NameCreation&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Mollom-spämmiblokkeri käytössä</title>
      <link>https://kennethfalck.net/2008/09/23/mollom-sp%C3%A4mmiblokkeri-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Tue, 23 Sep 2008 18:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/09/23/mollom-sp%C3%A4mmiblokkeri-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Otin käyttöön &lt;a href=&#34;http://mollom.com/&#34;&gt;Mollomin&lt;/a&gt; tässä blogissani aiemman, hieman hankalan, reCAPTCHAn sijaan. Mollomista on &lt;a href=&#34;http://patrickteglia.com/blog/its-best-if-you-dont-see&#34;&gt;kirjoiteltu viime aikoina&lt;/a&gt; paljon ja se vaikuttaa olevan varsin toimiva ratkaisu spämmin estämiseen. Kyseessähän on ilmainen palvelu, josta on myös kaupallinen pro-versio massiivisempaan käyttöön. Mollomin takaa löytyy Drupalin alkuperäinen kehittäjä &lt;a href=&#34;http://mollom.com/about&#34;&gt;Dries Buytaert&lt;/a&gt;. Drupalin lisäksi Mollom toimii myös &lt;a href=&#34;http://mollom.com/download&#34;&gt;WordPressissä ja Joomlassa&lt;/a&gt; tai kehittäjäkirjastojen kautta missä tahansa PHP-, Ruby-, Python-, Java- tai .NET-pohjaisessa saitissa.&lt;/p&gt;&#xA;&lt;p&gt;Lainaus Mollomin etusivulta:&lt;/p&gt;&#xA;&lt;p&gt;Mollom is currently protecting 4288 websites. The average efficiency is 99.77%. This means that only 23 in 10,000 spam messages were not caught. Mollom has caught 8,950,623 spam messages since it started. Today we caught 55,844 spam messages. On average, 76% of all messages are spam.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal Association</title>
      <link>https://kennethfalck.net/2008/09/22/drupal-association/</link>
      <pubDate>Mon, 22 Sep 2008 22:54:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/09/22/drupal-association/</guid>
      <description>&lt;p&gt;Tulipa &lt;a href=&#34;http://association.drupal.org/user/1249?&#34;&gt;liityttyä&lt;/a&gt; jäseneksi &lt;a href=&#34;http://association.drupal.org/membership&#34;&gt;Drupal Associationiin&lt;/a&gt;. Maksaa 22 EUR.&lt;/p&gt;&#xA;&lt;p&gt;Kyseinen putiikki pyörittää esimerkiksi &lt;a href=&#34;http://drupal.org&#34;&gt;drupal.org&lt;/a&gt;-saittia, järjestää konferensseja ja avustaa paikallisia Drupal-yhdistyksiä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Warhammer Online on hyvä</title>
      <link>https://kennethfalck.net/2008/09/22/warhammer-online-on-hyv%C3%A4/</link>
      <pubDate>Mon, 22 Sep 2008 14:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/09/22/warhammer-online-on-hyv%C3%A4/</guid>
      <description>&lt;p&gt;Pari iltaa pelattu (Witch Elf Rank 10) ja täytyy sanoa, että pidän Warhammer Onlinesta. Vanhalle WoWaajalle peli aukeaa helposti ja maailma on paljon mielenkiintoisempi kuin esimerkiksi Age of Conanissa.&lt;/p&gt;&#xA;&lt;p&gt;Voisi melkein sanoa, että WAR tuntuu WoW-kloonilta, jota on viritetty vähän monipuolisemmaksi. Esimerkiksi PvP on integroitu syvällisemmin peliin, kun vastakkaisilla puolilla olevat hahmoluokat (kuten High Elfit ja Dark Elfit) kulkevat kehittyessään rinnakkaisia &amp;quot;polkuja&amp;quot; ja ottavat välillä yhteen RvR-alueilla. En tosin ottanut vielä juurikaan kontakeja vihollisiin, mutta vaikuttaisi, että Rank-erotkin on tasoitettu taistelualueilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Piraattipuolueen kannattajakorttikampanja alkoi</title>
      <link>https://kennethfalck.net/2008/09/14/piraattipuolueen-kannattajakorttikampanja-alkoi/</link>
      <pubDate>Sun, 14 Sep 2008 03:01:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/09/14/piraattipuolueen-kannattajakorttikampanja-alkoi/</guid>
      <description>&lt;p&gt;Piraattipuolue &lt;a href=&#34;http://blog.piraattipuolue.fi/2008/09/kannattajakorttikampanja-alkanut/&#34;&gt;blogittaa aloittaneensa kannattajakorttien keräämisen&lt;/a&gt;. Korttejahan tarvitaan 5000, jotta puolue voi asettaa ehdokkaita eduskuntavaaleihin. Pienenä hankaluutena on se, että korttien täytyy olla tulostettu erikoispaperille (vähintään 120g/m2), joten &lt;a href=&#34;http://wiki.piraattipuolue.fi/Kannattajakortti#Tulosta_tai_painata_kortteja_itse&#34;&gt;kotitulostus&lt;/a&gt; edellyttää sopivan paperin hankkimista esimerkiksi Postista.&lt;/p&gt;&#xA;&lt;p&gt;Puolueesta löytyy kuitenkin &lt;a href=&#34;http://wiki.piraattipuolue.fi/Kannattajakortti#Hae_kannattajakortteja_paikallisilta_piraateilta&#34;&gt;aktiivisia kerääjiä&lt;/a&gt;, joilta saa valmiita kortteja. Myöskin löytyy &lt;a href=&#34;http://wiki.piraattipuolue.fi/Kannattajakorttitilanne&#34;&gt;tilannesivu&lt;/a&gt;, jonka mukaan kortteja on ehditty kerätä jo 208 kpl perjantain ja lauantain aikana.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iTunes Genius</title>
      <link>https://kennethfalck.net/2008/09/10/itunes-genius/</link>
      <pubDate>Wed, 10 Sep 2008 09:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/09/10/itunes-genius/</guid>
      <description>&lt;p&gt;Tuli sitten lähetettyä koko iTunes-kirjaston sisältö sekä soittolistat ja historiat Applelle.. Saa nähdä kaduttaako jossain vaiheessa? :-P&lt;/p&gt;</description>
    </item>
    <item>
      <title>No more Skype</title>
      <link>https://kennethfalck.net/2008/09/07/no-more-skype/</link>
      <pubDate>Sun, 07 Sep 2008 17:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/09/07/no-more-skype/</guid>
      <description>&lt;p&gt;Olen huomannut luopuneeni Skypen käytöstä lähes kokonaan. Syy tähän on yksinkertainen: pystyn kytkeytymään kaikkiin muihin verkkoihin yhdellä clientillä (&lt;a href=&#34;http://www.adiumx.com/&#34;&gt;Adium&lt;/a&gt;), joka minun tapauksessani hoitaa sekä &lt;i&gt;Windows Liven&lt;/i&gt;, &lt;i&gt;Google Talkin&lt;/i&gt; että &lt;i&gt;firman XMPP-yhteyden&lt;/i&gt;. Tarvittaessa se tukee muitakin verkkoja, joita en tällä hetkellä aktiivisesti käytä, kuten &lt;i&gt;Facebook Chat&lt;/i&gt;, &lt;i&gt;AIM&lt;/i&gt;, &lt;i&gt;ICQ&lt;/i&gt;, &lt;i&gt;Yahoo Messenger&lt;/i&gt; ja niin edelleen.&lt;/p&gt;&#xA;&lt;p&gt;Ainoa, joka ei Adiumilla onnistu, on Skype. Ja tämä johtuu siitä, että Skype on äärimmäisen suljettu ja dokumentoimaton protokolla. Minulla on Skypessä muutama kontakti, jotka eivät noita muita verkkoja käytä, mutta valitettavasti se ei oikein tahdo enää riittää perusteluksi asentaa erillistä clienttiä ja pitää sitä ajan tasalla. Siksipä suosittelen kaikkia käyttämään joko Windows Liveä tai Google Talkia, joista jälkimmäinen pohjautuu XMPP-standardiin, tukee TLS-salausta ja on muutenkin nykyaikaisempi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal ei ole &#34;enterprise-valmis&#34;</title>
      <link>https://kennethfalck.net/2008/09/04/drupal-ei-ole-enterprise-valmis/</link>
      <pubDate>Thu, 04 Sep 2008 13:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/09/04/drupal-ei-ole-enterprise-valmis/</guid>
      <description>&lt;p&gt;Osui silmiin &lt;a href=&#34;http://www.hiveminds.co.uk/node/3740&#34;&gt;tällainen kirjoitus&lt;/a&gt; keväältä 2008, joka kritisoi Drupalin arkkitehtuurivalintoja. Minusta on mielenkiintoista huomata, että vaikka pointit sinällään saattavat olla ihan valiideja, niin ero Drupalin ja joidenkin järkälemäisten Java-enterprise-järjestelmien välillä on ehkä hieman samankaltainen, kuin ero Linuxin ja Windowsin välillä.&lt;/p&gt;&#xA;&lt;p&gt;Drupalissahan ei ole mitään &amp;quot;System.Data.SqlClient.SqlDataAdapter&amp;quot;-tyyppisiä luokkia, jotka implementoivat &amp;quot;IDbDataAdapter&amp;quot;- ja &amp;quot;IDataAdapter&amp;quot;-rajapintoja, joita sovelluskehittäjä pääsee sitten riemuissaan käyttämään yhdessä &amp;quot;SqlCommandBuildereiden&amp;quot; ja &amp;quot;SqlConnectionStringBuildereiden&amp;quot; ja tuhansien muiden luokkien kanssa. Siinä on vain node_load(), jolla ladataan sisältöä tietokannasta, ja db_query(), jolla tehdään geneerisiä tietokantahakuja. Eikä häpeillä käyttää niitä rinnakkain.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Chrome puhuu väkisin suomea</title>
      <link>https://kennethfalck.net/2008/09/03/google-chrome-puhuu-v%C3%A4kisin-suomea/</link>
      <pubDate>Wed, 03 Sep 2008 20:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/09/03/google-chrome-puhuu-v%C3%A4kisin-suomea/</guid>
      <description>&lt;p&gt;Hemmetti että ärsyttää softat, jotka puhuu väkisin suomea. Chromen kanssa ei auta edes Windowsin regional-asetusten säätäminen asennuksen ajaksi, koska se alkaa puhua suomea heti kun ne vaihtaa takaisin. Applelta kesti ikuisuuden tajuta tämä iTunesin kanssa, saa nähdä kauanko Googlelta menee.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MVC:n soveltaminen Drupal-moduuleihin</title>
      <link>https://kennethfalck.net/2008/08/24/mvcn-soveltaminen-drupal-moduuleihin/</link>
      <pubDate>Sun, 24 Aug 2008 23:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/24/mvcn-soveltaminen-drupal-moduuleihin/</guid>
      <description>&lt;p&gt;Eräs viime vuosien suurista muutoksista web-kehityksessä on ollut siirtyminen MVC-malliin käyttöön (Model-View-Controller). Yksittäisten skriptitiedostojen sijaan saitteja rakennetaan nykyään kontrollereiden, sivupohjien ja tietorajapintojen päälle. Tämä sai pitkälti alkunsa Ruby on Railsista mutta käytäntö on levinnyt myös PHP:n puolelle. Eräs suosituista MVC-alustoista on Zend Framework, jota olen itse käyttänyt muutamissa projekteissa, kuten &lt;a href=&#34;http://pelikone.fi/&#34;&gt;Pelikoneessa&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Samalla olen kuitenkin kiinnostunut &lt;a href=&#34;http://drupal.org/&#34;&gt;Drupalista&lt;/a&gt;, joka tarjoaa monipuolisemman alustan web-sovelluskehitykselle. Drupalin moduulirajapinta antaa mahdollisuuden kustomoida järjestelmää vapaasti, ja se sopii myös MVC-tyyppisten sovellusten tekemiseen. Pohdin tässä kirjoituksessa hiukan, miten Zend Frameworkin MVC-mallin konseptit voidaan siirtää Drupaliin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Robottijalkapalloilua</title>
      <link>https://kennethfalck.net/2008/08/23/robottijalkapalloilua/</link>
      <pubDate>Sat, 23 Aug 2008 16:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/23/robottijalkapalloilua/</guid>
      <description>&lt;p&gt;Osui silmään Discovery Channelilla: &lt;a href=&#34;http://www.youtube.com/watch?v=ICgL1OWsn58&#34;&gt;RoboCup 2007 Final&lt;/a&gt; [YouTube]. Nämä on paljon hienompia kuin ne kauko-ohjattavat robottisodat..&lt;/p&gt;&#xA;&lt;p&gt;Robottifudiksessa ideana on siis, että että laitteet ovat täysin itseohjautuvia ja yrittävät tehdä maaleja oranssia palloa potkimalla. Hienointa on, miten robotit kävelemisen lisäksi nousevat näppärästi pystyyn kaaduttuaan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>IPv6-enabloidun saitin ongelmia</title>
      <link>https://kennethfalck.net/2008/08/23/ipv6-enabloidun-saitin-ongelmia/</link>
      <pubDate>Sat, 23 Aug 2008 15:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/23/ipv6-enabloidun-saitin-ongelmia/</guid>
      <description>&lt;p&gt;Tässä ensimmäinen ongelma IPv6- ja IPv4-maailmojen yhteensopivuudessa: &lt;a href=&#34;http://wiki.recaptcha.net/index.php/IPv6&#34;&gt;reCAPTCHA&lt;/a&gt; ei toimi. Selitys on aika yksinkertainen: se yrittää pitää kirjaa käyttäjistä IP-osoitteiden perusteella, ja ne eivät täsmää, koska käyttäjä tulee omalle saitilleni IPv6:sta ja reCAPTCHAn saitille IPv4:stä.&lt;/p&gt;&#xA;&lt;p&gt;Olen käyttänyt reCAPTCHAa koska Venäjältä tulee jatkuvasti kommenttispammia, joka menee läpi siitä yksinkertaisesta matematiikkakyselystä. Täytyy katsoa saako sen korjattua IPv6:n puolelle jotenkin. Tai sitten keksiä keino käyttää Drupalissa erilaisia moduuleja riippuen siitä, kummasta verkosta käyttäjä tulee.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Songs for Tibet</title>
      <link>https://kennethfalck.net/2008/08/22/songs-for-tibet/</link>
      <pubDate>Fri, 22 Aug 2008 22:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/22/songs-for-tibet/</guid>
      <description>&lt;p&gt;[amazon B001C32XQI thumbnail]&lt;/p&gt;&#xA;&lt;p&gt;Tulipa ostettua Songs for Tibet iTunesista, kun siitä niin metelöidään. Näyttää olevan myös &lt;a href=&#34;http://www.amazon.co.uk/Songs-Tibet-Peace-Various-Artists/dp/B001C32XQI%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3DB001C32XQI&#34;&gt;Amazonissa myynnissä&lt;/a&gt;. (Tuote on tilapäisesti loppu ja biisilista on väärin, mutta kansi kyllä täsmää.)&lt;/p&gt;&#xA;&lt;p&gt;Levynä tuo on aika tylsä (Underworldin hidasta sekoilubiisiä myöten), mutta eipä kai se olekaan se pointti...&lt;/p&gt;</description>
    </item>
    <item>
      <title>kfalck.net julkaistu IPv6-verkossa</title>
      <link>https://kennethfalck.net/2008/08/21/kfalck.net-julkaistu-ipv6-verkossa/</link>
      <pubDate>Thu, 21 Aug 2008 18:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/21/kfalck.net-julkaistu-ipv6-verkossa/</guid>
      <description>&lt;p&gt;Tämä kotisivustoni on nyt näkyvissä myös IPv6-verkon puolella osoitteessa &lt;a href=&#34;http://ipv6.kfalck.net/&#34;&gt;ipv6.kfalck.net&lt;/a&gt; tai &lt;a href=&#34;http://[2002:3e4e:defd::1]&#34;&gt;2002:3e4e:defd::1&lt;/a&gt;. Kuten osoitteesta huomaa, yhteys kulkee FUNETin 6to4-välityspalvelun kautta, joten ihan &amp;quot;oikea&amp;quot; IPv6 se ei vielä ole.&lt;/p&gt;&#xA;&lt;p&gt;Pelkkä &lt;a href=&#34;http://kfalck.net&#34;&gt;kfalck.net&lt;/a&gt; vastaa DNS:ssä sekä A- että AAAA-pyyntöihin. Saitin yläreunassa pitäisi näkyä pienellä &amp;quot;(IPv6)&amp;quot; jos yhteys on tullut sitä kautta. Mahtaakohan kellään toimia?&lt;/p&gt;</description>
    </item>
    <item>
      <title>IPv6 helposti käyttöön kotona</title>
      <link>https://kennethfalck.net/2008/08/20/ipv6-helposti-k%C3%A4ytt%C3%B6%C3%B6n-kotona/</link>
      <pubDate>Wed, 20 Aug 2008 21:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/20/ipv6-helposti-k%C3%A4ytt%C3%B6%C3%B6n-kotona/</guid>
      <description>&lt;p&gt;Viime aikoina on puhuttu paljon &lt;a href=&#34;http://arstechnica.com/news.ars/post/20080817-were-running-out-of-ipv4-addresses-time-for-ipv6-really.html&#34;&gt;IPv4-osoitteiden ehtymisestä&lt;/a&gt; lähivuosina. Se sai minutkin taas kokeilemaan miten hyvin IPv6 toimii kotona.&lt;/p&gt;&#xA;&lt;p&gt;Koska kytkeydyn nettiin Airport Extreme -tukiasemalla, IPv6 oli aika helppo ottaa käyttöön. Käytännössä pitää vain valita tukiaseman asetuksista &lt;i style=&#34;color:#999&#34;&gt;Advanced / IPv6 / IPv6 Mode: &lt;b&gt;Tunnel&lt;/b&gt;&lt;/i&gt;. Tämän jälkeen Airport alkaa automaattisesti tunneloida kotiverkossa olevien koneiden IPv6-liikenteen Internettiin &lt;a href=&#34;http://en.wikipedia.org/wiki/6to4&#34;&gt;6to4&lt;/a&gt;:llä. Sen ideana on, että ISP:n ei tarvitse mitenkään tukea IPv6:ta tässä vaiheessa. &lt;i style=&#34;color:#999&#34;&gt;Oletuksena Airport blokkaa sisääntulevat yhteydet palomuurissaan, joten IPv6-tunnelointi vastaa tietoturvaltaan NATia.&lt;/i&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Carrotmob Helsinki</title>
      <link>https://kennethfalck.net/2008/08/20/carrotmob-helsinki/</link>
      <pubDate>Wed, 20 Aug 2008 15:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/20/carrotmob-helsinki/</guid>
      <description>&lt;p&gt;Nyt myös Facebookissa: &lt;a href=&#34;http://www.new.facebook.com/group.php?gid=36043088864&amp;ref=nf&#34;&gt;Carrotmob Helsinki&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Tässä video Carrotmobin synnystä ja ideasta, kannattaa vilkaista:&#xA;&lt;embed src=&#34;http://www.vimeo.com/moogaloop.swf?clip_id=925729&amp;amp;server=www.vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1&#34; type=&#34;application/x-shockwave-flash&#34; width=&#34;400&#34; height=&#34;302&#34;&gt;&lt;/embed&gt;&lt;a href=&#34;http://www.vimeo.com/925729?pg=embed&amp;amp;sec=925729&#34;&gt;Carrotmob Makes It Rain&lt;/a&gt; from &lt;a href=&#34;http://www.vimeo.com/carrotmob?pg=embed&amp;amp;sec=925729&#34;&gt;carrotmob&lt;/a&gt; on &lt;a href=&#34;http://vimeo.com?pg=embed&amp;amp;sec=925729&#34;&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupalcon Szeged 2008 fails</title>
      <link>https://kennethfalck.net/2008/08/20/drupalcon-szeged-2008-fails/</link>
      <pubDate>Wed, 20 Aug 2008 03:01:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/20/drupalcon-szeged-2008-fails/</guid>
      <description>&lt;p&gt;Blääh, meinasin lähteä käymään &lt;a href=&#34;http://szeged2008.drupalcon.org/&#34;&gt;Drupalcon Szeged 2008&lt;/a&gt;:ssa, mutta se Szeged onkin unkarilainen lentokentätön pikkukaupunki jossain jumalan selän takana. Sen lisäksi kyseisen kaupungin hotellien buukkaustilannetta ei voi tarkistaa netistä, lukuunottamatta Novotelia, joka taas on jo täyteenbuukattu. Pitäkööt tunkkinsa..&lt;/p&gt;</description>
    </item>
    <item>
      <title>CheckInstall automatisoi Debian-pakettien luomisen</title>
      <link>https://kennethfalck.net/2008/08/19/checkinstall-automatisoi-debian-pakettien-luomisen/</link>
      <pubDate>Tue, 19 Aug 2008 00:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/19/checkinstall-automatisoi-debian-pakettien-luomisen/</guid>
      <description>&lt;p&gt;Paras keksintö sitten valmiiksivoidellun leivän: &lt;a href=&#34;http://www.asic-linux.com.mx/~izto/checkinstall/index.php&#34;&gt;CheckInstall&lt;/a&gt;. Normaalisti Linux-softaa lähdekoodista kääntäessä pitää ajaa &amp;quot;make install&amp;quot; ja pitää peukkuja, että saa vielä joskus jotenkin poistettua sen asentamat tauhkat. CheckInstall tunnistaa mitä kaikkea &amp;quot;make install&amp;quot; asentelee, ja luo niistä automaattisesti Debian-paketin (tai RPM:n), jonka voi myöhemmin poistaa tai vaikka kopioida toiselle koneelle.&lt;/p&gt;&#xA;&lt;p&gt;CheckInstallin voi asentaa esimerkiksi Ubuntussa sanomalla vain apt-get install checkinstall. Sitä käytetään sanomalla normaalin &amp;quot;make install&amp;quot; -komennon tilalla &amp;quot;checkinstall&amp;quot;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Syyssiivousta Macille</title>
      <link>https://kennethfalck.net/2008/08/15/syyssiivousta-macille/</link>
      <pubDate>Fri, 15 Aug 2008 05:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/15/syyssiivousta-macille/</guid>
      <description>&lt;p&gt;iMaccini alkoi tuntua hiukan tökkivältä, joten päätin siivota pois tarpeettomia ohjelmia. Tavalliset sovellukset eivät aiheuta tökkimistä, mutta jotkut erikoisemmat softat asentelevat taustalle daemoneita tai kernel-laajennuksia. Käynnissä olevat laajennukset voikin tarkastaa kextstat-komennolla:&lt;/p&gt;&#xA;&lt;pre style=&#34;background:#000;padding:4px;font-size:8pt; overflow:scroll; color:#fff&#34;&gt;iMac:~ kennu$ kextstat | grep -v com.apple&#xA;Index Refs Address    Size       Wired      Name (Version) &lt;Linked Against&gt;&#xA;  103    0 0x486db000 0x5000     0x4000     org.pqrs.filesystems.urdfs (1.0.0d1) &lt;5 2&gt;&#xA;  104    0 0x48a9d000 0x14000    0x13000    org.virtualbox.kext.VBoxDrv (1.6.4) &lt;12 7 6 5 4 2&gt;&#xA;  105    0 0x489e6000 0xe000     0xd000     org.virtualbox.kext.VBoxUSB (1.6.4) &lt;50 35 12 7 6 5 4 2&gt;&#xA;&lt;/pre&gt;&#xA;&lt;p&gt;Jos listalla näkyy paljon sellaisten softien laajennuksia, joita ei käytä, voi olla fiksua poistaa kyseiset softat kokonaan. Itselläni siellä roikkui esimerkiksi VMware Fusionin ja Parallelsin ajureita. Softat sai poistettua lopullisesti imuroimalla valmistajalta niiden asennuspaketit ja ajamalla uninstallerit.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupalin teemojen kustomointi sivukohtaisesti</title>
      <link>https://kennethfalck.net/2008/08/14/drupalin-teemojen-kustomointi-sivukohtaisesti/</link>
      <pubDate>Thu, 14 Aug 2008 21:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/14/drupalin-teemojen-kustomointi-sivukohtaisesti/</guid>
      <description>&lt;p&gt;Opiskelin taas hiukan lisää Drupalia &lt;a href=&#34;http://www.amazon.co.uk/Pro-Drupal-Development-VanDyk/dp/1590597559%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1590597559&#34;&gt;tästä mainiosta kirjasta&lt;/a&gt;. Nyt selvisi sekin, miten teemoissa voi helposti tehdä erilaiset layoutit eri sivuille tai sisältötyypeille.&lt;/p&gt;&#xA;&lt;p&gt;Oletuksena sivupohjana on &lt;a href=&#34;http://api.drupal.org/api/file/modules/system/page.tpl.php&#34;&gt;page.tpl.php&lt;/a&gt;. Etusivulle on erikoistapaus page-front.tpl.php, jolla voi siis kustomoida etusivun erilaiseksi. Jos taas URLina on vaikkapa /uutiset/kategoria/otsikko, niin Drupal etsii sivupohjia tässä järjestyksessä ja valitsee niistä ensimmäisenä löytyneen:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;page-uutinen-kategoria-otsikko.tpl.php&lt;/li&gt;&#xA;&lt;li&gt;page-uutinen-kategoria.tpl.php&lt;/li&gt;&#xA;&lt;li&gt;page-uutinen.tpl.php&lt;/li&gt;&#xA;&lt;li&gt;page.tpl.php&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Sisältönoodeille puolestaan on normaalisti pohjana &lt;a href=&#34;http://api.drupal.org/api/file/modules/node/node.tpl.php&#34;&gt;node.tpl.php&lt;/a&gt;. Se saa muuttujan $page=true silloin, kun ollaan näyttämässä noodia omalla sivullaan. Jos noodi taas esitetään osana listausta, niin $page=false. Kun katsellaan sisältöä, jonka tyyppi on &amp;quot;contenttype&amp;quot;, niin Drupal etsii sivupohjia tässä järjestyksessä:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eee PC on mainio kaupunkiläppäri</title>
      <link>https://kennethfalck.net/2008/08/12/eee-pc-on-mainio-kaupunkil%C3%A4pp%C3%A4ri/</link>
      <pubDate>Tue, 12 Aug 2008 13:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/12/eee-pc-on-mainio-kaupunkil%C3%A4pp%C3%A4ri/</guid>
      <description>&lt;p&gt;Olen nyt kanniskellut &lt;a href=&#34;http://en.wikipedia.org/wiki/Eee_pc#Specifications&#34;&gt;Asus Eee PC 701&lt;/a&gt;:tä laukussani parin viikon ajan töissäkin, ja todennut sen juuri sopivaksi matkakoneeksi. Tämä on vihdoinkin laite, jonka mukaan ottamista ei tarvitse erikseen pohtia. 920g kulkee repussa lähes huomaamatta.&lt;/p&gt;&#xA;&lt;p&gt;Eee PC:n matkamukavuuteen vaikuttaa myös SSD-levy, joka vähentää kolhimisen aiheuttamia vahinkoja. Matalan hinnan ansiosta kolauksilla ei ole muutenkaan niin suurta väliä. Oma koneeni putosi Assembly&amp;#39;08:n aikana baaripöydältä lattialle, mutta mitään ei tapahtunut.&lt;/p&gt;&#xA;&lt;p&gt;Käytin aluksi &lt;a href=&#34;http://www.ubuntu-eee.com&#34;&gt;Ubuntu-Eee&lt;/a&gt;-Linuxia, mutta päätin sittemmin vaihtaa tavalliseen Windows XP:hen. Suurin syy tähän oli World of Warcraft. Linuxin alla sitä oli liian vaikea saada toimimaan winessä Eee PC:n hardiksella. XP:ssä WoW pyörii ihan hyvin, kun kääntää suorituskykyasetukset minimiin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kansa tahtoo sähköisen äänestyksen</title>
      <link>https://kennethfalck.net/2008/08/10/kansa-tahtoo-s%C3%A4hk%C3%B6isen-%C3%A4%C3%A4nestyksen/</link>
      <pubDate>Sun, 10 Aug 2008 15:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/10/kansa-tahtoo-s%C3%A4hk%C3%B6isen-%C3%A4%C3%A4nestyksen/</guid>
      <description>&lt;p&gt;Iltalehti uutisoi &lt;a href=&#34;http://www.iltalehti.fi/uutiset/200808098076579_uu.shtml&#34;&gt;TNS-Gallupin tutkimuksesta&lt;/a&gt;, jonka mukaan 84% Suomen kansasta arvioi, että vaalisalaisuus olisi sähköisessä äänestyksessä turvassa. Minusta se kertoo lähinnä siitä, että 84% kansasta ei ole ollenkaan seurannut, millaista toilailua sähköinen äänestäminen on esimerkiksi &lt;a href=&#34;http://digg.com/search?s=diebold&amp;submit=Search&amp;section=all&amp;type=both&amp;area=promoted&amp;sort=new&#34;&gt;USA:ssa ollut&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Toisaalta ehkä on hyvä saavutus, että 16% on asiasta huolissaan?&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone 3G ja Sonera Easy -dataongelma</title>
      <link>https://kennethfalck.net/2008/08/05/iphone-3g-ja-sonera-easy-dataongelma/</link>
      <pubDate>Tue, 05 Aug 2008 22:58:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/05/iphone-3g-ja-sonera-easy-dataongelma/</guid>
      <description>&lt;p&gt;Jännä havainto: iPhone 3G:ssä toimii kyllä muuten Sonera Easy -liittymä (prepaid), mutta datayhteys ei pelaa. Käsittääkseni Sonera Easyssa pitäisi olla GPRS-data suhteellisen käsittämättömään hintaan 5,99 EUR/MB. Mutta webbiselailu ja muut datayhteydet ei vaan toimi.&lt;/p&gt;&#xA;&lt;p&gt;Tämä tuli todennettua ihan neitseellisellä iPhonella, joka on siis palautettu tehdasfirmwareen ja -asetuksiin. Prepaid-arvoakin on useampi kymppi jäljellä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pelikone Assembly 2008:ssa</title>
      <link>https://kennethfalck.net/2008/08/02/pelikone-assembly-2008ssa/</link>
      <pubDate>Sat, 02 Aug 2008 16:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/08/02/pelikone-assembly-2008ssa/</guid>
      <description>&lt;p&gt;Rakennettiin oheisessa kuvassa näkyvä pelikabinetti Assembly 2008:aan, ja monen mutkan ja säädön kautta saatiin se jopa toimimaan. Sitä voi käydä kokeilemassa vielä lauantain ja sunnuntai-aamupäivän ajan Pelikoneen standilla Lapin Kulta -ravintolan tienoilla Areenalla.&lt;/p&gt;&#xA;&lt;p&gt;Tämä vehje on periaatteessa MAME-kabinetti, mutta pyöritämme siinä &lt;a href=&#34;http://pelikone.fi&#34;&gt;Pelikoneen saitilta&lt;/a&gt; löytyviä Flash-pelejä R-Kiosk-laajennuksella höystetyssä Firefoxissa. Kontrollereina on joystick, trackball sekä 6 painiketta, joista yksi on hiirinappi ja 5 mäppäytyy pienellä taikuudella automaattisesti pelien mukaan sopiviksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The survey for people who make websites</title>
      <link>https://kennethfalck.net/2008/07/29/the-survey-for-people-who-make-websites/</link>
      <pubDate>Tue, 29 Jul 2008 15:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/29/the-survey-for-people-who-make-websites/</guid>
      <description>&lt;p&gt;Tulipa osallistuttua &lt;a href=&#34;http://akibjorklund.com/arkisto/kysely-web-ammattilaisille&#34;&gt;Akin&lt;/a&gt; inspiroimana tällaiseen web-kehittäjien kyselytutkimukseen: &lt;a href=&#34;http://alistapart.com/articles/survey2008&#34;&gt;http://alistapart.com/articles/survey2008&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>UMF5 ja kesäloma takanapäin</title>
      <link>https://kennethfalck.net/2008/07/27/umf5-ja-kes%C3%A4loma-takanap%C3%A4in/</link>
      <pubDate>Sun, 27 Jul 2008 23:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/27/umf5-ja-kes%C3%A4loma-takanap%C3%A4in/</guid>
      <description>&lt;p&gt;Aurinkoinen helleviikonloppu Turun Kupittaanpuistossa oli hieno päätös kesälomalle. Suosittelen &lt;a href=&#34;http://www.sokoshotels.fi/SokotelWeb/Sokotel.portal?_nfpb=true&amp;_pageLabel=Sokotel_hotellit_hotelliesittely&amp;hotelId=505130740&#34;&gt;Hamburger Börs&lt;/a&gt; -hotellia konstailettomaan ja siistiin yöpymiseen Turun ydinkeskustassa. Päiväsaikaan kannattaa käydä myös joen varrella olevissa laivoissa juomassa ja vaikka syömässäkin.&lt;/p&gt;&#xA;&lt;p&gt;UMF:n perjantai oli vähän hiljainen mutta sen huipentui &lt;a href=&#34;http://www.youtube.com/watch?v=UwhPQxceP-0&amp;NR=1&#34;&gt;Edu Kehäkettusen, Stig Doggin ja DJPP:n&lt;/a&gt; kelkka-asentoon.. Festarialueella oli sitä tyypillisen suomalaista perusnihkeilyä, että osalla anniskelualueista loppuivat oikeudet jo puolelta öin, eikä alueiden välillä voinut tietenkään liikkua alkoholijuomia kanniskellen, vaikka koko puisto oli K-18. Järjestysmiesten pääasiallinen funktio oli estää festivaalivieraita viemästä olutta terassilta A terassille B.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mikroblogipäivityksiä kotisivuille</title>
      <link>https://kennethfalck.net/2008/07/24/mikroblogip%C3%A4ivityksi%C3%A4-kotisivuille/</link>
      <pubDate>Thu, 24 Jul 2008 23:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/24/mikroblogip%C3%A4ivityksi%C3%A4-kotisivuille/</guid>
      <description>&lt;p&gt;Koodailin tässä viimeisenä kesälomaprojektina &lt;a href=&#34;http://kfalck.net&#34;&gt;kotisivuilleni&lt;/a&gt; mikroblogifeedin (näkyy oikeassa laidassa). Siihen pitäisi ilmestyä uudet julkaistut juttuni Jaikusta, Twitteristä, Identi.ca:sta ja Diggistä. Diggistä tulevat vaan artikkelit, joita olen diggaillut.&lt;/p&gt;&#xA;&lt;p&gt;Homma oli suht helppoa tekemällä vaan uusi Drupal-moduuli (noin 400 riviä PHP-koodia). Halusin koodata omani, jotta voin kustomoida tuota feediä vapaasti ja lisäillä sinne uusia juttuja jatkossa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uuden Musiikin Festivaali</title>
      <link>https://kennethfalck.net/2008/07/23/uuden-musiikin-festivaali/</link>
      <pubDate>Wed, 23 Jul 2008 13:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/23/uuden-musiikin-festivaali/</guid>
      <description>&lt;p&gt;Tässä vinkki &lt;a href=&#34;http://www.uudenmusiikinfestivaali.org&#34;&gt;UMF5&lt;/a&gt;:stä kiinnostuneille: Saitista löytyy myös &lt;a href=&#34;http://www.uudenmusiikinfestivaali.org/mobile/&#34;&gt;mobiiliversio&lt;/a&gt;, jota pystyy käyttämään tarvitsematta klikkailla Flashiin upotettuja kiusalinkkejä, jotka karkailevat pois alta, kun niitä lähestyy hiirellä.&lt;/p&gt;&#xA;&lt;p&gt;Nähdään Turussa perjantaina ja lauantaina!&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone 2.0 = MobileMe &#43; Exchange</title>
      <link>https://kennethfalck.net/2008/07/23/iphone-2.0-mobileme--exchange/</link>
      <pubDate>Wed, 23 Jul 2008 00:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/23/iphone-2.0-mobileme--exchange/</guid>
      <description>&lt;p&gt;Päivitin tässä vanhan iPhoneni &lt;a href=&#34;http://blog.iphone-dev.org/post/42931306/pwnagetool-2-0-1&#34;&gt;PwnageTool 2.0.1&lt;/a&gt;:llä uuteen firmwareen. Sain käyttöön perinteisten &amp;quot;kräkättyjen&amp;quot; sovellusten rinnalle viralliset App Store -sovellukset sekä muut uudet ominaisuudet, kuten Exchange- ja MobileMe-tuen. Pääsin siirtämään iPhone-telakankin PC:stä iMacciin, kun ei tarvitse enää synkata kalenteria Outookin kautta.&lt;/p&gt;&#xA;&lt;p&gt;Nyt voin pitää erillisiä kalentereita yksityisille ja työasioille, ja molemmat synkkautuvat automaattisesti WLANin tai GPRS:n kautta tahoilleen. Samalla hoituvat erilliset osoitekirjat ja sähköpostitilit. Applen MobileMe-palvelun ideahan on, että käyttäjän kaikki Macintoshit ja iPhonet pysyvät synkassa. Vähän niinkuin pyörittäisi omaa yksityistä Exchange-palvelinta. (Itse tosin pidän mieluummin sähköpostit erillisellä Linux-palvelimellani.)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pimp my Eee PC</title>
      <link>https://kennethfalck.net/2008/07/21/pimp-my-eee-pc/</link>
      <pubDate>Mon, 21 Jul 2008 18:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/21/pimp-my-eee-pc/</guid>
      <description>&lt;p&gt;Aiempaan Eee-kirjoitukseeni tulleen &lt;a href=&#34;http://kfalck.net/2008/07/12/ensikokemuksia-asus-eee-pc-701-4g&#34;&gt;kommentin&lt;/a&gt; inspiroimana kävin hakemassa Verkkokaupasta &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=2730&#34;&gt;Kingstonin 2GB SO-DIMMin&lt;/a&gt; (34,90) sekä &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=23182&#34;&gt;Verbatimin 16GB SDHC-kortin&lt;/a&gt; (52,90). Molemmat upposivat Asukseen helposti ja sen kummemmin virittelemättä, joten nyt on kivasti lisämuistia käytössä.&lt;/p&gt;&#xA;&lt;p&gt;Olen myös virittänyt käyttöön &lt;a href=&#34;http://www.novatelwireless.com/index.php?option=com_content&amp;view=article&amp;id=74:ovation-mc950d-72-usb-modem-hsdpahsupa-networks&amp;catid=3&amp;Itemid=10&#34;&gt;Ovation MC950D HSDPA-tikkua&lt;/a&gt;, joka on aiheuttanut hiukan harmaita hiuksia. Kyseinen adapteri toimii sekä sarjaporttina että massamuistina (Windows-ajureita varten), ja Ubuntu näyttää sen oletuksena CDROM-asemana. Sen vuoksi on tarpeen ajaa tällaiset komennot aina kun on laittanut tikun kiinni:&lt;/p&gt;&#xA;&lt;pre style=&#34;line-height:normal;font-size:8px;background:#f8f8f8;border:1px solid #f0f0f0;padding:4px&#34;&gt;modprobe -r usbserial&#xA;eject /dev/scd0&#xA;modprobe usbserial vendor=0x1410 product=0x4400&#xA;&lt;/pre&gt;&#xA;&lt;p&gt;Kyseisen toimenpiteen jälkeen MC950D näkyy USB-sarjaporttina laitenimellä /dev/ttyUSB0. Helpointa on konfiguroida sitten wvdial soittamaan numeroon *99# ja avaamaan PPP-yhteys. Itselläni on tällaiset asetukset /etc/wvdial.conf-tiedostossa, ja yhteys aukeaa ihan vaan sanomalla shellissä wvdial:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Taas anonyymiä nettikeskustelua kielletään</title>
      <link>https://kennethfalck.net/2008/07/21/taas-anonyymi%C3%A4-nettikeskustelua-kiellet%C3%A4%C3%A4n/</link>
      <pubDate>Mon, 21 Jul 2008 14:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/21/taas-anonyymi%C3%A4-nettikeskustelua-kiellet%C3%A4%C3%A4n/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.hs.fi/kulttuuri/artikkeli/JSNn+Hyv%C3%A4rinen+haluaa+kirjoittajien+nimet+esiin+nettikeskusteluissa/1135238013161?ref=rss&#34;&gt;Hesari&lt;/a&gt; ja &lt;a href=&#34;http://www.yle.fi/uutiset/kotimaa/oikea/id96706.html&#34;&gt;YLE&lt;/a&gt; uutisoivat JSN:n Pekka Hyvärisen melko käsittämättömästä ehdotuksesta pakottaa nettikeskustelijat kirjoittamaan omilla nimillään. Jutuista ei ihan täysin saa selvää, onko tämä ehdotus suunnattu ainoastaan perinteisille paperilehdille vai kaikille Internetissä toimiville julkaisuille. Yhtä älytöntä vouhotusta se silti on, ja &lt;a href=&#34;http://www.kasvi.org/index.php?5249&#34;&gt;Jyrki J. Kasvi&lt;/a&gt; kirjoittaa omassa blogissaan hyvän yhteenvedon miksi.&lt;/p&gt;&#xA;&lt;p&gt;Lyhyesti sanottuna se on a) teknisesti mahdotonta ja b) tuhoaisi anonyymiuteen perustuvan keskustelukulttuurin erityisesti erilaisten vaikeiden asioiden, kuten nyt vaikka mielenterveydellisten ongelmien, käsittelyyn liittyvissä yhteisöissä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ensikokemuksia: iPhone 3G vs. vanha iPhone</title>
      <link>https://kennethfalck.net/2008/07/12/ensikokemuksia-iphone-3g-vs.-vanha-iphone/</link>
      <pubDate>Sat, 12 Jul 2008 21:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/12/ensikokemuksia-iphone-3g-vs.-vanha-iphone/</guid>
      <description>&lt;p&gt;Noudin eilen Soneralta ennakkovaraamani iPhone 3G:n (16GB Black). Sen sai maksettua heti luottokortilla pois valitsemalla kytkyksi &lt;a href=&#34;http://www.sonera.fi/iphone&#34;&gt;Minun Sonera -liittymän&lt;/a&gt;,  josta tosin joutuu vielä makselemaan 1,99 eur/kk parin vuoden ajan. Ystävällinen myyjä muistutti, että puhelimen operaattorilukituksen purkaminen päättää laitteen takuun ;-) Itse en aio tuota Soneran liittymää käyttää mihinkään, kunhan &lt;a href=&#34;http://wikee.iphwn.org/&#34;&gt;PwnageTool 2.0&lt;/a&gt; ilmestyy.&lt;/p&gt;&#xA;&lt;p&gt;Puhelimen sai Soneralta avaamattomassa paketissa. Se pitää ennen käyttöä aktivoida iTunesilla, joka taas oli &lt;a href=&#34;http://www.techcrunch.com/2008/07/11/six-million-ibricks-and-growing/&#34;&gt;eilisen päivän jumissa&lt;/a&gt;. Itse sain vasta 22-23 maissa aktivoinnin toimimaan, mutta sitten luuri kyllä lähti käyntiin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ensikokemuksia: Asus Eee PC 701 (4G)</title>
      <link>https://kennethfalck.net/2008/07/12/ensikokemuksia-asus-eee-pc-701-4g/</link>
      <pubDate>Sat, 12 Jul 2008 04:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/12/ensikokemuksia-asus-eee-pc-701-4g/</guid>
      <description>&lt;p&gt;Kävin tänään hakemassa Verkkokaupasta kesäleluksi &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=3035&#34;&gt;Asus Eee PC 701:n&lt;/a&gt;, joka tunnetaan myös nimellä 4G sen sisältämän Solid State Drive -aseman koon mukaan. Laitteen muut oleelliset speksit ovat 7 tuuman näyttö, 630 MHz Celeron-prosessori, 512MB RAM ja 920g painoa.&lt;/p&gt;&#xA;&lt;p&gt;Laite oli heti alusta lähtien mukavan pienen ja yksinkertaisen oloinen. Koko vastaa kovakantista kirjaa ja virtalähdekin on pieni. Ei muotoilu muovisuudeltaan ihan Applen tasolle yllä, mutta valkoinen design on kuitenkin perus-HP:itä paljon nätimpi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>SwirlyMMS iPhonelle hintaan 8 USD</title>
      <link>https://kennethfalck.net/2008/07/10/swirlymms-iphonelle-hintaan-8-usd/</link>
      <pubDate>Thu, 10 Jul 2008 16:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/10/swirlymms-iphonelle-hintaan-8-usd/</guid>
      <description>&lt;p&gt;Huomasin juuri, että &lt;a href=&#34;http://www.swirlyspace.com/iphone/apps/mms/&#34;&gt;SwirlyMMS&lt;/a&gt; vanhalle iPhonelle on päivittynyt versioon 1.1. Tämä versio on maksullinen ($8 kertamaksu), ja toimii vihdoinkin oikealla käyttöliittymällä Inboxeineen ja Outboxeineen. Aiempihan vain tallensi viestien mediatiedostot levylle ja ne piti avata erillisellä ohjelmalla.&lt;/p&gt;&#xA;&lt;p&gt;Tämä on kahdessa mielessä mielenkiintoinen juttu. Ensinnäkin nyt on selvää, että iPhonelle saa ihan kunnollisen MMS-tuen. Toisekseen on jännää, että myös jailbreakattujen puhelinten softamarkkinoilla löytyy bisnestä. SwirlyMMS:äähän ei voi asentaa ennen kuin puhelin on kräkätty.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Coldplay: Viva la Vida on sittenkin hyvä</title>
      <link>https://kennethfalck.net/2008/07/10/coldplay-viva-la-vida-on-sittenkin-hyv%C3%A4/</link>
      <pubDate>Thu, 10 Jul 2008 15:26:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/10/coldplay-viva-la-vida-on-sittenkin-hyv%C3%A4/</guid>
      <description>&lt;p&gt;Olen muuttanut mieltäni Coldplayn &lt;a href=&#34;http://www.amazon.co.uk/Viva-Vida-Death-All-Friends/dp/B0017NCVWY%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3DB0017NCVWY&#34;&gt;Viva la Vida&lt;/a&gt; -albumista. Ensimmäisten parin päivän ajan se tuntui kovin karhealta ja vaisulta. Pidin paljon enemmän &lt;a href=&#34;http://www.amazon.co.uk/X-Y-Coldplay/dp/B0006L16N8%3FSubscriptionId%3D0VV5KRQ553R53P1G84G2%26tag%3Dkenfalsblo-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3DB0006L16N8&#34;&gt;X&amp;amp;Y:n&lt;/a&gt; viimeistellymmästä ja elektronisemmasta soundista.&lt;/p&gt;&#xA;&lt;p&gt;Jotenkin kuitenkin Viva la Vidan melodiat ja äänimaailmat alkoivat soida päässä. Nyt siitä tulee mielenkiintoisen hyvä ja progressiivinen olo. Yksikään biisi ei ole vielä jäänyt erillään mieleen (vrt. Talk tai Speed of Sound ja muut hitit), mutta tässä albumissa on tiettyä kokonaisvaltaista fiilistä. Progressiivisemman otteen ansiosta se kiehtoo kokonaisuutena enemmän kuin X&amp;amp;Y:n jotkut vähän turhankin suorat ja laskemoidut melodiat.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Lively kokeilussa</title>
      <link>https://kennethfalck.net/2008/07/10/google-lively-kokeilussa/</link>
      <pubDate>Thu, 10 Jul 2008 05:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/10/google-lively-kokeilussa/</guid>
      <description>&lt;p&gt;Kokeilin huvikseni tehdä oman &lt;a href=&#34;https://kennethfalck.net/page/my-google-lively-room&#34;&gt;Google Lively -huoneen&lt;/a&gt;. Idea on mielenkiintoinen. Huone rakennetaan Lively-työkalulla (joka toimii toistaiseksi vain Windowsissa - eikä edes virtuaalikoneessa), ja sitten sen voi upottaa omaan kotisivuun tai minne vaan HTML:n sekaan. Jos sivua selailee koneella, johon Lively on asennettu, niin huoneeseen voi sukeltaa sisään. Muuten näkee vain thumbnailin.&lt;/p&gt;&#xA;&lt;p&gt;Rakentelu on samalla tavalla tarkoituksettoman mukaansatempaavaa kuin Second Lifessä. Erona on lähinnä lapsenomaisempi ulkoasu ja käyttöliittymä. Second Lifessä 3D-objekteja voi säätää ja liikutella matemaattisella tarkkuudella ja avatarit ovat realistisen tuntuisia. Lively taas on sarjakuvamaisempi ja objekteja vedellään suurin piirtein sinne tänne. &amp;quot;Shellit&amp;quot; eli huonepohjat tuntuvat välillä vähän ahtailta eikä kamera tahdo mahtua niiden sisään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lisää Drupalin virittelyä ja opiskelua</title>
      <link>https://kennethfalck.net/2008/07/10/lis%C3%A4%C3%A4-drupalin-virittely%C3%A4-ja-opiskelua/</link>
      <pubDate>Thu, 10 Jul 2008 02:45:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/10/lis%C3%A4%C3%A4-drupalin-virittely%C3%A4-ja-opiskelua/</guid>
      <description>&lt;p&gt;Tänään tuli tutustuttua vähän syvällisemmin Drupalin hienosäätämiseen. Meinasin ensin toteuttaa tällä saitillani olevia juttuja &lt;a href=&#34;http://drupal.org/project/cck&#34;&gt;CCK&lt;/a&gt;- ja &lt;a href=&#34;http://drupal.org/project/views&#34;&gt;Views&lt;/a&gt;-moduulien päälle. Niissä oli kuitenkin pientä joustamattomuutta (eivätkä ne ole vielä final-versioita Drupal 6:lle), joten koodasin PHP:llä oman saittimoduulin.&lt;/p&gt;&#xA;&lt;p&gt;Oma moduulini toteuttaa tällä hetkellä 6 blockia, jotka näkyvät saitin oikean laidan navigaatiossa: miksaukset, blogikirjoitukset, kommentit, Last.fm:n soittohistoria sekä Amazonin kirja- ja musiikkisuositukset. Amazonin kanssa käytin apuna &lt;a href=&#34;http://drupal.org/project/amazon&#34;&gt;Amazon-moduulia&lt;/a&gt;, joka tarjoaa aika kätevät toiminnot tuotetietojen ja -kuvien automaattiseen noutoon ja esittämiseen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone Belgiasta ilman operaattorilukkoa</title>
      <link>https://kennethfalck.net/2008/07/09/iphone-belgiasta-ilman-operaattorilukkoa/</link>
      <pubDate>Wed, 09 Jul 2008 21:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/09/iphone-belgiasta-ilman-operaattorilukkoa/</guid>
      <description>&lt;p&gt;Kari &lt;a href=&#34;http://karde.jaiku.com/presence/39591653&#34;&gt;Jaikuili&lt;/a&gt; juuri äsken: &lt;a href=&#34;http://www.theregister.co.uk/2008/07/09/belgium_will_sell_iphone_simlock_free/&#34;&gt;iPhone 3G:n saa Belgiasta ilman operaattorilukkoa&lt;/a&gt;. The Registerin artikkelin mukaan: &amp;quot;8GB version in black will sell for 525 and the 16 GB version in black or white for 615&amp;quot;.&lt;/p&gt;&#xA;&lt;p&gt;Olen jo varannut Soneralta oman kappaleeni, mutta lukitsematon malli kieltämättä houkuttelisi paljon enemmän. Toivottavasti tästä tulee lisää infoa ennen perjantaita.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blogi siirretty Drupaliin</title>
      <link>https://kennethfalck.net/2008/07/05/blogi-siirretty-drupaliin/</link>
      <pubDate>Sat, 05 Jul 2008 16:01:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/07/05/blogi-siirretty-drupaliin/</guid>
      <description>&lt;p&gt;Siirsin kesälomaprojektina blogini WordPressistä &lt;a href=&#34;http://drupal.org/&#34;&gt;Drupal 6.2&lt;/a&gt;:een, joskin se näyttää lähes samalta kuin ennenkin. Hommaan kului aikaa noin yksi päivä, josta suurin osa oli &lt;a href=&#34;http://drupal.org/project/wordpress_import&#34;&gt;WordPress import-pluginin&lt;/a&gt; puukottamista toimimaan 6.2:ssa. Sen avulla WP:stä pystyy dumppaamaan koko blogin kommentteineen XML-tiedostoksi ja importtaamaan sen Drupaliin.&lt;/p&gt;&#xA;&lt;p&gt;Muilta osin aikaa kului lähinnä oman teeman virittämiseen samankaltaiseksi kuin vanha Kubrick-pohjainen WordPress-teemani. Otin pohjaksi Minnellin (Drupalin kiinteäleveyksinen oletusteema) ja muutin hieman taustavärejä ja fonttikokoja. Suhteellisen helppoa hommaa yhtä CSS-tiedostoa puukottamalla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Outo sääilmiö lähestyy idästä</title>
      <link>https://kennethfalck.net/2008/06/30/outo-s%C3%A4%C3%A4ilmi%C3%B6-l%C3%A4hestyy-id%C3%A4st%C3%A4/</link>
      <pubDate>Mon, 30 Jun 2008 15:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/30/outo-s%C3%A4%C3%A4ilmi%C3%B6-l%C3%A4hestyy-id%C3%A4st%C3%A4/</guid>
      <description>&lt;p&gt;Jännä sääilmiö havaittu täällä &lt;a href=&#34;http://maps.google.com/?ie=UTF8&amp;ll=60.313688,26.109009&amp;spn=0.143846,0.415421&amp;z=11&#34;&gt;Itä-Uudenmaan saaristossa&lt;/a&gt;. Aluksi oli ihan lämmintä ja aurinkoista, mutta yhtäkkiä koillisen suunnalta alkoi puhaltaa jäätävää ilmaa ja merenpintaa pitkin lähestyy kuvassa näkyvä harmaa pilvi. Pilvirintama tuntuu ulottuvan kauas itään. Ei kuitenkaan haiskahda miltään, joten lienee vaan harmitonta usvaa.&#xA;&lt;br/&gt;&lt;br/&gt;&#xA;&lt;a href=&#39;https://kennethfalck.net/images/wp-content/uploads/2008/06/saailmio.jpg&#39;&gt;&lt;img src=&#34;http://kfalck.net/wp-content/uploads/2008/06/saailmio.jpg&#34; alt=&#34;&#34; title=&#34;Sääilmiö&#34; width=&#34;100%&#34; class=&#34;aligncenter size-medium wp-image-352&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>FeedBurner kokeilussa</title>
      <link>https://kennethfalck.net/2008/06/29/feedburner-kokeilussa/</link>
      <pubDate>Sun, 29 Jun 2008 12:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/29/feedburner-kokeilussa/</guid>
      <description>&lt;p&gt;Laitoin kokeeksi tämän blogin RSS-feedin menemään FeedBurnerin kautta. En kauheasti tykkää ajatuksesta, että feediä kierrätetään turhaan USA:n kautta (ja Ruotsin rajojen yli). Ajattelin kuitenkin tutkailla, minkälaisia tilastoja FeedBurner osaa muodostaa, ja onko ne mahdollisesti helppo laskea itsekin Apachen logeista tms.&lt;/p&gt;</description>
    </item>
    <item>
      <title>EU:ssa bloggaamiseen anottava lupa?</title>
      <link>https://kennethfalck.net/2008/06/26/eussa-bloggaamiseen-anottava-lupa/</link>
      <pubDate>Thu, 26 Jun 2008 02:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/26/eussa-bloggaamiseen-anottava-lupa/</guid>
      <description>&lt;p&gt;Piraattiliitto &lt;a href=&#34;http://piraattiliitto.org/uutiset/2008/06/eu-haluaa-bloggaajat-kontrolliin-pakkorekisteroinnilla-ja-laatumerkinnalla&#34;&gt;nostaa esiin aiheen&lt;/a&gt;, josta on myös uutinen &lt;a href=&#34;http://www.hs.fi/ulkomaat/artikkeli/EU-parlamentissa+vaaditaan+bloggaajien+taustojen+selvitt%C3%A4mist%C3%A4/1135237416713&#34;&gt;Hesarissa&lt;/a&gt;. (HS:n uutisen sisältö ja linkki ovat jo kertaalleen vaihtuneet, toivottavasti tuo säilyy olemassa.) Joku neropatti on siis saanut päähänsä, että EU:n pitäisi kontrolloida blogien laatua, mahdollisesti pakollisella rekisteröinnillä ja &amp;quot;laatumerkinnöillä&amp;quot;. Toivon mukaan kyse on vain tämän yhden virolaisen MEPin neronleimauksesta.&lt;/p&gt;&#xA;&lt;p&gt;Kelle tahansa järjissään olevalle on tietysti päivänselvää, ettei tällaisessa ole päätä eikä häntää. &amp;quot;Bloggaaminenhan&amp;quot; ei sinänsä tarkoita yhtään mitään. Jos kansalaisten nettijulkaiseminen halutaan kuriin, pitää samalla laittaa kaikenlaisten kotisivujen, keskustelufoorumien, sosiaalisten verkostojen ja pikaviestimien käyttö luvanvaraiseksi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amerikkalaiset hyväksyvät kidutuksen</title>
      <link>https://kennethfalck.net/2008/06/24/amerikkalaiset-hyv%C3%A4ksyv%C3%A4t-kidutuksen/</link>
      <pubDate>Tue, 24 Jun 2008 22:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/24/amerikkalaiset-hyv%C3%A4ksyv%C3%A4t-kidutuksen/</guid>
      <description>&lt;p&gt;Kuten &lt;a href=&#34;http://www.hs.fi/ulkomaat/artikkeli/Liki+puolet+amerikkalaisista+hyv%C3%A4ksyy+kiduttamisen/1135237405694?ref=rss&#34;&gt;Hesari uutisoi&lt;/a&gt;, noin puolet amerikkalaisista hyväksyy kidutuksen. Se hyväksytään gallupin mukaan silloin, kun kidutus kohdistuu terroristeihin, mutta terroristejahan ei USA:ssa syytetä eikä tuomita, heitetään vaan epäillyt keskitysleireille kidutettavaksi.&lt;/p&gt;&#xA;&lt;p&gt;Hesarin uutisen kommenteissa on jo käyty hyvää keskustelua aiheesta, ei oikeastaan lisättävää siihen. Todella sääliksi vain käy valtioita ja ihmisiä, joiden mielestä kiduttaminen on missään olosuhteissa hyväksyttävää. Synkässä maailmassa eletään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nokian Symbian-kauppa on surun hetki</title>
      <link>https://kennethfalck.net/2008/06/24/nokian-symbian-kauppa-on-surun-hetki/</link>
      <pubDate>Tue, 24 Jun 2008 21:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/24/nokian-symbian-kauppa-on-surun-hetki/</guid>
      <description>&lt;p&gt;Mahdanko olla ainoa, jonka mielestä &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=34331&amp;tyyppi=1&#34;&gt;Nokian Symbian-kauppa&lt;/a&gt; on surullinen päätös? Olen toivonut Nokia 770:n ja &lt;a href=&#34;http://maemo.org/&#34;&gt;Maemo-alustan&lt;/a&gt; julkistamisesta lähtien, että vanhasta ja ylimonimutkaisesta Symbian-alustasta päästäisiin jo vihdoinkin eroon ja siirryttäisiin Linuxiin.&lt;/p&gt;&#xA;&lt;p&gt;Nyt tämä diili tuntuu antavan signaalia siitä, että Symbiania yritetään edelleen kehittää. Kyllähän minkä tahansa koodin voi julkaista open sourcena, mutta sen arkkitehtuuri on silti yhtä mätä. Henkilökohtaisesti en usko, että kukaan innostuu kehittämään Symbianista mitään parempaa. Se vaatisi koko roskan suunnittelua uudelleen järkevältä pohjalta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Venäjä syynä Ruotsin vakoilulakiin?</title>
      <link>https://kennethfalck.net/2008/06/19/ven%C3%A4j%C3%A4-syyn%C3%A4-ruotsin-vakoilulakiin/</link>
      <pubDate>Thu, 19 Jun 2008 02:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/19/ven%C3%A4j%C3%A4-syyn%C3%A4-ruotsin-vakoilulakiin/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://piraattiliitto.org/uutiset/2008/06/venaja-ruotsin-nettivakoilun-paakohde&#34;&gt;Piraattiliitto pohtii&lt;/a&gt;, onko Venäjän vakoileminen pääsyynä Ruotsissa tänään hyväksytylle &lt;a href=&#34;http://www.yle.fi/uutiset/ulkomaat/oikea/id94009.html&#34;&gt;televalvontalaille&lt;/a&gt;. Piraattiliiton mukaan jopa 80% Venäjän nettiliikenteestä kulkee Ruotsin kautta, ja uusi laki antaa mahdollisuuden seuloa sitä vapaasti.&lt;/p&gt;&#xA;&lt;p&gt;Tässä tapauksessa tietysti lapsi on mennyt pesuveden mukana, sillä laki sallii myös kenen tahansa ruotsalaisen (tai suomalaisen) yksityishenkilön dataliikenteen urkkimisen, kun se ylittää Ruotsin rajan.&lt;/p&gt;&#xA;&lt;p&gt;Tiedätkö sinä, minkä maiden kautta oma salaamaton surffiliikenteesi kulkee?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Rinnakkaissuoritteinen tulevaisuus</title>
      <link>https://kennethfalck.net/2008/06/18/rinnakkaissuoritteinen-tulevaisuus/</link>
      <pubDate>Wed, 18 Jun 2008 21:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/18/rinnakkaissuoritteinen-tulevaisuus/</guid>
      <description>&lt;p&gt;Gizmodo kirjoittaa &lt;a href=&#34;http://gizmodo.com/5017615/giz-explains-mac-os-106-snow-leopard-parallel-processing-and-gpu-computing&#34;&gt;Snow Leopardin parallel processing -ominaisuuksista&lt;/a&gt;. Näyttää tosiaan siltä, että käyttöjärjestelmien paremmuus ratkaistaan jatkossa sillä, miten hyvin ne a) hyödyntävät multicore-prosessoreita ja b) tuovat ne myös sovelluskehittäjien ulottuville.&lt;/p&gt;&#xA;&lt;p&gt;Toki vanhatkin käyttikset toimivat vielä dual- ja quad-coreissa ihan hyvin, mutta jos CPU:issa mennään samalle linjalle kuin GPU:issa, eli coreja alkaa olla satoja, niin se merkitsee aika radikaalia muutosta käyttöjärjestelmäsuunnitteluun ja sovellusten kehittämiseen. Jännä nähdä, millainen kisa tästä tulee Mac OS X:n, Windowsin ja Linuxin kesken.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sensuurilistan päivitys loppunut?</title>
      <link>https://kennethfalck.net/2008/06/16/sensuurilistan-p%C3%A4ivitys-loppunut/</link>
      <pubDate>Mon, 16 Jun 2008 20:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/16/sensuurilistan-p%C3%A4ivitys-loppunut/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=34255&amp;tyyppi=1&#34;&gt;Tietokone uutisoi&lt;/a&gt; Matti Nikin todenneen, että poliisi näyttää lopettaneen nettisensuurilistan päivittämisen. Listalle ei ole ilmestynyt uusia entryjä kolmeen kuukauteen eikä vanhoja virheellisiä poistettu. Esim. Nikin ylläpitämä sensuuria vastustava &lt;a href=&#34;http://lapsiporno.info/&#34;&gt;lapsiporno.info&lt;/a&gt; on edelleen sensuroitu ainakin Welhon verkossa.&lt;/p&gt;&#xA;&lt;p&gt;Tiekkarin uutisessa on muuten klassikkolausunnon aineksia, kun KRP:n Lars Henriksson murjaisee: &lt;em&gt;&amp;quot;En ota Nikin mihinkään väitteisiin kantaa. Nikki eläkööt ihan rauhassa omaa elämäänsä. Hän väittää paljon asioita siellä.&amp;quot; - &amp;quot;Me toimimme, kuten velvollisuutemme ovat ja sillä siisti.&amp;quot;&lt;/em&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhonen keskitetty push-notifikaatio</title>
      <link>https://kennethfalck.net/2008/06/10/iphonen-keskitetty-push-notifikaatio/</link>
      <pubDate>Tue, 10 Jun 2008 08:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/10/iphonen-keskitetty-push-notifikaatio/</guid>
      <description>&lt;p&gt;High Scalability kirjoittaa &lt;a href=&#34;http://highscalability.com/apples-iphone-use-centralized-push-based-notification-architecture&#34;&gt;Applen uudesta push-notifikaatio-arkkitehtuurista&lt;/a&gt;. Ideana on löytää ratkaisu siihen, ettei esimerkiksi pikaviestintäsovelluksia tarvitsisi ajaa jatkuvasti taustalla kännykässä. Applen ratkaisu on tarjota yksi keskitetty verkkoputki, jonka läpi sovelluksille voidaan välittää notifikaatioita ja saada ne heräämään tarvittaessa.&lt;/p&gt;&#xA;&lt;p&gt;Idea vaikuttaa fiksulta, vaikka sotiikin aika paljon &amp;quot;sama Internet työpöydällä ja kännykässä&amp;quot; -ajattelua vastaan. &lt;a href=&#34;http://www.webware.com/8301-1_109-9964040-2.html&#34;&gt;Parhaimpana perusteluna&lt;/a&gt; on se, että jos kännykässä ajettaisiin PC:n tapaan kymmenittäin taustalla pyöriviä sovelluksia, jotka kaikki pollailevat 3G-yhteyden läpi omia servereitään, akku loppuisi alta aikayksikön. Itse voin uskoa tätä selitystä vielä vuoden pari, mutta jossain vaiheessa mobiililaitteiden täytyy kyllä ruveta toimimaan ihan oikeina Internet-päätelaitteina.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone 3G Suomessa 11.7.2008</title>
      <link>https://kennethfalck.net/2008/06/09/iphone-3g-suomessa-11.7.2008/</link>
      <pubDate>Mon, 09 Jun 2008 22:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/09/iphone-3g-suomessa-11.7.2008/</guid>
      <description>&lt;p&gt;Uuden &lt;a href=&#34;http://store.apple.com/us/browse/home/shop_iphone/family/iphone?mco=MTE2NTQ&#34;&gt;iPhone 3G:n speksit&lt;/a&gt; julkaistu. Odotetusti mukana 3G HSDPA ja GPS-paikannus. Muistia joko 8GB ($199) tai 16GB ($299). Tulossa yhteensä 70 maahan, joista se 22 maassa tulee myyntiin jo &lt;a href=&#34;http://gizmodo.com/5014675/the-3g-iphone-is-official&#34;&gt;11.7.2008&lt;/a&gt; (ml. Suomi).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Täytyyhän taiteilijoidenkin saada leipänsä</title>
      <link>https://kennethfalck.net/2008/06/09/t%C3%A4ytyyh%C3%A4n-taiteilijoidenkin-saada-leip%C3%A4ns%C3%A4/</link>
      <pubDate>Mon, 09 Jun 2008 12:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/09/t%C3%A4ytyyh%C3%A4n-taiteilijoidenkin-saada-leip%C3%A4ns%C3%A4/</guid>
      <description>&lt;p&gt;Minua on aina ärsyttänyt ns. &amp;quot;täytyyhän taiteilijoidenkin saada leipänsä&amp;quot; -argumentti, kun keskustellaan aineettomasta omaisuudesta ja siihen liittyvien vapauksien rajoittamisesta. Tämä liittyy keskusteluun &lt;a href=&#34;http://kfalck.net/2008/06/05/ruotsin-sahkoinen-viestinta-armeijan-valvontaan/&#34;&gt;aiemmassa blogimerkinnässäni&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Samaa argumenttia on nimittäin käytetty kautta historian puolustamaan mitä erilaisempia ihmisoikeuksien rikkomuksia. Paras esimerkki lienee &amp;quot;täytyyhän puuvillapeltojen omistajienkin saada leipänsä&amp;quot;, jolla perusteltiin orjien pitämistä 1800-luvun tienoilla. Olisihan ollut omistajia kohtaan todella epäreilua lakkauttaa orjuus, vaikka se nyt ehkä vähän ihmisoikeuksia vastaan sotikin.&lt;/p&gt;&#xA;&lt;p&gt;Tämä esimerkki sopii analogiaksi aineettoman omaisuuden rajoituksille niin hyvin, koska kyse on täsmälleen samasta asiasta: yksityisen ihmisen oikeuksien ja vapauksien rajoittamisesta keinotekoisesti sen vuoksi, että joku toinen voi ansaita rahaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone 1.1.4: Älä vaihda rootin salasanaa</title>
      <link>https://kennethfalck.net/2008/06/07/iphone-1.1.4-%C3%A4l%C3%A4-vaihda-rootin-salasanaa/</link>
      <pubDate>Sat, 07 Jun 2008 04:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/07/iphone-1.1.4-%C3%A4l%C3%A4-vaihda-rootin-salasanaa/</guid>
      <description>&lt;p&gt;iPhone 1.1.4-firmwarella sekoaa ja alkaa restarttailla Springboardia, jos vaihtaa ssh:n kautta rootin salasanaa passwd-komennolla.&lt;/p&gt;&#xA;&lt;p&gt;Tilanteen saa kuitenkin korjattua &lt;a href=&#34;http://www.hackint0sh.org/forum/showthread.php?t=29918&#34;&gt;näiden ohjeiden&lt;/a&gt; mukaan. Lähinnä pitää palauttaa alkuperäinen /etc/passwd ja /etc/master.passwd, minkä jälkeen Springboard rauhoittuu.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mukana FriendFeedissä</title>
      <link>https://kennethfalck.net/2008/06/06/mukana-friendfeediss%C3%A4/</link>
      <pubDate>Fri, 06 Jun 2008 14:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/06/mukana-friendfeediss%C3%A4/</guid>
      <description>&lt;p&gt;Lisäsin itseni FriendFeediin (&lt;a href=&#34;http://friendfeed.com/kennu&#34;&gt;http://friendfeed.com/kennu&lt;/a&gt;), joka ovelasti lisääntyi myös applikaatioksi Facebookiin. Alkaa pikku hiljaa tulemaan ongelmaksi se, että nämä samat jutut blogeissa, Jaikussa ja Twitterissä kaiuttuvat joka puolelle ja näkyvät moneen kertaan eri lähteistä.. Saisivat nämä palvelut olla sen verran fiksuja, että jos sama URI on jo kertaalleen tullut näkyviin jotain kautta, niin ei tulisi enää uudelleen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ruotsin sähköinen viestintä armeijan valvontaan?</title>
      <link>https://kennethfalck.net/2008/06/05/ruotsin-s%C3%A4hk%C3%B6inen-viestint%C3%A4-armeijan-valvontaan/</link>
      <pubDate>Thu, 05 Jun 2008 01:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/05/ruotsin-s%C3%A4hk%C3%B6inen-viestint%C3%A4-armeijan-valvontaan/</guid>
      <description>&lt;p&gt;On nämä &lt;a href=&#34;http://piraattiliitto.org/uutiset/2008/06/aanestys-edessa-kaikki-ruotsin-sahkoinen-viestinta-armeijan-valvontaan&#34;&gt;ruotsalaisetkin aika hulluja&lt;/a&gt;. Ei tämä touhu taida loppua koskaan, pakko kai se on saada nämä piraattipuolueet puolustamaan edes jotain yksityisyyden rippeitä..&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone firmware 1.1.4 ja PwnageTool</title>
      <link>https://kennethfalck.net/2008/06/04/iphone-firmware-1.1.4-ja-pwnagetool/</link>
      <pubDate>Wed, 04 Jun 2008 10:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/04/iphone-firmware-1.1.4-ja-pwnagetool/</guid>
      <description>&lt;p&gt;Päivitin iPhoneni firmwaren versiosta 1.1.2 versioon 1.1.4. Parhaimpia uudistuksia ovat mahdollisuus järjestellä työpöydän ikonit ja vetää myös webbilinkkejä työpöydälle. Nyt minulla on siinä esim. Facebook ja Google Reader, ja harvoin tarvitut ikonit taas on piilotettu kakkossivulle pois tieltä.&lt;/p&gt;&#xA;&lt;p&gt;Tämä ei ole eritysen uutta, mutta pihtailin päivityksen kanssa, kunnes uskalsin kokeilla PwnageToolia. Se toimii hiukan eri tavalla kuin vanhat vastaavat, sillä se generoi custom firmware -tiedoston, jonka voi päivittää puhelimeen normaalisti iTunesilla. Latasin käytännössä puhelimeen ensin iTunesin normaalin 1.1.4-päivityksen ja ajoin sitten PwnageToolin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Age of Conan rulettaa</title>
      <link>https://kennethfalck.net/2008/06/03/age-of-conan-rulettaa/</link>
      <pubDate>Tue, 03 Jun 2008 23:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/06/03/age-of-conan-rulettaa/</guid>
      <description>&lt;p&gt;Olen pelaillut parin päivän ajan &lt;a href=&#34;http://www.ageofconan.com/&#34;&gt;Age of Conania&lt;/a&gt; ja täytyy sanoa että pidän siitä. Monen vuoden WoWin pelaamisen jälkeen AoC tuo toisaalta kivaa vaihtelua MMORPGailuun, mutta on toisaalta riittävän samankaltainen, jotta sitä osaa heti pelata.&lt;/p&gt;&#xA;&lt;p&gt;Paatuneen WoWaajan kannalta AoC:n tarina ja maailma ovat tietysti ihan erilaisia, koska kaikki &lt;a href=&#34;http://community.ageofconan.com/wsp/conan/frontend.cgi?func=publish.show&amp;func_id=1083&amp;table=PUBLISH&amp;template=news_features_game&amp;selected=1083&#34;&gt;hahmot&lt;/a&gt; ovat ihmisiä. &lt;a href=&#34;http://community.ageofconan.com/wsp/conan/frontend.cgi?func=publish.show&amp;func_id=1084&amp;table=PUBLISH&amp;template=news_features_game&amp;selected=1084&#34;&gt;Hahmoluokat&lt;/a&gt; muistuttavat ideoiltaan WoWia (ja varmaan kaikkia muitakin vastaavia MMORPGeja), mutta ovat vähän erilaisia yhdistelmiä.&lt;/p&gt;&#xA;&lt;p&gt;Olen pelaillut vasta noin levelille 14 asti, joten en osaa sanoa pysyykö peli mielenkiintoisena level cappiin (80) asti. Alku on ainakin todella vauhdikasta, kun saa heti käyttöönsä skill pointseja, useita pettejä, kaikenlaisia aseita ja combo-liikkeitä ja niin edelleen. Myöskin single-player-instanssit heti pelin alusta lähtien ovat mainio ajatus, jotta voi sooloilla rauhassa, vaikka serveri olisi täynnä aloittelevia newbieitä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Last.fm:ää ja muita feedejä Facebookiin</title>
      <link>https://kennethfalck.net/2008/05/26/last.fm%C3%A4%C3%A4-ja-muita-feedej%C3%A4-facebookiin/</link>
      <pubDate>Mon, 26 May 2008 09:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/05/26/last.fm%C3%A4%C3%A4-ja-muita-feedej%C3%A4-facebookiin/</guid>
      <description>&lt;p&gt;Facebook &lt;a href=&#34;http://www.readwriteweb.com/archives/facebooks_lifestream_adds_more_services.php&#34;&gt;näyttää laajentaneen&lt;/a&gt; tukea erilaisten tapahtumien importtaamiselle muista palveluista. Mini-Feedissä saa nyt näkyviin mm. Last.fm:stä jotain, en tosin vielä tiedä mitä (toivottavasti ei näytä jokaista soitettua biisiä)..&lt;/p&gt;&#xA;&lt;p&gt;Samalla on hyvä muistaa kritisoida Facebookia, sillä se aika häpeilemättä importtaa muiden palveluiden RSS-feedejä, mutta ei kuitenkaan tarjoa omaa RSS-feediä ulkopuolisille. Paha paha.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Facebook Chatista Mesen tappaja?</title>
      <link>https://kennethfalck.net/2008/05/14/facebook-chatista-mesen-tappaja/</link>
      <pubDate>Wed, 14 May 2008 16:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/05/14/facebook-chatista-mesen-tappaja/</guid>
      <description>&lt;p&gt;Facebookin hiljattain avaama web-chatti &lt;a href=&#34;http://developers.facebook.com/news.php?blog=1&amp;story=110&#34;&gt;alkaa toimia myös XMPP-clienteillä&lt;/a&gt; Google Talkin tapaan. Tämä tekee Facebookista mielenkiintoisen haastajan perinteiselle Windows Live Messengerille, jossa enemmistö omistakin tutuistani edelleen hengailee.&lt;/p&gt;&#xA;&lt;p&gt;Suurimpana haasteena uuden pikaviestintäyhteisön luomisessa on saada ihmisten kontaktiverkostot siirrettyä sinne. Google Talk on pysynyt omassa tapauksessani pienenä ilmiönä, koska hyvin harva kavereistani käyttää sitä, enkä ole edes vaivautunut lisäämään heitä kontaktilistalleni. Facebookin kaveriverkosto on sen sijaan valmiiksi rakennettu, ja chattikin toimii helposti myös webistä ilman minkään client-ohjelman asentamista.&lt;/p&gt;</description>
    </item>
    <item>
      <title>PHP:n tulevaisuus ja poistuvat featuret</title>
      <link>https://kennethfalck.net/2008/05/12/phpn-tulevaisuus-ja-poistuvat-featuret/</link>
      <pubDate>Mon, 12 May 2008 10:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/05/12/phpn-tulevaisuus-ja-poistuvat-featuret/</guid>
      <description>&lt;p&gt;Kun lueskelee &lt;a href=&#34;http://www.ibm.com/developerworks/opensource/library/os-php-future/?ca=dgr-lnxw01PHP-Future&#34;&gt;PHP 6:n ominaisuuslistaa&lt;/a&gt;, voi olla tyytyväinen, että on ajoissa noudattanut PHP:n dokumentaation neuvoja. Usein siellä mainitaan, että jonkun funktioryhmän tai ominaisuuden käyttö on huono idea, koska tarjolla on parempi vaihtoehto. Nyt kuutosversiossa moni niistä huonommista vaihtoehdoista poistuu kokonaan, kuten esimerkiksi:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;magic_quotes, register_globals, yms. huonot asetukset&lt;/li&gt;&#xA;&lt;li&gt;asp-style tags, eli &amp;lt;% %&amp;gt; normaalin &amp;lt;?php ?&amp;gt; sijaan&lt;/li&gt;&#xA;&lt;li&gt;ereg-funktiot, joiden sijaan syytä käyttää preg-funktioita regexpeihin&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Sinänsä mielenkiintoista, että PHP6:ssa on SOAPiin ja XML:ään liittyviä uudistuksia, vaikka nykyinen suuntaus tuntuu olevan näistä poispäin, sellaisten vaihtoehtojen suuntaan kuin REST ja JSON. Onko PHP:stä tulossa seuraava &amp;quot;ASP.NET&amp;quot;, joka pyörittelee legacytekniikoita vuodesta toiseen, vaikka kehityksen kärki menee jo ihan muualla?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Airport Extreme 7.3.1 korjasi kaatuilun</title>
      <link>https://kennethfalck.net/2008/05/10/airport-extreme-7.3.1-korjasi-kaatuilun/</link>
      <pubDate>Sat, 10 May 2008 21:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/05/10/airport-extreme-7.3.1-korjasi-kaatuilun/</guid>
      <description>&lt;p&gt;Nyt on hyvä hetki todeta, että kuukausi-pari sitten ilmestynyt 7.3.1-päivitys Airport Extremeen korjasi tukiasemasta kaiken kaatuilun. Sitä aiemmin oma purkkini oli epästabiili ja jäi jumiin pari kertaa viikossa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Firefox 3b4 downgrade: ei enää kaatuilua</title>
      <link>https://kennethfalck.net/2008/05/08/firefox-3b4-downgrade-ei-en%C3%A4%C3%A4-kaatuilua/</link>
      <pubDate>Thu, 08 May 2008 23:45:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/05/08/firefox-3b4-downgrade-ei-en%C3%A4%C3%A4-kaatuilua/</guid>
      <description>&lt;p&gt;Parin päivän käytön jälkeen voi todeta, että Firefox 3b5 kaatuilee todella paljon, ja asia korjaantuu, kun downgradeaa 3b4:ään. Tässä on omat puutteet ja bugit, mutta ainakin pysyy pystyssä selaillessa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Leo4All: Mac OS X tavallisessa PC:ssä</title>
      <link>https://kennethfalck.net/2008/05/07/leo4all-mac-os-x-tavallisessa-pcss%C3%A4/</link>
      <pubDate>Wed, 07 May 2008 20:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/05/07/leo4all-mac-os-x-tavallisessa-pcss%C3%A4/</guid>
      <description>&lt;p&gt;Tulipa testattua &lt;a href=&#34;http://osx86leo4all.wikidot.com/&#34;&gt;Leo4All&lt;/a&gt;, jonka avulla voi ajaa Mac OS X -käyttöjärjestelmää missä tahansa PC:ssä. Testikohteena oli vanha Asus P5ND2-SLI Deluxe -pohjainen PC, jossa pari gigaa muistia, 3 GHz Pentium IV -prosessori, ATI RADEON X850 -näytönohjain ja SATA-levy.&lt;/p&gt;&#xA;&lt;p&gt;SATA-levyä lukuunottamatta asennus meni läpi ihan heittämällä. Perusasetuksilla Leo4All-asennus ei tunnistanut asennuksen jälkeen kovalevyä, mutta tämä korjaantui valitsemalla asennuksen yhteydessä Customize-valikosta &amp;quot;Old NVidia chipset support&amp;quot; päälle. Tämä valikko näkyy graafisessa asennusohjelmassa juuri ennen viimeistä Install-napin painamista.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django ja HTTP Basic -autentikointi</title>
      <link>https://kennethfalck.net/2008/05/05/django-ja-http-basic-autentikointi/</link>
      <pubDate>Mon, 05 May 2008 04:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/05/05/django-ja-http-basic-autentikointi/</guid>
      <description>&lt;p&gt;Virittelin Djangon käyttämään tavallista HTTP-autentikointia kustomoidusta käyttäjätaulusta, mikä osoittautui hieman haastavaksi. Django käyttää normaalisti cookie-pohjaista autentikointia ja omaa määrämuotoista auth_user-taulua. Sen takia päätin ohittaa sisäänrakennetun autentikoinnin kokonaan ja tehdä oman.&lt;/p&gt;&#xA;&lt;p&gt;Ensimmäinen vaatimus on saada Apache välittämään Authorization-headeri Djangolle sellaisenaan. Itse käytän Apachen mod_fastcgi:tä kehityksessä, ja tämä edellytti seuraavanlaista direktiiviä Apachen konfiguraatiossa (oleellista on -pass-header Authorization):&lt;/p&gt;&#xA;&lt;pre style=&#34;padding:4px;line-height:1em;background:#f0f0ff;border:1px solid #e0e0e0;overflow-x:scroll&#34;&gt;FastCGIExternalServer /var/www/html/django.fcgi -socket /tmp/django.sock -pass-header Authorization&#xA;&lt;/pre&gt;&#xA;&lt;p&gt;Tämän jälkeen Django-sovelluksen views.py-moduuliin voi lisätä muutaman tarpeellisen funktion (User-luokka on itse määrittelemäni malli käyttäjätaululle):&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kalenterien virittelyä osa II</title>
      <link>https://kennethfalck.net/2008/05/03/kalenterien-virittely%C3%A4-osa-ii/</link>
      <pubDate>Sat, 03 May 2008 15:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/05/03/kalenterien-virittely%C3%A4-osa-ii/</guid>
      <description>&lt;p&gt;Tutkin taas vähän lisää iCalia, Lightningia ja myös &lt;a href=&#34;http://www.zimbra.com/&#34;&gt;Zimbraa&lt;/a&gt;, joka on mielenkiintoinen Exchangen korvikkeeksi tarkoitettu open source -kokonaisjärjestelmä. Olen yrittänyt löytää jotain taikakeinoa integroida nämä kaikki toistensa ja iPhonen kalenterin kanssa. Mieluiten vielä Google Calendarinkin kanssa.&lt;/p&gt;&#xA;&lt;p&gt;Perusongelma nykyisessä kalenterien jaossa on se, että iCalendar-kalentereita voi kyllä julkaista ja tilata (publish &amp;amp; subscribe) kaikkien järjestelmien välillä, mutta synkronointi ei onnistu. Googlella on mainio Private Address -mekanismi, jonka ansiosta oma kalenteri on helppo tilata mihin tahansa muuhun järjestelmään (ja jopa synkronoida iPhoneen), mutta silloin kalenterimerkinnät on pakko tehdä Googlen kautta. Ei voi hyväksyä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gravatarit käytössä</title>
      <link>https://kennethfalck.net/2008/04/30/gravatarit-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Wed, 30 Apr 2008 12:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/04/30/gravatarit-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Laitoin tähän blogiin kokeeksi Gravatarit käyttöön kommentteihin. Eli kun kommentoi ja antaa sähköpostiosoitteensa, niin näkyy oma naama pienenä ikonina (mikäli on luonut Gravatar-tilin kyseiselle sähköpostiosoitteelle).&lt;/p&gt;&#xA;&lt;p&gt;Gravatareita voi rekisteröidä &lt;a href=&#34;http://www.gravatar.com/&#34;&gt;täältä&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;IMHO Gravatar on aika näppärä idea toteuttaa avatarit globaalisti, vaikka onkin sidottu sähköpostiosoitteeseen vähän hankalasti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Drupal suoriutuu muttei skaalaudu</title>
      <link>https://kennethfalck.net/2008/04/30/drupal-suoriutuu-muttei-skaalaudu/</link>
      <pubDate>Wed, 30 Apr 2008 02:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/04/30/drupal-suoriutuu-muttei-skaalaudu/</guid>
      <description>&lt;p&gt;Tulipa tutkittua hieman &lt;a href=&#34;http://drupal.org/&#34;&gt;Drupalin&lt;/a&gt; ja MySQL:n skaalautuvuutta. Ikävä kyllä oli todettava, että vaikka Drupal on hyvin suorituskykyinen yhdellä MySQL-palvelimella, niin sitä ei voi oikein mitenkään skaalata käyttämään useita tietokantapalvelimia.&lt;/p&gt;&#xA;&lt;p&gt;Käytännössähän vaihtoehtoja on kaksi: klusterointi tai replikointi. &lt;a href=&#34;http://www.mysql.com/products/database/cluster/&#34;&gt;MySQL Cluster&lt;/a&gt; on vielä niin lapsenkengissään oleva tuote, ettei sitä oikein uskalla viedä tuotantoon. Ensinnäkin klusterointi asettaa tietokannan tauluille kaikenlaisia rajoituksia, mikä edellyttää Drupalissakin oletustaulurakenteiden pientä muokkaamista. Toisekseen suorituskyky on todella heikko. Ilman Drupal-välimuisteja klusteroidusta kannasta tuntui saavan noin 30% tavallisen kannan tehosta irti. Välimuistien kanssa ero kärjistyi: klusterin suorituskyky oli enää 10% luokkaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>jQuery mullistaa JavaScriptin</title>
      <link>https://kennethfalck.net/2008/04/29/jquery-mullistaa-javascriptin/</link>
      <pubDate>Tue, 29 Apr 2008 21:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/04/29/jquery-mullistaa-javascriptin/</guid>
      <description>&lt;p&gt;Luin äskettäin kirjan nimeltä &lt;a href=&#34;http://www.amazon.co.uk/gp/redirect.html%3FASIN=1933988355%26tag=kenfalsblo-21%26lcode=xm2%26cID=2025%26ccmID=165953%26location=/o/ASIN/1933988355%253FSubscriptionId=1YNZ339ZCHHAKYFSY702&#34;&gt;jQuery in Action&lt;/a&gt;. Se sai minut oivaltamaan miten JavaScriptiä kuuluu nykyään tehdä. JavaScript on muuttunut aika radikaalisti kuluneiden Ajax-vuosien aikana.&lt;/p&gt;&#xA;&lt;p&gt;Kaiken perustana on tietysti nykyään objektiorientoituneisuus. JavaScript on OO-kielenä oikein kehittynyt ja toimiva juuri siihen tarkoitukseen, mihin sitä käytetäänkin. jQuery in Action -kirjan lopussa onkin hyvä tiivistelmä siitä, miten JavaScript-objekteja luodaan, miten closuret toimivat ja mitä &amp;quot;this&amp;quot; oikeastaan tarkoittaa.&lt;/p&gt;&#xA;&lt;p&gt;jQuery-kirjasto itsessään ratkaisee oikeastaan kaksi JavaScriptin pahinta ongelmaa: jäyhän W3C DOM -mallin hankalakäyttöisyyden sekä eri selainten pienet eroavaisuudet JavaScript-rajapinnoissa. Jälkimmäinen on käyttäjän kannalta no-brainer: kaikki toimii yhtenäisellä tavalla selaimesta riippumatta. Varsinkin eventtien käsittelyssä tämä on korvaamaton apu.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Macin dual-display-hienosäätöä</title>
      <link>https://kennethfalck.net/2008/04/24/macin-dual-display-hienos%C3%A4%C3%A4t%C3%B6%C3%A4/</link>
      <pubDate>Thu, 24 Apr 2008 00:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/04/24/macin-dual-display-hienos%C3%A4%C3%A4t%C3%B6%C3%A4/</guid>
      <description>&lt;p&gt;Huomasin juuri, että Mac OS X:n dual-display-asetuksissa voi hienosäätää, mihin kohtaan kakkosnäyttö asettuu pystytasossa. Tämä on kätevää silloin, jos näytöt ovat eri pikselimääräisiä, ja haluaa määritellä, mistä kohtaa hiirikursori voi liukua näyttöjen rajan yli.&lt;/p&gt;&#xA;&lt;p&gt;Itse konffasin vasemmalla olevan kakkosnäytön siten, että alareunasta kursori liukuu suoraan sinne, mutta yläkulmassa (jossa on menupalkki ja ikkunoiden hallintapainikkeet jne) kursori &amp;quot;jää kiinni&amp;quot; nurkkaan.&lt;/p&gt;&#xA;&lt;p&gt;Kun vielä saisi jotenkin erillisen dockin ja menupalkin vasemmalle näytölle niille sovelluksille, joiden ikkunat pyörivät sillä puolella...&lt;/p&gt;</description>
    </item>
    <item>
      <title>Toimivaa CalDAV-kalenteria etsimässä</title>
      <link>https://kennethfalck.net/2008/04/20/toimivaa-caldav-kalenteria-etsim%C3%A4ss%C3%A4/</link>
      <pubDate>Sun, 20 Apr 2008 01:45:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/04/20/toimivaa-caldav-kalenteria-etsim%C3%A4ss%C3%A4/</guid>
      <description>&lt;p&gt;Olen viime aikoina etsiskellyt privaattikäyttöön sopivaa kalenterisovellusta, joka osaisi tallentaa kalenterit CalDAV-palvelimelle.  Käytän jatkuvasti monia eri Mac- ja Windows-koneita, ja kaipaan siistiä, avointa ratkaisua yksityisten kalenterien hallintaan.&lt;/p&gt;&#xA;&lt;p&gt;Sain pystytettyä Ubuntu-palvelimelleni melko pienellä vaivalla &lt;a href=&#34;http://trac.calendarserver.org/projects/calendarserver&#34;&gt;Darwin Calendar Serverin&lt;/a&gt;, joka on Applen julkaisema avoimen lähdekoodin kalenteripalvelin. (Piti vain vähän kikkailla Linux-pakettien kanssa ja muokata parista kohtaa Python/Python.h =&amp;gt; Python.h.) Privaattikäytössä Calendar Serveriä on helppo hallita, sillä käyttäjätunnukset ja salasanat voi halutessaan laittaa yhteen paikalliseen XML-tiedostoon.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Internet skaalautuu ja relaatiotietokanta kuolee</title>
      <link>https://kennethfalck.net/2008/04/08/internet-skaalautuu-ja-relaatiotietokanta-kuolee/</link>
      <pubDate>Tue, 08 Apr 2008 15:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/04/08/internet-skaalautuu-ja-relaatiotietokanta-kuolee/</guid>
      <description>&lt;p&gt;Viime aikoina julkistetut &lt;a href=&#34;http://mashable.com/2008/04/08/google-app-engine/&#34;&gt;Google App Engine&lt;/a&gt; sekä Amazonin EC2-pilviä skaalaava &lt;a href=&#34;http://highscalability.com/scalr-open-source-auto-scaling-hosting-amazon-ec2&#34;&gt;Scalr-palvelu&lt;/a&gt; osoittavat mielenkiintoisia merkkejä siitä, mihin suuntaan Internet on nyt menossa. Omien raskaiden laitesalien hostaaminen kansainvälisesti skaalautuvia palveluita varten on historiaa, koska Google ja Amazon tarjoavat sen helppona itsepalveluna. Huomattavaa on, että alkuun pääsee pikkurahalla, ja jos oma web 2.0 -idea lentää, niin enemmän maksetaan vasta kävijämäärän noustessa.&lt;/p&gt;&#xA;&lt;p&gt;Yhtäkkiä Googlen laskuvarjoilla pudotettavissa datacentereissä onkin järkeä. Hajautettu maailmanlaajuinen datacenter takaa täydellisen skaalautuvuuden (ja toivottavasti myös luotettavuuden). Tämä on CDN 2.0, jossa staattisten kuvien ja videoiden sijaan ajellaankin täysverisiä Python-sovelluksia. Oikein toteutettuna Googlen alusta voi siirrellä sovelluksia ympäri maailmaa, sinne missä niitä kulloinkin tarvitsee ajaa kuormituspiikkien ilmaantuessa. Ja tietysti vapaasti lisätä uusia sovelluspalvelimia koko systeemiä pyörittämään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>DJ Orkidea: &#34;Warettaminen ja vertaisverkot ovat OK&#34;</title>
      <link>https://kennethfalck.net/2008/04/04/dj-orkidea-warettaminen-ja-vertaisverkot-ovat-ok/</link>
      <pubDate>Fri, 04 Apr 2008 16:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/04/04/dj-orkidea-warettaminen-ja-vertaisverkot-ovat-ok/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://piraattiliitto.org/uutiset/2008/04/dj-orkidea-warettaminen-ja-vertaisverkot-ovat-ok&#34;&gt;Piraattiliitto nostaa esiin&lt;/a&gt; DJ Orkidean &lt;a href=&#34;http://www.findance.com/haastattelut.php?id=304&#34;&gt;haastattelun&lt;/a&gt;, jossa Tapsa kertoo fiksulta vaikuttavia näkemyksiään Internetistä ja musiikista. Ehkä tämä on sen ansiota, että Orkidea on esiintyvä ja uutta luova artisti, jonka elämäntapa ei perustu siihen, että luodaan kerran yksi albumi, ja lypsetään siitä rahaa seuraavat 50 vuotta.&lt;/p&gt;&#xA;&lt;p&gt;Itse voin myöntää ostaneeni rehellisesti Orkidean uusimman &lt;a href=&#34;http://www.amazon.co.uk/gp/redirect.html%3FASIN=B0014DAI54%26tag=kenfalsblo-21%26lcode=xm2%26cID=2025%26ccmID=165953%26location=/o/ASIN/B0014DAI54%253FSubscriptionId=1YNZ339ZCHHAKYFSY702&#34;&gt;Metaverse-albumin&lt;/a&gt;, tukeakseni suomalaista elektronista musiikkituotantoa ;-) (En yleensä muuten enää osta CD:itä.)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vinkki: Ikea-tuotteella läppäri syliin mukavasti</title>
      <link>https://kennethfalck.net/2008/03/31/vinkki-ikea-tuotteella-l%C3%A4pp%C3%A4ri-syliin-mukavasti/</link>
      <pubDate>Mon, 31 Mar 2008 23:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/31/vinkki-ikea-tuotteella-l%C3%A4pp%C3%A4ri-syliin-mukavasti/</guid>
      <description>&lt;p&gt;Shoppailin tänään Ikeassa ja satuin huomaamaan näppärän &lt;a href=&#34;http://www.ikea.com/fi/fi/catalog/products/10086654&#34;&gt;Bräda-läppärituen&lt;/a&gt; (16,95). Tekee mainiosti juuri sen mitä pitääkin, eli läppärin saa mukavasti syliin tasaiselle pinnalle nojatuolissa tai sohvalla löhöillessä. Pinnan alapuolella on &amp;#39;hernepussi&amp;#39;-tyyppinen ratkaisu, joka pitää tason suorassa ja eristää mukavasti lämmöltä (ainakin pikaisella kokeilulla). Pitemmän käytön lämpöominaisuuksista tai räjähteleviltä akuilta suojaavuudesta en vielä osaa sanoa.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#39;http://www.ikea.com/fi/fi/catalog/products/10086654&#39; title=&#39;Bräda&#39;&gt;&lt;img src=&#39;https://kennethfalck.net/images/wp-content/uploads/2008/03/brada2.jpg&#39; alt=&#39;Bräda&#39; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Fitna-video Googlessa</title>
      <link>https://kennethfalck.net/2008/03/29/fitna-video-googlessa/</link>
      <pubDate>Sat, 29 Mar 2008 16:54:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/29/fitna-video-googlessa/</guid>
      <description>&lt;p&gt;Täytyy myöntää olevani sen verran paranoidi, että epäröin linkata suoraan Fitna-videoon. Onneksi &lt;a href=&#34;http://www.techcrunch.com/2008/03/28/google-risks-muslim-backlash-by-hosting-fitna/&#34;&gt;TechCrunch teki sen jo&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Itse video on melko järkyttävä, mutta kannattaahan se katsoa, jos aikoo aiheesta keskustella. Itse koen sen kuitenkin kuvaavan islamin äärielementtejä, enkä edelleenkään miellä maailman kaikkia 1,3 miljardia muslimia terroristeiksi tai naisia kivittäviksi psykopaateiksi.&lt;/p&gt;&#xA;&lt;p&gt;Itse asiassa kun katson muslimijohtajien hulluilta kuulostavia puheita, niin mieleen tulee väistämättä USA:n presidenttien puheet. Ne ovat toki paljon siistimpiä ja verhottu demokratian taakse, mutta aiheutettu tuho ja kärsimys USA:n &amp;quot;demokratiaa puolustavissa sodissa&amp;quot; on silti moninkertainen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Facebook riistää taas yhteisöään</title>
      <link>https://kennethfalck.net/2008/03/29/facebook-riist%C3%A4%C3%A4-taas-yhteis%C3%B6%C3%A4%C3%A4n/</link>
      <pubDate>Sat, 29 Mar 2008 00:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/29/facebook-riist%C3%A4%C3%A4-taas-yhteis%C3%B6%C3%A4%C3%A4n/</guid>
      <description>&lt;p&gt;Facebook herättää ainakin minussa taas ristiriitaisia tunnelmia &lt;a href=&#34;http://www.facebook.com/apps/application.php?id=4329892722&#34;&gt;Translations-sovelluksellaan&lt;/a&gt;. Ideana on, että maakohtainen yhteisö voi lokalisoida Facebookin käyttöliittymän sellaiseksi kuin haluaa. Esimerkiksi suomalainen Facebook on nyt sanaston kääntämisvaiheessa, jossa voi ehdottaa erilaisia käännöksiä termeille ja äänestää niistä mieluisimpia.&lt;/p&gt;&#xA;&lt;p&gt;Tavallaan tosi kiva juttu joo, mutta mitähän me kääntäjät saamme palkaksi työstämme? Äänestän paraikaa sellaisista termeistä kuin &amp;quot;Business Solutions&amp;quot;, &amp;quot;Bid&amp;quot;, &amp;quot;Budget&amp;quot; ja &amp;quot;Campaign&amp;quot;. Ne eivät kosketa itseäni kauheasti, mutta sitäkin enemmän niistä lienee hyötyä, kun Facebook myy mainoskampanjoitaan Suomessa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPodiin tarvittaisiin fiksumpi volume-limitteri</title>
      <link>https://kennethfalck.net/2008/03/27/ipodiin-tarvittaisiin-fiksumpi-volume-limitteri/</link>
      <pubDate>Thu, 27 Mar 2008 15:01:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/27/ipodiin-tarvittaisiin-fiksumpi-volume-limitteri/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.tietokone.fi/foorumi/keskustelu.asp?threadid=69768&amp;page=1&amp;show=all&amp;areapage=&#34;&gt;Tietokone-lehden keskusteluissa&lt;/a&gt; on puitu &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=33272&amp;tyyppi=1&#34;&gt;tutkimusta&lt;/a&gt;, jonka mukaan nuoriso kuuntelee iPodejaan liian lujalla. Olen itsekin miettinyt pitkään, miksi iPodien äänenvoimakkuuden rajoitin on niin alkeellinen.&lt;/p&gt;&#xA;&lt;p&gt;Ensimmäinen ongelmahan tulee siitä, että jokainen kuulokemalli toistaa ääntä vähän eri tavalla. Ei ole siis mahdollista määritellä uutisessakin mainitun kaltaista absoluuttista &amp;quot;60%&amp;quot; rajaa soittimen äänenvoimakkuudelle, vaan sopiva taso riippuu ihan kuulokkeista. Olisi ehkä fiksumpaa yrittää standardoida kuulokkeille jonkinlaista tasomerkintää, jonka avulla soittimen maksimivolyymin voisi asettaa kohdalleen.&lt;/p&gt;&#xA;&lt;p&gt;Toinen ongelma ovat vaihtelevilla äänentasoilla tallennetut mp3:t. Senkään takia absoluuttinen raja äänenvoimakkuuden säädössä ei ole oikea ratkaisu, vaan soittimen pitäisi osata limittoida äänenvoimakkuus dynaamisesti niissä tilanteissa, kun se uhkaa rikkoa korvat. On todella ärsyttävää kuunnella levyä, joka on äänitetty tavallista hiljaisempana, ja sitten tuleekin iPodin turvaraja vastaan. Turvarajan ei siis pitäisi niinkään koskea globaalia äänenvoimakkuuden säätöä, vaan musiikissa esiintyviä riskialttiita piikkikohtia. Luulisi nykyajan tietotekniikalla olevan mahdollista suojella korvia sen verran fiksusti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin poistat roskan Applen uudesta (alumiini-) näppäimistöstä</title>
      <link>https://kennethfalck.net/2008/03/27/n%C3%A4in-poistat-roskan-applen-uudesta-alumiini-n%C3%A4pp%C3%A4imist%C3%B6st%C3%A4/</link>
      <pubDate>Thu, 27 Mar 2008 00:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/27/n%C3%A4in-poistat-roskan-applen-uudesta-alumiini-n%C3%A4pp%C3%A4imist%C3%B6st%C3%A4/</guid>
      <description>&lt;p&gt;Tätä joutui hetken googlailemaan: &lt;a href=&#34;http://skeltoac.com/2007/10/22/apple-keyboard-aluminum-keycap-removal/&#34;&gt;Miten Applen alumiininäppäimistöstä irroitetaan näppäinhatut&lt;/a&gt;. Itselläni riitti, että raotin ongelmallista näppäintä yläreunasta, puhalsin paineilmalla roskat pois, ja painoin hatun takaisin paikoilleen.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/wp-content/uploads/2008/03/apple_aluminum_keyboard2.jpg&#39; title=&#39;Apple Aluminum Keyboard&#39;&gt;&lt;img src=&#39;http://kfalck.net/wp-content/uploads/2008/03/apple_aluminum_keyboard2.jpg&#39; alt=&#39;Apple Aluminum Keyboard&#39; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miksauksia kfalck.netissä</title>
      <link>https://kennethfalck.net/2008/03/26/miksauksia-kfalck.netiss%C3%A4/</link>
      <pubDate>Wed, 26 Mar 2008 20:26:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/26/miksauksia-kfalck.netiss%C3%A4/</guid>
      <description>&lt;p&gt;Laitoin muutamia viime vuosina tekemiäni mp3-miksauksia &lt;a href=&#34;http://kfalck.net/mixes/&#34;&gt;mixes-osioon&lt;/a&gt;. Taso on vaihtelevaa mutta huvikseenhan noita tehdään ;-)&lt;/p&gt;&#xA;&lt;p&gt;Samalla tuli testattua miten hyvin Drupal 5 taipuu tällaiseen pieneen harrasteprojektiin. Aikaa tuon tekemiseen meni muutamia tunteja. &lt;a href=&#34;http://drupal.org/project/audio&#34;&gt;Audio-moduulin&lt;/a&gt; avulla mp3-tiedostojen julkaisu playereineen on todella yksinkertaista, ja se generoi niistä samalla iTunes-yhteensopivan &lt;a href=&#34;http://kfalck.net/mixes/rss.xml&#34;&gt;RSS/podcast-feedin&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MacPorts &#39;connection refused&#39; / postflight error caused by PeerGuardian</title>
      <link>https://kennethfalck.net/2008/03/24/macports-connection-refused-/-postflight-error-caused-by-peerguardian/</link>
      <pubDate>Mon, 24 Mar 2008 21:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/24/macports-connection-refused-/-postflight-error-caused-by-peerguardian/</guid>
      <description>&lt;p&gt;I&amp;#39;m blogging this in English in hopes of providing a solution for other people suffering of the same problem.&lt;/p&gt;&#xA;&lt;p&gt;I just spent a few hours investigating why installing &lt;a href=&#34;http://www.macports.org/&#34;&gt;MacPorts&lt;/a&gt; on Mac OS X 10.5.2 (Leopard) was failing with a &amp;#39;postflight failed&amp;#39; error. Strangely even &amp;#39;telnet rsync.macports.org 873&amp;#39; would cause a Connection refused error, though the same host worked when contacted from other computers.&lt;/p&gt;&#xA;&lt;p&gt;Eventually I realized the problem was PeerGuardian, which was blocking the macports.org IP range. After unblocking it, the installation completed with no problems. Also &amp;#39;sudo port selfupdate&amp;#39; works properly now.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sampo Pankin login-sivu</title>
      <link>https://kennethfalck.net/2008/03/24/sampo-pankin-login-sivu/</link>
      <pubDate>Mon, 24 Mar 2008 16:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/24/sampo-pankin-login-sivu/</guid>
      <description>&lt;p&gt;Tältä näyttää Sampo Pankin login-sivu Mac OS X Firefoxilla:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/wp-content/uploads/2008/03/sampopankki.png&#39; title=&#39;Sampo Pankki&#39;&gt;&lt;img src=&#39;http://kfalck.net/wp-content/uploads/2008/03/sampopankki.png&#39; alt=&#39;Sampo Pankki&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Mahtaakohan tuosta puuttua jotain oleellista, kuten itse palvelu? Onneksi en ole Sampo Pankin asiakas :-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ruotsin eduskunta ei suostu kuuntelemaan tiedostojen jakajia</title>
      <link>https://kennethfalck.net/2008/03/23/ruotsin-eduskunta-ei-suostu-kuuntelemaan-tiedostojen-jakajia/</link>
      <pubDate>Sun, 23 Mar 2008 02:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/23/ruotsin-eduskunta-ei-suostu-kuuntelemaan-tiedostojen-jakajia/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://piraattiliitto.org/uutiset/2008/03/ruotsin-eduskunta-ei-suostu-kuuntelemaan-tiedostojen-jakajia&#34;&gt;Piraattiliitto kirjoittaa&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;div style=&#34;margin:0 0 0 2em;font-family:Arial,Helvetica,sans-serif;font-style:italic&#34;&gt;Ruotsin eduskunta järjestää torstaina, huhtikuun 3. päivänä koko kansalle suorana lähetyksenä välitettävän kuulemistilaisuuden, jonka aiheena on tiedostojen jakaminen ja siihen liittyvä lainsäädäntö. [...] Yksi debatin kannalta keskeinen taho on kuitenkin jäänyt kokonaan ilman kutsua ja siten ilman ääntä Ruotsin eduskunnan tilaisuudessa. Tämä taho ovat nuo mainitut toista miljoonaa tiedostojen jakajaa, joihin uutta lainsäädäntöä ollaan kohdistamassa.&lt;/div&gt;&#xA;&lt;p&gt;On se kumma miten nämä tekijänoikeusasiat pysyvät tiukasti teollisuuden lobbarien hallussa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kohtuuton tuomio huumekätköjutusta</title>
      <link>https://kennethfalck.net/2008/03/20/kohtuuton-tuomio-huumek%C3%A4tk%C3%B6jutusta/</link>
      <pubDate>Thu, 20 Mar 2008 05:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/20/kohtuuton-tuomio-huumek%C3%A4tk%C3%B6jutusta/</guid>
      <description>&lt;p&gt;Hesari uutisoi &lt;a href=&#34;http://www.hs.fi/kaupunki/artikkeli/Huumeiden+maastok%C3%A4tk%C3%B6jutun+p%C3%A4%C3%A4tekij%C3%B6ille+13+vuotta+vankeutta/1135234917947&#34;&gt;huumeiden maastokätköjutusta&lt;/a&gt;, jossa siis pääosin kannabiksen kanssa touhunneille tekijöille rapsahti jopa 13 vuotta ehdotonta vankeutta. Uutisen yhteydessä on käyty &lt;a href=&#34;http://www.hs.fi/keskustelu/thread.jspa?threadID=106955&amp;amp;messageID=1870514&amp;amp;#1870514&#34;&gt;mielenkiintoista keskustelua&lt;/a&gt; siitä, onko tällainen tuomio missään suhteessa itse rikokseen, tai onko kyseisen teon kriminalisointi edes millään lailla perusteltua.&lt;/p&gt;&#xA;&lt;p&gt;Lainatakseni Petrus Pennasta:&lt;/p&gt;&#xA;&lt;div style=&#34;margin-left:2em;font-family:Arial,Helvetica,sans-serif;font-style:italic&#34;&gt;&#34;Pahoinpitelystä josta aiheutuu elinikäinen työkyvyttömyys ei saa lainkaan vankeutta (vain ehdollista).&#xA;&lt;p&gt;Toisen ihmisen tappamisesta saa pari vuotta.&lt;/p&gt;&#xA;&lt;p&gt;Kannabiksen, joka on vähemmän vaarallinen päihde kuin alkoholi ja jota voi useissa EU-maissa käyttää laillisesti, tuomisesta maahan ketään vahingoittamatta saa 13 vuotta?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kotipizza online jo Keravalla ja Hyrylässä!</title>
      <link>https://kennethfalck.net/2008/03/15/kotipizza-online-jo-keravalla-ja-hyryl%C3%A4ss%C3%A4/</link>
      <pubDate>Sat, 15 Mar 2008 16:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/15/kotipizza-online-jo-keravalla-ja-hyryl%C3%A4ss%C3%A4/</guid>
      <description>&lt;p&gt;Otsikon on tietenkin tarkoitus olla sarkasmia. Jotenkin uskomatonta, että maan isoin pizzaketju ei saa &lt;a href=&#34;http://online.kotipizza.fi/&#34;&gt;online-tilaustaan&lt;/a&gt; toimimaan. Kun toisaalta &lt;a href=&#34;http://online.pizzataxi.fi/&#34;&gt;Pizzataxi&lt;/a&gt; on näyttänyt jo vuosia sitten, miten se tehdään. Kannattaisikohan Kotipizzankin kenties aloittaa pääkaupunkiseudulta, josta early adopterit löytyvät?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miksi YLE käyttää Windows Mediaa ilman DRM:ää?</title>
      <link>https://kennethfalck.net/2008/03/14/miksi-yle-k%C3%A4ytt%C3%A4%C3%A4-windows-mediaa-ilman-drm%C3%A4%C3%A4/</link>
      <pubDate>Fri, 14 Mar 2008 21:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/14/miksi-yle-k%C3%A4ytt%C3%A4%C3%A4-windows-mediaa-ilman-drm%C3%A4%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.uusisuomi.fi/kotimaa/17760-yle-rauhoittelee-mac-ja-linux-kayttajia&#34;&gt;Uuden Suomen mukaan&lt;/a&gt; YLEn Pirkka Aunola on luvannut, ettei DRM:ää olla ottamassa käyttöön Areenassa. Tämä herättää kysymyksen, minkä ihmeen takia YLE sitten ylipäätään käyttää Windows Mediaa? Tarjolla olisi muitakin avoimempia formaatteja, jotka toimisivat muissakin käyttöjärjestelmissä ja ympäristöissä paremmin. Kuten nyt esimerkiksi MPEG-4, joka on ihan oikea standardi, tai vaikkapa Flash Video, josta on muodostunut webin de facto -videoformaatti.&lt;/p&gt;&#xA;&lt;p&gt;YLEn toimitusjohtaja, aiemmin Microsoftilla työskennellyt Mikael Jungner on nimittäin julkisesti perustellut Windows Median käyttöä sillä, että YLE aikoo hyödyntää sen DRM-ominaisuuksia. Jos näin ei olekaan, alkaa pohja koko teknologian valinnalta pudota pois. Herää siis kysymys, missä ovat todelliset motiivit Microsoft-teknologian valintaan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>ObHack: iPod suihkuun FM-lähettimellä</title>
      <link>https://kennethfalck.net/2008/03/13/obhack-ipod-suihkuun-fm-l%C3%A4hettimell%C3%A4/</link>
      <pubDate>Thu, 13 Mar 2008 21:45:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/13/obhack-ipod-suihkuun-fm-l%C3%A4hettimell%C3%A4/</guid>
      <description>&lt;img style=&#39;padding:0 0 0 10px&#39; src=&#39;https://kennethfalck.net/images/wp-content/uploads/2008/03/fm.thumbnail.jpg&#39; alt=&#39;fm.jpg&#39; align=&#39;right&#39; /&gt;&#xA;&lt;p&gt;Päätin vihdoin kokeilla, miten hyvin iPod soi suihkussa, kun ääni tuodaan sinne kylpyhuoneen ulkopuolelta FM-lähettimellä. Ja kyllähän se toimi. Hain Verkkokaupasta &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=16686&#34;&gt;MediaLounge FD-003L&lt;/a&gt;-lähettimen (19.90e), etsin &lt;a href=&#34;http://taajuuslista.g.iki.fi/pikahaku.php?jarjestys=taajuus&amp;offset=200&amp;hakusana=Helsinki&amp;hakukentta=paikkakunta&#34;&gt;taajuuslistasta&lt;/a&gt; vapaan taajuuden (90 MHz) ja pistin iPodin soittamaan äskettäin ostamaani &lt;a href=&#34;http://www.amazon.co.uk/gp/redirect.html%3FASIN=B0014DAI54%26tag=kenfalsblo-21%26lcode=xm2%26cID=2025%26ccmID=165953%26location=/o/ASIN/B0014DAI54%253FSubscriptionId=1YNZ339ZCHHAKYFSY702&#34;&gt;DJ Orkidean Metaverseä&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Clas Ohlsonilta hommattu suihkuradio virittyy melko kiltisti signaaliin, joskin naapuritaajuudet sekoittavat sen helposti. Äänenlaatu ei päätä huimaa, mutta eihän sitä suihkussa niin huomaa. FM-lähettimen kantama on aika lyhyt, joten se on pakko olla heti oven ulkopuolella, mutta ajaa se asiansa. Mahdollisesti vielä häiriöttömämmän taajuuden etsiminen voisi parantaa äänenlaatua.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kirjasuositus: Agile Web Development with Rails</title>
      <link>https://kennethfalck.net/2008/03/10/kirjasuositus-agile-web-development-with-rails/</link>
      <pubDate>Mon, 10 Mar 2008 03:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/10/kirjasuositus-agile-web-development-with-rails/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;http://www.amazon.co.uk/gp/redirect.html%3FASIN=0977616630%26tag=kenfalsblo-21%26lcode=xm2%26cID=2025%26ccmID=165953%26location=/o/ASIN/0977616630%253FSubscriptionId=1YNZ339ZCHHAKYFSY702&#39; title=&#39;rails.jpg&#39;&gt;&lt;img style=&#39;margin:0;padding:0 0.5em 0.5em 0&#39; src=&#39;https://kennethfalck.net/images/wp-content/uploads/2008/03/rails.thumbnail.jpg&#39; alt=&#39;rails.jpg&#39; align=&#39;left&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Suosittelen lämpimästi kirjaa &lt;a href=&#34;http://www.amazon.co.uk/gp/redirect.html%3FASIN=0977616630%26tag=kenfalsblo-21%26lcode=xm2%26cID=2025%26ccmID=165953%26location=/o/ASIN/0977616630%253FSubscriptionId=1YNZ339ZCHHAKYFSY702&#34;&gt;Agile Web Development with Rails&lt;/a&gt;  kaikille nykyaikaisesta web-kehityksestä kiinnostuneille. Olen itse käyttänyt sitä benchmarkkina tutustuakseni Railsin ideaan ja ominaisuuksiin ja verratakseni niitä muihin vastaaviin ympäristöihin, kuten Djangoon ja Zend Frameworkiin.&lt;/p&gt;&#xA;&lt;p&gt;Kirja kertoo Ruby on Railsin toimintaperiaatteista, mutta ideat ovat sinällään samoja muissakin MVC-frameworkeissa. Ne kaikki perustuvat yleensä URL-reititykseen, kontrollereihin, tietokantaa mallintaviin Active Record -objekteihin sekä jonkinlaiseen template-järjestelmään. Ruby mahdollistaa kielenä aika elegantteja ratkaisuja tämän toteuttamiseen, kun luokkiin voidaan esimerkiksi lisätä metodeja &amp;quot;lennossa&amp;quot;. PHP:ssä vastaavat ominaisuudet ovat yleensä jäyhempiä __call-metodiin ja monimutkaisiin array-rakenteisiin perustuvia kikkailuja. Tämä kirja kannattaa ehdottomasti lukea, jos vielä kuvittelee, että PHP on maailman hienoin ohjelmointikieli ja kehitysympäristö ;-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone SDK imuroitavissa</title>
      <link>https://kennethfalck.net/2008/03/10/iphone-sdk-imuroitavissa/</link>
      <pubDate>Mon, 10 Mar 2008 02:58:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/10/iphone-sdk-imuroitavissa/</guid>
      <description>&lt;p&gt;Nyt voi liittyä &lt;a href=&#34;http://developer.apple.com/iphone/program/&#34;&gt;iPhone SDK -ohjelmaan&lt;/a&gt; ja imuroida iPhone SDK:n (Mac OS X:lle). On muuten 2.1 GB paketti, kestää hetken aikaa ladata.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nettisensuuri on väärä ratkaisu oikeaan ongelmaan (video)</title>
      <link>https://kennethfalck.net/2008/03/09/nettisensuuri-on-v%C3%A4%C3%A4r%C3%A4-ratkaisu-oikeaan-ongelmaan-video/</link>
      <pubDate>Sun, 09 Mar 2008 16:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/09/nettisensuuri-on-v%C3%A4%C3%A4r%C3%A4-ratkaisu-oikeaan-ongelmaan-video/</guid>
      <description>&lt;p&gt;&lt;object width=&#34;425&#34; height=&#34;355&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/aEc_WG_KTOs&#34;&gt;&lt;/param&gt;&lt;param name=&#34;wmode&#34; value=&#34;transparent&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/aEc_WG_KTOs&#34; type=&#34;application/x-shockwave-flash&#34; wmode=&#34;transparent&#34; width=&#34;425&#34; height=&#34;355&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>&#34;HS-raati&#34;: Nettisensuuri jatkukoon</title>
      <link>https://kennethfalck.net/2008/03/08/hs-raati-nettisensuuri-jatkukoon/</link>
      <pubDate>Sat, 08 Mar 2008 16:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/08/hs-raati-nettisensuuri-jatkukoon/</guid>
      <description>&lt;p&gt;Täytyypä nostaa tämäkin esille: Joku &amp;quot;HS-raati&amp;quot; (mikä se edes on, sitä en tiedä) &lt;a href=&#34;http://www.hs.fi/kulttuuri/artikkeli/HS-raati+Nettisensuuri+kitkeköön+lapsipornoa/1135234612709&#34;&gt;on todennut, että nettisensuuria tarvitaan&lt;/a&gt;. Tosin otsikon takaa löytyy totuus: puolet raadin jäsenistä kyllä ymmärtää, että sensuuri on aina johtanut, ja tulee aina johtamaan, suurempiin ongelmiin kuin mitä se yrittää ratkaista. Ja varsinkin tässä lapsipornon tapauksessa nettisensuurista ei ole mitään apua itse hyväksikäytettyjen lasten asemaan tai pedofiilien toiminnan rajoittamiseen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Älä työnnä muistitikkua PC:hen</title>
      <link>https://kennethfalck.net/2008/03/08/%C3%A4l%C3%A4-ty%C3%B6nn%C3%A4-muistitikkua-pchen/</link>
      <pubDate>Sat, 08 Mar 2008 16:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/08/%C3%A4l%C3%A4-ty%C3%B6nn%C3%A4-muistitikkua-pchen/</guid>
      <description>&lt;p&gt;Ostinpa 4GB-muistitikun. iMacissa ei mitään ongelmia tietenkään, tikku toimii normaalisti. Mutta kannattiko työntää tikku PC:hen (Windows XP)? Kone on nyt kaksi päivää sanonut, että &amp;quot;The Device &amp;#39;Generic Volume&amp;#39; cannot be stopped because a program is still accessing it.&amp;quot;, enkä saa tikkua enää irti. Kiitos Bill.&lt;/p&gt;</description>
    </item>
    <item>
      <title>500 vastusti sensuuria mielenosoituksessa</title>
      <link>https://kennethfalck.net/2008/03/05/500-vastusti-sensuuria-mielenosoituksessa/</link>
      <pubDate>Wed, 05 Mar 2008 03:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/03/05/500-vastusti-sensuuria-mielenosoituksessa/</guid>
      <description>&lt;p&gt;Tämänpäiväisen nettisensuuria vastustaneen mielenosoituksen, jossa itsekin olin paikalla, uutisoivat ainakin:&lt;/p&gt;&#xA;&lt;p&gt;HS: &lt;a href=&#34;http://www.hs.fi/politiikka/artikkeli/Noin+500+vastusti+netin+ennakkosensuuria/1135234542143?ref=rss&#34;&gt;Noin 500 vastusti netin ennakkosensuuria&lt;/a&gt;&#xA;Nelonen: &lt;a href=&#34;http://www.nelonen.fi/uutiset/uutinen.asp?d=26612&#34;&gt;Noin 500 vastusti nettisensuuria mielenosoituksessa&lt;/a&gt;&#xA;US: &lt;a href=&#34;http://www.uusisuomi.fi/kotimaa/16699-%E2%80%9Dsensuuri-turha-oikeusmurha%E2%80%9D&#34;&gt;Sensuuri turha! Oikeusmurha!&lt;/a&gt;&#xA;YLE: &lt;a href=&#34;http://www.yle.fi/uutiset/kotimaa/oikea/id84303.html&#34;&gt;Internetin ennakkosensuurin vastustajat osoittivat mieltään&lt;/a&gt;&#xA;Digitoday: &lt;a href=&#34;http://www.digitoday.fi/yhteiskunta/2008/03/04/rss/20086615/66&#34;&gt;Nettisensuurin vastustajat eduskunnan portilla&lt;/a&gt;&#xA;Titetokone: &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=33037&amp;tyyppi=1&#34;&gt;Mielenosoittajat muistuttivat eduskuntaa sananvapaudesta&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kylmä oli, mutta hienoa että noin paljon porukkaa pääsi paikalle keskellä päivää.&lt;/p&gt;</description>
    </item>
    <item>
      <title>VMware Fusion &#43; Last.fm -näppäimistöongelma</title>
      <link>https://kennethfalck.net/2008/02/28/vmware-fusion--last.fm-n%C3%A4pp%C3%A4imist%C3%B6ongelma/</link>
      <pubDate>Thu, 28 Feb 2008 18:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/28/vmware-fusion--last.fm-n%C3%A4pp%C3%A4imist%C3%B6ongelma/</guid>
      <description>&lt;p&gt;Huomasin ja sain korjattua kummallisen näppäimistöongelman Mac OS X:ssä, kun käynnissä on VMware Fusion ja Last.fm yhtaikaa. Last.fm rekisteröityy jostain syystä SecureInput-prosessiksi, mikä aiheuttaa näppäimistön toimimattomuuden VMware Fusionin alla toimivissa virtuaalikoneissa. Ongelma ratkesi helposti sulkemalla Last.fm-sovellus.&lt;/p&gt;&#xA;&lt;p&gt;Vinkki ongelman ratkaisuun löytyi &lt;a href=&#34;http://communities.vmware.com/thread/109851&#34;&gt;täältä&lt;/a&gt;. SecureInput-sovellukset voi listata komennolla&lt;/p&gt;&#xA;&lt;pre&gt;ioreg -l -w 0 | grep SecureInput&lt;/pre&gt;&#xA;&lt;p&gt;Last.fm:n lisäksi jotkin muutkin sovellukset saattavat aiheuttaa saman ongelman.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miljoonainvestointeja pedofiilien syntymisen estämiseksi?</title>
      <link>https://kennethfalck.net/2008/02/28/miljoonainvestointeja-pedofiilien-syntymisen-est%C3%A4miseksi/</link>
      <pubDate>Thu, 28 Feb 2008 18:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/28/miljoonainvestointeja-pedofiilien-syntymisen-est%C3%A4miseksi/</guid>
      <description>&lt;p&gt;Tiekkari uutisoi &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=32979&amp;tyyppi=1&#34;&gt;suunnitelmista suodattaa lapsipornoa URL:n tarkkuudella&lt;/a&gt;. Hämmästyttävästi esimerkiksi Elisa suhtautuu tähän myönteisesti. Suvi Lindénin mielestä tarkempi suodatus vähentäisi lapsipornon leviämistä.&lt;/p&gt;&#xA;&lt;p&gt;Onko oikeasti niin, että Suomessa uskotaan pedofiilien syntyvän siitä, kun tavalliset ihmiset vahingossa surffaavat lapsipornosivuille ja muuttuvat pedofiileiksi jouduttuaan lapsipornon vaikutuksen alaisiksi? Mikä ihme tätä maata vaivaa.. Terve järki ja kohtuullisuus on kadonnut tässä asiassa tyystin.&lt;/p&gt;&#xA;&lt;p&gt;Kannustan kaikkia terveen järjen vielä omaavia osallistumaan &lt;a href=&#34;http://sensuuri.info/&#34;&gt;mielenosoitukseen sensuuria vastaan&lt;/a&gt; ensi viikon tiistaina 4.3.2008 klo 12:30 Kiasmalla. Ilmoittautuneita on tällä hetkellä yli 190 kpl.&lt;/p&gt;</description>
    </item>
    <item>
      <title>WorldWide Telescope</title>
      <link>https://kennethfalck.net/2008/02/28/worldwide-telescope/</link>
      <pubDate>Thu, 28 Feb 2008 03:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/28/worldwide-telescope/</guid>
      <description>&lt;p&gt;Pitkästä aikaa &lt;a href=&#34;http://wwtelescope.com/&#34;&gt;jotain kiinnostavan tuntuista uutta Microsoftilta&lt;/a&gt;. Etukäteishypetys vähän ärsyttää, toivottavasti luvassa on jotain oikeasti noin mullistavaa. &lt;a href=&#34;http://scobleizer.com/2008/02/27/what-made-me-cry-microsofts-world-wide-telescope/&#34;&gt;Tämä jamppa&lt;/a&gt; on ainakin syvästi vaikuttunut.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uusisuomi.fi, poliisivaltio ja homofobia</title>
      <link>https://kennethfalck.net/2008/02/26/uusisuomi.fi-poliisivaltio-ja-homofobia/</link>
      <pubDate>Tue, 26 Feb 2008 03:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/26/uusisuomi.fi-poliisivaltio-ja-homofobia/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.uusisuomi.fi&#34;&gt;Uusisuomi.fi&lt;/a&gt; ei ole välttämättä ihan minun lehteni, mutta olen seuraillut sitä mielenkiinnosta. Erityisesti silmään ovat paistaneet Raimo Ilaskiven mielenkiintoiset blogit, joissa penätään esimerkiksi &lt;a href=&#34;http://www.uusisuomi.fi/blogit/raimoilaskivi/poliisi-%E2%80%93-ystava-vai-vihollinen&#34;&gt;poliisille vapaata väkivallan käyttöoikeutta&lt;/a&gt; (ilman riskiä virkavirheestä tutkittavaksi joutumisesta) ja &lt;a href=&#34;http://www.uusisuomi.fi/blogit/raimoilaskivi/mannerheimin-hapaisijoitten-paat-polkylle&#34;&gt;joidenkin YLEn ohjelmien sensuroimista&lt;/a&gt;. Oikein sydäntä lämmittää, että Mannerheimin homous nähdään jonkinlaisena lähtökohtaisesti negatiivisena asiana, joka &amp;quot;tahraa suurmiehen muiston&amp;quot;.&lt;/p&gt;&#xA;&lt;p&gt;Kaipa meitä riittää moneen junaan. Toivottavasti Raimo edustaa kuitenkin historian havinaan katoavan vanhan sukupolven ajattelutapoja.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hankittua: Airport Extreme</title>
      <link>https://kennethfalck.net/2008/02/25/hankittua-airport-extreme/</link>
      <pubDate>Mon, 25 Feb 2008 21:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/25/hankittua-airport-extreme/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;http://www.apple.com/fi/airportextreme/&#39; title=&#39;airport-extreme-795999.png&#39;&gt;&lt;img src=&#39;https://kennethfalck.net/images/wp-content/uploads/2008/02/airport-extreme-795999.thumbnail.png&#39; alt=&#39;airport-extreme-795999.png&#39; style=&#39;padding:0 0 2px 8px&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;Kävin sitten Verkkokaupasta hakemassa &lt;a href=&#34;http://www.apple.com/fi/airportextreme/&#34;&gt;Airport Extremen&lt;/a&gt;. (Vinkki: Verkkokaupassa näytti olevan hirveän pitkät jonot tilauspuolelle, pääsee helpommalla kun ottaa hyllystä ja maksaa kassalle.)&lt;/p&gt;&#xA;&lt;p&gt;Asennus sujui ihan rutiininomaisesti. Tukiasema ilmestyi heti verkkoon ja iMacissa Airport Utility löysi sen heti. Vehkeeseen oli helppo konfiguroida haluttu sisäinen IP-verkko, DHCP:lle varattu alue, sekä kiinteät DHCP-varaukset. Porttiforwardointien teko oli joustavaa, yhteen sääntöön voi laittaa useita portteja ja rangejakin.&lt;/p&gt;&#xA;&lt;p&gt;Ainoa nipottamisen aihe on, että kun Airport Extremen konfiguraation päivittää, se käynnistää itsensä uudelleen ja katkaisee kaikki tcp-yhteydet. Toisaalta konfiguroimista nyt ei niin usein tarvitse tehdäkään. Toistaiseksi olen käyttänyt Airportia lähinnä Ethernetin kautta, myöhemmin ehkä lisää kokemuksia sen WLAN-stabiiliudesta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linksys epic fail: 10 DHCP-varauksen rajoitus</title>
      <link>https://kennethfalck.net/2008/02/24/linksys-epic-fail-10-dhcp-varauksen-rajoitus/</link>
      <pubDate>Sun, 24 Feb 2008 23:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/24/linksys-epic-fail-10-dhcp-varauksen-rajoitus/</guid>
      <description>&lt;p&gt;Sarjassa käsittämättömiä rajoituksia: &lt;a href=&#34;http://www-fi.linksys.com/servlet/Satellite?c=L_Product_C2&amp;childpagename=FI%2FLayout&amp;cid=1150491144110&amp;pagename=Linksys%2FCommon%2FVisitorWrapper&amp;lid=4411036109B06&#34;&gt;Linksys WRT300N&lt;/a&gt; mahdollistaa vain 10 DHCP-varauksen luomisen reitittimen sisäiseen DHCP-palvelimeen. Raja tuli vastaan kun olin lisäämässä iPhonelleni staattista IP:tä, jotta siihen olisi helpompi ssh:ata sisään.&lt;/p&gt;&#xA;&lt;p&gt;Saattaapi olla, että seuraava WLAN-tukiasemani on Apple-merkkinen... Tuo Linksys on kautta aikojen käyttäytynyt aina vähän epämääräisesti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Suvi Lindén ei ymmärrä ymmärtämättömyytään</title>
      <link>https://kennethfalck.net/2008/02/24/suvi-lind%C3%A9n-ei-ymm%C3%A4rr%C3%A4-ymm%C3%A4rt%C3%A4m%C3%A4tt%C3%B6myyt%C3%A4%C3%A4n/</link>
      <pubDate>Sun, 24 Feb 2008 20:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/24/suvi-lind%C3%A9n-ei-ymm%C3%A4rr%C3%A4-ymm%C3%A4rt%C3%A4m%C3%A4tt%C3%B6myyt%C3%A4%C3%A4n/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;http://www.kuvaton.com/kuvei/lapsiporno_sensuroitu.jpg&#39; title=&#39;lapsiporno_sensuroitu.jpg&#39;&gt;&lt;img src=&#39;https://kennethfalck.net/images/wp-content/uploads/2008/02/lapsiporno_sensuroitu.thumbnail.jpg&#39; alt=&#39;lapsiporno_sensuroitu.jpg&#39; align=&#39;right&#39; style=&#39;padding:0 0 2px 8px&#39; /&gt;&lt;/a&gt;Suvi Lindén &lt;a href=&#34;http://www.aamulehti.fi/uutiset/kotimaa/70808.shtml&#34;&gt;Aamulehdessä&lt;/a&gt;: &amp;quot;Pelisääntöjen on oltava samat kaikkialla. Jos kirjakaupassa mainostetaan lapsipornoa, niin poliisi hakee sen pois. Miksi näin ei toimittaisi netissä?&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Kuten monet kommentoijat ja bloggaajat (ja minä itsekin) ovat todenneet, Suvi Lindén ei selvästikään ymmärrä, mitä netissä tällä hetkellä tehdään. Eli että DNS-nimien hutiloiden tehty peittely ei todellakaan ole sama asia kuin se, että mennään oikeasti sulkemaan ne lapsipornosaitit.&lt;/p&gt;&#xA;&lt;p&gt;Voisin myös lyödä vetoa, että poliisilla ei ole minkäänlaisia kunnollisia tutkinnallisia perusteita siitä, millä perusteella joku saitti on päätynyt sensuurilistalle. Siellä on nimittäin sellaisiakin saitteja, joissa kyllä esiintyy nuorehkon näköisiä malleja, mutta joista on USA:n lain edellyttämät &lt;a href=&#34;http://en.wikipedia.org/wiki/2257&#34;&gt;U.S.C. 2257&lt;/a&gt;-merkinnät, joilla seurataan, että mallit ovat 18 vuotta täyttäneitä. Onko Suomen poliisi todella käynyt paikan päällä selvittämässä, että merkinnät ovat virheellisiä, ja mallit ovatkin alle 18-vuotiaita? Vai olisiko mahdollista, että joku &amp;quot;poliisimestari sisu&amp;quot; vain surffailee saitteja ja tekee omia subjektiivisia arvioitaan siitä, mikä on hänen mielestään sopivaa ja mikä ei.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Firefoxin kääntäminen on helppoa</title>
      <link>https://kennethfalck.net/2008/02/22/firefoxin-k%C3%A4%C3%A4nt%C3%A4minen-on-helppoa/</link>
      <pubDate>Fri, 22 Feb 2008 02:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/22/firefoxin-k%C3%A4%C3%A4nt%C3%A4minen-on-helppoa/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.mozilla.org/developer/#builds&#34;&gt;&lt;img style=&#34;padding:0 0 8px 16px&#34; src=&#34;https://kennethfalck.net/wp-content/uploads/2008/02/minefield.jpg&#34; align=&#34;right&#34; border=&#34;0&#34;/&gt;&lt;/a&gt;Tulipa pitkästä aikaa käännettyä &lt;a href=&#34;http://www.mozilla.org/developer/#builds&#34;&gt;Minefield&lt;/a&gt; eli Firefoxin trunk-versio Mac OS X:lle. Se oli yllättävän helppoa, kun Applen Developer-työkalut on asennettuna. Tarvittiin vain pari komentoa Terminalissa:&lt;/p&gt;&#xA;&lt;pre&gt;cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co mozilla/client.mk&#xA;cd mozilla&#xA;make -f client.mk checkout MOZ_CO_PROJECT=browser&#xA;echo &#39;. $topsrcdir/browser/config/mozconfig&#39; &gt; .mozconfig&#xA;make -f client.mk build&#xA;&lt;/pre&gt;&#xA;&lt;p&gt;Pitkähkön kääntämisen jälkeen syntyi dist/Minefield.app eli valmis Mac OS X -sovellus, jonka voi vaikka laittaa Dockiin. Maccihan on siitä kiva, että sovelluksia ei tarvitse &amp;quot;asentaa&amp;quot;, se kun käyttää vaan. Minefield käyttää samoja asetuksia ja plugineja kuin virallinen Firefox, eli niitä voi käyttää vuorotellen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blogi WordPress-pohjaiseksi</title>
      <link>https://kennethfalck.net/2008/02/21/blogi-wordpress-pohjaiseksi/</link>
      <pubDate>Thu, 21 Feb 2008 07:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/21/blogi-wordpress-pohjaiseksi/</guid>
      <description>&lt;p&gt;Siirsin blogini WordPressin päälle (se oli aiemmin itse koodattua PHP-koodia). WordPress tuntuu olevan kaiken kaikkiaan aika toimiva blogialusta, vaikka sen lähdekoodi onkin aika hirvittävää sotkua.&lt;/p&gt;&#xA;&lt;p&gt;Ainakin tähän mennessä olen onnistunut kustomoimaan templatet ja muut asiat niinkuin olen halunnut. Aiempien RSS-feediosoitteiden pitäisi toimia, mutta varsinainen osoite on nyt &lt;a href=&#34;http://kfalck.net/feed/&#34;&gt;http://kfalck.net/feed/&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Vanhat kirjoitukset on siirretty tälle alustalle kommentteineen, toivottavasti ei tullut pahoja virheitä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Suvi Lindén ei hyväksy keskustelua sensuurista</title>
      <link>https://kennethfalck.net/2008/02/20/suvi-lind%C3%A9n-ei-hyv%C3%A4ksy-keskustelua-sensuurista/</link>
      <pubDate>Wed, 20 Feb 2008 14:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/20/suvi-lind%C3%A9n-ei-hyv%C3%A4ksy-keskustelua-sensuurista/</guid>
      <description>&lt;p&gt;Suvi Lindén &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=32871&amp;amp;tyyppi=1&#34;&gt;osoittaa täydellisen ymmärtämättömyytensä&lt;/a&gt; Internetistä ja sananvapaudesta. Hän ei ilmeisesti voi hyväksyä, että sensuroinnista edes keskustellaan.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Firefox 3 beta 3 käytössä</title>
      <link>https://kennethfalck.net/2008/02/13/firefox-3-beta-3-k%C3%A4yt%C3%B6ss%C3%A4/</link>
      <pubDate>Wed, 13 Feb 2008 11:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/13/firefox-3-beta-3-k%C3%A4yt%C3%B6ss%C3%A4/</guid>
      <description>&lt;p&gt;Tulipa päivitettyä uusin Firefoxin kolmosbeta, josta juttua &lt;a href=&#34;http://arstechnica.com/news.ars/post/20080212-first-look-firefox-3-beta-3.html&#34;&gt;Ars Technicassa&lt;/a&gt;. Ehdin kakkosbetaa jo käyttää muutaman päivän eikä sen kanssa ole tullut eteen (ainakaan Macissa) suurempia ongelmia.&lt;/p&gt;&#xA;&lt;p&gt;Nihkeintä on, että monet extensionit on versiotettu toimimaan vain FF2:n kanssa. Omassa työssäni oleellisimmaksi muodostuneesta Firebugista kyllä onneksi löytyi betojen kanssa toimiva versio. Myös Adblock Plus toimii.&lt;/p&gt;&#xA;&lt;p&gt;Eräs maccipuolella kaipaamani ominaisuus on fullscreen-mode (F11), joka ei kuitenkaan näytä vielä materialisoituneen Firefoxiin. Sen pitäisi ilmeisesti olla kuitenkin mahdollista, koska FF3 on natiivi Cocoa-sovellus siinä missä FF2 vielä käytti Carbonia.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sensuuri laajenee yhä</title>
      <link>https://kennethfalck.net/2008/02/12/sensuuri-laajenee-yh%C3%A4/</link>
      <pubDate>Tue, 12 Feb 2008 16:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/12/sensuuri-laajenee-yh%C3%A4/</guid>
      <description>&lt;p&gt;Nyt operaattorien filttereihin on &lt;a href=&#34;http://www.tekniikkatalous.fi/ict/article59589.ece?s=r&amp;amp;wtm=tt-12022008&#34;&gt;joutunut myös lapsiporno.info&lt;/a&gt;, joka on blokkaamisen mahdollistavaa lakia kritisoiva sivusto. Mielenkiintoinen juttu, sillä kyseisen lain mukaan ilmeisesti vain ulkomaisia sivustoja saa sensuroida.&lt;/p&gt;&#xA;&lt;p&gt;Itselläni &lt;a href=&#34;http://lapsiporno.info&#34;&gt;saitti&lt;/a&gt; tosin toimii vielä, mutta kaipa tuo suodatus päivittyy Welhollekin pian.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kuulumisia työpaikalta</title>
      <link>https://kennethfalck.net/2008/02/08/kuulumisia-ty%C3%B6paikalta/</link>
      <pubDate>Fri, 08 Feb 2008 01:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/08/kuulumisia-ty%C3%B6paikalta/</guid>
      <description>&lt;p&gt;Kaksi odotettua uutista: SanomaWSOY:n uusi nimi on &lt;a href=&#34;http://www.digitoday.fi/bisnes/2008/02/07/rss/20083842/66&#34;&gt;Sanoma&lt;/a&gt; ja SWelcomin uusi toimitusjohtaja on &lt;a href=&#34;http://www.digitoday.fi/tyo-ja-ura/2008/02/07/rss/20083813/66&#34;&gt;Anu Nissinen&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Nimenvaihto on melkoinen helpotus; olen saanut tavata S-a-n-o-m-a-W-S-O-Y:tä ulkomaalaisille riittävän moneen kertaan.&lt;/p&gt;&#xA;&lt;p&gt;Niin, ja &lt;a href=&#34;http://vierityspalkki.wordpress.com/2008/02/01/2ndhead-2000-2008-palasia-suomen-uusmedian-historiasta/&#34;&gt;2ndhead myös myytiin&lt;/a&gt; viime viikolla.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django: Helppo, siisti ja toimiva</title>
      <link>https://kennethfalck.net/2008/02/06/django-helppo-siisti-ja-toimiva/</link>
      <pubDate>Wed, 06 Feb 2008 16:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/06/django-helppo-siisti-ja-toimiva/</guid>
      <description>&lt;p&gt;Kokeilinpa sitten &lt;a href=&#34;http://www.djangoproject.com/&#34;&gt;Djangoa&lt;/a&gt;, kun Ruby on Rails oli niin kova pettymys. Yllätyksekseni sain vajaassa tunnissa aikaan toimivan ja stabiilin sovelluksen seuraamalla &lt;a href=&#34;http://www.djangoproject.com/documentation/0.96/tutorial01/&#34;&gt;tutorialia&lt;/a&gt;. Django 0.96 oli valmiina pakettina Ubuntussa ja se oli helppo kytkeä mod_pythonilla Apacheen.&lt;/p&gt;&#xA;&lt;p&gt;Asiaan voi vaikuttaa se, että olen koodannut Pythonilla ennenkin, enkä myöskään yrittänyt mitään automaattigenerointeja, vaan loin tietokantamallin Model-luokkina. Oli miten oli, Djangossa on paljon vähemmän ylimääräistä sälää kuin RoRissa, ja uusi projekti oli helppo hahmottaa kokonaisuutena heti luomisen jälkeen. Tuli sellainen olo, että ohjelmoija kontrolloi työvälinettä, eikä toisinpäin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Waterboarding: Myönnetään vai kiistetään</title>
      <link>https://kennethfalck.net/2008/02/06/waterboarding-my%C3%B6nnet%C3%A4%C3%A4n-vai-kiistet%C3%A4%C3%A4n/</link>
      <pubDate>Wed, 06 Feb 2008 03:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/06/waterboarding-my%C3%B6nnet%C3%A4%C3%A4n-vai-kiistet%C3%A4%C3%A4n/</guid>
      <description>&lt;p&gt;Mielenkiintoinen näkemysero taas havaittu:&lt;br/&gt;&#xA;Nelonen: &lt;a href=&#34;http://www.nelonen.fi/uutiset/uutinen.asp?d=24439&#34;&gt;CIA kiistää vesikidutuksen laajan käytön&lt;/a&gt;&lt;br/&gt;&#xA;Hesari: &lt;a href=&#34;http://www.hs.fi/ulkomaat/artikkeli/CIAn+johtaja+my%C3%B6nsi+vesikidutuksen+k%C3%A4yt%C3%B6n+kuulusteluissa/1135233833352&#34;&gt;CIA:n johtaja myönsi vesikidutuksen käytön kuulusteluissa&lt;/a&gt;&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ruby on Rails on hirvittävä sotku</title>
      <link>https://kennethfalck.net/2008/02/06/ruby-on-rails-on-hirvitt%C3%A4v%C3%A4-sotku/</link>
      <pubDate>Wed, 06 Feb 2008 02:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/06/ruby-on-rails-on-hirvitt%C3%A4v%C3%A4-sotku/</guid>
      <description>&lt;p&gt;Olen nyt pari päivää tutustunut &lt;a href=&#34;http://www.rubyonrails.org/&#34;&gt;Ruby on Railsiin&lt;/a&gt;. Kiinnostuin siitä luettuani kirjan &lt;a href=&#34;http://www.oreilly.com/catalog/9780596529260/&#34;&gt;RESTful Web Services&lt;/a&gt;, joka opettaa tekemään yksinkertaisia ja selkeitä web-palveluita.&lt;/p&gt;&#xA;&lt;p&gt;Valitettavasti oma kokemukseni Ruby on Railsista ei ole kovin yksinkertainen eikä selkeä. Itse ideat, kuten taustalla oleva MVC-arkkitehtuuri ja DRY-periaate, ovat kyllä ihan hyviä, mutta implementaatio on kamala sotku.&lt;/p&gt;&#xA;&lt;p&gt;Normaali Ruby on Rails -sovellushan koostuu kymmenistä hakemistoista muodostuvasta hierarkista, jonne generoidaan erilaisia tiedostoja ja skriptejä automaattisesti. Osaa tiedostoista on tarkoitus editoida itse ja osaa generoida uudelleen, kun tietokanta muuttuu. Uuden käyttäjän on hyvin hankala hahmottaa, mitä tiedostoja kannattaa muokata ja mitä ei.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Piraattisaittien sulkulistaaminen tulossa</title>
      <link>https://kennethfalck.net/2008/02/05/piraattisaittien-sulkulistaaminen-tulossa/</link>
      <pubDate>Tue, 05 Feb 2008 16:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/05/piraattisaittien-sulkulistaaminen-tulossa/</guid>
      <description>&lt;p&gt;Ensin &lt;a href=&#34;http://kfalck.net/blog.php?id=266&#34;&gt;lapsiporno&lt;/a&gt;, sitten &lt;a href=&#34;http://kfalck.net/blog.php?id=268&#34;&gt;uhkapelit&lt;/a&gt;, ja nyt sitten &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=32700&#34;&gt;Pirate Bay&lt;/a&gt;. Homma näyttää menevän juuri niinkuin pelättiin ja ennustettiin, kun ajattelemattomat poliitikot halusivat väkisin avata tämänkin matopurkin.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Red Hat Enterprise Linux &#43; Ruby Gems = Epic fail</title>
      <link>https://kennethfalck.net/2008/02/04/red-hat-enterprise-linux--ruby-gems-epic-fail/</link>
      <pubDate>Mon, 04 Feb 2008 20:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/04/red-hat-enterprise-linux--ruby-gems-epic-fail/</guid>
      <description>&lt;p&gt;Olen viime aikoina tutustunut &lt;a href=&#34;http://www.rubyonrails.org/&#34;&gt;Ruby on Railsiin&lt;/a&gt; ja ajattelin kokeilla Rubya ohjelmointikielenä myös UNIX-komentorivillä. Olen yleensä käyttänyt skripteissä Pythonia, mutta Ruby vaikuttaa lupaavalta.&lt;/p&gt;&#xA;&lt;p&gt;Sainpa kuitenkin todeta, että Rubyn käyttäminen Red Hat Enterprise Linux 5 x86_64:n kanssa on aivan toivotonta. Tämä näyttäisi olevan Red Hatin vika, sillä sen repositoryista ei löydy lainkaan ruby-gem-paketteja. Googlaamalla löydetyt rpm-paketitkaan eivät toimi kunnolla (MySQL-gem ei suostu toimimaan skripteissä, require &#34;mysql&#34; antaa heti virheen).&lt;/p&gt;&#xA;&lt;p&gt;Lopputulos: Jotta komentoriviskriptit toimisivat jatkossakin nätisti sekä Ubuntussa että Red Hatissa, kirjoitan ne vastedeskin Pythonilla. Ainakin silloin, kun tarvitaan MySQL-toimintoja.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone 1.1.3 unlock odottaa vielä</title>
      <link>https://kennethfalck.net/2008/02/03/iphone-1.1.3-unlock-odottaa-viel%C3%A4/</link>
      <pubDate>Sun, 03 Feb 2008 18:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/03/iphone-1.1.3-unlock-odottaa-viel%C3%A4/</guid>
      <description>&lt;p&gt;Vaikuttaa siltä, että vaikka &lt;a href=&#34;http://www.iphoneatlas.com/2008/01/27/guide-jailbreak-any-iphone-with-113-macwindows/&#34;&gt;iPhone Atlaksessa&lt;/a&gt; on parhaat ohjeet 1.1.2 -&gt; 1.1.3 päivitykselle, se on vielä epäonnistunut monilta. Unlockatun 1.1.2-puhelimen pitäisi toimia Dev Teamin Official 1.1.3-3 Upgraderilla, mutta käyttäjiltä tulee paljon sekalaisia ongelmaraportteja.&lt;/p&gt;&#xA;&lt;p&gt;Itse taidan odotella vielä hetken aikaa, ennen kuin uskallan kokeilla 1.1.3:a.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Supermarket domino</title>
      <link>https://kennethfalck.net/2008/02/03/supermarket-domino/</link>
      <pubDate>Sun, 03 Feb 2008 00:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/02/03/supermarket-domino/</guid>
      <description>&lt;p&gt;Tämä &lt;a href=&#34;http://www.youtube.com/watch?v=7HfMaJJlxTE&#34;&gt;Supermarket domino&lt;/a&gt; täytyy ikuistaa blogiin, eeppistä materiaalia :-D&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>18 84 58 A6 D1 50 34 DF E3 86 F2 3B 61 D4 37 74</title>
      <link>https://kennethfalck.net/2008/01/29/18-84-58-a6-d1-50-34-df-e3-86-f2-3b-61-d4-37-74/</link>
      <pubDate>Tue, 29 Jan 2008 20:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/29/18-84-58-a6-d1-50-34-df-e3-86-f2-3b-61-d4-37-74/</guid>
      <description>&lt;p&gt;Pakkohan se oli ;-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kauppalehden uusi leiska</title>
      <link>https://kennethfalck.net/2008/01/29/kauppalehden-uusi-leiska/</link>
      <pubDate>Tue, 29 Jan 2008 19:57:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/29/kauppalehden-uusi-leiska/</guid>
      <description>&lt;p&gt; &lt;a href=&#34;http://www.kauppalehti.fi/5/i/etusivu/&#34;&gt;Hyi hitto&lt;/a&gt;. Mikä ihmeen trendi on tehdä saiteista kamalan näköisiä mauttomilla fonttivalinnoilla.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kuluttaja-asiamiehen puututtava ISP:iden ylibuukkaukseen</title>
      <link>https://kennethfalck.net/2008/01/24/kuluttaja-asiamiehen-puututtava-ispiden-ylibuukkaukseen/</link>
      <pubDate>Thu, 24 Jan 2008 20:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/24/kuluttaja-asiamiehen-puututtava-ispiden-ylibuukkaukseen/</guid>
      <description>&lt;p&gt; &lt;a href=&#34;http://torrentfreak.com/comcast-throttling-not-acceptable-080124/&#34;&gt;Tämä artikkeli&lt;/a&gt; panee taas ajattelemaan. Kaikki ISP:t myyvät tänä päivänä ylibuukattua Internettiä. Se aiheuttaa hirveästi ongelmia, kun aletaan siirtyä aikakauteen, jossa suurin osa liikenteestä on videota. Asiakkaan ostama 10 Mbit/s-liittymä onkin todellisuudessa hädin tuskin joitakin satoja kilobittejä, jos kaikki käyttävät nettiä yhtaikaa.&lt;/p&gt;&#xA;&lt;p&gt;Monet ISP:t syyttävät tietysti paniikinomaisesti P2P-käyttäjiä. Totuus kuitenkin on, että ei se ole P2P, josta tässä on kysymys, vaan video. Videopalvelut tulevat syömään jatkossa yhä enemmän kaistaa, ja kun leffoja alkaa joskus saada  laillisesti ja toimivasti, niin kaikkea ei tarvitse enää warettaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symbian Signed kaaoksessa</title>
      <link>https://kennethfalck.net/2008/01/21/symbian-signed-kaaoksessa/</link>
      <pubDate>Mon, 21 Jan 2008 13:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/21/symbian-signed-kaaoksessa/</guid>
      <description>&lt;p&gt;Nokian kännyköihin asennettavien sovellusten digitaalisia allekirjoituksia myöntävä &lt;a href=&#34;https://www.symbiansigned.com&#34;&gt;Symbian Signed&lt;/a&gt; näyttää olevan täydessä kaaoksessa. Ilmeisesti suuri määrä käyttäjätunnuksia on ekspiroitunut tuntemattomasta syystä (mukaanlukien omani), eivätkä kehittäjät pääse luomaan sertifikaatteja sovelluksilleen.&lt;/p&gt;&#xA;&lt;p&gt;Aiheesta on keskusteluketju &lt;a href=&#34;http://developer.symbian.com/forum/thread.jspa?threadID=22012&amp;amp;tstart=0&#34;&gt;Symbian Developer Networkissa&lt;/a&gt;, jossa epätoivoiset kehittäjät pyytävät ylläpitäjiä aktivoimaan tunnuksensa uudelleen.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>S60 Browser Plugin API ja puuttuva JavaScript-tuki</title>
      <link>https://kennethfalck.net/2008/01/21/s60-browser-plugin-api-ja-puuttuva-javascript-tuki/</link>
      <pubDate>Mon, 21 Jan 2008 02:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/21/s60-browser-plugin-api-ja-puuttuva-javascript-tuki/</guid>
      <description>&lt;p&gt;Tulipa huomattua, että Nokian S60-puhelimista löytyvä &lt;a href=&#34;http://www.forum.nokia.com/info/sw.nokia.com/id/1fb39627-dd90-4ede-84f3-c103f09f7d03/Browser_Plug-in_API_Developers_Guide_v2_0_en.pdf.html&#34;&gt;Browser Plugin API&lt;/a&gt; ei tue lainkaan npruntime-rajapintaa. Toisin sanoen JavaScriptillä ei voi keskustella pluginien kanssa noutaakseen järjestelmästä tietoja, joihin pääsee käsiksi vain C++-tasolla.&lt;/p&gt;&#xA;&lt;p&gt;Siinä meni pohja monelta hauskalta selainpohjaiselta projektilta, joissa olin ajatellut tuota hyödyntää.. :-( Ilmeisesti edelleen ainoa keino saada luurista systeemitietoa HTML-tasolle on toteuttaa erillinen HTTP-palvelin ja hakea sitä sieltä XmlHttpRequesteilla.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vanhanen nolasi Suomen Google-vierailulla?</title>
      <link>https://kennethfalck.net/2008/01/17/vanhanen-nolasi-suomen-google-vierailulla/</link>
      <pubDate>Thu, 17 Jan 2008 18:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/17/vanhanen-nolasi-suomen-google-vierailulla/</guid>
      <description>&lt;p&gt;Juuri kun meillä on otettu poliisivoimin tapahtuva Internet-sensuuri käyttöön, niin Vanhanen menee vielä möläyttelemään Googlelle jostain &lt;a href=&#34;http://www.hs.fi/talous/artikkeli/Matti+Vanhanen+tapasi+Googlen+perustajat/1135233341215&#34;&gt;&#34;epäilyttävien viestien tunnistamisesta&#34;&lt;/a&gt;. Voisiko sitä enää totalitaristisemppaa mielikuvaa Suomesta antaa? Googlellahan on aihepiiristä kokemusta Kiinassa, joten ehkä Suomi on seuraavana vuorossa.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://blogit.tietokone.fi/tietojakoneesta/?p=309&#34;&gt;Tiekkarikin otti kantaa&lt;/a&gt; samaan asiaan blogissa.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uhkapelisaititkin yritetään blokata netistä</title>
      <link>https://kennethfalck.net/2008/01/16/uhkapelisaititkin-yritet%C3%A4%C3%A4n-blokata-netist%C3%A4/</link>
      <pubDate>Wed, 16 Jan 2008 18:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/16/uhkapelisaititkin-yritet%C3%A4%C3%A4n-blokata-netist%C3%A4/</guid>
      <description>&lt;p&gt;No niin, hädin tuskin viikko meni kiistellystä &lt;a href=&#34;http://kfalck.net/blog.php?id=266&#34;&gt;lapsipornon blokkaamisesta&lt;/a&gt;, ja nyt Sosiaali- ja terveysministeriö on jo ehdottomassa, että blokkaamista laajennettaisiin myös ulkomaisiin uhkapelisaitteihin. (Ks. YLE TV1 Uutiset 16.1.2008 klo 20:30)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nokia E90 autolock ja muistivirhe</title>
      <link>https://kennethfalck.net/2008/01/15/nokia-e90-autolock-ja-muistivirhe/</link>
      <pubDate>Tue, 15 Jan 2008 21:23:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/15/nokia-e90-autolock-ja-muistivirhe/</guid>
      <description>&lt;p&gt;Uusin näppärä ominaisuus Nokia E90 Communicatorissa: Näppäimistö on lukittuna ja Avaa-napin painaminen tuottaa ilmoituksen &#34;Autolock: Muisti täynnä. Sulje sovelluksia ja yritä uudelleen&#34;. Sama molemmilta puolilta (lukitus ei aukea kun puhelimen avaa tieturimoodiin). Ei mitään keinoa päästä sisään ja sulkea niitä sovelluksia.&lt;/p&gt;&#xA;&lt;p&gt;Hyvin funtsailtu siellä, koodaajat...&lt;/p&gt;&#xA;&lt;p&gt;Tämä on itse asiassa hyvin samantapainen moka kuin N810:n lukitusnappi. En tiedä teistä, mutta minulle näppäimistön lukitseminen ja avaaminen on itse asiassa useimmin käyttämäni funktio puhelimessa. Sen pitää onnistua helposti. N810:n lukitusnappi on niin jäykkä ja matala, ja vaatii horisontaalisen liikkeen, että se ei liiku muuta kuin peukalonkynnellä keskittyneesti työntäen. Hyvä hyvä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Perustuslain vastaista lapsipornosensuuria</title>
      <link>https://kennethfalck.net/2008/01/08/perustuslain-vastaista-lapsipornosensuuria/</link>
      <pubDate>Tue, 08 Jan 2008 20:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/08/perustuslain-vastaista-lapsipornosensuuria/</guid>
      <description>&lt;p&gt;Digitodayssa &lt;a href=&#34;http://www.digitoday.fi/tietoturva/2008/01/08/rss/2008579/66&#34;&gt;on asiallinen juttu siitä&lt;/a&gt;, miten operaattorit ovat yhdessä poliisin kanssa aloittaneet selvästi perustuslain vastaisen Internetin sensuroinnin. Käytännössä poliisi voi ilman minkäänlaista tuomioistuimen päätöstä määritellä jonkin nettisivun sensuroiduksi, ja operaattorit suodattavat sen sitten DNS-spooffauksen avulla pois näkyvistä.&lt;/p&gt;&#xA;&lt;p&gt;Koska kyse on yleensä ulkomaisista nettisivuista, perustuu prosessi oletettavasti  poliisisetien subjektiiviseen arvioon siitä, minkä ikäisiä malleja kuvissa mahdollisesti esiintyy. Ainakaan itse en usko, että esimerkiksi Muzzyn keräämän &lt;a href=&#34;http://www.lapsiporno.info/suodatuslista-ote3.txt&#34;&gt;suodatuslistan&lt;/a&gt; 785 saittia olisi oikeasti tutkittu ja mallien henkilöllisyydet ja iät selvitetty.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Michael Moore ja presidentinvaalit</title>
      <link>https://kennethfalck.net/2008/01/02/michael-moore-ja-presidentinvaalit/</link>
      <pubDate>Wed, 02 Jan 2008 13:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2008/01/02/michael-moore-ja-presidentinvaalit/</guid>
      <description>&lt;p&gt;Michael Moore &lt;a href=&#34;http://michaelmoore.com/words/message/index.php?id=220&#34;&gt;otti vihdoinkin kantaa&lt;/a&gt; jenkkien presidenttiehdokkaisiin. Moore tuntuu olevan &lt;a href=&#34;http://www.johnedwards.com/&#34;&gt;John Edwardsin&lt;/a&gt; kannalla, joka olisi kuulemma lopettamassa Irakin sodan ja laittamassa terveydenhuollon kuntoon.&lt;/p&gt;&#xA;&lt;p&gt;Itse voin jostain syystä pahoin kun käyn Edwardsin sinipunavalkoisella &lt;a href=&#34;http://www.johnedwards.com/about/edwards-family/&#34;&gt;kampanjasaitilla&lt;/a&gt;, joka  korostaa kovasti perhettä ja USA:n johtavaa roolia maailmassa. Mutta kai se on tarpeellista jenkkien äänten saamiseksi; itse asiat ja näkemykset siellä taustalla vaikuttavat ihan fiksuilta.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Most Terrifying Video You&#39;ll Ever See</title>
      <link>https://kennethfalck.net/2007/12/23/most-terrifying-video-youll-ever-see/</link>
      <pubDate>Sun, 23 Dec 2007 14:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/12/23/most-terrifying-video-youll-ever-see/</guid>
      <description>&lt;p&gt;What&#39;s the worst thing that could happen?&lt;/p&gt;&#xA;&lt;p&gt;&lt;object width=&#34;425&#34; height=&#34;355&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/bDsIFspVzfI&amp;amp;rel=1&#34;&gt;&lt;/param&gt;&lt;param name=&#34;wmode&#34; value=&#34;transparent&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/bDsIFspVzfI&amp;amp;rel=1&#34; type=&#34;application/x-shockwave-flash&#34; wmode=&#34;transparent&#34; width=&#34;425&#34; height=&#34;355&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&#xA;&lt;p&gt;Reposted from Facebook, thanks Tanja.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hyvää joulua ja Maemo SDK</title>
      <link>https://kennethfalck.net/2007/12/23/hyv%C3%A4%C3%A4-joulua-ja-maemo-sdk/</link>
      <pubDate>Sun, 23 Dec 2007 13:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/12/23/hyv%C3%A4%C3%A4-joulua-ja-maemo-sdk/</guid>
      <description>&lt;p&gt;Hyvää joulua ja uutta vuotta kaikille ;-)&lt;/p&gt;&#xA;&lt;p&gt;Odottelen tässä muuten mielenkiinnolla, milloin maemo.org palaa henkiin. Olen yrittänyt jo monta päivää asentaa &lt;a href=&#34;http://maemo.org/development/sdks/maemo_4_0_chinook_sdk.html&#34;&gt;Maemo SDK 4.0&lt;/a&gt;:aa, jonka asennusskripti failaa joka kerta yrittäessään ladata netistä paketteja scratchboxiin. Aika heikko esitys Nokialta..&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Digiboksien mustasta listasta</title>
      <link>https://kennethfalck.net/2007/12/22/digiboksien-mustasta-listasta/</link>
      <pubDate>Sat, 22 Dec 2007 12:55:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/12/22/digiboksien-mustasta-listasta/</guid>
      <description>&lt;p&gt;Hesarissa on ihme &lt;a href=&#34;http://www.hs.fi/talous/artikkeli/Yle+ja+digisovitinkauppiaat+ajautuivat+tukkanuottasille/1135232770885&#34;&gt;nillitystä digiboksikauppiailta&lt;/a&gt;, että YLEn pitäisi muka testata bokseja paremmin ja raportoida ongelmista maahantuojille. Mistähän lähtien myyjällä ei ole enää vastuuta huolehtia itse, että myydyt tuotteet ovat toimivia? Lopettaisivat niiden itämaisten matopurkkien rahtaamisen tänne ja myisivät kunnolla ETUKÄTEEN Suomen olosuhteissa testattuja digibokseja...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nokia N810 on epic fail</title>
      <link>https://kennethfalck.net/2007/12/20/nokia-n810-on-epic-fail/</link>
      <pubDate>Thu, 20 Dec 2007 10:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/12/20/nokia-n810-on-epic-fail/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_261.jpg&#39; title=&#39;blogimg/blog_261.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_261.jpg&#39; alt=&#39;blogimg/blog_261.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Olen nyt pari päivää kokeillut &lt;a href=&#34;http://europe.nokia.com/A4568578&#34;&gt;N810-tablettia&lt;/a&gt;, ja se vaikuttaa olevan melkoinen pettymys. Suurin ongelma on aivan liian heikkotehoinen CPU, joka saa laitteen hidastumaan ja tökkimään melkein mitä tahansa tehdessä. Esimerkiksi kartan selailu on aivan tuskaa, kun näkymä päivittyy vasta pari sekuntia klikkausten perässä. Jos uskaltaa painaa zoomia vaikka 10 kertaa peräkkäin, niin voi käydä kahvilla sillä välin, kun laite hiljalleen töksähtelee zoomitasoissa eteenpäin...&lt;/p&gt;&#xA;&lt;p&gt;Tämä on todella sääli, sillä N810 on muuten ihan hyväntuntuinen laite. Tosin käyttöliittymä on edelleen aika insinöörimäisen monimutkainen verrattuna esimerkiksi iPhoneen, ja laite on fyysisestikin jotenkin vähän rimpulamainen (näppäimistö on kovin irtonaisen tuntuinen). Mutta Linux-pohjaisuus on niin hieno asia kehittäjän kannalta, että sitä pitää tukea periaatteestakin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uutta nigerialaishuijausta</title>
      <link>https://kennethfalck.net/2007/12/12/uutta-nigerialaishuijausta/</link>
      <pubDate>Wed, 12 Dec 2007 22:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/12/12/uutta-nigerialaishuijausta/</guid>
      <description>&lt;p&gt;Tähän huijaukseen en ole aiemmin törmännyt: herra nimeltä Zulfiquar Ali Sulaiman (&lt;a href=&#34;mailto:zasulaiman@gmail.com&#34;&gt;zasulaiman@gmail.com&lt;/a&gt;) laittoi Skypeen viestiä, että hänen pankkinsa asiakas nimeltä FALCK on kuollut ja jättänyt jälkeensä 20.6 miljoonan dollarin perinnön... Kuinka ollakaan minulla sattui olemaan juuri sama sukunimi.&lt;/p&gt;&#xA;&lt;p&gt;Ihan normaali &lt;a href=&#34;http://sweetchillisauce.com/ntales/DQ1.html&#34;&gt;nigerialaiskaava&lt;/a&gt; siis, mutta yleensä noita tipahtelee sähköpostina. Skype voi olla astetta uskottavampi, sillä kaverilla on siellä ihan profiili kuvineen päivineen. Ja tällä kertaa paikka on Dubai / Arabiemiirikunnat. Väittää jopa yrittäneensä soitella, mutta Skypeni oli kuulemma &#34;varattu&#34; (mitenkähän se on mahdollista).&lt;/p&gt;</description>
    </item>
    <item>
      <title>YLEn Jungner tuulisella paikalla</title>
      <link>https://kennethfalck.net/2007/12/10/ylen-jungner-tuulisella-paikalla/</link>
      <pubDate>Mon, 10 Dec 2007 03:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/12/10/ylen-jungner-tuulisella-paikalla/</guid>
      <description>&lt;p&gt;YLEn toimitusjohtaja Mikael Jungner &lt;a href=&#34;http://www.hs.fi/politiikka/artikkeli/Olkinuora+Ylen+hallitus+ei+k%C3%A4sittele+Jungnerin+asemaa/1135232472216&#34;&gt;näyttää nyt keräävän kritiikkiä&lt;/a&gt; monelta taholta. Itse kiinnitin asiaan huomiota alun perin sen jälkeen, kun Jungner ensin vakuutti, että digi-tv-siirtymän yhteydessä irtisanottujen tv-lupien määrä paikkautui sillä, että uusia tv-lupia rekisteröitiin suunnilleen yhtä paljon. Tämä kommentti esitettiin jossain YLEn digi-tv-ajankohtaisohjelmassa, jonka nimeä en enää muista.&lt;/p&gt;&#xA;&lt;p&gt;Hiljattainhan tuli sitten ilmoitus, että &lt;a href=&#34;http://www.yle.fi/uutiset/haku.php?action=page&amp;amp;id=266714&#34;&gt;tv-lupia onkin kadonnut 50.000&lt;/a&gt;, minkä johdosta YLE Extra päätettiin lopettaa. Itse en kyseistä kanavaa jää kaipailemaan, minusta YLE pärjäisi kahdella tai kolmella tv-kanavalla, mutta jotenkin tämä johtamistapa ja tiedottaminen vaikuttaa hötkyilevältä. Noottiahan on tullut myös Journalistiliitolta, jonka puheenjohtaja Arto Nieminen on kiinnittänyt huomiota &lt;a href=&#34;http://www.hs.fi/kulttuuri/artikkeli/Journalistiliitto+vaatii+tiukasti+Yleen+johtamisremonttia/1135232263760&#34;&gt;YLEn jatkuvaan irtisanomis- ja yt-neuvottelukierteeseen&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone firmware 1.1.2 ja ääkköset</title>
      <link>https://kennethfalck.net/2007/12/08/iphone-firmware-1.1.2-ja-%C3%A4%C3%A4kk%C3%B6set/</link>
      <pubDate>Sat, 08 Dec 2007 15:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/12/08/iphone-firmware-1.1.2-ja-%C3%A4%C3%A4kk%C3%B6set/</guid>
      <description>&lt;p&gt;iPhone Eliten versioon &lt;a href=&#34;http://code.google.com/p/iphone-elite/&#34;&gt;anySIM-sovelluksesta&lt;/a&gt; on ilmestynyt ohje, että anySIM toimii myös iPhonen uusimmalla 1.1.2-firmwarella, kun laitteen asettaa Airplane-moodiin lukituksen purkamisen ajaksi. Testasin asian ja sehän toimi. Nyt minulla on siis Elisan verkossa toimiva iPhone uudella firmiksellä.&lt;/p&gt;&#xA;&lt;p&gt;Koska olin jo ennestään käyttänyt anySIM 1.1:tä, jouduin ensin neitseellistämään basebandin käyttämällä oneSIM 1.1-sovellusta. Sen jälkeen asensin Installer.appilla OktoPrepin, päivitin firmiksen iTunesilla 1.1.2:een, käytin Java-pohjaista Jailbreakia &lt;a href=&#34;http://windows-mobiles.com/?p=116&#34;&gt;ohjeiden mukaan&lt;/a&gt;, ja asensin anySIM 1.2.1u:n manuaalisesti iPhoneen.&lt;/p&gt;&#xA;&lt;p&gt;Huomasin myös vasta nyt, että ääkköset toimivat iPhonen virtuaalinäppiksessä, kun pitää pohjassa A- tai O-nappia hetken aikaa. Silloin ruudulle ilmestyy kaikki aksenttiversiot kyseisestä näppäimestä. Olin aiemmin yrittänyt etsiskellä sellaista näppäimistöversiota, jossa Ä ja Ö olisivat suoraan käytettävissä. Mutta 1.1.2:ssa tulee mukana vain italialainen, saksalainen ja ranskalainen näppis-layout, ja niissäkin aksenttimerkit toimivat samalla tavalla press-and-hold-tekniikalla.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>claimID: Kenneth Falck</title>
      <link>https://kennethfalck.net/2007/11/25/claimid-kenneth-falck/</link>
      <pubDate>Sun, 25 Nov 2007 05:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/11/25/claimid-kenneth-falck/</guid>
      <description>&lt;p&gt;Rekisteröinpä kokeeksi oman &lt;a href=&#34;http://claimid.com/kennu&#34;&gt;claimID-tunnuksen&lt;/a&gt;. Sen tarkoitus on kerätä yhteen paikkaan ne webbisivut, jotka ovat virallisesti minun omiani, eivätkä esimerkiksi jonkun toisen samannimisen tuotoksia. Inspiraatio tähän tuli aihetta sivunneesta &lt;a href=&#34;http://ask.slashdot.org/article.pl?sid=07/11/24/131213&#34;&gt;Slashdot-artikkelista&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;ClaimID:hen voi rekisteröidä oman tunnuksen ja salasanan, ja sinne voi kirjautua myös OpenID:llä. Jos ei vielä ole OpenID:tä, niin sellaisen voi hankkia esimerkiksi &lt;a href=&#34;https://www.myopenid.com/&#34;&gt;myOpenID.comista&lt;/a&gt;. OpenID:n ideahan on siinä, että kerran rekisteröity sama tunnus käy mihin tahansa palveluun, joka tukee OpenID-kirjautumista.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Facebook-sovellus My Blog</title>
      <link>https://kennethfalck.net/2007/11/25/facebook-sovellus-my-blog/</link>
      <pubDate>Sun, 25 Nov 2007 01:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/11/25/facebook-sovellus-my-blog/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_256.jpg&#39; title=&#39;blogimg/blog_256.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_256.jpg&#39; alt=&#39;blogimg/blog_256.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Koodasin lähinnä omaan käyttööni tarkoitetun pienen Facebook-sovelluksen nimeltä &lt;a href=&#34;http://apps.facebook.com/bloglatest/&#34;&gt;My Blog&lt;/a&gt;, joka päivittelee profiiliini näitä blogiotsikoita automaattisesti. Sen voi periaatteessa asentaa kuka vaan ja määritellä oman RSS 2.0 -feedin profiiliinsa.&lt;/p&gt;&#xA;&lt;p&gt;Tein tuon sovelluksen oikeastaan sen takia, että halusin kokeilla miten Facebook-sovellukset voivat päivittää profiilitietoja taustalla silloinkin, kun käyttäjä ei ole kirjautuneena sisään. Salaisuus piilee fb:ref-tageissa ja infinite session -avaimissa, joista löytyy &lt;a href=&#34;http://wiki.developers.facebook.com/index.php/Changing_profile_content&#34;&gt;ohjeet täältä&lt;/a&gt;. Nyt sitten pyörähtelee tunnin välein cronjob, joka päivittelee kaikki rekisteröidyt RSS-feedit profiileihin.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone unlock 1.1.1 onnistui ;-)</title>
      <link>https://kennethfalck.net/2007/11/20/iphone-unlock-1.1.1-onnistui-/</link>
      <pubDate>Tue, 20 Nov 2007 03:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/11/20/iphone-unlock-1.1.1-onnistui-/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_255.jpg&#39; title=&#39;blogimg/blog_255.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_255.jpg&#39; alt=&#39;blogimg/blog_255.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Sainpa vihdoinkin iPhonen (US-malli 1.1.1) ja yritin tietysti rohkeasti päivittää sen 1.1.2:een sekä jailbreakata ja unlockata &lt;a href=&#34;http://windows-mobiles.com/?p=116&#34;&gt;näiden ohjeiden mukaan&lt;/a&gt;. Valitettavasti en onnistunut, koska anySIM-softan 1.1.2-tuki on vielä vähän keskeneräinen (käytin &lt;a href=&#34;http://code.google.com/p/iphone-elite/&#34;&gt;iPhone Elite&lt;/a&gt; -versiota). Todennäköisesti sain basebandin korruptoitua, sillä puhelin toimi muuten mutta GSM-ominaisuudet eivät.&lt;/p&gt;&#xA;&lt;p&gt;Niinpä palautin firmiksen &lt;a href=&#34;http://forums.macrumors.com/showthread.php?t=386941&#34;&gt;näiden ohjeiden mukaan&lt;/a&gt; takaisin versioon 1.1.1, palautin basebandin versioon 03.14.08_G, ja ajoin sitten kertaallen iTunesilla 1.1.1-päivityksen, joka palautti basebandin viralliseen versioon 4.01.13_G. Näin olin takaisin out-of-the-box-tilassa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Androidin Java-valinta mietityttää</title>
      <link>https://kennethfalck.net/2007/11/14/google-androidin-java-valinta-mietitytt%C3%A4%C3%A4/</link>
      <pubDate>Wed, 14 Nov 2007 02:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/11/14/google-androidin-java-valinta-mietitytt%C3%A4%C3%A4/</guid>
      <description>&lt;p&gt; Googlen &lt;a href=&#34;http://www.openhandsetalliance.com/developers.html&#34;&gt;Android&lt;/a&gt; vaikuttaa emulaattorin ja SDK-dokumentaation perusteella oikein mielenkiintoiselta alustalta. Erityisesti minulta tulee respektiä siitä hyvästä, että jo ensimmäinen versio oli saatavilla Mac OS X:lle, Linuxille ja Windowsille.&lt;/p&gt;&#xA;&lt;p&gt;Mutta mahtaako Java olla kovin hyvä pohja kännykkäkäyttöjärjestelmälle... Pyyhkeitä on tullut ainakin jo &lt;a href=&#34;http://mobile.slashdot.org/article.pl?sid=07/11/13/1348233&#34;&gt;Slashdotissa&lt;/a&gt;, missä myös kritisoidaan (odotetusti) non-GPL Apache-lisenssivalintaa. En tunne ketään, joka olisi ollut kovin tyytyväinen J2ME-alustojen yhteensopivuuteen sovelluskehityksessä, enkä tiedä riittääkö Googlen non-fragmentation-lisenssi pitämään Android-puhelimet yhteensopivina.&lt;/p&gt;&#xA;&lt;p&gt;Suorituskykykin olisi kiva päästä testaamaan oikealla hardwarella. Emulaattori kyllä pyöri kivasti Mac minissä. Sen voi jo sanoa, että jos yhteensopivuus ja suorituskyky vain ovat kunnossa, niin Android on miljoona kertaa mukavampi alusta kehittää sovelluksia kuin mikään Symbian.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hoitajille lisää liksaa</title>
      <link>https://kennethfalck.net/2007/11/12/hoitajille-lis%C3%A4%C3%A4-liksaa/</link>
      <pubDate>Mon, 12 Nov 2007 14:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/11/12/hoitajille-lis%C3%A4%C3%A4-liksaa/</guid>
      <description>&lt;p&gt; &lt;a href=&#34;http://www.hs.fi/politiikka/artikkeli/Hoitajat+uskovat+ett%C3%A4+alalta+l%C3%A4hdet%C3%A4%C3%A4n+pysyv%C3%A4sti+jos+pakkolaki+s%C3%A4%C3%A4det%C3%A4%C3%A4n/1135231723860?ref=rss&#34;&gt;Tämä uutinen&lt;/a&gt; tuntuu tiivistävän hyvin tämän hulluuden, joka sairaanhoitoalan palkkakiistassa on meneillään. Miten meillä voidaan kuvitella, että pakkolaki auttaisi asiaa, kun hoitajat on ajettu tilanteeseen, jossa mieluummin irtisanoutuvat kuin jatkavat työtaistelua. Mistä ne uudet hoitajat saadaan? Vai pakotetaanko irtisanoutuneet töihin loppuelämäkseen?&lt;/p&gt;&#xA;&lt;p&gt;Jatkossa on varmaan tosi suuri motivaatio nuorilla ryhtyä opiskelemaan sairaanhoitoalaa. Tiedossa on fyysisesti ja henkisesti raskas työpaikka, josta maksetaan huonoa palkkaa, ja lisäksi valtio voi velvoittaa pakkotöihin vaikka työpaikastaan irtisanoutuisi. Jee.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vastustan väkivallan vastustamista</title>
      <link>https://kennethfalck.net/2007/11/08/vastustan-v%C3%A4kivallan-vastustamista/</link>
      <pubDate>Thu, 08 Nov 2007 14:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/11/08/vastustan-v%C3%A4kivallan-vastustamista/</guid>
      <description>&lt;p&gt;Olenkohan ainoa, jonka mielestä Jokelan tapauksesta seurannut väkivallan ja aseiden vastustaminen on ihan hakoteillä? Nousen kyllä itsekin barrikadeille silloin, kun vastustetaan sotimista ja muita vääryyksiä, mutta piruako se auttaa nyt, kun kyse on yksittäisen ihmisen henkisestä epätasapainosta ja sekoamisesta?&lt;/p&gt;&#xA;&lt;p&gt;Olen vähän sitä mieltä, että tämän tapauksen yhteydessä pitäisi unohtaa kaikki vastustamiset, ja keskittyä pikemminkin niiden ihmisten auttamiseen, joiden mielenterveys järkkyy. Sillä taas ei ole mitään tekemistä esimerkiksi metallinpaljastimien, videopelien, elokuvien tai YouTuben kanssa. Puoli yhdeksän uutisten kanssa sillä voi olla jotain tekemistä, sillä maailma on joskus aika ruma paikka, mutta siinä onkin jo enemmän korjaamista.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tienasiko Radiohead paljon vai vähän?</title>
      <link>https://kennethfalck.net/2007/11/08/tienasiko-radiohead-paljon-vai-v%C3%A4h%C3%A4n/</link>
      <pubDate>Thu, 08 Nov 2007 00:17:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/11/08/tienasiko-radiohead-paljon-vai-v%C3%A4h%C3%A4n/</guid>
      <description>&lt;p&gt;Mielenkiintoisia näkökulmaeroja uutisoinnissa:&lt;/p&gt;&#xA;&lt;p&gt;&lt;ul&gt;&lt;li&gt;Slashdot: &lt;a href=&#34;http://yro.slashdot.org/article.pl?sid=07/11/06/2035244&#34;&gt;38% of Downloaders Paid For Radiohead Album&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Digitoday: &lt;a href=&#34;http://www.digitoday.fi/viihde/2007/11/07/rss/200727955/66&#34;&gt;Suurin osa ei maksanut Radioheadin musiikista&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&#xA;&lt;p&gt;Molemmat tietysti faktisesti oikein, mutta kumpi näkökulma on oikea? Omasta mielestäni 38% maksaneita on todella suuri luku, kun tässä tapauksessa ei ollut minkäänlaista laillista tai moraalista velvoitetta maksaa, eikä edes ohjetta, mikä olisi sopiva hinta.&lt;/p&gt;&#xA;&lt;p&gt;Itse muuten maksoin yhden punnan (1 GBP), koska tiesin maksajia olevan miljoonia, eikä minusta yhden levyn tarvitse olla tekijöilleen mikään kymmenien tai satojen miljoonien arvoinen juttu. Olisin saattanut käydä maksamassa vielä vähän lisää, mutta &lt;a href=&#34;http://www.inrainbows.com/&#34;&gt;In Rainbows&lt;/a&gt; ei minusta ollut kuitenkaan niin hyvä. Maailmassa on tehty muita levyjä, joista olisin maksanut enemmänkin.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Suomalaisen IT-journalismin taso</title>
      <link>https://kennethfalck.net/2007/11/01/suomalaisen-it-journalismin-taso/</link>
      <pubDate>Thu, 01 Nov 2007 18:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/11/01/suomalaisen-it-journalismin-taso/</guid>
      <description>&lt;p&gt;Alkaa hiljalleen ottaa pannuun tämä IT-uutisoinnin taso. Ensin Digitoday &#34;uutisoi&#34; &lt;a href=&#34;http://www.digitoday.fi/data/2007/11/01/rss/200727400/66&#34;&gt;OpenDocument Foundation -ankan&lt;/a&gt; vakavamminkin otettavana uhkana ODF:lle, ja sitten kertoo täysin vihjeettömästi &lt;a href=&#34;http://www.digitoday.fi/tietoturva/2007/11/01/rss/200727463/66&#34;&gt;väärää tietoa Leopardin palomuurista&lt;/a&gt;. Kummassakin tapauksessa &#34;uutinen&#34; on ilmiselvästi suoraan suomennettu jostain blogikirjoituksesta tai sellaisen kommenteista. Mitään faktojen tarkistuksia tai edes pientä googlailua ei näytetä tehdyn. Riittäisi, että toimittaja edes lukisi loputkin niistä Diggin tai Slashdotin kommenteista, joissa tuon tyyppiset sensaatioväitteet yleensä osoitetaan virheellisiksi.&lt;/p&gt;&#xA;&lt;p&gt;1. OpenDocument Foundation on siis kolmen hengen &#34;säätiö&#34;, joka ilmeisesti menetti rahoituksensa ODF-kehitykseen ja päätti yrittää etsiä töitä CDF:n puolelta. Tämä uutisoitiin Suomessa laajemminkin &#34;ODF:n taustavoimien rivien rakoiluna&#34;, vaikka kyseisellä säätiöllä ei ole mitään vaikutusta tai asemaa ODF-formaatin suhteen - ainoastaan virallisen kuuloinen nimi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Reader rulettaa ja epäilyttää</title>
      <link>https://kennethfalck.net/2007/10/27/google-reader-rulettaa-ja-ep%C3%A4ilytt%C3%A4%C3%A4/</link>
      <pubDate>Sat, 27 Oct 2007 13:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/10/27/google-reader-rulettaa-ja-ep%C3%A4ilytt%C3%A4%C3%A4/</guid>
      <description>&lt;p&gt;Minulla oli alun perin tavoite pysyä erossa &lt;a href=&#34;http://reader.google.com&#34;&gt;Google Readerista&lt;/a&gt; monestakin syystä, mutta nyt olen luovuttanut. Se on vain niin hyvä, että siirryin käyttämään sitä täysipäiväisesti RSS-feedien seuraamisessa. Olen aiemmin käyttänyt itse tekemiäni Mac/Windows-softia ja PHP/MySQL-backendia feedien lukemiseen ja keskitetysti luetuksi merkitsemiseen, mutta omien softien ylläpitäminen ja webbiliittymän kehittäminen alkoi käydä raskaaksi.&lt;/p&gt;&#xA;&lt;p&gt;Syitä olla käyttämättä Readeria: En pidä siitä, että Google seurailee mitä teen netissä. Google pitää muutenkin kirjaa hauistani, ja nyt lisäksi Google Reader näkee mitä linkkejä klikkailen RSS-feedeistä. Ja tietysti kirjautumalla päivittäin sisään Google Readeriin annan Googlelle mahdollisuuden konsolidoida kaiken historiadatani käyttäjätunnukseni alle. Googlella on aika toimiva väsytystaktiikka näissä asioissa. Samat yksityisyyden ongelmat pätevät Gmailiin, joka on niin toimiva sähköposti, että melkein tekisi mieli siirtyä siihen oman IMAP/SMTP-palvelimen pyörittämisen sijasta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone touch jailbreak</title>
      <link>https://kennethfalck.net/2007/10/18/iphone-touch-jailbreak/</link>
      <pubDate>Thu, 18 Oct 2007 23:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/10/18/iphone-touch-jailbreak/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_247.jpg&#39; title=&#39;blogimg/blog_247.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_247.jpg&#39; alt=&#39;blogimg/blog_247.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tulipa tässä iPhone SDK:ta odotellessa tehtyä &lt;a href=&#34;http://www.touchdev.net/wiki/Jailbreak_Guide&#34;&gt;iPod touch jailbreak&lt;/a&gt; ja se toimikin mainiosti ohjeiden mukaan. En heti tajunnut, että iPHUCilla avatun read/write-accessin lisäksi pitää myös asentaa Springboard-hack (Trip1PogoStick) jotta asennetut sovellukset ilmestyvät iPodin näytölle, mutta sen jälkeen ne tosiaan putkahtivat siihen.&lt;/p&gt;&#xA;&lt;p&gt;Nyt on sitten ssh, irssi, iPong, terminaali ja kaikenlaista muuta kivaa asennettuna. iPhone-sovellukset näyttävät toimivan iPod touchissa ihan suoraan, tai ainakin tietysti ne, jotka eivät vaadi puhelinominaisuuksia.&lt;/p&gt;&#xA;&lt;p&gt;iPod touchin käyttis on muuten: Darwin iPod touch 9.0.0d1 Darwin Kernel Version 9.0.0d1: Thu Sep 20 00:27:53 PDT 2007; root:xnu-933.0.0.203.obj~24/RELEASE_ARM_S5L8900XRB iPod1,1 Darwin&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhoneen sittenkin omia sovelluksia</title>
      <link>https://kennethfalck.net/2007/10/17/iphoneen-sittenkin-omia-sovelluksia/</link>
      <pubDate>Wed, 17 Oct 2007 20:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/10/17/iphoneen-sittenkin-omia-sovelluksia/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_246.jpg&#39; title=&#39;blogimg/blog_246.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_246.jpg&#39; alt=&#39;blogimg/blog_246.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Apple julkaisi &lt;a href=&#34;http://www.engadget.com/2007/10/17/apple-planning-iphone-sdk-for-february/&#34;&gt;iPhone SDK:n&lt;/a&gt;, joka ilmestyy helmikuussa 2008. Nähtävästi kannattaa edelleen &lt;a href=&#34;http://itviikko.fi/page.php?page_id=46&amp;amp;news_id=200724513&#34;&gt;kirjoittaa kolumneja&lt;/a&gt;, kun niillä on näin nopea vaikutus maailman kolmanneksi suurimpaan tietokonevalmistajaan ;-)&lt;/p&gt;&#xA;&lt;p&gt;Tosin &lt;a href=&#34;http://www.apple.com/hotnews/&#34;&gt;Applen Hot News&lt;/a&gt; -uutisessa Steve Jobs vihjailee, että sovellusten kehittäminen tulee kuitenkin olemaan jollain tavalla suljettua tai rajoitettua:&lt;/p&gt;&#xA;&lt;p&gt;&lt;i&gt;&#34;Nokia, for example, is not allowing any applications to be loaded onto some of their newest phones unless they have a digital signature that can be traced back to a known developer. While this makes such a phone less than ?totally open,? we believe it is a step in the right direction. We are working on an advanced system which will offer developers broad access to natively program the iPhone?s amazing software platform while at the same time protecting users from malicious programs.&#34;&lt;/i&gt;&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>RSS2-tuki ja Facebook RSS Feed</title>
      <link>https://kennethfalck.net/2007/10/13/rss2-tuki-ja-facebook-rss-feed/</link>
      <pubDate>Sat, 13 Oct 2007 12:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/10/13/rss2-tuki-ja-facebook-rss-feed/</guid>
      <description>&lt;p&gt;Tulipa lisättyä tähän blogiin &lt;a href=&#34;http://kfalck.net/rss2.php&#34;&gt;RSS2-tuki&lt;/a&gt;, niin sain sen upotettua kivasti &lt;a href=&#34;http://www.facebook.com/profile.php?id=606364467&#34;&gt;Facebook-profiiliini&lt;/a&gt; käyttäen &lt;a href=&#34;http://www.facebook.com/apps/application.php?id=5315590686&#34;&gt;Blog RSS Feed Reader&lt;/a&gt; -applikaatiota.&lt;/p&gt;&#xA;&lt;p&gt;PHP:ssäkin on muuten nykyään &lt;a href=&#34;http://fi.php.net/manual/en/ref.datetime.php#datetime.constants&#34;&gt;DATE_RSS&lt;/a&gt;-vakioformaatti päivämäärälle, kuten myös ATOM-, W3C- ja lukuisat eri RFC-formaatit. Jee!&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linux hajosi, NAS-purkkeja tilalle?</title>
      <link>https://kennethfalck.net/2007/10/13/linux-hajosi-nas-purkkeja-tilalle/</link>
      <pubDate>Sat, 13 Oct 2007 11:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/10/13/linux-hajosi-nas-purkkeja-tilalle/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_244.jpg&#39; title=&#39;blogimg/blog_244.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_244.jpg&#39; alt=&#39;blogimg/blog_244.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Uskollisesti työpöydän alla 3-4 vuotta puksuttanut Linux-palvelimeni sanoi vihdoin sopimuksensa irti. Se on pitänytkin sen verran meteliä tuulettimineen, ettei oikein huvita enää etsiä viallista kohtaa ja korjata sitä. Sen sijaan ajattelin ottaa kaikki kovalevyt irti koneesta (yhteensä 6kpl + systeemi) ja laittaa suurimmat niistä itsenäisiin NAS-kuoriin, joita löytyy &lt;a href=&#34;http://www.verkkokauppa.com/?page=http://www.verkkokauppa.com/main.php?path=haku&amp;amp;search=1&amp;amp;cat1=Komponentit&amp;amp;cat2=Kotelot&amp;amp;cat3=Verkko&#34;&gt;Verkkokaupasta aika monenlaisia&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Suurin osa noista NAS-kuorista on kylläkin vielä IDE-liitäntäisiä, mutta esim. &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=6557&#34;&gt;D-Link DNS-313&lt;/a&gt; näyttäisi olevan kohtuuhintainen (95 EUR) keino saada yksittäinen SATA-levy Ethernetiin kiinni. On vaikea ymmärtää IDEn suosiota, kun ajattelin kaikkien pitäneen sitä ihan legacy-tekniikkana jo vuosien ajan. Eihän noita kauhean pieniä vanhoja levyjä edes kannata laittaa NAS-purkeiksi, kun suhteessa halvemmalla saa yhden uuden 500GB levyn sisältävän mallin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iPhone-esituntumaa iPod touchilla</title>
      <link>https://kennethfalck.net/2007/10/09/iphone-esituntumaa-ipod-touchilla/</link>
      <pubDate>Tue, 09 Oct 2007 22:42:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/10/09/iphone-esituntumaa-ipod-touchilla/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_243.jpg&#39; title=&#39;blogimg/blog_243.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_243.jpg&#39; alt=&#39;blogimg/blog_243.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kuten Facebookin status-rivillä jo kovasti mainostelin, sain oman ensituntumani iPhone-tyyliseen käyttöliittymään kun &lt;a href=&#34;http://www.apple.com/fi/ipodtouch/&#34;&gt;iPod touch&lt;/a&gt; saapui töihin perjantaina. Kyseinen laitehan näyttää siis suunnilleen samalta kuin iPhone, ja siinä on vastaava Safari-selain, vaikka puhelintoiminnot puuttuvatkin.&lt;/p&gt;&#xA;&lt;p&gt;Ja se on hieno! Apple on ihan oikeasti osannut toteuttaa kosketusnäytön oikein. Eli tietenkin täysin eri tavalla kuin Microsoft ja Nokia omissa yritelmissään.&lt;/p&gt;&#xA;&lt;p&gt;Oleellisin ero on mielestäni siinä, että iPod touch on täsmälleen sen kokoinen, että sitä voi käyttää yhden käden peukalolla. Ei siis pakotettua &#34;kännykkä vasempaan käteen ja kynä oikeaan käteen&#34; -otetta, vaan perusasiat voi tehdä yhdellä kädellä. Laitteen fyysinen koko on aivan oleellinen tekijä: jos otat esimerkiksi perinteisen Pocket PC:n tai Nokia 7710:n käteen, niin et millään yletä peukalolla koko näytön alueelle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>DRM ja piraattipuolueen tarve</title>
      <link>https://kennethfalck.net/2007/10/06/drm-ja-piraattipuolueen-tarve/</link>
      <pubDate>Sat, 06 Oct 2007 09:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/10/06/drm-ja-piraattipuolueen-tarve/</guid>
      <description>&lt;p&gt;Viime aikoina on taas nähty otsikoissa tätä DRM-yhteiskunnan onnea: pilataan uudet tekniikat &lt;a href=&#34;http://slashdot.org/article.pl?sid=07/10/04/1836249&#34;&gt;lisäämällä niihin rikkinäisiä suojauksia&lt;/a&gt; ja kun joku julkeaa ottaa oikeuden omiin käsiinsä, aletaan &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=31548&amp;amp;tyyppi=1&#34;&gt;tuomita tavallisia perheenäitejä&lt;/a&gt; kohtuuttomiin vahingonkorvauksiin varoittavina esimerkkeinä.&lt;/p&gt;&#xA;&lt;p&gt;Ei liene mikään ihme, että &lt;a href=&#34;http://www.digitoday.fi/yhteiskunta/2007/10/05/Piraattipuolue+haluaa+pelastaa++maailman/200724626/66&#34;&gt;Piraattipuolueita alkaa nousta esiin&lt;/a&gt;. Rickard Falkvinge vaikuttaa tuon Digitodayn jutun perusteella hyvinkin selväjärkiseltä tyypiltä (sen lisäksi että hänellä on cooli nimi :-) Kyse ei ole mistään tahdomme ilmaista musiikkia -ryhmästä, vaan puolueen taustalla on ihan oikeasti tärkeitä ajatuksia nyky-yhteiskunnasta ja sen tulevaisuudesta.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mac minilläkin pärjää</title>
      <link>https://kennethfalck.net/2007/10/01/mac-minill%C3%A4kin-p%C3%A4rj%C3%A4%C3%A4/</link>
      <pubDate>Mon, 01 Oct 2007 11:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/10/01/mac-minill%C3%A4kin-p%C3%A4rj%C3%A4%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_241.jpg&#39; title=&#39;blogimg/blog_241.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_241.jpg&#39; alt=&#39;blogimg/blog_241.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kesälomaksi hankkimani &lt;a href=&#34;http://support.apple.com/specs/imac/iMac_Late_2006.html&#34;&gt;iMac&lt;/a&gt; meni huoltoon levyn kärähdettyä, joten olen pärjäillyt töistä lainaamallani &lt;a href=&#34;http://www.apple.com/macmini/&#34;&gt;Mac minillä&lt;/a&gt;. Ja hyvinhän se kyllä toimii.  Vaikka tässä on vanha Core Duo, niin 2GB muistilla pärjää. Näytönohjain vaan hyytyy 3D-jutuissa.&lt;/p&gt;&#xA;&lt;p&gt;Nyt kun koti on ollut monen kuukauden ajan lähes kokonaan Windows-vapaa (duuniläppäriä lukuunottamatta), niin voin todeta, että ei sitä Windowsia paljon mihinkään oikeasti tarvitsekaan. Ainoa isompi ongelma on ryhmätyökalenteri, joka meillä on Outlook -- sille ei tahdo löytyä järkeviä vaihtoehtoja. Ja Outlook Web Access toimii aika rujosti Firefoxilla/Safarilla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Wikipuolue</title>
      <link>https://kennethfalck.net/2007/09/29/wikipuolue/</link>
      <pubDate>Sat, 29 Sep 2007 17:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/09/29/wikipuolue/</guid>
      <description>&lt;p&gt;Kas vain, &lt;a href=&#34;http://www.wikipuolue.fi/&#34;&gt;perustivat Wiki-puolueen&lt;/a&gt;. Minkähänlainen sotku tuostakin tulee :-)&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python-vihaajien kerho?</title>
      <link>https://kennethfalck.net/2007/09/29/python-vihaajien-kerho/</link>
      <pubDate>Sat, 29 Sep 2007 16:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/09/29/python-vihaajien-kerho/</guid>
      <description>&lt;p&gt;Voiko jossain liittyä Python-vihaajien kerhoon? Minusta tuntuu että olen vihdoinkin saanut tarpeekseni tuosta ohjelmointikielten kukkasesta.&lt;/p&gt;&#xA;&lt;p&gt;Viha #1: Merkistöt. Mikä hitto siinä olisi niin vaikea käsitellä merkkijonoja sisäisesti Unicodena, kuten Java ja .NET ovat tehneet jo vuosikaudet. Nyt Pythonin stringejä saa konvertoida ees taas milloin Latin-1:ksi ja milloin UTF-8:ksi ja kaikki menee sekaisin.&lt;/p&gt;&#xA;&lt;p&gt;Viha #2: Luokat vs. funktiot. Hemmetinkö takia jopa Pythonin omat kirjastot ovat hajauttaneet esimerkiksi merkkijonotoiminnallisuuden sisäänrakennettuihin funktioihin (len), tyyppeihin (str) ja moduuleihin (string). Luulisi tajuavan, että luokat on sitä varten, että yhdessä paikassa on kaikki siihen luokkaan liittyvä...&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google &#34;My World&#34; Second Lifen kilpailijaksi?</title>
      <link>https://kennethfalck.net/2007/09/26/google-my-world-second-lifen-kilpailijaksi/</link>
      <pubDate>Wed, 26 Sep 2007 21:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/09/26/google-my-world-second-lifen-kilpailijaksi/</guid>
      <description>&lt;p&gt; &lt;a href=&#34;http://arstechnica.com/news.ars/post/20070924-google-testing-my-world-for-launch-later-this-year.html&#34;&gt;Mielenkiintoista kehitystä&lt;/a&gt;. Josko Google tekisi Second Lifen &#39;oikein&#39;, eli kunnon nykyaikainen 3D-platform ja niin paljon serveri-CPU:ta ja bandwidthia, että koko maailma voi kirjautua yhtaikaa sisään.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Facebook-spammin kourissa</title>
      <link>https://kennethfalck.net/2007/09/17/facebook-spammin-kourissa/</link>
      <pubDate>Mon, 17 Sep 2007 18:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/09/17/facebook-spammin-kourissa/</guid>
      <description>&lt;p&gt;Facebook vaikuttaa nyt leviävän massiivisesti Suomessa, sillä kaveripyyntöjä satelee melkein joka päivä... Ja tietysti ihan tolkuton määrä &#34;Ihmissusi on puraissut sinua perseeseen, haluatko liittyä Ihmissusi-klubiin&#34; -tyyppistä spammia, kuten Tero asian suurin piirtein muotoili :-)&lt;/p&gt;&#xA;&lt;p&gt;Itse veikkaan, että tuon spammiaalto kuitenkin laantuu pian, kun ihmiset kyllästyvät kokeilemaan kaikkia mahdollisia uusia applikaatioita. Kovin monesta uudesta piraatti- ja vampyyrikerhosovelluksesta ei jaksa enää innostua...&lt;/p&gt;&#xA;&lt;p&gt;Facebookista alkaa myös paljastua käyttöliittymän ongelmat ja rajoitukset, kun applikaatioita kasaantuu kovin paljon profiilisivulle. Jonkinlaista ryhmittelyä tabeihin kaipaisi sen sijaan, että kaikki on pitkänä pötkönä allekkain. Esimerkiksi &#34;Cities I&#39;ve Visited&#34; ja &#34;Books I&#39;ve Read&#34; -sovellukset päivittyvät sen verran hitaasti, että ne voisi siirtää toisen tabin alle niiden katsottavaksi, joita ne kiinnostavat, muttei kuitenkaan kokonaan pois profiilista.&lt;/p&gt;</description>
    </item>
    <item>
      <title>TV- ja leffastudioiden DRM-harhakäsitykset</title>
      <link>https://kennethfalck.net/2007/09/08/tv-ja-leffastudioiden-drm-harhak%C3%A4sitykset/</link>
      <pubDate>Sat, 08 Sep 2007 13:01:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/09/08/tv-ja-leffastudioiden-drm-harhak%C3%A4sitykset/</guid>
      <description>&lt;p&gt;Olen Amsterdamissa IBC-messuilla, ja kävin eilen kuuntelemassa niin ärsyttäviä näkemyksiä DRM:stä, että on pakko blogata tänne privaattipuolelle niistä hiukan. Kyseessä oli paneelikeskustelu, jossa oli mukana Time Warnerin ja NBC Universalin edustajat.&lt;/p&gt;&#xA;&lt;p&gt;Nämä ihmiset kertoivat ylpeänä, että enää ei tarvitse warettaa tv-sarjoja Pirate Baysta, koska studiot pistävät niitä itse jakeluun verkkoon. Harmi vaan, että jaossa on vain muutama sarja, ja nekin on tärvelty piloille DRM:llä. Pirate Baysta saa siis edelleen parempaa palvelua kuin laillisia reittejä pitkin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Second Life</title>
      <link>https://kennethfalck.net/2007/08/26/second-life/</link>
      <pubDate>Sun, 26 Aug 2007 22:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/08/26/second-life/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_235.jpg&#39; title=&#39;blogimg/blog_235.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_235.jpg&#39; alt=&#39;blogimg/blog_235.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tässäpä meikäläisen tontti ja talo ;-)&lt;/p&gt;&#xA;&lt;p&gt;Koordinaatit: &lt;a href=&#34;http://slurl.com/secondlife/Iwaki/26/148/32&#34;&gt;http://slurl.com/secondlife/Iwaki/26/148/32&lt;/a&gt;.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>EI Microsoft Officea ISO-standardiksi</title>
      <link>https://kennethfalck.net/2007/08/16/ei-microsoft-officea-iso-standardiksi/</link>
      <pubDate>Thu, 16 Aug 2007 18:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/08/16/ei-microsoft-officea-iso-standardiksi/</guid>
      <description>&lt;p&gt; &lt;a href=&#34;http://www.noooxml.org/petition-fi&#34;&gt;http://www.noooxml.org/petition-fi&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;34251 allekirjoittanutta tähän mennessä.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pelikoneen pelit</title>
      <link>https://kennethfalck.net/2007/08/15/pelikoneen-pelit/</link>
      <pubDate>Wed, 15 Aug 2007 22:54:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/08/15/pelikoneen-pelit/</guid>
      <description>&lt;p&gt;Lisäsin kotisivujeni &lt;a href=&#34;http://www.kfalck.net&#34;&gt;etusivulle&lt;/a&gt; lempipelini Pelikoneesta. &lt;a href=&#34;http://pelikone.fi&#34;&gt;Pelikone.fi&lt;/a&gt; on tuore duuniprojekti ja tämä on sen uusien ominaisuuksien pientä kokeilua...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Analytics</title>
      <link>https://kennethfalck.net/2007/08/06/google-analytics/</link>
      <pubDate>Mon, 06 Aug 2007 01:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/08/06/google-analytics/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_232.jpg&#39; title=&#39;blogimg/blog_232.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_232.jpg&#39; alt=&#39;blogimg/blog_232.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt; &lt;a href=&#34;http://www.google.com/analytics/&#34;&gt;Google Analytics&lt;/a&gt; on muuten vänkä vehje. Olen mittaillut kesän aikana tätä omaa saittiani (tässä &lt;a href=&#34;https://kennethfalck.net/pub/analytics07.pdf&#34;&gt;PDF-raportti&lt;/a&gt;, jonka exporttasin palvelusta), ja kävijäkunta on sellaista kuin olen ajatellutkin. Suurin osa törmää tänne hakukoneen kautta ja lukaisee muutaman sivun blogista, varmaan paljon automaattisia webbi-indeksoijia yms. robotteja. Loput seurannevat tätä RSS-feedin kautta tai käyvät muuten vaan saitilla lukaisemassa aina yhden tai pari juttua kerralla.&lt;/p&gt;&#xA;&lt;p&gt;Tuosta PDF-raportista käy muuten ilmi, että ehdottomasti suosituin selain tällä saitilla kävijöillä on Firefox (52%) ;-) Toisena on Internet Explorer (34%) ja sen jälkeen tiukassa kisassa Safari (5.6%) ja Opera (5.1%).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uusi palvelin</title>
      <link>https://kennethfalck.net/2007/08/02/uusi-palvelin/</link>
      <pubDate>Thu, 02 Aug 2007 20:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/08/02/uusi-palvelin/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_231.png&#39; title=&#39;blogimg/blog_231.png&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_231.png&#39; alt=&#39;blogimg/blog_231.png&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Siirsin kotisivuni uudelle palvelimelle (Debian =&gt; Ubuntu). Jos toimivuudessa on häikkää, niin minulle saa mielellään laittaa viestiä tai kommenttia tähän... Uusi osoite päivittyy hiljalleen DNS:ään, tämä blogientry näkyy vain uudella palvelimella.&lt;/p&gt;</description>
    </item>
    <item>
      <title>SuperSeaCat-matkavaraus: Ei Pysty</title>
      <link>https://kennethfalck.net/2007/07/27/superseacat-matkavaraus-ei-pysty/</link>
      <pubDate>Fri, 27 Jul 2007 07:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/07/27/superseacat-matkavaraus-ei-pysty/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_230.png&#39; title=&#39;blogimg/blog_230.png&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_230.png&#39; alt=&#39;blogimg/blog_230.png&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt; &lt;a href=&#34;http://superseacat.forth-crs.gr/finnish/npgres.exe?PM=BB&#34;&gt;Viroon matkaamisesta&lt;/a&gt; on sitten turha haaveilla, jos sattuu käyttämään Maccia. Ei sitä nyt sentään ihan millä tahansa käyttiksellä noin vain webbiä selailla...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Facebook</title>
      <link>https://kennethfalck.net/2007/07/24/facebook/</link>
      <pubDate>Tue, 24 Jul 2007 14:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/07/24/facebook/</guid>
      <description>&lt;p&gt;Kaikille kavereille ja tutuille: rekisteröitykääpä &lt;a href=&#34;http://facebook.com&#34;&gt;Facebookiin&lt;/a&gt; ja pistäkää friend requestia minulle omalla nimelläni.&lt;/p&gt;&#xA;&lt;p&gt;Jos Facebook ei ole tuttu, niin se on vähän kuin aikuisten IRC-Galleria. Eli vähän kuten LinkedIn, mutta sisältää paljon enemmän hauskoja toimintoja.&lt;/p&gt;&#xA;&lt;p&gt;Ovelintahan on se, että kuka tahansa voi koodailla Facebookiin uusia ominaisuuksia sen APIn avulla. Sen seurauksena toimintoja on saatavilla paljon enemmän kuin mitä muut vastaavat yhteisöpalvelut ehtisivät ikinä toteuttaa omin voimin.&lt;/p&gt;&#xA;&lt;p&gt;En tiedä voisiko tätä jo alkaa kutsua Web 3.0:ksi; eräänlainen seuraava askel mashupeista eteenpäin. Itse alan nähdä webin hiljalleen samanlaisena infrastruktuurina kuin käyttöjärjestelmät ja (open source) sovellukset. Jossakin vaiheessa web-sovellusten rajapinnat standardoituvat, ja sitten voi upottaa oman valokuva- tai blogisovelluksensa yhtä lailla IRC-Galleriaan kuin Facebookiinkin.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>World of Warcraft, iMac ja Vertical Sync</title>
      <link>https://kennethfalck.net/2007/07/24/world-of-warcraft-imac-ja-vertical-sync/</link>
      <pubDate>Tue, 24 Jul 2007 14:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/07/24/world-of-warcraft-imac-ja-vertical-sync/</guid>
      <description>&lt;p&gt;Pieni vinkki jonka huomasin vasta äskettäin; iMacissa kannattaa kääntää pois Vertical Sync WoWin videoasetuksista, jos se on päällä. Siitä tuli kummallista tahmailua ja viivettä näyttöön fullscreen-modessa. Ihmettelin pitkään mikä asetus sen aiheuttaa, koska framerate on ihan hyvä (~60 fps) mutta synkronointi toi siihen &#34;lagia&#34;.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>E90: Kysyn vaan...</title>
      <link>https://kennethfalck.net/2007/07/23/e90-kysyn-vaan.../</link>
      <pubDate>Mon, 23 Jul 2007 22:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/07/23/e90-kysyn-vaan.../</guid>
      <description>&lt;p&gt;...Kuka hemmetti Nokialla on edelleen niin tyhmä, että laittaa kuvien tiedostonimeen päivämäärän muodossa PPKKVVVV? Eikö se nyt mene kehittäjien kaaliin hiljalleen, että kuvat ei sorttaudu mitenkään järkevästi noin nimettyinä. Tämä on ärsyttänyt jo monta vuotta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kesälomapeli: Travian</title>
      <link>https://kennethfalck.net/2007/07/21/kes%C3%A4lomapeli-travian/</link>
      <pubDate>Sat, 21 Jul 2007 10:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/07/21/kes%C3%A4lomapeli-travian/</guid>
      <description>&lt;p&gt;Jostain syystä jäin heti koukkuun &lt;a href=&#34;http://s1.travian.fi&#34;&gt;Travianiin&lt;/a&gt;. Johtuneeko siitä, että peliä voi ainakin alussa pelata vain vähän kerrallaan päivässä, ja täytyy taas tulla heti seuraavana aamuna kuikuilemaan onko resurssit lisääntyneet... Mikä parasta, peli toimii puhtaasti HTML-pohjaisesti selaimessa, joten sitä voi pelata yhtä hyvin tietokoneella kuin kännykälläkin.&lt;/p&gt;&#xA;&lt;p&gt;Pelin ideana on aika perinteinen kylien rakentelu ja muiden pelaajien resurssien valtaaminen roomalaiseen/gallialaiseen aikakauteen sijoitettuna. Siitä tulee mieleen tietysti Civilization sekä myös BBS-aikojen &lt;a href=&#34;http://en.wikipedia.org/wiki/TradeWars_2002&#34;&gt;TradeWars&lt;/a&gt;, jota muuten voi edelleen pelata &lt;a href=&#34;http://www.thestardock.com/&#34;&gt;telnet-versiona&lt;/a&gt; online.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Boot Camp ja Vista iMacissa</title>
      <link>https://kennethfalck.net/2007/06/28/boot-camp-ja-vista-imacissa/</link>
      <pubDate>Thu, 28 Jun 2007 01:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/28/boot-camp-ja-vista-imacissa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_225.jpg&#39; title=&#39;blogimg/blog_225.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_225.jpg&#39; alt=&#39;blogimg/blog_225.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tulipa testattua myös &lt;a href=&#34;http://www.apple.com/macosx/bootcamp/&#34;&gt;Boot Campia&lt;/a&gt; ja pyöriihän se Vista iMacissa. Asennus oli vähän takkuinen. iMacin DVD-asema on ilmeisen kranttu levyistä, sillä se ei hyväksynyt toisaalla poltettua Vista-DVD:tä, eikä suostunut itsekään polttamaan iso-imageja joillekin DVD+R:ille. Myös Boot Camp -ajurilevyn joutui polttamaan kahteen kertaan ennen kuin toimi.&lt;/p&gt;&#xA;&lt;p&gt;Ensimmäisellä buutilla Vistakin sekoili ja antoi &#34;Window failed to start&#34; -virhettä, mutta lähti käyntiin kun irrotti hiiren. Sen jälkeen asennuksessa esiintyi vielä kummallista värilumisadetta, mutta lopuksi Vista päätyi nättiin 1920x1200-resoluutioon ja alkoi toimia ihan siististi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>iMac-ensituntumaa</title>
      <link>https://kennethfalck.net/2007/06/27/imac-ensituntumaa/</link>
      <pubDate>Wed, 27 Jun 2007 16:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/27/imac-ensituntumaa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_224.jpg&#39; title=&#39;blogimg/blog_224.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_224.jpg&#39; alt=&#39;blogimg/blog_224.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;TNT toimitti vihdoinkin uuden iMaccini tänään. Alkukokemukset olivat oikein positiivisia, pientä Software Updateen liittyvää katastrofia lukuunottamatta. Mac OS X yritti nimittäin heti päivittää itsensä versioon 10.4.10, ja jostain syystä (taustalla oli mm. iChat webcameineen pyörimässä) päivitys jäi jumiin, jonka jälkeen kone buuttaili vain kernel panicciin.&lt;/p&gt;&#xA;&lt;p&gt;No, system restore -levyillä asia korjaantui ja päivitys meni läpi. Sen jälkeen Macci toimii kuten voi odottaakin, eli koneen perusasetukset WLANia ja webcamilla napattua profiilikuvaa myöten hoituvat parissa minuutissa. Wizardi kyselee automaattisesti kaiken tarvittavan ensimmäisessä buutissa, ja sen jälkeen Macci on käyttövalmis.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nokia E90 Communicator -ensituntumaa</title>
      <link>https://kennethfalck.net/2007/06/26/nokia-e90-communicator-ensituntumaa/</link>
      <pubDate>Tue, 26 Jun 2007 18:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/26/nokia-e90-communicator-ensituntumaa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_223.jpg&#39; title=&#39;blogimg/blog_223.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_223.jpg&#39; alt=&#39;blogimg/blog_223.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Nokia &lt;a href=&#34;http://forum.nokia.com/devices/E70&#34;&gt;E70:ää&lt;/a&gt; pitkään käyttäneenä &lt;a href=&#34;http://forum.nokia.com/devices/E90_Communicator&#34;&gt;E90 Communicator&lt;/a&gt; tuntuu vähän isolta mutta miellyttävän jämäkältä. Paras uudistus on RAM-muistin tuplaaminen: E70:n 64MB loppuu aina heti kesken, ja nyt commussa on 128MB. Enemmänkin olisi varmaan voinut laittaa, mutta katsotaan mihin tämä riittää.&lt;/p&gt;&#xA;&lt;p&gt;Käyttöliittymästä tulee vähän sellainen olo, että vanha S60 3rd Ed GUI on runnottu väkisin communicatorin vaakanäyttöön ilman sen kummempia oivalluksia tai näytön hyödyntämistä. Leveä näyttö on kyllä kiva juttu, nyt kun käytössä on kunnon Safari/KHTML-pohjainen selain. Selain on vähän eri versiota kuin vanhat S60:t, se bugittaa yhä &lt;a href=&#34;http://www.webstandards.org/action/acid2/&#34;&gt;ACID2-testissä&lt;/a&gt; mutta hieman vähemmän tai eri tavalla.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Windows Safari ja iPhone-sovellukset</title>
      <link>https://kennethfalck.net/2007/06/25/windows-safari-ja-iphone-sovellukset/</link>
      <pubDate>Mon, 25 Jun 2007 23:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/25/windows-safari-ja-iphone-sovellukset/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_222.jpg&#39; title=&#39;blogimg/blog_222.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_222.jpg&#39; alt=&#39;blogimg/blog_222.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Uusimmassa &lt;a href=&#34;http://revision3.com/diggnation/2007-06-14happy&#34;&gt;Diggnation-jaksossa&lt;/a&gt; pohdiskellaan Safarin Windows-version käyttötarkoitusta, ja pojat näyttävät tulevan samaan lopputulokseen mihin itsekin uskon: Applen oleellinen tarkoitus Safarille Windowsissa on mahdollistaa web 2.0 -sovellusten kehitys iPhonelle. Applehan ei ole julkaissut mitään SDK:ta iPhonelle, eikä aio sallia sovellusten kehittämistä kooditasolla, vaan kaikki on tarkoitus tehdä HTML:llä ja AJAXilla.&lt;/p&gt;&#xA;&lt;p&gt;Itse uskon tähän kehityssuuntaan. C++- ja Java-sovellusten kehittäminen kännyköille on tosi raskasta monissa tapauksissa, joissa HTML riittäisi ihan hyvin. Olen melko vakuuttunut, että esimerkiksi JSR-rajapinnat puhelimen kontaktiluettelon, paikannuksen ym. toimintojen käsittelyyn tulevat jossain vaiheessa käytettäviksi myös JavaScriptistä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tulossa: iMac 24&#34;</title>
      <link>https://kennethfalck.net/2007/06/19/tulossa-imac-24/</link>
      <pubDate>Tue, 19 Jun 2007 14:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/19/tulossa-imac-24/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_221.jpg&#39; title=&#39;blogimg/blog_221.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_221.jpg&#39; alt=&#39;blogimg/blog_221.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Lähtipä sitten tilaukseen &lt;a href=&#34;http://www.apple.com/fi/imac/&#34;&gt;iMac 24&#34;&lt;/a&gt; kotikoneeksi. Kyllästyin lopullisesti tähän vanhaan itse koottuun Pentium 4 -rohjakkeeseen, joka kaatuilee melkein joka päivä ja pitää karmeaa meteliä WoWia pelatessa, kun vanha prosessori yrittää suoriutua kesän kuumuudessa. Olisi ollut kiva odottaa Blu-ray-asemaa, mutta niitä saattaa tulla Macceihin ehkä vasta ensi vuonna. :-/&lt;/p&gt;&#xA;&lt;p&gt;Kunhan uusi Macci saapuu, niin koti onkin lähes Windows-vapaa, sillä serverini pyörii Linuxilla ja mediakeskuksena olen käyttänyt 32&#34; televisioon kytkettyä Mac miniä MythTV:llä. Työn puolesta joutunee yhä bootcamppaamaan Vistaan ja/tai XP:hen, mutta toisaalta yhä useampi asia maailmassa tuntuu onnistuvan pelkällä webbiselaimella, jolloin Firefox ja ssh/vi toimivat yhtä hyvin Macissa kuin PC:ssäkin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Saunalahden pakotettu dataetu</title>
      <link>https://kennethfalck.net/2007/06/17/saunalahden-pakotettu-dataetu/</link>
      <pubDate>Sun, 17 Jun 2007 20:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/17/saunalahden-pakotettu-dataetu/</guid>
      <description>&lt;p&gt;Ajattelinpa tässä peruuttaa Saunalahden privaattiliittymääni tilaaman dataedun, kun nykyään on riittävästi käytettävissä datapakettia työnkin puolesta. Vaan eipäs onnistunut niin helposti.&lt;/p&gt;&#xA;&lt;p&gt;Ensinnäkään Saunalahden &lt;a href=&#34;https://oma.saunalahti.fi/&#34;&gt;web-hallinnassa&lt;/a&gt; ei ole minkäänlaista mahdollisuutta peruuttaa tilaamiaan lisäpalveluita. Sieltä voi kyllä tarkastella luetteloa tilaamistaan palveluista ja tilata niitä lisää parilla klikkauksella, mutta peruuttaminen ei vaan onnistu.&lt;/p&gt;&#xA;&lt;p&gt;No, sentään löytyi palautelomake, jonka kautta voi lähettää asiakaspalveluun pyynnön lisäpalvelun lopettamisesta. Vastauskin tuli muutaman päivän päästä, mutta se oli kieltävä. Dataetua ei voi lopettaa, koska se on uusiutuvasti määräaikainen aina vuodeksi kerrallaan (vaikka onkin kuukausimaksullinen!), ja olisi kuulemma joskus maaliskuussa pitänyt irtisanoa, jos olisi halunnut.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MediaWiki ja http-autentikaatio</title>
      <link>https://kennethfalck.net/2007/06/16/mediawiki-ja-http-autentikaatio/</link>
      <pubDate>Sat, 16 Jun 2007 21:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/16/mediawiki-ja-http-autentikaatio/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_219.jpg&#39; title=&#39;blogimg/blog_219.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_219.jpg&#39; alt=&#39;blogimg/blog_219.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Rakensinpa töihin MediaWiki-pohjaisen intranet-wikin ja integroin siihen Apache-http-autentikaation. Ideana on, että Apachen konfiguraatiossa voidaan määritellä joukko IP-verkkoja, joista pääsee wikiin ilman sisäänkirjautumista, ja muualta tullessa taas pitää autentikoitua tunnuksella ja salasanalla. Kun autentikoinnista vastaa Apache, ei tarvitse myöskään luottaa MediaWikin tietoturvaan.&lt;/p&gt;&#xA;&lt;p&gt;Asia olisi muuten helppo, mutta halusin, että käyttäjätunnukset tallennetaan vain yhteen paikkaan, eli MediaWikin omaan MySQL-tietokantaan. Silloin rekisteröintiin ja käyttäjien lisäämiseen voidaan käyttää MediaWikin toimintoja normaaliin tapaan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin saat Vistan tuusan nuuskaksi</title>
      <link>https://kennethfalck.net/2007/06/11/n%C3%A4in-saat-vistan-tuusan-nuuskaksi/</link>
      <pubDate>Mon, 11 Jun 2007 23:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/11/n%C3%A4in-saat-vistan-tuusan-nuuskaksi/</guid>
      <description>&lt;p&gt;Toistaiseksi helpoin havaitsemani tapa rikkoa Vista-asennus täysin:&lt;br/&gt;&#xA; - käynnistä &lt;a href=&#34;http://gparted.sourceforge.net/download.php&#34;&gt;GParted&lt;/a&gt; LiveCD:ltä&lt;br/&gt;&#xA; - pienennä ja siirrä Vistan NTFS-partitiota (ja suurenna samalla XP:tä vastaavasti)&lt;br/&gt;&#xA; - tallenna muutokset, niin XP toimii mainiosti, kun taas Vista ei enää käynnisty lainkaan (error loading winloader.exe tms)&lt;br/&gt;&#xA; - Vistaa voi kokeilla korjata sen asennuslevyn recoveryllä, mutta eipä auta&lt;/p&gt;&#xA;&lt;p&gt;Satuinpa tuollaisen operaation tekemään viime viikolla juuri ennen kuin lähdin reissuun. Oli iloinen yllätys, kun sitten buuttasin Vistaa paikan päällä kokouksessa.. Uudelleen asentamiseksihan se meni.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kokeiltua: Jaiku</title>
      <link>https://kennethfalck.net/2007/06/11/kokeiltua-jaiku/</link>
      <pubDate>Mon, 11 Jun 2007 21:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/11/kokeiltua-jaiku/</guid>
      <description>&lt;p&gt;Liityin minäkin kokeeksi &lt;a href=&#34;http://kennu.jaiku.com/&#34;&gt;Jaikuun&lt;/a&gt;, kun kaikki sitä hehkuttaa. Kiintoisa konsepti. Jaikuhan tavallaan aggregoi yhden ihmisen tuottamat eri RSS-feedit (blogit, kuvat jne) yhteen paikkaan. Ja lisäksi sinne voi heitellä lyhyitä irtolausahduksia muutenkin. Ja toisaalta kun määrittelee joukon Jaiku-kontakteja, niin voi seurata heidän juttujaan keskitetysti.&lt;/p&gt;&#xA;&lt;p&gt;Saas nähdä tuleeko tuota käytettyä... En ole kovinkaan innokas mielijohdebloggaaja, ja suurin osa jutuistani menee muutenkin firman sisäiseen blogiin nykyään.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Jaiku ja YouTuben RSS-feedi</title>
      <link>https://kennethfalck.net/2007/06/11/jaiku-ja-youtuben-rss-feedi/</link>
      <pubDate>Mon, 11 Jun 2007 20:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/11/jaiku-ja-youtuben-rss-feedi/</guid>
      <description>&lt;p&gt;Onpas ärsyttävää, että Jaikulle eivät kelpaa RSS-feedien suorat osoitteet. YouTube on nimittäin piilottanut omat RSS:nsä tehokkaasti: niihin ei ole mitään suoraa linkkiä, kun menee käyttäjän profiilisivulle. Sen sijaan pitää itse osata muodostaa esimerkiksi tämän näköinen URL:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.youtube.com/rss/user/kfalck/videos.rss&#34;&gt;http://www.youtube.com/rss/user/kfalck/videos.rss&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Nyt yritän sitten tehdä feikkisivua, jossa on vain &amp;lt;link rel=&#34;alternate&#34; type=&#34;application/rss+xml&#34;.../&amp;gt; tyyppinen tagi, mutta eipä sekään tunnu kelpaavan Jaikulle. Voi voi.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Oulussa jo kolmatta kertaa tänä vuonna</title>
      <link>https://kennethfalck.net/2007/06/11/oulussa-jo-kolmatta-kertaa-t%C3%A4n%C3%A4-vuonna/</link>
      <pubDate>Mon, 11 Jun 2007 17:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/11/oulussa-jo-kolmatta-kertaa-t%C3%A4n%C3%A4-vuonna/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_217.jpg&#39; title=&#39;blogimg/blog_217.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_217.jpg&#39; alt=&#39;blogimg/blog_217.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Istuskelenpa tässä taas vaihteeksi Oulun Hotelli Arinassa, syön Hesen kanasalaattia, ja yritän keksiä aihetta seuraavaan kolumniin, jonka deadline meni jo. Arina on muuten lempihotellini täällä. Se on konstailemattoman business-henkinen ja keskustassa lähellä kaikkea.&lt;/p&gt;&#xA;&lt;p&gt;Oli mielenkiintoista kävellä muutama kortteli ympäriinsä ja tutkailla, löytyisikö McDonaldsia. Nähtävästi Hesburger on kuitenkin Oulussa samassa statuksessa kuin macci keskieurooppalaisissa kaupungeissa, sillä hesejä tuli heti kaksi vastaan muutaman sadan metrin välein, kun taas macceja ei näy missään... Ei se mitään, salaatti onkin oikeastaan parempaa, vaikken niistä majoneesipainotteisista hampurilaisista taas niin välitä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uudet MacBookit DirectX 10 -yhteensopivia</title>
      <link>https://kennethfalck.net/2007/06/07/uudet-macbookit-directx-10-yhteensopivia/</link>
      <pubDate>Thu, 07 Jun 2007 22:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/07/uudet-macbookit-directx-10-yhteensopivia/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_214.jpg&#39; title=&#39;blogimg/blog_214.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_214.jpg&#39; alt=&#39;blogimg/blog_214.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Mielenkiintoinen havainto: Applen uusissa &lt;a href=&#34;http://www.apple.com/fi/macbookpro/&#34;&gt;MacBook Pro&lt;/a&gt; -malleissa on &lt;a href=&#34;http://www.nvidia.com/object/geforce_8m.html&#34;&gt;NVIDIA GeForce 8600M GT&lt;/a&gt; -näytönohjaimet, jotka ovat DirectX 10 -yhteensopivia.&lt;/p&gt;&#xA;&lt;p&gt;Alkaa tosissaan tehdä mieli dual-boottaavaa MacBook Prota, 160 GB levylle mahtuisi vielä nätisti Mac OS X:n rinnalle sekä XP että Vista. Tulisi vain se hemmetin 13&#34; malli.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Redrum Cosmic City</title>
      <link>https://kennethfalck.net/2007/06/03/redrum-cosmic-city/</link>
      <pubDate>Sun, 03 Jun 2007 14:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/06/03/redrum-cosmic-city/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_213.jpg&#39; title=&#39;blogimg/blog_213.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_213.jpg&#39; alt=&#39;blogimg/blog_213.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tulipa testattua &lt;a href=&#34;http://www.redrum.fi&#34;&gt;Redrum&lt;/a&gt;, eli viime viikonloppuna auennut Lil&#39; Tonyn tuore yökerho. Paikkahan tuli entisen Unikin tilalle, joskin sisäänkäynti on Vuorimiehenkadun puolelta.&lt;/p&gt;&#xA;&lt;p&gt;Ensituntuma oli vähän hyydyttävä, sillä Redrumin edessä oli yli puolen tunnin jono. Kyseessä oli vieläpä puhdas statusjono perisuomalaiseen tyyliin, eli sisätiloissa oli kuitenkin aivan väljää ja oikeastaan melko vähän porukkaa. Suosittelen ottamaan konjakkipullon taskuun, jos saapuu paikalle 23-24 jälkeen jonottamaan..&lt;/p&gt;&#xA;&lt;p&gt;Väsyneeseen fiilikseen ehkä vaikutti (oman olotilan lisäksi) sekin, että tupakointihan ei enää ole sallittua sisällä. Ehkä sen takia ovihenkilökuntakin vaikutti todella töykeältä, kun porukkaa ramppasi yhtä mittaa ulkona tupakoimassa ja erilaiset teinit yrittivät samalla luistaa sisään jonon ohi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Microsoftin IT-työkieltoehdotus</title>
      <link>https://kennethfalck.net/2007/05/29/microsoftin-it-ty%C3%B6kieltoehdotus/</link>
      <pubDate>Tue, 29 May 2007 10:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/05/29/microsoftin-it-ty%C3%B6kieltoehdotus/</guid>
      <description>&lt;p&gt;Täytyy kommentoida &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=30588&amp;amp;tyyppi=1&#34;&gt;tätä ehdotusta&lt;/a&gt;. Microsoft siis ehdottaa, että epäpäteviksi osoittaituneita ohjelmoijia ja muita IT-ammattilaisia pitäisi voida poistaa IT-alalta. Poistamisen tekisi jokin lautakunta samaan tapaan kuin lääkärien ja lakimiesten osalta.&lt;/p&gt;&#xA;&lt;p&gt;Lääkäreiden ja lakimiesten toimilupiahan otetaan pois sen takia, että firmasta potkut saanut epäpätevä lääkäri tai juristi voi edelleen toimia yksityisyrittäjänä ja aiheuttaa tuhoja asiakkailleen.&lt;/p&gt;&#xA;&lt;p&gt;Mutta Microsoft kai näkee asian niin, että IT-alalla yrityksellä ei ole mitään vastuuta työnantajana tai laadunvalvojana, vaan sen pitäisi voida palkata mitä tahansa hulttioita kadulta koodaamaan. Ja valtion tai muun vastaavan tahon pitäisi huolehtia siitä, että kyvyttömiltä otetaan koodauslupa pois.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Firefox-käyttäjiä 25%</title>
      <link>https://kennethfalck.net/2007/05/29/firefox-k%C3%A4ytt%C3%A4ji%C3%A4-25/</link>
      <pubDate>Tue, 29 May 2007 01:54:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/05/29/firefox-k%C3%A4ytt%C3%A4ji%C3%A4-25/</guid>
      <description>&lt;p&gt;Tätähän sietää melkein juhlistaa: &lt;a href=&#34;http://digg.com/software/Firefox_Reaches_25&#34;&gt;Digg raportoi&lt;/a&gt;, että &lt;a href=&#34;http://www.w3counter.com/globalstats.php?date=2007-05-20&#34;&gt;joka neljäs web-selailija&lt;/a&gt; käyttää Firefoxia. Ei ole tainnut IE7 lyödä itseään läpi...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lentokonetta kaappaamassa</title>
      <link>https://kennethfalck.net/2007/05/21/lentokonetta-kaappaamassa/</link>
      <pubDate>Mon, 21 May 2007 07:55:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/05/21/lentokonetta-kaappaamassa/</guid>
      <description>&lt;p&gt;Lensin tässä pitkästä aikaa ilman matkatavaroita Ouluun ja olin epähuomiossa kaapata lentokoneen Bossin deodorantti-stickillä. Onneksi valpas turvahenkilökunta esti tilanteen sijoittamalla vaarallisen aseeni suljettuun muovipussiin.&lt;/p&gt;&#xA;&lt;p&gt;Toisin sanoen, onneksi olkoon terroristit, olette voittaneet ja tehneet länsimaiden kansalaisten elämästä riittävän hankalaa. Olen nyt kypsä vaihtamaan Yhdysvaltain hallinnon, että päästään näistä naurettavuuksista eroon. Voisiko joku vain neuvoa, miten se saadaan vaihdettua?&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C1</title>
      <link>https://kennethfalck.net/2007/05/06/09-f9-11-02-9d-74-e3-5b-d8-41-56-c5-63-56-88-c1/</link>
      <pubDate>Sun, 06 May 2007 11:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/05/06/09-f9-11-02-9d-74-e3-5b-d8-41-56-c5-63-56-88-c1/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://pahis.blogspot.com/2007/05/kampanja-hd-dvdn-purkuavaimen-puolesta.html&#34;&gt;Yhtä parempi&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;pre style=&#34;font-size:48pt; font-weight:bold; margin-top:4px&#34;&gt;09 F9 11 02&#xA;9D 74 E3 5B&#xA;D8 41 56 C5&#xA;63 56 88 C1&#xA;&lt;/pre&gt;</description>
    </item>
    <item>
      <title>32&#34; LCD-TV tietokoneen näyttönä</title>
      <link>https://kennethfalck.net/2007/04/30/32-lcd-tv-tietokoneen-n%C3%A4ytt%C3%B6n%C3%A4/</link>
      <pubDate>Mon, 30 Apr 2007 00:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/04/30/32-lcd-tv-tietokoneen-n%C3%A4ytt%C3%B6n%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_208.jpg&#39; title=&#39;blogimg/blog_208.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_208.jpg&#39; alt=&#39;blogimg/blog_208.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tulipa kokeiltua hankkimaani &lt;a href=&#34;http://www.kfalck.net/blog.php?id=206&#34;&gt;Samsungia&lt;/a&gt; myös työpöydällä PC:n näyttönä. Se on puolen metrin etäisyydeltä katseltuna vaikuttavan kokoinen, mutta eipä televisio oikein tarkkuudeltaan ja ergonomialtaan työpöydälle silti sovi. Silmiä alkoi väsyttää jo muutaman tunnin jälkeen. En tiedä johtuiko se sitten liian isoista pikseleistä tai niiden epätarkkuudesta, tai kenties liian kovasta kirkkaudesta. Myös television saaminen sopivaan katselukulmaan on aika hankalaa ja se kuumenee paljon.&lt;/p&gt;&#xA;&lt;p&gt;Nyt tämä vanha 19&#34; ViewSonic VX912 tuntuu sitten todella pieneltä, mutta toisaalta miellyttävän tarkalta. Isompi näyttö voisi olla paikallaan, mutta suurin 1920x1200-resoluution LCD tuntuu olevan &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=9568&#34;&gt;27&#34;&lt;/a&gt;. Sen jälkeen hypätään jo &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=15795&#34;&gt;30&#34;&lt;/a&gt; kokoluokassa 2560x1600-resoluutioihin, mikä voi tehdä vähän tiukkaa näytönohjaimelle ja peleille. Toisaalta ehkäpä tuolla tarkkuudella skaalaus pienemmästä resoluutiostakin toimisi jo kohtuullisesti.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Microsoft Silverlight ja Expression</title>
      <link>https://kennethfalck.net/2007/04/17/microsoft-silverlight-ja-expression/</link>
      <pubDate>Tue, 17 Apr 2007 23:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/04/17/microsoft-silverlight-ja-expression/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_207.jpg&#39; title=&#39;blogimg/blog_207.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_207.jpg&#39; alt=&#39;blogimg/blog_207.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Microsoft näyttää käyvän tosissaan kilpailemaan Flashin ja Flash Videon kanssa uudella &lt;a href=&#34;http://msdn2.microsoft.com/en-us/asp.net/bb187358.aspx&#34;&gt;Silverlight&lt;/a&gt;-tekniikalla ja siihen liittyvällä &lt;a href=&#34;http://www.microsoft.com/expression/&#34;&gt;Expression Studio&lt;/a&gt; -suunnittelutyökalulla. Jännä nähdä miten ne yleistyvät webissä.&lt;/p&gt;&#xA;&lt;p&gt;Itselläni ei ole kovinkaan paljon rakkautta Flashia kohtaan: se on ärsyttävän suljettu formaatti enkä ole koskaan pitänyt Macromedian/Adoben Flash-editointityökaluista. Varsinkin Flash Videon proprietaarisuus on ikävää, kun nykymaailman soisi konvergoituvan ennemmin MPEG-4:n ja H.264:n suuntaan.&lt;/p&gt;&#xA;&lt;p&gt;Toisaalta Silverlightin pääfunktio lienee kaapata takaisin Flash Videon markkinaosuutta (joka on saavutettu YouTuben kaltaisten palveluiden myötä) ja korvata se taas Windows Medialla / VC-1:llä. Liekö sitten kovin paljon parempi vaihtoehto... No, ainakin XAML vaikuttaa melko avoimelta, mutta on se saanut &lt;a href=&#34;http://en.wikipedia.org/wiki/Extensible_Application_Markup_Language&#34;&gt;kritiikkiäkin&lt;/a&gt;. Ilmeisesti se on onnistuttu kuitenkin sitomaan tehokkaasti Microsoftin alustoihin.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uusi 720p-telkkari</title>
      <link>https://kennethfalck.net/2007/04/15/uusi-720p-telkkari/</link>
      <pubDate>Sun, 15 Apr 2007 19:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/04/15/uusi-720p-telkkari/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_206.jpg&#39; title=&#39;blogimg/blog_206.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_206.jpg&#39; alt=&#39;blogimg/blog_206.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tulipa ostettua vihdoinkin HD Ready -televisio: &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=1099&#34;&gt;Samsung LE-32R32&lt;/a&gt;. Mietin pitkään, hyppäsiinkö mieluummin suoraan Full HD -aikakaudelle  Blu-ray/HD-DVD-elokuvia ja muuta sisältöä ajatellen, mutta nyt tuntui olevan juuri hitusen liian aikaista ostaa 1080p-televisiota. 46&#34; maksaa vielä yli 2500 EUR ja 40&#34; taas tuntuu turhan pieneltä hyödyntääkseen koko resoluution. Siispä lähdin 720p-linjalle, kun halusinkin lähinnä halvan makuuhuone-tv:n.&lt;/p&gt;&#xA;&lt;p&gt;Samsungin halpismallissa on huonot puolensa - HDMI-liitännästä ei esimerkiksi saa läpi 1360x768-resoluutiota, vaan se toimii ainoastaan VGA:n kautta. Pieni pettymys, sillä Mac minissä olisi DVI-out, mutta toimiipa nuo SDTV-ohjelmat analogisenakin. MythTV:n Frontend toimii muuten varsin näppärästi Mac minissä ja television katselu pelittää WLANinkin yli ongelmitta. Ei tarvitse vetää makuuhuoneeseen antennia eikä ethernettiä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vista ja sleep-tila</title>
      <link>https://kennethfalck.net/2007/04/02/vista-ja-sleep-tila/</link>
      <pubDate>Mon, 02 Apr 2007 14:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/04/02/vista-ja-sleep-tila/</guid>
      <description>&lt;p&gt;Kukahan tarkalleen ottaen mahtoi olla se tyyppi Microsoftilla, joka speksasi Vistaan featuren, että kun sleep-moodissa olevasta läppäristä irrottaa hiiren, niin kone herää, ja näyttö jää pimeäksi eikä sitä saa enää päälle?&lt;/p&gt;&#xA;&lt;p&gt;Olisi vaan hiukan palautetta annettavana tämän featuren hyödyllisyydestä. Ja sleep-tilan toiminnasta muutenkin.&lt;/p&gt;&#xA;&lt;p&gt;Nimim. kun PowerBookin kannen laittaa kiinni, se menee sleep-tilaan, ja vasta kun sen avaa, se herää. Joka kerta. Pikkasen vaikea siirtyä Windows-maailmaan kun tuohon on tottunut Maccipuolella.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>XP vs. Vista: The Upgrade</title>
      <link>https://kennethfalck.net/2007/04/01/xp-vs.-vista-the-upgrade/</link>
      <pubDate>Sun, 01 Apr 2007 01:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/04/01/xp-vs.-vista-the-upgrade/</guid>
      <description>&lt;p&gt;Mainio &lt;a href=&#34;http://www.ctrlaltdel-online.com/comic.php?d=20070331&#34;&gt;sarjakuva&lt;/a&gt;, vastaa omia Vista-kokemuksia 100%:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.ctrlaltdel-online.com/comics/20070331.jpg&#34;&gt;&lt;img src=&#34;http://www.ctrlaltdel-online.com/comics/20070331.jpg&#34; width=&#34;100%&#34; height=&#34;100%&#34; border=&#34;0&#34; alt=&#34;CtrlAltDel&#34;/&gt;&lt;/a&gt;&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hakkerien vastaisku</title>
      <link>https://kennethfalck.net/2007/03/26/hakkerien-vastaisku/</link>
      <pubDate>Mon, 26 Mar 2007 12:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/03/26/hakkerien-vastaisku/</guid>
      <description>&lt;p&gt;Tämä on &lt;a href=&#34;http://www.itviikko.fi/page.php?page_id=46&amp;amp;news_id=20077488&#34;&gt;mainio tapaus&lt;/a&gt;: Suomalaiset hakkerit hukuttavat Nordea-phishaajat satunnaisgeneroituihin avainlukuihin. Jos tuon tekee oikein, niin on melkoista tuskaa huijareilla yrittää seuloa sieltä seasta oikeita lukuja.&lt;/p&gt;&#xA;&lt;p&gt;Kun vaan keksisi jotain vastaavaa kaikille spammereille, mikä neutraloisi roskapostin vaikutuksen.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vista: SendTo-valikkoon lisääminen</title>
      <link>https://kennethfalck.net/2007/03/22/vista-sendto-valikkoon-lis%C3%A4%C3%A4minen/</link>
      <pubDate>Thu, 22 Mar 2007 17:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/03/22/vista-sendto-valikkoon-lis%C3%A4%C3%A4minen/</guid>
      <description>&lt;p&gt;Tuli taas googlattua &lt;a href=&#34;http://www.tech-recipes.com/rx/2076/vista_add_to_sendto_menu&#34;&gt;näppärä temppu&lt;/a&gt; Vistaan: hiiren oikeasta napista aukeavaan SendTo-valikkoon voi lisätä asioita avaamalla explorerissa polun &#34;shell:sendto&#34; ja luomalla sinne pikakuvakkeita haluttuihin toimintoihin.&lt;/p&gt;&#xA;&lt;p&gt;Itse olen tottunut jo XP:ssä pitämään siellä ainakin Notepadia ja Wordpadia (write.exe), jolloin minkä tahansa tiedoston voi kätevästi avata niillä assosiaatioista riippumatta. XP:ssä SendTo-valikko oli vain hiukan erilaisessa polussa.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eduskuntavaalit ja vanha vaalitapa</title>
      <link>https://kennethfalck.net/2007/03/19/eduskuntavaalit-ja-vanha-vaalitapa/</link>
      <pubDate>Mon, 19 Mar 2007 14:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/03/19/eduskuntavaalit-ja-vanha-vaalitapa/</guid>
      <description>&lt;p&gt;Tulipa sitten äänestettyä. Oma ehdokas ei päässyt läpi täältä Helsingistä (ei ollut mikään yllätys, laskinkin antavani ääneni puolueelle), mutta &lt;a href=&#34;http://192.49.229.35/E2007/s/valitut/uusimaavpval.htm&#34;&gt;Kasvi pääsi&lt;/a&gt; jälleen Uudeltamaalta, onnittelut hänelle siitä ;-) Hyvä mies ja hyvä puolue. Toivon vain Vihreiltä realismia energiapolitiikassa tulevalla kaudella.&lt;/p&gt;&#xA;&lt;p&gt;Jälleen kerran olisin mielellään äänestänyt tiettyjä henkilöitä joko eri vaalipiireistä tai eri puolueista, mutta tämä suhteellinen ja alueellinen vaalitapamme estää sen. Ei minulla tosin parempaakaan mallia ole tarjolla, mutta vaalipiirit alkavat kyllä tuntua todella vanhanaikaisilta tässä globalisoituvassa maailmassa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sidebarin automaattisammutus</title>
      <link>https://kennethfalck.net/2007/03/08/sidebarin-automaattisammutus/</link>
      <pubDate>Thu, 08 Mar 2007 17:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/03/08/sidebarin-automaattisammutus/</guid>
      <description>&lt;p&gt;Vistan Sidebar tosiaan häiritsee World of Warcraftia. Teinpä siis tällaisen batch-tiedoston sammuttamaan ja käynnistämään Sidebarin automaattisesti uudelleen, kun pelaa WoWia:&lt;/p&gt;&#xA;&lt;pre style=&#34;padding:0.4em; background:#f0f0f0; border: 1px dashed #c0c0c0&#34;&gt;@echo off&#xA;taskkill /IM sidebar.exe /F&#xA;&#34;%ProgramFiles%\World of Warcraft\WoW.exe&#34;&#xA;start &#34;Sidebar&#34; &#34;%ProgramFiles%\Windows Sidebar\sidebar.exe&#34;&#xA;&lt;/pre&gt;&#xA;&lt;p&gt;Samalla tuli löydettyä Windowsin taskkill-komento, jonka olemassaolosta en aiemmin tiennytkään.&lt;/p&gt;&#xA;&lt;p&gt;PS. Älkää uskoko huhuja, että .bat-tiedostoissa ja .cmd-tiedostoissa olisi jotain eroa. Molemmat ajautuvat cmd.exe-tulkilla sekä XP:ssä että Vistassa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vistasta unohtunut moniajo</title>
      <link>https://kennethfalck.net/2007/03/07/vistasta-unohtunut-moniajo/</link>
      <pubDate>Wed, 07 Mar 2007 23:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/03/07/vistasta-unohtunut-moniajo/</guid>
      <description>&lt;p&gt;Olen muutaman päivän tuskaillut World of Warcraftin suorituskyvyn kanssa Vistassa. Luettuani &lt;a href=&#34;http://faq.wow-europe.com/en/article.php?id=009&#34;&gt;Blizzardin ohjeen&lt;/a&gt; totesin, että poistamalla Aero-efektit ja sammuttamalla Windows Sidebarin suorituskyky parani selvästi. FPS:n muuttumista on hankala mitata kovin tieteellisesti, mutta ruutua horisontaalisesti pyöritellessä tapahtuvat &#34;sahaamiset&#34; tuntuivat katoavan. Yleensä FPS on 30-40, mutta sahatessa se tippuu hetkellisesti alle 20:een.&lt;/p&gt;&#xA;&lt;p&gt;Kokeilin tässä myös asentaa iTunes 7.1:n, mutta se on ilmeisestikin myrkkyä World of Warcraftille. iTunes on Vistassa jo sinänsä kohtuuttoman tahmainen ja WoWia se hidastaa entisestäänkin taustalla soidessaan. Ja tämä siitä huolimatta, että pysäytin ne iTunesin turhat taustaprosessoinnit (album art, gapless playback, jne).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vistan ja Mac OS X:n ero</title>
      <link>https://kennethfalck.net/2007/02/28/vistan-ja-mac-os-xn-ero/</link>
      <pubDate>Wed, 28 Feb 2007 13:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/02/28/vistan-ja-mac-os-xn-ero/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_198.jpg&#39; title=&#39;blogimg/blog_198.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_198.jpg&#39; alt=&#39;blogimg/blog_198.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Microsoftilla ja Applella on mielenkiintoinen ero suhtautumisessaan käyttöjärjestelmäpäivityksiin. Microsoft lähtee aina siitä, että kun uusi käyttisversio asennetaan, niin sen täytyy olla vähän &#34;epämukava&#34;. Käyttäjän pitää omaksua uusia, vieraan tuntuisia muutoksia käyttöliittymään, ja uskoa että ne parantavat käytettävyyttä. Tottumiseen voi mennä viikkokausia, eikä siltikään ole vielä ihan varma olo, onko käytettävyys oikeasti parantunut, mutta siihen täytyy vain uskoa.&lt;/p&gt;&#xA;&lt;p&gt;Applella taas asia on juuri päin vastoin. Kun käyttispäivitys tulee, sen koko idea on siinä, että käyttäjä kokee heti saavansa jotain vastinetta rahalleen. Vanhoja paradigmoja ei hylätä, ei ainakaan siten, että käyttäjä jäisi tyhjän päälle roikkumaan ja olisi sormi suussa uusien käyttöliittymäkonseptien edessä. (&#34;Mihin kaikki valikot katosivat?&#34;) Apple pyrkii siis aina enemmän evoluutioon kuin revoluutioon ja käyttäjän miellyttämiseen eikä ärsyttämiseen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pikavaihto Vistan ja XP:n välillä</title>
      <link>https://kennethfalck.net/2007/02/25/pikavaihto-vistan-ja-xpn-v%C3%A4lill%C3%A4/</link>
      <pubDate>Sun, 25 Feb 2007 12:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/02/25/pikavaihto-vistan-ja-xpn-v%C3%A4lill%C3%A4/</guid>
      <description>&lt;p&gt;Boottaan nykyään usein koneita Vistan ja Windows XP:n välillä, ja joskus on hermostuttavaa odotella BIOSin latautumista vaihtaakseen käynnistettävää käyttöjärjestelmää oikeassa kohdassa. Asia hoituu helpommin, kun tekee työpöydälle pikakuvakkeen, joka vaihtaa ensin oletuskäyttöjärjestelmän ja boottaa sitten sinne.&lt;/p&gt;&#xA;&lt;p&gt;Vista ei käytä enää boot.ini-tiedostoa. Sen sijaan käyttöjärjestelmävalinta tallennetaan nykyään &lt;a href=&#34;http://technet2.microsoft.com/WindowsVista/en/library/93da3ba2-f2f1-6a6d-1933-d41b12ab8a1bf043.mspx?mfr=true&#34;&gt;BCD:hen &lt;/a&gt; (Boot Configuration Data). Sitä voi editoida BCDEDIT.EXE -komennolla, joka löytyy Vista-partition \Windows\system32-hakemistosta. BCDEDIT toimii myös Windows XP:n alta ajettuna, joten on helppo tehdä muutama batch-tiedosto, joilla pääsee aina boottaamaan toisesta käyttöjärjestelmästä toiseen:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Näin se sensuuri leviää</title>
      <link>https://kennethfalck.net/2007/02/25/n%C3%A4in-se-sensuuri-levi%C3%A4%C3%A4/</link>
      <pubDate>Sun, 25 Feb 2007 11:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/02/25/n%C3%A4in-se-sensuuri-levi%C3%A4%C3%A4/</guid>
      <description>&lt;p&gt;Kun Susanna Huovinen ajoi läpi &lt;a href=&#34;http://www.finlex.fi/fi/laki/ajantasa/2006/20061068&#34;&gt;lapsipornosensuurilakia&lt;/a&gt;, monen huolenaiheena oli, että vastaavanlainen nettisensuuri alkaa hiljalleen levitä myös muille alueille. Nyt on sitten käymässä juuri näin: &lt;a href=&#34;http://www.hs.fi/kotimaa/artikkeli/1135225376004&#34;&gt;Nettipokerin pelaamista&lt;/a&gt; halutaan rajoittaa.&lt;/p&gt;&#xA;&lt;p&gt;Aiheen nosti esille Kai Puolamäki &lt;a href=&#34;http://www.effi.org/blog/kai-2007-02-25.html&#34;&gt;EFFIn blogissa&lt;/a&gt;. Nettipokerin rajoittamista ajaa muuten Rahapelifoorumi, jonka toimintaa ohjaa &lt;a href=&#34;http://www.peluuri.fi/rahapelit_ja_yhteiskunta/rahapelifoorumi/&#34;&gt;Kari Rajamäen&lt;/a&gt; kokoama ministeriryhmä. Eikö olekin jännää, miten samat nimet putkahtavat aina esille näiden sensuuritapausten taustalta?&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>V-sensuuria</title>
      <link>https://kennethfalck.net/2007/02/23/v-sensuuria/</link>
      <pubDate>Fri, 23 Feb 2007 00:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/02/23/v-sensuuria/</guid>
      <description>&lt;p&gt;Olen vähän ajatellutkin, ettei V-lehti voi sopia Sanoman kulttuuriin, ja &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=29761&#34;&gt;tässä se todiste&lt;/a&gt; sitten tuli. Eihän kiistanalaisista asioista nyt sentään voi puhua rehellisesti ja avoimesti, vaan kyllä se on pidettävä kiinni Virallisesta Linjasta katkeraan loppuun saakka.&lt;/p&gt;&#xA;&lt;p&gt;Ei tämä toki yllättänyt, Veen &lt;a href=&#34;http://www.vee.fi/profiilit/&#34;&gt;käyttäjägalleria&lt;/a&gt; on jo peräti 164 rekisteröityneellä käyttäjällään aika mainio osoitus siitä, ettei joitain asioita voi tehdä väkisin. Ei vaikka kuinka huolella suunnittelisi etukäteen Excel-businessplanit ja laskisi bannerimainostuotot.&lt;/p&gt;&#xA;&lt;p&gt;No, nykyään kiinnostavia asioita ei tarvitse edes julkaista netissä, ne kyllä &lt;a href=&#34;http://ihku.org/~jesse/v.pdf&#34;&gt;löytyvät sieltä&lt;/a&gt; muutenkin.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Internet-tablettien idea</title>
      <link>https://kennethfalck.net/2007/02/20/internet-tablettien-idea/</link>
      <pubDate>Tue, 20 Feb 2007 23:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/02/20/internet-tablettien-idea/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_194.jpg&#39; title=&#39;blogimg/blog_194.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_194.jpg&#39; alt=&#39;blogimg/blog_194.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Osui silmiin &lt;a href=&#34;http://www.internettablettalk.com/2007/02/13/the-internet-repeat-internet-tablet/&#34;&gt;kiintoisa keskustelu&lt;/a&gt; siitä, miksei Nokia N800:n ja 770:n kaltaisissa Internet-tableteissa ole kovinkaan paljon sisäänrakennettuja sovelluksia. Tämä vaikuttaisi nimittäin olevan tietoinen valinta, sillä tablettien ideana onkin viedä sovellukset mahdollisimman pitkälti nettiin ja käyttää niitä selaimella.&lt;/p&gt;&#xA;&lt;p&gt;Minusta idea on validi, joskin olen vähän skeptinen käytännön toimivuudesta. Selaimen pitää olla todella stabiili ja ketterä, jotta sitä viitsii käyttää kalenterina. Ja tietysti kalenterin käyttöliittymän täytyy olla hyvä. Esimerkiksi Exchange-palvelimen Outlook Web Access on aika onneton Firefoxilla, kännykällä tai N800:lla käytettynä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Naamavaalikone</title>
      <link>https://kennethfalck.net/2007/02/14/naamavaalikone/</link>
      <pubDate>Wed, 14 Feb 2007 06:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/02/14/naamavaalikone/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.naama.fi&#34;&gt;Naamavaalikoneen&lt;/a&gt; tulos:&lt;/p&gt;&#xA;&lt;p&gt;Taidan olla aika piraatti ;-) (&lt;a href=&#34;http://rauhala.name/&#34;&gt;Mikolla&lt;/a&gt; on kuitenkin ihan oikeat ajatukset taustalla.)&lt;/p&gt;&#xA;&lt;p&gt;PS. Hyvää ystävänpäivää kaikille.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Bassoradio toimii</title>
      <link>https://kennethfalck.net/2007/02/11/bassoradio-toimii/</link>
      <pubDate>Sun, 11 Feb 2007 12:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/02/11/bassoradio-toimii/</guid>
      <description>&lt;p&gt;Täytyypä todeta, että &lt;a href=&#34;http://www.basso.fi/radio/&#34;&gt;Bassoradio&lt;/a&gt; (102.8 MHz) on ensimmäinen radiokanava, jonka viitsii jättää päälle senkin jälkeen, kun kelloradio on herättänyt aamulla. Olen nimittäin yleensä tottunut heräämään &lt;a href=&#34;http://www.kiss.fi/&#34;&gt;Kissiin&lt;/a&gt;, mikä on tarkoittanut käytännössä niiden samojen hittirenkutusten kuuntelua yhä uudelleen ja Vappu Pimiän joka-aamuinen ylipirteyskin on vähän menettänyt makunsa. &lt;a href=&#34;http://www.youtube.com/watch?v=FHUvJujRhLw&#34;&gt;Edu Kehäkettusella&lt;/a&gt; ja &lt;a href=&#34;http://www.basso.fi/radio/index.php?page=dj&amp;amp;djid=83&#34;&gt;Roberto Rodriguezilla&lt;/a&gt; on paljon mielenkiintoisempaa läppää. :)&lt;/p&gt;&#xA;&lt;p&gt;Bassohan palasi taajuuksille vuodenvaihteen radiolupien uudelleenjaon jälkeen, jolloin myös oman työntantajani &lt;a href=&#34;http://www.radioaalto.fi/&#34;&gt;Radio Aalto&lt;/a&gt; ja &lt;a href=&#34;http://www.radiorock.fi/&#34;&gt;Radio Rock&lt;/a&gt; aloittivat. Noita ei ole tullut kauheasti kuunneltua, mutta enpä taida olla kohderyhmääkään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miksi Symbian on huono</title>
      <link>https://kennethfalck.net/2007/02/09/miksi-symbian-on-huono/</link>
      <pubDate>Fri, 09 Feb 2007 10:57:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/02/09/miksi-symbian-on-huono/</guid>
      <description>&lt;p&gt; &lt;a href=&#34;http://www.roughlydrafted.com/RD/RDM.Tech.Q1.07/6856C375-FE4E-4BC8-B753-B48AF3BD8B30.html&#34;&gt;Tämä artikkeli&lt;/a&gt; on mainio yhteenveto kaikista niistä Symbianin ongelmista, jotka tekevät siitä erittäin tuskallisen ja työlään käyttöjärjestelmän sovelluskehityksen kannalta. Artikkelissa on lueteltu kaikki ne Symbianin ärsyttävät &#34;ominaisuudet&#34;:&lt;ul&gt;&lt;li&gt;Epästandardit C++ exceptionit (leave ja manuaalinen cleanup stack)&lt;/li&gt;&lt;li&gt;Äärettömän hankala merkkijonojen käsittely (descriptorit)&lt;/li&gt;&lt;li&gt;Monimutkainen säikeistys (active objectit)&lt;/li&gt;&lt;li&gt;Huonot SDK:t (oma joka sukupolvelle, eivät pysy ajan tasalla, riippuvaisia vanhoista 3rd party -sovelluksista)&lt;/li&gt;&lt;li&gt;Symbian Signed -tietoturva (pakollinen testaus/allekirjoitus)&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&#xA;&lt;p&gt;Olen henkilökohtaisesti törmännyt kaikkiin näistä asioista monesti, ja joka kerta ne hankaloittavat työskentelyä. Lähes mikä tahansa projekti kannattaa aina mieluummin tehdä J2ME-Javalla, jos se vain on teknisesti mahdollista. Jatkossa tosin kiinnostaa kasvavassa määrin myös puhelinten webbiselaimen hyödyntäminen, sillä S60 3rd Edition FP1:ssä alkaa olla jo ihan oikeaa tukea &#34;Web 2.0&#34; -ominaisuuksille&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vista security vs. Mac security</title>
      <link>https://kennethfalck.net/2007/02/08/vista-security-vs.-mac-security/</link>
      <pubDate>Thu, 08 Feb 2007 10:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/02/08/vista-security-vs.-mac-security/</guid>
      <description>&lt;p&gt;Ihan mainio mainos Applelta, Vistan UAC:lle vinoillen ;-) Vista-käyttäjänä voin sanoa, että osuu aivan nappiin.&lt;/p&gt;&#xA;&lt;p&gt;&lt;object width=&#34;425&#34; height=&#34;350&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/p79F-qdCCDU&#34;&gt;&lt;/param&gt;&lt;param name=&#34;wmode&#34; value=&#34;transparent&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/p79F-qdCCDU&#34; type=&#34;application/x-shockwave-flash&#34; wmode=&#34;transparent&#34; width=&#34;425&#34; height=&#34;350&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Burning Crusade</title>
      <link>https://kennethfalck.net/2007/01/28/the-burning-crusade/</link>
      <pubDate>Sun, 28 Jan 2007 16:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/28/the-burning-crusade/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_189.jpg&#39; title=&#39;blogimg/blog_189.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_189.jpg&#39; alt=&#39;blogimg/blog_189.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;No nyt on pelattu &lt;a href=&#34;http://www.wow-europe.com/en/&#34;&gt;Burning Crusaden&lt;/a&gt; Draenei-osuus läpi. Hupia kesti muutamaksi päiväksi (played 1 day, 8 hours, 58 minutes, 38 seconds) levelille 22 asti. Sitten äkkiä levelöimään &lt;a href=&#34;http://darkportal.net/view.php?nick=13909&#34;&gt;shamaani&lt;/a&gt; 60:ksi niin pääsee jatkamaan uusien alueiden tutkimista..&lt;/p&gt;&#xA;&lt;p&gt;On tämä laajennus hintansa väärti, Azuremyst Islen ja Bloodmyst Islen questit olivat piristävää vaihtelua vanhaan WoWiin. Eivät edes olleet pelkkää &#34;tapa 1000 örkkiä&#34; meininkiä, vaan ihan toimivaa kokonaisjuonta ja uusia ideoita. Itseäni se &lt;a href=&#34;http://en.wikipedia.org/wiki/The_Exodar&#34;&gt;&#34;avaruusaluksen haaksirikko&#34;&lt;/a&gt;-idea ainakin jaksaa kiehtoa.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kari Rajamäki</title>
      <link>https://kennethfalck.net/2007/01/25/kari-rajam%C3%A4ki/</link>
      <pubDate>Thu, 25 Jan 2007 17:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/25/kari-rajam%C3%A4ki/</guid>
      <description>&lt;p&gt;Onko tuo heppu oikeasti ihan out-of-control? Ainakin mediasta saa &lt;a href=&#34;http://www.hs.fi/kotimaa/artikkeli/Kokoomus+vaati+turhaan+Rajam%C3%A4elt%C3%A4+anteeksipyynt%C3%B6%C3%A4/1135224576803?ref=rss&#34;&gt;Rajamäen touhuista&lt;/a&gt; sellaisen mielikuvan, että kaveri on täysin seonnut kontrollifriikki perinteiseen USA:n poliisivaltiomalliin.&lt;/p&gt;&#xA;&lt;p&gt;Viimeksihän oli tämä &lt;a href=&#34;http://www.kfalck.net/blog.php?id=156&#34;&gt;jupakka&lt;/a&gt;, jossa Rajamäki halusi ennakkosensuuria Internettiin. Epäilemättä julki tulevat asiat ovat vain jäävuoren huippu siitä, mitä kaikkea Sisäasiainministeriössä puuhaillaan.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lisää 802.11n-ongelmia</title>
      <link>https://kennethfalck.net/2007/01/22/lis%C3%A4%C3%A4-802.11n-ongelmia/</link>
      <pubDate>Mon, 22 Jan 2007 22:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/22/lis%C3%A4%C3%A4-802.11n-ongelmia/</guid>
      <description>&lt;p&gt;Näyttääpä siltä, että HP:n sisäänrakennettu WLAN (Intel PRO/Wireless 3945ABG) ei tule kovin hyvin toimeen Linksysin WRT300N-purkin kanssa. Toisin sanoen ongelmia piisaa, kun yrittää integroida 802.11n:n osaksi legacy-verkkoa.&lt;/p&gt;&#xA;&lt;p&gt;Tässä omassa tapauksessani ongelma ilmenee siten, että verkkoyhteys katkeaa muutamaksi sekunniksi aina silloin tällöin. Hyvin ärsyttävää, koska tämä sekoittaa myös VPN:n, PC Suite -synkronointi tökkii ja tietysti kaikki irc- ja messenger-yhteydet katkeavat.&lt;/p&gt;&#xA;&lt;p&gt;No, tämä on tätä early adaptorin arkea.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>iTunes avataan väkisin, entä WMA?</title>
      <link>https://kennethfalck.net/2007/01/22/itunes-avataan-v%C3%A4kisin-ent%C3%A4-wma/</link>
      <pubDate>Mon, 22 Jan 2007 17:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/22/itunes-avataan-v%C3%A4kisin-ent%C3%A4-wma/</guid>
      <description>&lt;p&gt; &lt;a href=&#34;http://www.itviikko.fi/page.php?page_id=15&amp;amp;news_id=20071708&#34;&gt;ITviikko uutisoi&lt;/a&gt;: Suomi, Norja, Saksa ja Ranska vaativat, että Applen iTunes-kaupasta ostettujen musiikkikappaleiden pitää soida muidenkin valmistajien soittimissa. &lt;/p&gt;&#xA;&lt;p&gt;Jostain syystä vastaavaa vaatimusta ei ole kuitenkaan esitetty DRM-suojattuja WMA-tiedostoja myyville musiikkikaupoille. Miksei? Nekään eivät soi Applen iPodeissa, eli tilanne on tällä hetkellä tasapeli.&lt;/p&gt;&#xA;&lt;p&gt;Vaatimuksessa itse asiassa puhutaan käyttöehtojen muuttamisesta, mutta eihän DRM-suojauksen purkamista voi sallia käyttöehdoilla. Se on nykyään lailla kiellettyä, kiitos Tanja Saarelan. Siispä täytyy tulkita, että kuluttajaviranomaiset ovat vaatimassa Applea poistamaan koko DRM-suojauksen musiikista. Aika rankkaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Windows XP ja WPA2 - ei näin</title>
      <link>https://kennethfalck.net/2007/01/17/windows-xp-ja-wpa2-ei-n%C3%A4in/</link>
      <pubDate>Wed, 17 Jan 2007 21:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/17/windows-xp-ja-wpa2-ei-n%C3%A4in/</guid>
      <description>&lt;p&gt;Tulipa todettua se käytännössä: Windows XP SP2 kaikkine päivityksineenkään ei todellakaan tue WPA2-salausta WLAN-verkoissa. Oli vaikea uskoa, koska kaikki mahdolliset muut välineet Nokian kännyköitä ja Macceja myöten sitä tukevat. Mutta kun päätin vihdoinkin konfiguroida kaikki tukiasemat käyttämään turvallista WPA2/AES-salausta, niin tämä tuli eteen.&lt;/p&gt;&#xA;&lt;p&gt;Tuki on tietysti mahdollista lisätä asentamalla &lt;a href=&#34;http://www.microsoft.com/downloads/details.aspx?familyid=662BB74D-E7C1-48D6-95EE-1459234F4483&amp;amp;displaylang=en&#34;&gt;KB893357&lt;/a&gt;. Mutta mikä ihmeen syy voi olla jättää se pois automaattisista päivityksistä ja service packeista? Nyt maailma on sitten täynnä Windowseja, jotka eivät pysty liittymään WPA2-suojattuihin WLAN-verkkoihin, jos sellaista vaikka vierailijoille haluaisi tarjota. Onkohan Microsoftilla joku erityinen epäyhteensopivuusosasto, joka virittää tällaisia ansoja kyseisen yhtiön tuotteisiin...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mistä kansanedustajaehdokas vaaleihin?</title>
      <link>https://kennethfalck.net/2007/01/15/mist%C3%A4-kansanedustajaehdokas-vaaleihin/</link>
      <pubDate>Mon, 15 Jan 2007 14:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/15/mist%C3%A4-kansanedustajaehdokas-vaaleihin/</guid>
      <description>&lt;p&gt;Henrik Ingon Avoin Elämä -blogista löytyy &lt;a href=&#34;http://avoinelama.fi/uutta.php#76&#34;&gt;mielenkiintoinen katsaus&lt;/a&gt; eduskuntavaalien ehdokkaiden ja puolueiden suhtautumisesta tietoyhteiskunta-asioihin. Kirjoitus ei ole mitenkään erityisen neutraali ;-) mutta kannattaa lukaista läpi, kun miettii omaa ehdokastaan.&lt;/p&gt;&#xA;&lt;p&gt;Ainakin selkeitä No No -nimiä löytyy, kuten tietysti koko &lt;a href=&#34;http://fi.wikipedia.org/wiki/Suomen_tekij%C3%A4noikeus-_ja_rikoslain_muutos&#34;&gt;tekijänoikeusskandaalin &lt;/a&gt;junaillut Tanja {Saarela,Karpela,Vienonen} sekä Internetin sensuroinnissa kunnostautuneet Kari Rajamäki, Leena Luhtanen ja Susanna Huovinen.&lt;/p&gt;&#xA;&lt;p&gt;Hyvien puolella taas ovat ainakin &lt;a href=&#34;http://www.tapanitarvainen.fi/&#34;&gt;Tapani Tarvainen&lt;/a&gt; ja &lt;a href=&#34;http://kasvi.org/&#34;&gt;Jyrki J. J. Kasvi&lt;/a&gt;, joilla on selkeä käsitys tietoyhteiskunnan perusasioista ja kehittämisestä. Vaalipiirit ovat vaan monille väärät. Mikä nostaa taas kerran esille kysymyksen siitä, onko &lt;a href=&#34;http://kasvi.org/index.php?2022&#34;&gt;maantieteellisessä vaalipiirijaossa&lt;/a&gt; edes mitään järkeä nykyään?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uraani loppuu</title>
      <link>https://kennethfalck.net/2007/01/13/uraani-loppuu/</link>
      <pubDate>Sat, 13 Jan 2007 13:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/13/uraani-loppuu/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_183.gif&#39; title=&#39;blogimg/blog_183.gif&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_183.gif&#39; alt=&#39;blogimg/blog_183.gif&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kasvi &lt;a href=&#34;http://www.kasvi.org/index.php?2002&#34;&gt;blogittaa uraanin loppumisesta&lt;/a&gt;. Pointti on, että ihan niin kuin öljy loppuu ennen pitkää, samoin käy uraanille. Sitä ei siis ilmesty tyhjästä, vaan pitää louhia maaperästä. Siinä mielessä fissiovoimaloilla saadaan ehkä vain joitakin kymmeniä vuosia lisäaikaa öljyyn nähden, ellei &lt;a href=&#34;http://fi.wikipedia.org/wiki/Ydinpolttoainekierto#Ydinpolttoaine_luonnonvarana&#34;&gt;louhinta muutu taloudellisemmaksi&lt;/a&gt;. Jos rahalla ei olisi väliä, uraania (ja &lt;a href=&#34;http://www.iaea.or.at/inis/aws/fnss/fulltext/31030535.pdf&#34;&gt;toriumia&lt;/a&gt;) riittäisi tuhansiksi vuosiksi.&lt;/p&gt;&#xA;&lt;p&gt;Toinen juttu on uraanin louhinnan &lt;a href=&#34;http://www.ydinvoima.net/muuta/uraanin_louhinta.html&#34;&gt;aiheuttama saaste&lt;/a&gt;, joka usein unohdetaan mainita &lt;a href=&#34;http://fi.wikipedia.org/wiki/Ydinj%C3%A4te&#34;&gt;ydinjätteen&lt;/a&gt; ohella. Reaktoreistahan syntyy varsinaista ydinjätettä aika vähän, ja sitäkin voidaan &lt;a href=&#34;http://fi.wikipedia.org/wiki/Ydinpolttoainekierto#J.C3.A4lleenk.C3.A4sittely&#34;&gt;kierrättää uusiokäyttöön&lt;/a&gt; tai &lt;a href=&#34;http://fi.wikipedia.org/wiki/Hy%C3%B6t%C3%B6reaktori&#34;&gt;hyödyntää paremmin&lt;/a&gt;, mutta louhiminen on paljon likaisempi prosessi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>300 Mbit/s WLAN</title>
      <link>https://kennethfalck.net/2007/01/10/300-mbit/s-wlan/</link>
      <pubDate>Wed, 10 Jan 2007 16:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/10/300-mbit/s-wlan/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_182.jpg&#39; title=&#39;blogimg/blog_182.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_182.jpg&#39; alt=&#39;blogimg/blog_182.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tulipa viriteltyä käyttöön Draft-N-WLAN-verkko, eli käytännössä Linksysin &lt;a href=&#34;http://www-fi.linksys.com/servlet/Satellite?c=L_Product_C2&amp;amp;childpagename=FI%2FLayout&amp;amp;cid=1150491144110&amp;amp;pagename=Linksys%2FCommon%2FVisitorWrapper&#34;&gt;WRT300N&lt;/a&gt;-tukiasema ja &lt;a href=&#34;http://www-fi.linksys.com/servlet/Satellite?c=L_Product_C2&amp;amp;childpagename=FI%2FLayout&amp;amp;cid=1144912144762&amp;amp;pagename=Linksys%2FCommon%2FVisitorWrapper&#34;&gt;WPC300N&lt;/a&gt;-PCMCIA-kortti.  Näillä pitäisi siis irrota teoreettinen 300 Mbit/s nopeus langattomilla lähietäisyyksillä.&lt;/p&gt;&#xA;&lt;p&gt;No, aluksi PC otti vain 54 Mbit/s yhteyden 20 MHz -kaistaleveydellä, eli käytännössä saman kuin 802.11g-verkoissa. Tukiaseman asetuksista oli enabloitu 40 MHz, mutta kävi ilmi, että WPA-TKIP-salaus ei jostain syystä toimi suurella nopeudella. Salauksen muuttaminen AES:iksi korjasi asian, ja sen jälkeen PC sai 300 Mbit/s (40 MHz) yhteyden tukiasemaan.&lt;/p&gt;&#xA;&lt;p&gt;Etsiessäni ongelmaan ratkaisua netistä löysin myös vihjeen siitä, että WRT300N-tukiasemien antennien pitäminen täsmälleen samassa tasossa rinnakkain (kuten kuvassa) voi aiheuttaa radioaaltojen kumoutumista, jolloin tukiasema alkaa nostaa lähetystehoa ja pudottaa nopeutta. En tiedä oliko väitteessä perää, mutta laitoin antennit kuitenkin hieman eri kulmiin, ja toistaiseksi on toiminut hyvin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Deksibuprofeenin teho huijausta?</title>
      <link>https://kennethfalck.net/2007/01/08/deksibuprofeenin-teho-huijausta/</link>
      <pubDate>Mon, 08 Jan 2007 20:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/08/deksibuprofeenin-teho-huijausta/</guid>
      <description>&lt;p&gt;Osuipa silmiin &lt;a href=&#34;http://www.mediuutiset.fi/doc.te?f_id=1024586&#34;&gt;tällainen artikkeli&lt;/a&gt;, jonka mukaan deksibuprofeenin teho nopeana särkylääkkeenä onkin huuhaata. En ole oikein asiantuntija kemiassa tai lääketieteessä, mutta kirjoittajan mukaan deksibuprofeeni ei toimikaan elimistössä suoraan kipua lievittävänä aineena, vaan muuttuu välillä kahdeksi eri enantiomeeriksi. (En oikein saa selvää, mitä nämä kaksi enantiomeeriä sitten ovat, juttu ei vaikuta kovin tieteelliseltä.)&lt;/p&gt;&#xA;&lt;p&gt;Mahtaakohan jossain löytyä lisäinfoa maallikoille tästä aiheesta? Olen tähän asti ostanut aina Dexittiä, kun olen uskonut deksibuprofeenin (joka on ibuprofeenin enantiomeereistä se vaikuttava osa) toimivan elimistössä suoraan tehokkaammin. En ole koskaan ennen nähnyt missään väitettä, ettei asia olisikaan näin.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Segway Yleiselektroniikasta?</title>
      <link>https://kennethfalck.net/2007/01/04/segway-yleiselektroniikasta/</link>
      <pubDate>Thu, 04 Jan 2007 17:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2007/01/04/segway-yleiselektroniikasta/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_179.jpg&#39; title=&#39;blogimg/blog_179.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_179.jpg&#39; alt=&#39;blogimg/blog_179.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Huomasin tässä, että &lt;a href=&#34;http://yeoy.fi/index.php?main=64&amp;amp;productCat=1355&#34;&gt;Yleiselektroniikka myy Segwayta&lt;/a&gt;. Vanhan perusmallin hinta on 3.836 EUR + alv. Se tosin kantaa vain 91kg, mikä voi tehdä tiukkaa, ellei ole kesäbikinikunnossa. Kalliimmissa kantokyky on jo 118kg.&lt;/p&gt;&#xA;&lt;p&gt;Segway voisi olla vänkä kesäskootteri, mutta onkohan sillä laillista ajaa Suomessa nykyään jalkakäytävillä? Ja mitenkähän on esimerkiksi promillerajojen kanssa..&lt;/p&gt;&#xA;&lt;p&gt;Onhan tuo hintakin aika hirmu, alvillisena se tekee noin 4.700 EUR. Moinen investointi edellyttäisi ainakin, että laite toimii todella pitkään ja luotettavasti. Ehkä tässä ollaan vielä puhtaasti yritysmarkkinoilla tässä vaiheessa.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hyvää Joulua!</title>
      <link>https://kennethfalck.net/2006/12/24/hyv%C3%A4%C3%A4-joulua/</link>
      <pubDate>Sun, 24 Dec 2006 10:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/12/24/hyv%C3%A4%C3%A4-joulua/</guid>
      <description>&lt;p&gt;Joulun kunniaksi &lt;a href=&#34;http://www.nuotio.net/joulu_maalla.jpg&#34;&gt;perinteikäs sarjakuva&lt;/a&gt; (linkki löytyi ircistä tietysti :)&lt;/p&gt;&#xA;&lt;p&gt;Ja suurin dilemma tänä jouluna on, pitäisikö ostaa &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=12249&#34;&gt;tällainen halpistelevisio&lt;/a&gt; pois sähisemästä, vai malttaa odotella järkeviä Full HD -malleja.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nokia Carbide.C&#43;&#43; Vistassa</title>
      <link>https://kennethfalck.net/2006/12/14/nokia-carbide.c-vistassa/</link>
      <pubDate>Thu, 14 Dec 2006 16:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/12/14/nokia-carbide.c-vistassa/</guid>
      <description>&lt;p&gt;Tulin asentaneeksi Nokian Symbian-kehitystyökalun Carbide.C++ Expressin Vistaan. Asennuksessa tuli eteen sellainen jippo, että tarvittava tiedosto swt-win32-3139.dll ei asentunut paikoilleen, johtuen luultavasti Vistan tietoturvaominaisuuksista. Vastaavaa on tuntunut sattuvan muidenkin ohjelmien asennuksessa.&lt;/p&gt;&#xA;&lt;p&gt;Ohitin tilanteen löytämäni &lt;a href=&#34;http://www.instantiations.com/windowbuilderpro/faq_content.html#UnsatisfiedLinkError&#34;&gt;Eclipse-vinkin&lt;/a&gt; perusteella. Purin siis org.eclipse.swt.win32.win32.x86_3.1.2.jar-tiedostosta kyseisen DLL:n, laitoin sen plugins-hakemistoon, ja lisäsin Control Panel | System | Advanced system settingsin alta Environmentiin Pathiin perään C:\Program Files\Nokia\Carbide.c++ Express v1.1\plugins.&lt;/p&gt;&#xA;&lt;p&gt;Nyt toimii yksinkertaisen Series 60 3rd Edition FP1 -softan kääntäminen ja ajaminen emulaattorissa, mutta CSL Arm Toolchain on vielä buginen. Symbian-koodia kääntäessä tulee virheilmoitus arm-none-symbianelf-g++.exe ... (null) tried to spawn cc1plus but failed: The system cannot find the file specified. Eli jostain syystä ei löydä cc1plus.exeä. Lienee joku vastaava Vistan tietoturvaongelma asennuksessa.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vista ja ensimmäinen Gadget</title>
      <link>https://kennethfalck.net/2006/12/13/vista-ja-ensimm%C3%A4inen-gadget/</link>
      <pubDate>Wed, 13 Dec 2006 03:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/12/13/vista-ja-ensimm%C3%A4inen-gadget/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_176.jpg&#39; title=&#39;blogimg/blog_176.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_176.jpg&#39; alt=&#39;blogimg/blog_176.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Olen nyt käyttänyt Vistan final-versiota (MSDN) joitakin päiviä, ja se tuntuu aiempaa stabiilimmalta. Suurin parannus lienee ATIn näyttöajureissa, sillä WoW ei ole kaatunut vielä kertaakaan (kop kop). Käyttöliittymän kommervenkkeihin alkaa jo hiljalleen tottua, joskin Start Menun jouduinkin kääntämään edelleen Classic-asentoon. En kerta kaikkiaan löydä uudesta Start Menusta haluamiani ohjelmia. Tämä on tosin tuttua jo Windows XP:stä.&lt;/p&gt;&#xA;&lt;p&gt;Ajuripuolella on tapahtunut muutenkin kehitystä, sillä Vistan final-versio tunnisti nyt kaikki laitteeni kyselemättä mitään. Esimerkiksi SATA RAID -ohjain ja Hercules DJ Console aiheuttivat ennen ongelmia, mutta nyt kaikki levyt näkyvät ja ääni kuuluu.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenOffice oikeusministeriöön</title>
      <link>https://kennethfalck.net/2006/12/06/openoffice-oikeusministeri%C3%B6%C3%B6n/</link>
      <pubDate>Wed, 06 Dec 2006 23:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/12/06/openoffice-oikeusministeri%C3%B6%C3%B6n/</guid>
      <description>&lt;p&gt;Suomen open source -keskuksen &lt;a href=&#34;http://www.coss.fi/web/coss/news?p_p_id=86&#34;&gt;COSSin uutisen&lt;/a&gt; mukaan oikeusministeriö on siirtymässä OpenOfficen käyttöön vuoden 2007 aikana. Ministeriön pilotointikokemuksista on &lt;a href=&#34;http://www.om.fi/Etusivu/Julkaisut/Julkaisusarjat/Toimintajahallinto/Toiminnanjahal-linnonarkisto/Toimintajahallinto2006/1160733641585&#34;&gt;julkaistu  raportti&lt;/a&gt;, johon päätös perustuu.&lt;/p&gt;&#xA;&lt;p&gt;Nähtävästi jopa 10.000 työasemaa siirtyy siis käyttämän OpenOfficea ja samalla OpenDocument-formaatista tulee ministeriössä standardi. Kannattaa varmaan itse kunkin alkaa hiljalleen tutustua OpenOfficeen, jos ei vielä ole.. Itsekin kirjoittelen sillä lähes kaikki artikkelini ja kolumnini nykyään.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>MythTV Top Recorded Shows</title>
      <link>https://kennethfalck.net/2006/11/29/mythtv-top-recorded-shows/</link>
      <pubDate>Wed, 29 Nov 2006 01:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/11/29/mythtv-top-recorded-shows/</guid>
      <description>&lt;p&gt;Päivitin hiljattain MythTV:ni versioon 0.20. Jouduin kiertämään kiusallista network_id-bugia (raportoin siitä &lt;a href=&#34;http://mythtv.org/pipermail/mythtv-dev/2006-November/051827.html&#34;&gt;developer-listallekin&lt;/a&gt;), mutta sen jälkeen homma alkoi pelittää kohtalaisesti. Käytössä on nyt vihdoinkin luotettavan tuntuinen EIT-skannaus, eli ohjelmatietoja ei tarvitse enää latailla xmltv-muodossa telkku.comista. MythTV crashaa edelleen silloin tällöin, mutta päivittäinen backendin ja frontendin automaattirestartti pitää sen stabiilina.&#xA;&lt;/p&gt;&#xA;&lt;p&gt;&#xA;Huomasin myös Mythwebissä veikeän tilastonäkymän tallennetuista ohjelmista ja kanavista. Tässä minun Top 10:&#xA;&lt;/p&gt;&#xA;&lt;table width=&#34;400&#34; id=&#34;top_ten_shows&#34; style=&#34;text-align: left;&#34;&gt;&#xA;    &lt;caption&gt;Top recorded shows&lt;/caption&gt;&#xA;    &lt;colgroup&gt;&#xA;        &lt;col&gt;&lt;/col&gt;&#xA;        &lt;col&gt;&lt;/col&gt;&#xA;        &lt;col&gt;&lt;/col&gt;&#xA;        &lt;col&gt;&lt;/col&gt;&#xA;    &lt;/colgroup&gt;&#xA;    &lt;tr&gt;&#xA;        &lt;th&gt;#&lt;/th&gt;&#xA;        &lt;th&gt;Title&lt;/th&gt;&#xA;        &lt;th&gt;Count&lt;/th&gt;&#xA;        &lt;th&gt;Last Recorded&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;        &lt;td&gt;1&lt;/td&gt;&#xA;        &lt;td&gt;Simpsonit&lt;/td&gt;&#xA;        &lt;td&gt;12&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;        &lt;td&gt;2&lt;/td&gt;&#xA;        &lt;td&gt;Tv-uutiset ja sää&lt;/td&gt;&#xA;        &lt;td&gt;12&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;        &lt;td&gt;3&lt;/td&gt;&#xA;        &lt;td&gt;Big Brother&lt;/td&gt;&#xA;        &lt;td&gt;11&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;4&lt;/td&gt;&#xA;        &lt;td&gt;Dr. Phil&lt;/td&gt;&#xA;        &lt;td&gt;10&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;5&lt;/td&gt;&#xA;        &lt;td&gt;Big Brother Extra&lt;/td&gt;&#xA;        &lt;td&gt;8&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;&lt;pre&gt;&lt;code&gt;&amp;lt;/tr&amp;gt;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;6&lt;/td&gt;&#xA;        &lt;td&gt;Late Night with Conan O&#39;Brien&lt;/td&gt;&#xA;        &lt;td&gt;8&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;7&lt;/td&gt;&#xA;        &lt;td&gt;Tilt.tv&lt;/td&gt;&#xA;        &lt;td&gt;7&lt;/td&gt;&#xA;        &lt;td&gt;November 26 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;8&lt;/td&gt;&#xA;&lt;pre&gt;&lt;code&gt;    &amp;lt;td&amp;gt;Atlas&amp;lt;/td&amp;gt;&#xA;    &amp;lt;td&amp;gt;6&amp;lt;/td&amp;gt;&#xA;    &amp;lt;td&amp;gt;November 25 2006&amp;lt;/td&amp;gt;&#xA;&amp;lt;/tr&amp;gt;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;9&lt;/td&gt;&#xA;        &lt;td&gt;Kukkulan kuningas&lt;/td&gt;&#xA;        &lt;td&gt;6&lt;/td&gt;&#xA;        &lt;td&gt;November 27 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;10&lt;/td&gt;&#xA;        &lt;td&gt;Prisma Studio&lt;/td&gt;&#xA;        &lt;td&gt;4&lt;/td&gt;&#xA;&lt;pre&gt;&lt;code&gt;    &amp;lt;td&amp;gt;November 24 2006&amp;lt;/td&amp;gt;&#xA;&amp;lt;/tr&amp;gt;&#xA;&amp;lt;/table&amp;gt;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;br/&gt;&#xA;    &lt;table width=&#34;400&#34; id=&#34;top_ten_chan&#34; style=&#34;text-align: left;&#34;&gt;&#xA;    &lt;caption&gt;Top recorded channels&lt;/caption&gt;&#xA;    &lt;colgroup&gt;&#xA;        &lt;col&gt;&lt;/col&gt;&#xA;        &lt;col&gt;&lt;/col&gt;&#xA;        &lt;col&gt;&lt;/col&gt;&#xA;        &lt;col&gt;&lt;/col&gt;&#xA;    &lt;/colgroup&gt;&#xA;    &lt;tr&gt;&#xA;        &lt;th&gt;#&lt;/th&gt;&#xA;        &lt;th&gt;Name&lt;/th&gt;&#xA;        &lt;th&gt;Count&lt;/th&gt;&#xA;        &lt;th&gt;Last Recorded&lt;/th&gt;&#xA;    &lt;/tr&gt;&lt;tr&gt;&#xA;        &lt;td&gt;1&lt;/td&gt;&#xA;        &lt;td&gt;subtv&lt;/td&gt;&#xA;        &lt;td&gt;82&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;2&lt;/td&gt;&#xA;        &lt;td&gt;Nelonen D&lt;/td&gt;&#xA;        &lt;td&gt;33&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;3&lt;/td&gt;&#xA;        &lt;td&gt;TV1&lt;/td&gt;&#xA;        &lt;td&gt;32&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;4&lt;/td&gt;&#xA;        &lt;td&gt;MTV3 D&lt;/td&gt;&#xA;        &lt;td&gt;25&lt;/td&gt;&#xA;        &lt;td&gt;November 28 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;5&lt;/td&gt;&#xA;        &lt;td&gt;YLE24&lt;/td&gt;&#xA;        &lt;td&gt;6&lt;/td&gt;&#xA;        &lt;td&gt;November 25 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;6&lt;/td&gt;&#xA;        &lt;td&gt;FST5&lt;/td&gt;&#xA;        &lt;td&gt;5&lt;/td&gt;&#xA;        &lt;td&gt;November 26 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;7&lt;/td&gt;&#xA;        &lt;td&gt;YLE Teema&lt;/td&gt;&#xA;        &lt;td&gt;2&lt;/td&gt;&#xA;        &lt;td&gt;November 23 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;&lt;tr&gt;&#xA;        &lt;td&gt;8&lt;/td&gt;&#xA;        &lt;td&gt;TV2&lt;/td&gt;&#xA;        &lt;td&gt;1&lt;/td&gt;&#xA;        &lt;td&gt;November 17 2006&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;/table&gt;</description>
    </item>
    <item>
      <title>WMV-tiedostojen yhdistäminen</title>
      <link>https://kennethfalck.net/2006/11/29/wmv-tiedostojen-yhdist%C3%A4minen/</link>
      <pubDate>Wed, 29 Nov 2006 00:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/11/29/wmv-tiedostojen-yhdist%C3%A4minen/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_173.jpg&#39; title=&#39;blogimg/blog_173.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_173.jpg&#39; alt=&#39;blogimg/blog_173.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Windows Media Video -tiedostojen yhdistäminen ei onnistu mitenkään Microsoftin perustyökaluilla, ja koska formaatti on täysin suljettu, sille on huonosti tukea open source -puolella. Maailmalta löytyy kyllä paljon GUI-työkaluja yhdistämiseen, mutta ne ovat kehnoa sharewarea eivätkä toimi komentoriviltä.&lt;/p&gt;&#xA;&lt;p&gt;Muutaman tunnin Googlaamisella löysin kuitenkin parhaimman ratkaisun. &lt;a href=&#34;http://msdn.microsoft.com/windowsmedia/downloads/default.aspx&#34;&gt;Windows Media Format 11 SDK&lt;/a&gt; sisältää esimerkkiohjelman nimeltä wmvappend.exe, jolla yhdistäminen onnistuu. Se osaa yhdistää vain kaksi .wmv-tiedostoa kerrallaan, mutta useita kertoja ajamalla voi tietysti yhdistellä useampiakin.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uskomatonta hyvitystä</title>
      <link>https://kennethfalck.net/2006/11/20/uskomatonta-hyvityst%C3%A4/</link>
      <pubDate>Mon, 20 Nov 2006 19:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/11/20/uskomatonta-hyvityst%C3%A4/</guid>
      <description>&lt;p&gt;Uskomaton asia #1: Tekijänoikeusjärjestöt oikeasti kehtaavat olla sitä mieltä, että hyvitysmaksuja pitäisi &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=28832&amp;amp;tyyppi=1&#34;&gt;keksiä LISÄÄ&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Uskomaton asia #2: Teostossa on erillinen &#39;hyvitysmaksuyksikkö&#39; päälliköineen kaikkineen.&lt;/p&gt;&#xA;&lt;p&gt;Uskomaton asia #3: Näistä asioista päätetään edelleen opetusministeriössä, jolla ei ole mitään tekemistä koko asian kanssa.&lt;/p&gt;&#xA;&lt;p&gt;Voi hyvää päivää...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>We Are The Web</title>
      <link>https://kennethfalck.net/2006/11/06/we-are-the-web/</link>
      <pubDate>Mon, 06 Nov 2006 14:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/11/06/we-are-the-web/</guid>
      <description>&lt;p&gt;Tämä &lt;a href=&#34;http://www.youtube.com/watch?v=y9zHgmSpE1w&#34;&gt;video&lt;/a&gt; ansaitsee pientä mainostusta....:&lt;/p&gt;&#xA;&lt;p&gt;&lt;object width=&#34;425&#34; height=&#34;350&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/y9zHgmSpE1w&#34;&gt;&lt;/param&gt;&lt;param name=&#34;wmode&#34; value=&#34;transparent&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/y9zHgmSpE1w&#34; type=&#34;application/x-shockwave-flash&#34; wmode=&#34;transparent&#34; width=&#34;425&#34; height=&#34;350&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lomitus pois Premiere-videoista</title>
      <link>https://kennethfalck.net/2006/10/26/lomitus-pois-premiere-videoista/</link>
      <pubDate>Thu, 26 Oct 2006 20:41:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/10/26/lomitus-pois-premiere-videoista/</guid>
      <description>&lt;p&gt;Editoin tässä hiljattain Premiere Pro 2.0:lla muutamaa kotivideota, jotka oli kuvattu 1080i HD-resoluutiolla käyttäen Sonyn HCR-HC3E -videokameraa. Ongelmani oli, että Windows Mediaksi enkoodatut videot näyttivät aina karmeilta. Varsinkin pienemmäksi skaalattuna kuvaan tuli ikäviä lomituksesta johtuvia vaakaraitoja.&lt;/p&gt;&#xA;&lt;p&gt;Jonkin aikaa Googlailtuani sain selville, että Premiere ei oletuksena poista interlacea videosta lainkaan. Adobe Media Encoder -ikkunassa on erikseen vasemmassa yläkulmassa pieni &#34;Deinterlace&#34;-nappi, jota pitää älytä painaa videota tallentaessa. Se on harmillisesti täysin erillään kaikista muista audio- ja videoparametreistä, mutta onneksi sen voi tallentaa osaksi profiilia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Firefox 2.0 pesee IE7:n</title>
      <link>https://kennethfalck.net/2006/10/25/firefox-2.0-pesee-ie7n/</link>
      <pubDate>Wed, 25 Oct 2006 02:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/10/25/firefox-2.0-pesee-ie7n/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_169.jpg&#39; title=&#39;blogimg/blog_169.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_169.jpg&#39; alt=&#39;blogimg/blog_169.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tulipa päivitettyä pari PC:tä ja yksi PowerBook käyttämään &lt;a href=&#34;http://www.mozilla.com/en-US/&#34;&gt;Firefox 2.0:aa&lt;/a&gt;, kun se kerran nyt julkaistiin. Olen päivittänyt myös muutaman PC:n IE7:aan, joten tuli heti vertailtua käyttökokemuksia.&lt;/p&gt;&#xA;&lt;p&gt;Firefoxin päivitys on suorastaan nautinto IE:hen verrattuna. Siinä missä IE7:n installeri lataili epämääräisiä päivityksiä netistä ties kuinka pitkään ja vaati vielä buuttaamaan koneen asennuksen jälkeen, Firefox 2.0 latautui ja asentui alle minuutissa aivan normaalisti vanhan version päälle ja oli heti käyttövalmis. Miksi asioista pitäisikään tehdä sen monimutkaisempia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vista RC1 (build 5600)</title>
      <link>https://kennethfalck.net/2006/10/06/vista-rc1-build-5600/</link>
      <pubDate>Fri, 06 Oct 2006 22:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/10/06/vista-rc1-build-5600/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_168.jpg&#39; title=&#39;blogimg/blog_168.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_168.jpg&#39; alt=&#39;blogimg/blog_168.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tuli vihdoin päivitettyä kotikoneeseen Vista RC1 eli tuorein Microsoftin julkaisema esiversio. Vieläkään ei ole ajureita emolevyni RAID-ohjaimelle ja SM Bussille (Asus P5ND2-SLI Deluxe), mutta äänet ja RADEON X850 sentään toimivat. Pitää vielä arpoa, uskaltaisiko asentaa puuttuville laitteille XP:n ajurit, vai meneekö koko levy sekaisin.&lt;/p&gt;&#xA;&lt;p&gt;Vistassa tuntuisivat toimivan kaikki essentiaaliset työkalut, eli Firefox, Subversion, iTunes, Visual Studio 2005 ja World of Warcraft. Joten tätä voisi ehkä jo ruveta käyttämään täysipäiväisesti. Start Menu oli kyllä pakko taas muuttaa Classic-muotoon, vaikka yritinkin sinnitellä pitkään uuden hirvityksen kanssa siihen tottuakseni. Vanha on vain niin paljon toimivampi ja yksinkertaisempi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>TV-maksuun uskotaan yhä</title>
      <link>https://kennethfalck.net/2006/10/01/tv-maksuun-uskotaan-yh%C3%A4/</link>
      <pubDate>Sun, 01 Oct 2006 12:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/10/01/tv-maksuun-uskotaan-yh%C3%A4/</guid>
      <description>&lt;p&gt;Hesari näyttää &lt;a href=&#34;http://www.hs.fi/kotimaa/artikkeli/Kansanedustajat+uskovat+yh%C3%A4+tv-maksuun/1135221976554&#34;&gt;tehneen kyselyn&lt;/a&gt; kansanedustajille siitä, pitäisikö tv-maksu korvata verorahoituksella. Olen itsekin ollut ennen sitä mieltä, että suora verorahoista osoitettava budjetti olisi parempi kuin kömpelö erillinen maksu.&lt;/p&gt;&#xA;&lt;p&gt;Oma mielipiteeni muuttui siinä vaiheessa, kun tajusin miten tiukkaan verorahoitus sitoisi YLEn toiminnan päivänpolitiikkaan. Miten se mahtaisi muuttaa toimittajien suhtautumista kansanedustajiin, ministereihin ja virkamiehiin, kun oma leipä olisikin heidän päätöstensä varassa? Budjetithan ovat vielä vuosittaisia, joten kovin pitkää työrauhaa niiden pohtimiselta ei heltiäisi.&lt;/p&gt;&#xA;&lt;p&gt;TV-maksu on siis kyllä hankala ja närää aiheuttava järjestelmä, mutta budjettirahoitus voisi olla käytännössä paljon pahempi asia. Toinen kysymys on sitten se, onko YLEn toiminnan laajuus kenties täysin ylimitoitettu nykyisten viiden TV-kanavan ja viiden radiokanavan tarjonnalla, joita pyörittää yli 3500 työntekijää.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>iTunes 7.0.1 korjaa WoW-yhteensopivuuden</title>
      <link>https://kennethfalck.net/2006/09/30/itunes-7.0.1-korjaa-wow-yhteensopivuuden/</link>
      <pubDate>Sat, 30 Sep 2006 23:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/09/30/itunes-7.0.1-korjaa-wow-yhteensopivuuden/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_166.jpg&#39; title=&#39;blogimg/blog_166.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_166.jpg&#39; alt=&#39;blogimg/blog_166.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;En ehtinyt edes avautua siitä, että iTunes 7 oli täysin rikkinäinen WoWin taustalla soidessaan. Biisit hyppivät ja rohisivat miten sattuu. Nyt kuitenkin &lt;a href=&#34;http://www.apple.com/itunes/download/&#34;&gt;iTunes 7.0.1&lt;/a&gt; näyttää korjanneen kyseisen epäyhteensopivuuden. Eli hienosti soi, vaikka edustalla pyörii WoW 60 FPS -nopeudella.&lt;/p&gt;&#xA;&lt;p&gt;Ongelma oli todennäköisesti jossain määrin liitynnäinen käyttöjärjestelmään (Windows XP Media Center Edition 2005), näytönohjaimeen (RADEON X850) tai äänipiiriin (nVIDIA nForce Audio).&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pythonia opiskelemassa</title>
      <link>https://kennethfalck.net/2006/09/26/pythonia-opiskelemassa/</link>
      <pubDate>Tue, 26 Sep 2006 13:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/09/26/pythonia-opiskelemassa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_165.jpg&#39; title=&#39;blogimg/blog_165.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_165.jpg&#39; alt=&#39;blogimg/blog_165.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Olen vältellyt &lt;a href=&#34;http://fi.wikipedia.org/wiki/Python&#34;&gt;Pythonin&lt;/a&gt; opiskelua jo useamman vuoden, mutta nyt päätin että Perl saa omalta kohdalta jäädä historiaan. En ole enää pitkään aikaan nähnyt uusia Linux-projekteja koodattavan Perlillä, kun taas Pythonia tunnutaan käytettävän melkein kaikessa, mikä ei ole tehty C:llä.&lt;/p&gt;&#xA;&lt;p&gt;Eikä se Python niin vaikeaa olekaan. Kaikenlaiset turhat krumeluurit loistavat poissaolollaan, ja koodista tulee melko yksinkertaista, kunhan sen idean alkaa sisäistää. Useimmat konseptit ovat tuttuja C:stä, Perlistä ja Schemestä/Lispistä, joten on vain opiskeltava Pythonin syntaksi niiden ilmaisemiseen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>E70 taas kunnossa</title>
      <link>https://kennethfalck.net/2006/09/14/e70-taas-kunnossa/</link>
      <pubDate>Thu, 14 Sep 2006 14:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/09/14/e70-taas-kunnossa/</guid>
      <description>&lt;p&gt;Nokian huolto oli tehokas, sain puhelimen jo nyt takaisin, eli vain kaksi päivää joutui odottamaan. Senkin aikaa wanhalla 3650:lla pärjääminen oli kyllä tuskaa. E70 oli päivitetty ajan tasalle firmware-versioon 1.0610.05.07 (30-05-06), eli sama mitä niillä kavereilla on ollut, jotka ovat hankkineet luurinsa hiukan minua myöhemmin.&lt;/p&gt;&#xA;&lt;p&gt;Nokia näyttää edelleen tarjoilevan &lt;a href=&#34;http://www.europe.nokia.com/A4176089?E70&#34;&gt;Software Updatea&lt;/a&gt; myös E70:lle, vaikka se piti kai vetää pois. Tosin voi ehkä olla, että PC-sovellus on ladattavissa, mutta se ei kuitenkaan yritä päivittää E70:a.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Firmware-päivitys =&gt; Nokia E70 huoltoon</title>
      <link>https://kennethfalck.net/2006/09/13/firmware-p%C3%A4ivitys-nokia-e70-huoltoon/</link>
      <pubDate>Wed, 13 Sep 2006 10:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/09/13/firmware-p%C3%A4ivitys-nokia-e70-huoltoon/</guid>
      <description>&lt;p&gt;Olin sitten yksi niiden &lt;a href=&#34;http://www.digitoday.fi/page.php?page_id=12&amp;amp;news_id=200612143&#34;&gt;onnekkaiden joukossa&lt;/a&gt;, jotka kuvittelivat Nokian osaavan tehdä firmware-päivityksen luotettavaksi, kuten esimerkiksi emolevyjen BIOSien suhteen on tehty vasta joitakin kymmeniä vuosia... Olikohan tuota päivitystä ylipäätään edes testattu Nokialla ennen julkaisua, kun onnistuneita E70:n päivittäjiä ei taida olla lainkaan?&lt;/p&gt;&#xA;&lt;p&gt;Kun vein laitteen huoltoon Päämiehelle, minut ohjattiin Nokian Flag Ship Storeen Aleksanterinkadulle. Sielläkään korjaaminen ei kuitenkaan onnistunut odottaessa, vaan laite piti jättää max 5 päiväksi huoltoon. Huoltomies oli yllättänyt ongelmasta, sillä heillä kukaan ei ollut kuullutkaan, etä firmwareja olisi ladattavana netissä. Kuitenkin Nokia Software Updateen pääsee &lt;a href=&#34;http://www.nokia.fi/asiakastuki/tuotetuki/e70/&#34;&gt;suomalaisen support-sivun&lt;/a&gt; kautta (&#34;Puhelimen ohjelmistot -linkki&#34; ja sen jälkeen &#34;Phone Software Update&#34; englanninkieliseltä sivustolta).&lt;/p&gt;</description>
    </item>
    <item>
      <title>MythTV 0.20 julkaistu</title>
      <link>https://kennethfalck.net/2006/09/12/mythtv-0.20-julkaistu/</link>
      <pubDate>Tue, 12 Sep 2006 22:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/09/12/mythtv-0.20-julkaistu/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_161.jpg&#39; title=&#39;blogimg/blog_161.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_161.jpg&#39; alt=&#39;blogimg/blog_161.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Slashdot: &lt;a href=&#34;http://linux.slashdot.org/article.pl?sid=06/09/11/116211&#34;&gt;MythTV 0.20&lt;/a&gt; julkaistu.&lt;/p&gt;&#xA;&lt;p&gt;Release notesien mukaan paljon mielenkiintoisia featureita: OpenGL-tuki valikoille, H.264-videotuki, IPTV-tuki, UPnP-tuki, DVB-radiokanavatuki. Pitänee kokeilla mahdollisimman pian.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>All The Ducks Are Swimming In The Water</title>
      <link>https://kennethfalck.net/2006/09/11/all-the-ducks-are-swimming-in-the-water/</link>
      <pubDate>Mon, 11 Sep 2006 01:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/09/11/all-the-ducks-are-swimming-in-the-water/</guid>
      <description>&lt;p&gt;Ehkä &lt;a href=&#34;http://www.youtube.com/watch?v=e8yx4k4tzqE&#34;&gt;maailman paras video&lt;/a&gt; ;-)&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Amsterdamissa nyt sitten</title>
      <link>https://kennethfalck.net/2006/09/07/amsterdamissa-nyt-sitten/</link>
      <pubDate>Thu, 07 Sep 2006 22:41:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/09/07/amsterdamissa-nyt-sitten/</guid>
      <description>&lt;p&gt;Blogitan tästä ihan piruuttaan GPS-lokaationi talteen. Amsterdam on muuten siitä jännä paikka, että täällä voi juoda olutta 100 metrin säteellä yhdessä baarissa ilotalojen ja ganjatuoksujen keskellä, ja kulman takana toisessa baarissa rikkaiden karttaa selailevien turistien joukossa. Kaikki tuntuvat jotenkin tulevan toimeen keskenään, vaikken tiedä onko kumpikaan puoli kovin iloinen toisen olemassaolosta.&lt;/p&gt;&#xA;&lt;p&gt;Huomisaamusta alkaen tapitetaankin sitten kolme päivää putkeen ökyhinnoiteltuja IBC:n konferenssisessioita RAI-messukeskuksessa. Ökyhinnoiteltu on myös tämän hotellin netti: 24h accessista 22 euroa. Mutta 3G-GPRS-liikennekin maksaa aika premiumia roamatessa.. Miksi Internetistä pitää maksaa ulkomailla niin jumalattomasti, vaikka ne paketit kulkee oikeasti samoja halpoja yhteyksiä pitkin kuin paikallistenkin asukkaiden? Maailmassa On Virhe.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Toinen päivä Berliinissä</title>
      <link>https://kennethfalck.net/2006/09/06/toinen-p%C3%A4iv%C3%A4-berliiniss%C3%A4/</link>
      <pubDate>Wed, 06 Sep 2006 10:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/09/06/toinen-p%C3%A4iv%C3%A4-berliiniss%C3%A4/</guid>
      <description>&lt;p&gt;Kiertely jatkuu IFAssa... ATI oli muuten näkyvästi esillä markkinoimassa Crossfire-tuotettaan messutyttöjen, demojen ja formuloiden voimin. Ei kaiken häslingin alta oikein saanut selvää mikä se on, mutta jotain hienoa kuitenkin. ;-)&lt;/p&gt;&#xA;&lt;p&gt;Illalla pääseekin taas lentämään Amsterdamiin. Helpotus kaiken tämän saksankielisen hössötyksen jälkeen... Hollantilaiset sentään ymmärtää, ettei kukaan muu ymmärrä hollantia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Terveisiä Berliinistä</title>
      <link>https://kennethfalck.net/2006/09/05/terveisi%C3%A4-berliinist%C3%A4/</link>
      <pubDate>Tue, 05 Sep 2006 20:16:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/09/05/terveisi%C3%A4-berliinist%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_157.jpg&#39; title=&#39;blogimg/blog_157.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_157.jpg&#39; alt=&#39;blogimg/blog_157.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Harvoin olen käynyt hotellissa, jonka vakiovarustukseen kuuluu kumiankka. Best Western Hotel President FTW! Toinen bonus on LCD-televisio. Omalta osalta sekin ensimmäinen hotellissa näkemäni.&lt;/p&gt;&#xA;&lt;p&gt;IFA-messuilla LCD-, plasma-, ja projisionäyttöjä oli sitten vähän enemmänkin. Yhdistävä tekijä kaikille oli 1920x1080-resoluutio, joka on brändätty nimelle Full HD. Kukaan ei enää kehtaa 1366x768-ressukoita messuilla näyttää. Ensi vuosi on ehdottomasti 1080i:n aikaa. Tai no, 1080p:n, jos kaikki tämä HD-DVD- ja Blu-ray-hype toteutuu. Televisioissa tosin puhutaan vain Full HD:stä, mutta ei juurikaan mainosteta, pystyykö HDMI-liitäntä ottamaan vastaan 1080p-signaalin vai ainoastaan 1080i:n (joka selviää puolella tiedonsiirtokapasiteetilla).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kari Rajamäki: Internetille ennakkosensuuri</title>
      <link>https://kennethfalck.net/2006/08/30/kari-rajam%C3%A4ki-internetille-ennakkosensuuri/</link>
      <pubDate>Wed, 30 Aug 2006 18:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/08/30/kari-rajam%C3%A4ki-internetille-ennakkosensuuri/</guid>
      <description>&lt;p&gt;Sisäasiainministeri Kari Rajamäki on heittänyt todella huolimattoman &lt;a href=&#34;http://tinyurl.com/q77md&#34;&gt;lausunnon Internetin ennakkosensuurista&lt;/a&gt; avatessaan kansalaisten tiedonsaantia koskevan seminaarin eilen Helsingissä.&lt;/p&gt;&#xA;&lt;p&gt;&lt;div class=&#34;quote&#34;&gt;&#34;EU-mailla on jo melko paljon tietoa siitä, miten Internetiä käytetään rikollisiin tarkoituksiin. Nyt ollaan vaiheessa, jossa pitää selvittää, voidaanko Internetin käyttöä selvästi rikollisiin tarkoituksiin jotenkin &lt;b&gt;ennalta estää&lt;/b&gt;. Sananvapautta ei saa rajoittaa, mutta sen piiriin ei voine lukea murhakehotuksia tai tuhoon yllyttämistä&#34;, Rajamäki sanoi.&lt;/div&gt;&lt;/p&gt;&#xA;&lt;p&gt;Demokraattisissa maissa käytäntö on, että tiedotusvälineitä ei sensuroida viranomaisten toimesta etukäteen, vaan mahdolliset lain rikkomiset puidaan tuomioistuimessa rikoksen tapahduttua. Ilmeisesti Kari Rajamäki on tästä demokratian peruspilarista eri mieltä. Toivottavasti kyseessä on vain lipsahdus eikä todellinen harkittu mielipide.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Logitech G15 Gaming Keyboard -ensituntumaa</title>
      <link>https://kennethfalck.net/2006/08/24/logitech-g15-gaming-keyboard-ensituntumaa/</link>
      <pubDate>Thu, 24 Aug 2006 13:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/08/24/logitech-g15-gaming-keyboard-ensituntumaa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_155.jpg&#39; title=&#39;blogimg/blog_155.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_155.jpg&#39; alt=&#39;blogimg/blog_155.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Keltainen Kuriiri toimitti juuri upouuden &lt;a href=&#34;http://www.logitech.com/index.cfm/products/details/US/EN,CRID=2166,CONTENTID=10717&#34;&gt;Logitech G15 Gaming Keyboardini&lt;/a&gt;, jolla tätäkin blogientryä kirjoittelen. Laite on todella näyttävän näköinen levennetyn funktionäppäinosan ja taustavalaistun LCD-näyttönsä ansiosta. Perustuntuma näppäilyyn on tyydyttävä. Pehmeäntuntuiset näppäimet antavat sopivasti pientä ääntä feedbackina pohjaan menosta, mutta eivät kuitenkaan kolise ylikorostetusti.&lt;/p&gt;&#xA;&lt;p&gt;Perusnäppäinosa on G15:ssä standardimuotoinen, eli Insertit ja Deletet ovat siellä missä pitääkin ja numeronäppäimistö on vakiotavaraa. Vasempaan laitaan sijoitettu 18 näppäimen lisäosio aiheuttaa kuitenkin pientä orientoitumisen tarvetta, sillä ainakin itse olen tottunut usein pitämään vasenta kättä näppäimistön laidalla ja suunnistamaan siitä. Nyt G1-G18-näppäimet tulevat vastaan siellä, minne yleensä laskisin pikkusormen pöydälle lepäämään.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dr Pepper Zero</title>
      <link>https://kennethfalck.net/2006/08/19/dr-pepper-zero/</link>
      <pubDate>Sat, 19 Aug 2006 14:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/08/19/dr-pepper-zero/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_154.jpg&#39; title=&#39;blogimg/blog_154.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_154.jpg&#39; alt=&#39;blogimg/blog_154.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Vihdoinkin se on täällä! Kiitos &lt;a href=&#34;http://users.tkk.fi/~telo/&#34;&gt;Tommin&lt;/a&gt; vinkin, löysin WTC:stä Dr Pepper Zeroa. Kyseistä tuotetta myy pieni erikoisliike, jonka nimeä en muista. Keskuskadulta WTC:hen tullessa se on kuitenkin vasemmalla puolella kahvilan jälkeen.&lt;/p&gt;&#xA;&lt;p&gt;Miltä se sitten maistuu? Hyvältä! Maku ei ole yhtä aromikas ja kehittynyt kuin oikeassa Dr Pepperissä, mutta Coca-Cola Light Limeen ja Pepsi Max Lemoniin tottuneelle se toimii erinomaisesti. Speksien mukaan juomassa on 0g sokeria ja perinteinen aspartaami-/asesulfaami-K-makeutus. Uusiin kitkeriin sukraloosilitkuihin pettyneelle siis taas yksi klassisempi vaihtoehto lisää.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Miguel de Icaza kertoo Monosta</title>
      <link>https://kennethfalck.net/2006/08/17/miguel-de-icaza-kertoo-monosta/</link>
      <pubDate>Thu, 17 Aug 2006 22:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/08/17/miguel-de-icaza-kertoo-monosta/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_152.jpg&#39; title=&#39;blogimg/blog_152.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_152.jpg&#39; alt=&#39;blogimg/blog_152.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Monon eli .NETin &#34;Linux-version&#34; kehittäjä Miguel de Icaza kertoo &lt;a href=&#34;http://port25.technet.com/archive/2006/08/11/Let_2700_s-talk-Mono_3A00_--Sam-interviews-Miguel-de-Icaza.aspx&#34;&gt;Port 25:n videohaastattelussa&lt;/a&gt; Monon synnystä ja historiasta. &lt;a href=&#34;http://en.wikipedia.org/wiki/Miguel_de_Icaza&#34;&gt;De Icaza on&lt;/a&gt; mielenkiintoinen tyyppi, perustanut muunmuassa GNOMEn ja Ximianin, ja työskentelee nykyään Ximianin ostaneella Novellilla.&lt;/p&gt;&#xA;&lt;p&gt;(Port 25 on Microsoftin Open Source Laboratoryn web-julkaisu. Haastattelijana on kyseisen laboratorion johtaja Sam Ramji.)&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Assembly 2006</title>
      <link>https://kennethfalck.net/2006/08/06/assembly-2006/</link>
      <pubDate>Sun, 06 Aug 2006 03:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/08/06/assembly-2006/</guid>
      <description>&lt;p&gt;Laitoin galleriaan &lt;a href=&#34;http://kfalck.net/gallery2/main.php?g2_itemId=75&#34;&gt; muutamia kuvia&lt;/a&gt; tämän vuoden Assemblystä. Tuli pyörittyä aika paljon irc-gallerian / dark portalin standilla.&lt;/p&gt;&#xA;&lt;p&gt;Ohessa myös näkymä IGTV:stä, jossa näkyi hienosti reaaliajassa uudet lisätyt galleriakuvat:&lt;/p&gt;&#xA;&lt;p&gt;&lt;object width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/RiP2yIxsMlU&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/RiP2yIxsMlU&#34; type=&#34;application/x-shockwave-flash&#34; width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&#xA;&lt;p&gt;Lisäksi pari videota lauantain bileistä:&lt;/p&gt;&#xA;&lt;p&gt;DJ Indigo soittaa mäiskettä&lt;br/&gt;&#xA;&lt;object width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/IZN5cQuyrPg&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/IZN5cQuyrPg&#34; type=&#34;application/x-shockwave-flash&#34; width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&#xA;&lt;p&gt;Miika Kuisma live&lt;br/&gt;&#xA;&lt;object width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/pYQuxXZgpnM&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/pYQuxXZgpnM&#34; type=&#34;application/x-shockwave-flash&#34; width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&#xA;&lt;p&gt;Miika Kuisma live (yleisöä)&lt;br/&gt;&#xA;&lt;object width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/OSl4u5syAhE&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/OSl4u5syAhE&#34; type=&#34;application/x-shockwave-flash&#34; width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tee-se-itse: Linux-Mac-VPN</title>
      <link>https://kennethfalck.net/2006/08/04/tee-se-itse-linux-mac-vpn/</link>
      <pubDate>Fri, 04 Aug 2006 23:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/08/04/tee-se-itse-linux-mac-vpn/</guid>
      <description>&lt;p&gt;Halusin toteuttaa VPN-yhteyden Hartwall Areenan Assembly-verkosta kotikoneelleni, jotta salaamaton liikenne ei kaikuisi WLANissa kaikkien nähtävänä. Harkitsin ensin PPTP- tai L2TP-palvelimen pystyttämistä kotiin. Muutaman &lt;a href=&#34;http://www.tldp.org/HOWTO/ppp-ssh/&#34;&gt;HOWTO&lt;/a&gt;-dokumentin luettuani kuitenkin oivalsin, että koska kannettavani on Macintosh, ssh-ppp-yhteys ajaisi täsmälleen saman asian, eikä vaatisi lainkaan palomuurien availua tai uusien softien asentelua.&#xA;&lt;/p&gt;&lt;p&gt;&#xA;Loin ensin erillisen VPN-käyttäjätunnuksen Linux-palvelimelleni, sallin sille pääsyn ssh:lla asiakaspään avainta käyttäen, sekä annoin oikeuden ajaa pppd:tä roottina. Lisäksi määrittelin iptablesiin MASQUERADE-asetuksen naamioimaan VPN:stä tulevat paketit Linux-palvelimen omiksi paketeiksi:&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kohtuus kaikessa, linkityksessäkin</title>
      <link>https://kennethfalck.net/2006/08/04/kohtuus-kaikessa-linkityksess%C3%A4kin/</link>
      <pubDate>Fri, 04 Aug 2006 01:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/08/04/kohtuus-kaikessa-linkityksess%C3%A4kin/</guid>
      <description>&lt;p&gt;Mikä olisi sinun mielestäsi kohtuullinen rangaistus henkilölle, joka lähettää kiusallaan viattomalta vaikuttavan linkin säädyttömään materiaaliin? Vakava nuhtelu ja toruminen? Vai nauraisitko koko jutulle?&lt;/p&gt;&#xA;&lt;p&gt;USA:ssa ollaan hieman eri linjoilla. &lt;a href=&#34;http://shii.wordpress.com/2006/07/26/goatse-now-illegal-in-the-united-states/&#34;&gt;Uuden lain&lt;/a&gt; mukaan tällainen henkilö voidaan tuomita &lt;b&gt;10 vuodeksi vankilaan&lt;/b&gt;. Tai 20 vuodeksi, jos pilan kohde sattuu olemaan alle 18-vuotias.&lt;/p&gt;&#xA;&lt;p&gt;Toivottavasti jenkeissä ei kukaan lue tätä blogia, klikkaile satunnaisesti täällä olevia linkkejä ja pidä niitä säädyttöminä... Muuten seuraavasta USA:n matkasta voi tulla aika pitkä. Jos sinne nyt uskaltaa enää lainkaan mennä.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kesällä luettua: Hemingwayn Nuoruuteni Pariisi</title>
      <link>https://kennethfalck.net/2006/07/30/kes%C3%A4ll%C3%A4-luettua-hemingwayn-nuoruuteni-pariisi/</link>
      <pubDate>Sun, 30 Jul 2006 19:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/07/30/kes%C3%A4ll%C3%A4-luettua-hemingwayn-nuoruuteni-pariisi/</guid>
      <description>&lt;p&gt;Tuli luettua läpi myös &lt;a href=&#34;http://en.wikipedia.org/wiki/Ernest_Hemingway&#34;&gt;Ernest Hemingwayn&lt;/a&gt; lyhyekö omaelämänkertomus Nuoruuteni Pariisi (&lt;a href=&#34;http://en.wikipedia.org/wiki/A_Moveable_Feast&#34;&gt;A Moveable Feast&lt;/a&gt;). Tästä kirjasta ei jäänyt mitään erityistä mieleen, se vain kuvailee Hemingwayn taiteilijatuttavuuksia ja alkoholinkäyttöä 1920-luvun Pariisissa. Silti se oli erittäin leppoisaa ja helposti pureksittavaa kesälukemista, joka herätti mielenkiinnon Hemingwayn muita kirjoja kohtaan. Muutama niitä odotteleekin pöydällä lukemistaan.&lt;/p&gt;&#xA;&lt;p&gt;Nuoruuteni Pariisista tuli tietysti mieleen Henry Millerin jokunen vuosi sitten lukemani Kravun kääntöpiiri (&lt;a href=&#34;http://en.wikipedia.org/wiki/Tropic_of_Cancer_%28novel%29&#34;&gt;Tropic of Cancer&lt;/a&gt;), joka kuvailee ehkä hieman riettaampaa Pariisin elämää 1930-luvulla.. Miller on kyllä paljon Hemingwayn pelkistettyä tyyliä vaikealukuisempaa. Kesän raskaslukuisimman kirjan arvonimen annan kuitenkin brittiläisen Lawrence Durrellin &lt;a href=&#34;http://en.wikipedia.org/wiki/The_Alexandria_Quartet&#34;&gt;The Alexandria Quartetille&lt;/a&gt;. Sain luettua vasta puolet ensimmäisestä osasta (Justine). Tekstistä löytyy kyllä paljon oivalluksia ja elämyksiä, mutta kirjan avaaminen aiheuttaa turhan usein &#34;vieläkö tässä jauhetaan tätä&#34; -ilmiön. Ehkä se kuitenkin menee.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kesällä luettua: Orwellin 1984</title>
      <link>https://kennethfalck.net/2006/07/30/kes%C3%A4ll%C3%A4-luettua-orwellin-1984/</link>
      <pubDate>Sun, 30 Jul 2006 18:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/07/30/kes%C3%A4ll%C3%A4-luettua-orwellin-1984/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_147.jpg&#39; title=&#39;blogimg/blog_147.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_147.jpg&#39; alt=&#39;blogimg/blog_147.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Luin kesäloman aikana ensimmäistä kertaa George Orwellin &lt;a href=&#34;http://en.wikipedia.org/wiki/Nineteen_Eighty-Four&#34;&gt;Nineteen Eighty-Fourin&lt;/a&gt; (&lt;a href=&#34;http://www.amazon.co.uk/gp/product/0140126716/202-0326445-1703849?v=glance&amp;amp;n=266239&#34;&gt;1984&lt;/a&gt;). Kaikin puolin mainio kirja, jossa on samoissa kuorissa filosofiaa, poliittista satiiria ja pientä jännäriäkin rakkaustarinoineen.&lt;/p&gt;&#xA;&lt;p&gt;Itseeni vetoaa ehkä eniten Orwellin pohdiskelu menneisyyden määrittelemisestä. Menneisyys on olemassa vain painetussa muodossa (tai nykyään sähköisessä), sekä ihmisten mielissä. Jos kaikkea painettua historiaa voidaan muokata jälkeenpäin - kuten kirjan jättimäinen Ministry of Truth -virkakoneisto tekee &#34;korjaillessaan&#34; vanhoja kirjoja, lehtiä ja raportteja - on suhteellisen helppoa saada ihmiset uskomaan minkälaiseen historiaan tahansa. Tätä tietysti hyödynnetään esimerkiksi uusien sotien aloittamisessa, kun entisestä liittolaisestakin voidaan tehdä tarvittaessa vihollinen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Digiboksi 2/3 antenni- ja 1/3 kaapelitalouksista</title>
      <link>https://kennethfalck.net/2006/07/14/digiboksi-2/3-antenni-ja-1/3-kaapelitalouksista/</link>
      <pubDate>Fri, 14 Jul 2006 15:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/07/14/digiboksi-2/3-antenni-ja-1/3-kaapelitalouksista/</guid>
      <description>&lt;p&gt;Tuoreimman &lt;a href=&#34;http://www.finnpanel.fi/tulokset/tiedotteet/tv_140706.html&#34;&gt;Finnpanelin tutkimuksen&lt;/a&gt; mukaan 63% antennitalouksista ja 36% kaapelitalouksista on digiboksi. Tekee tiukkaa saada &lt;a href=&#34;http://www.finnpanel.fi/tulokset/tiedotteet/kuva_140706.jpg&#34;&gt;riittävä penetraatio&lt;/a&gt; 31.8.2007 mennessä, mutta ongelma taitaa olla pääosin kaapelipuolella. Antennitaloudet ainakin omien laskujeni mukaan voivat pääosin olla digitalisoituja määräaikaan mennessä, ja kasvu näyttää olevan tasaista.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>YLEn äänitekstitys käy hermoille</title>
      <link>https://kennethfalck.net/2006/07/11/ylen-%C3%A4%C3%A4nitekstitys-k%C3%A4y-hermoille/</link>
      <pubDate>Tue, 11 Jul 2006 13:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/07/11/ylen-%C3%A4%C3%A4nitekstitys-k%C3%A4y-hermoille/</guid>
      <description>&lt;p&gt;YLE otti jokin aika sitten käyttöön vieraskielisissä ohjelmissaan äänitekstityksen. Se tarkoittaa, että puhesyntetisaattori lukee tekstityksen ääneen vaihtoehtoisella äänikanavalla. Kohderyhmää ovat ilmeisesti lähinnä sokeat ja lukutaidottomat television katsojat.&lt;/p&gt;&#xA;&lt;p&gt;Ongelma on vain siinä, että monessa digiboksissa (ja esimerkiksi MythTV:ssä) äänitekstitys tulee kuuluviin oletuksena. Lukemattomat ihmiset joutuvat siis kuuntelemaan päivästä toiseen omituisen kuuloista robottiääntä, joka pilaa television katselun. Muutamat harvat osaavat ehkä vaihtaa digiboksistaan äänikanavaa, mutta loput todennäköisesti katsovat mieluummin jotain muuta kuin YLEn ohjelmia näiden teksitysten aikana.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Puuhommissa</title>
      <link>https://kennethfalck.net/2006/07/04/puuhommissa/</link>
      <pubDate>Tue, 04 Jul 2006 15:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/07/04/puuhommissa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_144.jpg&#39; title=&#39;blogimg/blog_144.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_144.jpg&#39; alt=&#39;blogimg/blog_144.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Pieni halkojen pilkkominen tekee hyvää kesäpäivän ratoksi... Oli vaan perhanallinen homma noissa isommissa mutta menihän ne.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mökille viikoksi</title>
      <link>https://kennethfalck.net/2006/07/02/m%C3%B6kille-viikoksi/</link>
      <pubDate>Sun, 02 Jul 2006 09:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/07/02/m%C3%B6kille-viikoksi/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_143.jpg&#39; title=&#39;blogimg/blog_143.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_143.jpg&#39; alt=&#39;blogimg/blog_143.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Taas ollaan saaressa laajakaistan ja 3G:n ulottumattomissa. GPRS:llä voi sentään ircata ja ssh:ata... Katsotaan onko terveellinen olo viikon päästä. PS. Kuva otettu laiturilla makaillessa.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Paikannustesti</title>
      <link>https://kennethfalck.net/2006/06/30/paikannustesti/</link>
      <pubDate>Fri, 30 Jun 2006 22:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/30/paikannustesti/</guid>
      <description>&lt;p&gt;Testaan JSR-179 Location APIa. Näyttäisi aika näppärästi saavan Java-MIDlettiin GPS:ltä tiedon sijainnista. Toimii ainakin Nokia E70:ssä.&lt;/p&gt;&#xA;&lt;p&gt;Tarkka sijainti on ehkä hiukkasen vinossa... Olen nimittäin oikeasti kotona (näkyy etusivulla).&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Perjantaisauna Vuosaaressa</title>
      <link>https://kennethfalck.net/2006/06/30/perjantaisauna-vuosaaressa/</link>
      <pubDate>Fri, 30 Jun 2006 17:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/30/perjantaisauna-vuosaaressa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_142.jpg&#39; title=&#39;blogimg/blog_142.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_142.jpg&#39; alt=&#39;blogimg/blog_142.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Seutu on selkeää kasvualuetta... Joutuu vaan ottamaan taksin metroasemalle, hieman syrjässä makuuni :-P UPDATE: Ossille jälleen kiitos saunasta. &lt;a href=&#34;http://www.sosiaalisestirajoittuneet.fi&#34;&gt;Sosiaalisesti Rajoittuneiden&lt;/a&gt; lukijat pitäkää varanne, ideoita on nyt ilmassa! :-)&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lomille lomps</title>
      <link>https://kennethfalck.net/2006/06/30/lomille-lomps/</link>
      <pubDate>Fri, 30 Jun 2006 14:55:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/30/lomille-lomps/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_141.jpg&#39; title=&#39;blogimg/blog_141.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_141.jpg&#39; alt=&#39;blogimg/blog_141.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tästä lähti kesäloma, neljä viikkoa aurinkoa ja/tai WoWia.&lt;/p&gt;&#xA;&lt;p&gt;Pitää saada hieman sisältöä lokaatiokuvablogiin, joten tässä perjantaiolut Rossossa :-)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Testaamassa MMAPI-kuvaamista</title>
      <link>https://kennethfalck.net/2006/06/30/testaamassa-mmapi-kuvaamista/</link>
      <pubDate>Fri, 30 Jun 2006 01:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/30/testaamassa-mmapi-kuvaamista/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_140.jpg&#39; title=&#39;blogimg/blog_140.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_140.jpg&#39; alt=&#39;blogimg/blog_140.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Oheinen kuva on otettu Java-MIDletillä käyttäen Nokia E70:n MMAPI image capturea. Mukana myös Location APIlla otettu paikannustieto.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>MythTV downgrade 0.19 =&gt; 0.18.1</title>
      <link>https://kennethfalck.net/2006/06/26/mythtv-downgrade-0.19-0.18.1/</link>
      <pubDate>Mon, 26 Jun 2006 20:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/26/mythtv-downgrade-0.19-0.18.1/</guid>
      <description>&lt;p&gt;Vihdoinkin jaksoin downgradeta &lt;a href=&#34;http://www.mythtv.org&#34;&gt;MythTV&lt;/a&gt;:n versiosta 0.19 versioon 0.18.1. Uudempi 0.19 on kaatuillut jo kuukausien ajan, enkä ole viitsinyt katsella paljon televisiota sen vuoksi.&lt;/p&gt;&#xA;&lt;p&gt;Nyt on siis käytössä Ubuntu Dapperin mukana tuleva oletusversio MythTV:stä. Downgrade vaikutti jopa onnistuvan tekemättä muutoksia tietokantaan; kanavat näkyvät edelleen ja ohjelmat nauhoittuvat. Saa nähdä päivittyvätkö uudet ohjelmatiedot kuitenkaan enää.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kokkoa polttelemassa</title>
      <link>https://kennethfalck.net/2006/06/24/kokkoa-polttelemassa/</link>
      <pubDate>Sat, 24 Jun 2006 12:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/24/kokkoa-polttelemassa/</guid>
      <description>&lt;p&gt;Metsäpalovaroitus päättyi juuri sopivasti... Tässä juhannusaaton hienoin kokko.&lt;/p&gt;&#xA;&lt;p&gt;&lt;object width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/e-o-l-bLDag&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/e-o-l-bLDag&#34; type=&#34;application/x-shockwave-flash&#34; width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hyvää juhannusta!</title>
      <link>https://kennethfalck.net/2006/06/22/hyv%C3%A4%C3%A4-juhannusta/</link>
      <pubDate>Thu, 22 Jun 2006 23:42:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/22/hyv%C3%A4%C3%A4-juhannusta/</guid>
      <description>&lt;p&gt;Hyvää juhannusta itse kullekin. Toivottavasti &lt;a href=&#34;http://www.kase.fi/~tobe/olutta.jpg&#34;&gt;eväät on hankittu&lt;/a&gt; ja &lt;a href=&#34;http://stuff.twoday.net&#34;&gt;pullonavaustekniikat&lt;/a&gt; ovat hallussa. Hätätilassahan oluen avaaminen onnistuu esimerkiksi &lt;a href=&#34;http://stuff.twoday.net/stories/388942/&#34;&gt;kaapelimodeemilla&lt;/a&gt;, &lt;a href=&#34;http://stuff.twoday.net/stories/355153/&#34;&gt;SCART-liittimellä&lt;/a&gt; tai &lt;a href=&#34;http://stuff.twoday.net/stories/1448697/&#34;&gt;kookospähkinällä&lt;/a&gt;.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>GPS ja Nokian S60-epäyhteensopivuusfarssi</title>
      <link>https://kennethfalck.net/2006/06/22/gps-ja-nokian-s60-ep%C3%A4yhteensopivuusfarssi/</link>
      <pubDate>Thu, 22 Jun 2006 22:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/22/gps-ja-nokian-s60-ep%C3%A4yhteensopivuusfarssi/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_122.jpg&#39; title=&#39;blogimg/blog_122.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_122.jpg&#39; alt=&#39;blogimg/blog_122.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;On tämä vaan niin toivotonta. Hankin &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=0973&#34;&gt;Insmat InsSiRF III&lt;/a&gt; Bluetooth GPS -moduulin, jolla ajattelin kokeilla uuden &lt;a href=&#34;http://www.nokia.fi/puhelimet/puhelinmallit/e70/&#34;&gt;Nokia E70&lt;/a&gt; -puhelimeni paikannusominaisuuksia. Paikannus toimiikin oikein hyvin ja E70 osaa ihan out-of-the-box tehdä sillä joitakin perusasioita, kuten tallentaa kohteiden sijainteja ja neuvoa myöhemmin tien niihin.&lt;/p&gt;&#xA;&lt;p&gt;Ajattelin sitten, että olisi kiintoisaa kokeilla oikeaakin karttasovellusta, kuten &lt;a href=&#34;http://www.tomtom.com/products/features.php?ID=208&amp;amp;Language=1&#34;&gt;TomTom Mobile 5&lt;/a&gt;. Mutta kuinka ollakaan, TomTom tukee vain Series 60 2nd Editionia (N70/N90 jne) ja muita vanhempia puhelimia. Tukea E70:lle ja muille uusille puhelinmalleille saa odottaa syksyyn asti.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hienoin USB-muistitikku ikinä</title>
      <link>https://kennethfalck.net/2006/06/21/hienoin-usb-muistitikku-ikin%C3%A4/</link>
      <pubDate>Wed, 21 Jun 2006 21:38:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/21/hienoin-usb-muistitikku-ikin%C3%A4/</guid>
      <description>&lt;p&gt; &lt;a href=&#34;http://www.kariahintikka.fi/matrixx/blogs/index.php?p=148&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&#34;&gt;Matrixx&lt;/a&gt;-blogista havaittua: &lt;a href=&#34;http://www.engadget.com/2006/06/18/usb-teddy-bear-holds-data-scares-children/&#34;&gt;Hienoin USB-muisti ikinä&lt;/a&gt; :-) Saattaa kuulemma pelottaa pikkulapsia..&lt;/p&gt;</description>
    </item>
    <item>
      <title>PowerBookin näppistä korjaamassa</title>
      <link>https://kennethfalck.net/2006/06/20/powerbookin-n%C3%A4ppist%C3%A4-korjaamassa/</link>
      <pubDate>Tue, 20 Jun 2006 19:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/20/powerbookin-n%C3%A4ppist%C3%A4-korjaamassa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_120.jpg&#39; title=&#39;blogimg/blog_120.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_120.jpg&#39; alt=&#39;blogimg/blog_120.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kanniskelen työkoneenani Applen G4 12&#34; PowerBookia melkein kaikkialle mukanani, ja se ottaa joskus kolhuja. Tänä aamuna tapahtui kuitenkin ihan odottamatonta: avatessani koneen ja sen kysyessä normaalisti salasanaani en pystynytkään kirjautumaan sisään. Näppäimistö ei reagoinut ollenkaan painalluksiin. Edes koneen käynnistäminen moneen kertaan uudelleen akun irrottamista myöten ei auttanut.&lt;/p&gt;&#xA;&lt;p&gt;Nettiä ja Applen support-sivuja hetken selailtuani löysin muutaman ratkaisuehdotuksen. &lt;a href=&#34;http://docs.info.apple.com/article.html?artnum=2238&#34;&gt;PRAM/NVRAM-muistin tyhjentäminen&lt;/a&gt; ei vielä auttanut, mutta yllättäen &lt;a href=&#34;http://docs.info.apple.com/article.html?artnum=14449&#34;&gt;PMU-yksikön resetointi&lt;/a&gt; korjasi tilanteen. Kellonaika ja päivämäärä menivät nollille, mutta näppäimistökin rupesi sitten toimimaan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Flashblockilla Firefoxin CPU kuriin</title>
      <link>https://kennethfalck.net/2006/06/19/flashblockilla-firefoxin-cpu-kuriin/</link>
      <pubDate>Mon, 19 Jun 2006 10:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/19/flashblockilla-firefoxin-cpu-kuriin/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_119.png&#39; title=&#39;blogimg/blog_119.png&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_119.png&#39; alt=&#39;blogimg/blog_119.png&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Minua on häirinnyt jonkin aikaa Firefoxin taipumus kuluttaa 1-3% CPU:ta taustalla idlenäkin ollessaan. Vaikuttaa siltä, että kyse on itse asiassa Flash-pluginin ongelmasta. Nykyään melkein jokaisella saitilla on Flash-mainoksia, vaikkei niitä edes oikein noteeraa. Ne sitten hyörivät ja pyörivät selaimen tabeissa jatkuvasti.&lt;/p&gt;&#xA;&lt;p&gt;Asiaan löytyy kuitenkin korjaus. &lt;a href=&#34;http://flashblock.mozdev.org/&#34;&gt;Flashblock&lt;/a&gt; on Firefox-laajennus, joka tekee Flash-komponenttien lataamisesta valinnaista. Se ei siis kylmästi estä Flashia toimimasta, vaan muuttaa jokaisen Flash-sovelluksen &#34;play-nappulaksi&#34;, jota painamalla kyseinen sovellus käynnistyy. Näin voi itse valita, mitä sovelluksia haluaa käyttää ja mitkä ohittaa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Notepad WTF</title>
      <link>https://kennethfalck.net/2006/06/15/notepad-wtf/</link>
      <pubDate>Thu, 15 Jun 2006 09:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/15/notepad-wtf/</guid>
      <description>&lt;p&gt;Jännä ominaisuus &lt;a href=&#34;http://mikropc.net/uutiset/index.jsp?categoryId=atk&amp;amp;day=20060615#w200606151135429507&#34;&gt;Notepadissa&lt;/a&gt;. Oletettavasti joku merkistön automaattitunnistus.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Street Party Helsinki @ YouTube</title>
      <link>https://kennethfalck.net/2006/06/13/street-party-helsinki-@-youtube/</link>
      <pubDate>Tue, 13 Jun 2006 13:08:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/13/street-party-helsinki-@-youtube/</guid>
      <description>&lt;p&gt;Lähinnä testailen YouTubea, pieni videoklippi Street Partysta viime lauantailta. Mikähän biisi tässä soi?&lt;/p&gt;&#xA;&lt;p&gt;&lt;object width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;param name=&#34;movie&#34; value=&#34;http://www.youtube.com/v/wfvnm8nQPf0&#34;&gt;&lt;/param&gt;&lt;embed src=&#34;http://www.youtube.com/v/wfvnm8nQPf0&#34; type=&#34;application/x-shockwave-flash&#34; width=&#34;352&#34; height=&#34;288&#34;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Suokki 2006</title>
      <link>https://kennethfalck.net/2006/06/11/suokki-2006/</link>
      <pubDate>Sun, 11 Jun 2006 15:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/11/suokki-2006/</guid>
      <description>&lt;p&gt;Pitkästä aikaa olutta ja &lt;a href=&#34;http://aeskee.1g.fi/kuvat/suokki06/IMG_7029.jpg&#34;&gt;aurinkoa&lt;/a&gt;... ja &lt;a href=&#34;http://tuner.bdb.fi/gfx/valokuvat/suokki_2006/IMG_4014.jpg&#34;&gt;Camparia&lt;/a&gt;.&lt;br/&gt;&#xA;Kuvia: &lt;a href=&#34;http://tuner.bdb.fi/gfx/valokuvat/suokki_2006/&#34;&gt;tuner&lt;/a&gt; &lt;a href=&#34;http://paltsu.1g.fi/suokki2006/&#34;&gt;paltsu&lt;/a&gt; &lt;a href=&#34;http://aeskee.1g.fi/kuvat/suokki06&#34;&gt;aeskee&lt;/a&gt; &lt;a href=&#34;http://kuvasto.siperia.org/koovee/2006_06_10_-_Suokki_XII/index.htm&#34;&gt;koovee&lt;/a&gt; &lt;a href=&#34;http://kukka.net/~donalde/suokki06/&#34;&gt;donalde&lt;/a&gt; &lt;a href=&#34;http://www.saunalahti.fi/~statik/photos/suokki06/&#34;&gt;statik&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Tarvitsen paremmat aurinkolasit (!)&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uskotko Windowsin tietoturvaan?</title>
      <link>https://kennethfalck.net/2006/06/07/uskotko-windowsin-tietoturvaan/</link>
      <pubDate>Wed, 07 Jun 2006 21:45:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/07/uskotko-windowsin-tietoturvaan/</guid>
      <description>&lt;p&gt;Tässä on mainio temppu F-Securen &lt;a href=&#34;http://www.f-secure.com/weblog/#00000896&#34;&gt;blogista&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;p&gt;Klikkaa Windowsin työpöytää hiiren oikealla napilla ja valitse &#34;New Shortcut&#34;. Määrittele shortcut osoittamaan mihin tahansa ohjelmaan, kuten C:\windows\notepad.exe. Anna shortcutille nimeksi www.microsoft.com. Käynnistä Internet Explorer ja kirjoita osoiteriville www.microsoft.com. Näppärää...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>SourceForge käy hermoille</title>
      <link>https://kennethfalck.net/2006/06/07/sourceforge-k%C3%A4y-hermoille/</link>
      <pubDate>Wed, 07 Jun 2006 20:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/07/sourceforge-k%C3%A4y-hermoille/</guid>
      <description>&lt;p&gt; &lt;a href=&#34;http://sf.net&#34;&gt;SourceForgen&lt;/a&gt; manuaalinen mirror-valinta tiedostoja imuroidessa on aina ollut ärsyttävä, mutta nyt se on töpätty lopullisesti. Tiedostolinkkiä kun ei voi enää edes kopioida sivulta (ja pasteta wgetille ssh-ikkunaan), vaan se on nyt muuttunut javascriptiksi.&lt;/p&gt;&#xA;&lt;p&gt;Mikähän piru siinä on, että asiat täytyy tehdä väkisin hankaliksi, ja vielä nimenomaan kyseisen saitin kohdeyleisölle, joka hyvin todennäköisesti etälatailee noita tiedostoja erilaisiin Linux-purkkeihin jatkuvasti.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hymiöt tavaramerkitty :-)</title>
      <link>https://kennethfalck.net/2006/06/06/hymi%C3%B6t-tavaramerkitty-/</link>
      <pubDate>Tue, 06 Jun 2006 23:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/06/hymi%C3%B6t-tavaramerkitty-/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_112.png&#39; title=&#39;blogimg/blog_112.png&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_112.png&#39; alt=&#39;blogimg/blog_112.png&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Stara &lt;a href=&#34;http://www.stara.fi/?p=2825&#34;&gt;raportoi&lt;/a&gt;: Suomalaismies hakee hymiöille tavaramerkkiä. Heppu nimeltä Tuomas Mattila on &lt;a href=&#34;http://tavaramerkki.prh.fi/lehti/tm/Tavaramerkkilehti10S_2006.pdf&#34;&gt;rekisteröinyt &lt;/a&gt; hymiöt :-) ja :) todennäköisesti jonkinlaisena kannanottona tai kokeiluna.&lt;/p&gt;&#xA;&lt;p&gt;Itse en huolestuisi liikaa, ovathan nuo hymyt jo melko kuluneet ja vielä jää vapaaseen käyttöön o.O sekä XD. Mutta mitenkähän käy &lt;a href=&#34;http://www.webstandards.org/files/acid2/test.html&#34;&gt;Acid Testille&lt;/a&gt;...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntusta Dapper lähes ongelmitta</title>
      <link>https://kennethfalck.net/2006/06/06/ubuntusta-dapper-l%C3%A4hes-ongelmitta/</link>
      <pubDate>Tue, 06 Jun 2006 19:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/06/06/ubuntusta-dapper-l%C3%A4hes-ongelmitta/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_113.jpg&#39; title=&#39;blogimg/blog_113.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_113.jpg&#39; alt=&#39;blogimg/blog_113.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ehdin jo kehua kavereille, miten ongelmatonta Ubuntun päivittäminen keskimäärin on. Mutta 5.10 =&gt; 6.06 päivityksessä tuli kuitenkin muutama jekku vastaan. Ubuntun Wikistä löytyy muuten &lt;a href=&#34;https://wiki.ubuntu.com/DapperUpgrades&#34;&gt;ohje&lt;/a&gt; päivityksen tekemiseen, joka on syytä lukea läpi ennen dist-upgraden ajamista sokkona.&lt;/p&gt;&#xA;&lt;p&gt;Ongelmia oli kaksi: EVMS (Enterprise Volume Management System) sekoitti RAID-levyt ja NVIDIAn uusin näytönohjainajuri ei enää toiminut Dapperissa jonkun glx/GLcore-ongelman vuoksi. EVMS-ongelma ratkesi komennolla &#34;apt-get remove evms&#34; ja käyttämällä ihan vaan perinteisiä /dev/md0 ja /dev/md1 laitteita sekä /etc/fstabia mounttaamiseen. RAID1-peilit tuntuisivat olevan ehjiä ja tiedot tallella.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Slashdot Redesign</title>
      <link>https://kennethfalck.net/2006/05/31/slashdot-redesign/</link>
      <pubDate>Wed, 31 May 2006 23:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/05/31/slashdot-redesign/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_111.gif&#39; title=&#39;blogimg/blog_111.gif&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_111.gif&#39; alt=&#39;blogimg/blog_111.gif&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Täytyy sanoa, että Slashdotin &lt;a href=&#34;http://slashdot.org/tmp/slashdot_redesign/&#34;&gt;uusi design&lt;/a&gt; näyttää hienolta. Sama tunnelma kuin vanhassa, mutta &#34;oikean&#34; näköinen ja vihdoinkin sans-serif.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mainoskokeiluja</title>
      <link>https://kennethfalck.net/2006/05/27/mainoskokeiluja/</link>
      <pubDate>Sat, 27 May 2006 01:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/05/27/mainoskokeiluja/</guid>
      <description>&lt;p&gt;Näillä sivuilla saattaa vilahdella Googlen tekstimainoksia. Tarkoitus ei ole niinkään rikastua, vaan tutustua kyseiseen tekniikkaan hieman. Pelkästä mainosten esittämisestä sinällään ei itse asiassa edes saa mitään korvausta.&lt;/p&gt;&#xA;&lt;p&gt;Aika veikeää kyllä, miten omat kotisivut saa täytettyä Googlen mainoksilla, hakulomakkeilla, satelliittikuvilla... Kohta tulee yliannostus.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kaikkien aikojen mokat</title>
      <link>https://kennethfalck.net/2006/05/27/kaikkien-aikojen-mokat/</link>
      <pubDate>Sat, 27 May 2006 00:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/05/27/kaikkien-aikojen-mokat/</guid>
      <description>&lt;p&gt;Vaihteeksi mukavaa viihdettä &lt;a href=&#34;http://slashdot.org/article.pl?sid=06/05/26/1856240&#34;&gt;Slashdotista&lt;/a&gt;: Historian 25 huonointa &lt;a href=&#34;http://www.pcworld.com/news/article/0,aid,125772,00.asp#&#34;&gt;teknologiatuotetta&lt;/a&gt; (PCWorld). Sijalle 8 ylsi Microsoft Internet Explorer 6.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blogin spämmääminen jatkuu</title>
      <link>https://kennethfalck.net/2006/05/25/blogin-sp%C3%A4mm%C3%A4%C3%A4minen-jatkuu/</link>
      <pubDate>Thu, 25 May 2006 19:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/05/25/blogin-sp%C3%A4mm%C3%A4%C3%A4minen-jatkuu/</guid>
      <description>&lt;p&gt;Todella mielenkiintoista, joku henkilö puolalaisesta IP-osoitteesta (&lt;a href=&#34;http://ripe.net/fcgi-bin/whois?form_type=simple&amp;amp;full_query_string=&amp;amp;searchtext=62.233.222.146&amp;amp;submit.x=16&amp;amp;submit.y=5&amp;amp;submit=Search&#34;&gt;62.233.222.146&lt;/a&gt;) on oikeasti jaksanut lähetellä blogiini kymmenittäin spammikommentteja tuosta koodikyselystä huolimatta. Ilmeisesti koodikysely on kuitenkin blokannut automaattiset spammibotit, sillä nämä spammikommentit oli lähetetty yhdestä IP-osoitteesta noin 20 minuutin kuluessa, mikä viittaisi manuaaliseen työhön.&lt;/p&gt;&#xA;&lt;p&gt;Kohta pitää varmaan integroida SpamAssasin tai joku muu automaattitarkistus kommenteille.. Lieneekö blogeihin tarkoitettua spammifiltterisoftaa olemassa?&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Je.orgin sensuurijekku</title>
      <link>https://kennethfalck.net/2006/05/21/je.orgin-sensuurijekku/</link>
      <pubDate>Sun, 21 May 2006 00:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/05/21/je.orgin-sensuurijekku/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_107.jpg&#39; title=&#39;blogimg/blog_107.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_107.jpg&#39; alt=&#39;blogimg/blog_107.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt; &lt;a href=&#34;http://www.je.org&#34;&gt;Je.org&lt;/a&gt; tempaisi muutama päivä sitten mielenkiintoisen jäynän, ja antoi Finnetin Internet-käyttäjien ymmärtää saitin tulleen sensuroiduksi ISP:n asentaman suodatusohjelmiston toimesta. Je.orgin blogista löytyy kuitenkin &lt;a href=&#34;http://www.je.org/id/internet/sensuuri/1147881620943745.html&#34;&gt;merkintä&lt;/a&gt;, jossa asia selitetään pelkäksi hämäykseksi. Tapahtumaa puitiin ilmeisen laajalti keskustelupalstoilla, ircissä ja lyhyesti EFFInkin listalla.&lt;/p&gt;&#xA;&lt;p&gt;Kyse oli siis siitä, että je.org tunnisti käyttäjän tulevan tietystä IP-osoitteesta, ja esitti hänelle sensuurista informoivan &lt;a href=&#34;http://personal.inet.fi/private/murotus/finnetsensuuri.jpg&#34;&gt;sivun&lt;/a&gt;. Sivulla pyydettiin lähettämään palautetta Suojelupoliisille :-) Hauska jekku, joka nostanee ainakin je.orgin Google AdWords -mainostuloja.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mozilla Store myös Euroopassa</title>
      <link>https://kennethfalck.net/2006/05/18/mozilla-store-my%C3%B6s-euroopassa/</link>
      <pubDate>Thu, 18 May 2006 14:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/05/18/mozilla-store-my%C3%B6s-euroopassa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_106.jpg&#39; title=&#39;blogimg/blog_106.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_106.jpg&#39; alt=&#39;blogimg/blog_106.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt; &lt;a href=&#34;http://store.mozilla.org/&#34;&gt;Mozilla Store&lt;/a&gt; toimittaa nykyään kannatustuotteita Englannista käsin ja euroina hinnoiteltuina. Hinta on kohtuullinen: parin T-paidan postittaminen maksaa reilun kympin, ja itse paidat ovat välillä 15-20 eur/kpl.&lt;/p&gt;&#xA;&lt;p&gt;Vanhat Mozilla-paitani ovat jo niin kauhtuneita, että pistin heti pari tilaukseen. Saa nähdä, kauanko posti niitä kuljettaa. Oletettavasti tullaus- ja verotusongelmia ei pitäisi olla, kuten jenkeistä tilatessa.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>T-Mobile kieltää VoIPin ja IM:n HSDPA:ssa</title>
      <link>https://kennethfalck.net/2006/05/10/t-mobile-kielt%C3%A4%C3%A4-voipin-ja-imn-hsdpassa/</link>
      <pubDate>Wed, 10 May 2006 10:33:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/05/10/t-mobile-kielt%C3%A4%C3%A4-voipin-ja-imn-hsdpassa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_105.jpg&#39; title=&#39;blogimg/blog_105.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_105.jpg&#39; alt=&#39;blogimg/blog_105.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Mielenkiintoinen &lt;a href=&#34;http://news.zdnet.co.uk/communications/3ggprs/0,39020339,39267682,00.htm&#34;&gt;uutinen&lt;/a&gt;, jonka mukaan T-Mobile UK on julkaissut kiinteähintaisen datapalvelun ja siihen liittyvän 3G/HSDPA/WLAN-kortin. Muuten hieno palvelu, mutta käyttöehdoissa on erikseen kielletty VoIP- ja instant messaging -sovellusten käyttö irtisanomisen uhalla. Kukahan sellaisen liittymän ostaisi?&lt;/p&gt;&#xA;&lt;p&gt;Kaiken kaikkiaan kiinnostava tapaus, jossa otetaan mittaa teleoperaattorien ylivallasta asiakkaisiinsa. Onhan meillä Suomessakin blokattu Internet-yhteyksistä palveluita (portti 25), mutta hieman eri perustein kuitenkin.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Maps API</title>
      <link>https://kennethfalck.net/2006/05/09/google-maps-api/</link>
      <pubDate>Tue, 09 May 2006 18:23:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/05/09/google-maps-api/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_104.png&#39; title=&#39;blogimg/blog_104.png&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_104.png&#39; alt=&#39;blogimg/blog_104.png&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tuli vihdoinkin kokeiltua Google Maps APIa, jolla voi upottaa omille sivuilleen kartta- ja satelliittikuvia. &lt;a href=&#34;http://www.kfalck.net&#34;&gt;Etusivultani&lt;/a&gt; löytyykin nyt pienet kuvat kodin ja työpaikan yläpuolelta otettuna.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.google.com/apis/maps/&#34;&gt;Google Maps API&lt;/a&gt; on siitä vänkä, että sillä linkitetyt kuvat eivät ole pelkkiä stillejä, vaan niitä voi klikata ja vieritellä kuten oikeaakin karttapalvelua. Käyttöönotto on helppoa, sillä koodi ladataan JavaScriptinä Googlen palvelimelta. Omalle sivulle täytyy lisätä vain hieman alustusta sekä halutun kokoinen div-elementti, johon karttapalvelu latautuu body onload-eventin yhteydessä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Spammeja siivoiltu</title>
      <link>https://kennethfalck.net/2006/04/29/spammeja-siivoiltu/</link>
      <pubDate>Sat, 29 Apr 2006 14:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/04/29/spammeja-siivoiltu/</guid>
      <description>&lt;p&gt;Spammikommentit alkoivat vähän häiritä, joten poistelin niitä. Kommentin lähetyslomakkeessa on nyt myös valinta, jolla voi ilmoittaa onko lähettämässä spammia vai oikeaa kommenttia.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Luettua: Snow Crash</title>
      <link>https://kennethfalck.net/2006/04/10/luettua-snow-crash/</link>
      <pubDate>Mon, 10 Apr 2006 20:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/04/10/luettua-snow-crash/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_102.jpg&#39; title=&#39;blogimg/blog_102.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_102.jpg&#39; alt=&#39;blogimg/blog_102.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kesti pitkään lukea, mutta erinomainen kirja. Neal Stephensonin &lt;a href=&#34;http://en.wikipedia.org/wiki/Snow_Crash&#34;&gt;Snow Crash&lt;/a&gt; (1992) on aika perustavaa laatua oleva hakkeri-scifi-teos, joka laajentaa ohjelmoimisen ja ohjelmakoodin käsitteitä muinaiseen sumerilaiseen kulttuuriin asti. Se esittää hyvin mielenkiintoisen näkemyksen Baabelin kielten sekoittumisesta sekä erilaisten virusten (sähköisten, biologisten ja kultturaalisten) suhteesta ihmisen kehittymiseen.&lt;/p&gt;&#xA;&lt;p&gt;Nämä antropologiset pohdinnat on upotettu toimintapitoiseen cyberpunk-tarinaan, jossa liikutaan välillä teknisesti kehittyneessä mutta poliittisesti degeneroituneessa oikeassa maailmassa, ja välillä kolmiulotteisessa Internetissä eli Metaversessä. World of Warcraftia ja muita vastaavia pelejä pelanneet saattavat kokea mielenkiintoisia mielleyhtymiä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blogi spämmin uhrina</title>
      <link>https://kennethfalck.net/2006/04/09/blogi-sp%C3%A4mmin-uhrina/</link>
      <pubDate>Sun, 09 Apr 2006 17:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/04/09/blogi-sp%C3%A4mmin-uhrina/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_101.jpg&#39; title=&#39;blogimg/blog_101.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_101.jpg&#39; alt=&#39;blogimg/blog_101.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Huomasin vasta nyt, että tämäkin blogi on päässyt jonkun spämmääjän uhriksi. Katsokaa esim. entryjä &lt;a href=&#34;http://www.kfalck.net/blog.php?id=72&#34;&gt;Kasvi ja Hautala: Kielto vahingollisille suojauksille&lt;/a&gt; ja &lt;a href=&#34;http://www.kfalck.net/blog.php?id=70&#34;&gt;Best of the web&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Mielenkiintoista, sillä tämä blogi ei pohjaudu mihinkään valmiiseen PHP-skriptiin. Kommenttien lähettäminen täytyy siis tehdä joko käsin tai erittäin kehittyneellä tekoälyllä. Tai kenties jossain on joku iso keskitetty spämmibotti, johon tällaiset yksityisetkin blogimoottorit lisätään...&lt;/p&gt;&#xA;&lt;p&gt;Postaamisen estäminen ja noiden mainosten poistaminen on niin helppoa, että en viitsi tehdä sitä vielä, vaan katselen vähän aikaa kauanko ne jaksavat. Sitten voisi kokeilla vaihtaa jonkun form-inputin nimeä ja katsoa, tuleeko spämmit vielä läpi.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Taas epäreiluja domaineja</title>
      <link>https://kennethfalck.net/2006/04/08/taas-ep%C3%A4reiluja-domaineja/</link>
      <pubDate>Sat, 08 Apr 2006 15:06:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/04/08/taas-ep%C3%A4reiluja-domaineja/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_100.jpg&#39; title=&#39;blogimg/blog_100.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_100.jpg&#39; alt=&#39;blogimg/blog_100.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Taas kerran joku &#34;Falck A/S&#34; on saanut etuoikeuden rekisteröidä falck.eu puoli vuotta ennen minua. Kysyn vaan, mikä etuoikeus heillä siihen on? Monen muunkin firman ja henkilön nimi on Falck. Reiluinta olisi, että ensimmäinen hakija saisi domainin. Yksityishenkilöillä kun ei vaan ollut mahdollisuutta hakea ennen 7.4.2006.&lt;/p&gt;&#xA;&lt;p&gt;Jos haluaa lähteä yhteiskunta-analyysiin, niin tämä on tietysti vain pieni esimerkki siitä, miten yrityksille sallitaan jatkuvasti laajempia etuoikeuksia yksityishenkilöihin nähden. Ennestään on jo tuttua, että erityisesti suuryritykset voivat tehdä &lt;a href=&#34;http://news.com.com/Europe+Microsoft+still+out+of+compliance/2100-1014_3-6048432.html?tag=nefd.top&#34;&gt;mitä vaan&lt;/a&gt; ja selviävät aina rahalla, jota niiltä tietysti löytyy.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nokia ei osaa kehittää softaa</title>
      <link>https://kennethfalck.net/2006/04/04/nokia-ei-osaa-kehitt%C3%A4%C3%A4-softaa/</link>
      <pubDate>Tue, 04 Apr 2006 17:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/04/04/nokia-ei-osaa-kehitt%C3%A4%C3%A4-softaa/</guid>
      <description>&lt;p&gt;Olen tuskaillut taas kerran Symbian C++-ohjelmoinnin kanssa. Tällä kertaa yritin saada Series 80:n RHTTPSession-luokkaa toimimaan. Miksi asiat pitää aina tehdä niin vaikeiksi Symbian-maailmassa? .NETissä riittäisi suurin piirtein &lt;i&gt;WebRequest.Create(&#34;http://slashdot.org&#34;);&lt;/i&gt;&lt;/p&gt;&#xA;&lt;p&gt;Symbianissa lähdetään ensin miettimään, millä pirulla saa aikaiseksi TUrlC8-luokan. Siihen tarvitaan TUrlParser8 sekä _L8(&#34;http://slashdot.org&#34;). Sitten voikin alkaa arpoa, missä järjestyksessä kutsutaan metodeja RHTTPSession::OpenL(), RHTTPSession::OpenTransactionL() ja RHTTPTransaction::SubmitL(). Eikä tämä toki riitä, vaan ensin pitää omassa luokassa toteuttaa MHTTPTransactionCallback eli metodit MHFRunL() ja MHFRunError() ja käsitellä ne oikein, ettei tule panicceja.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MythTV 0.19 Ubuntulle</title>
      <link>https://kennethfalck.net/2006/03/29/mythtv-0.19-ubuntulle/</link>
      <pubDate>Wed, 29 Mar 2006 19:18:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/03/29/mythtv-0.19-ubuntulle/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_98.jpg&#39; title=&#39;blogimg/blog_98.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_98.jpg&#39; alt=&#39;blogimg/blog_98.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Päivitin hiljattain kotipalvelimeni &lt;a href=&#34;http://www.ubuntu.com/&#34;&gt;Ubuntuun&lt;/a&gt; ja käytin jonkin aikaa MythTV 0.18.1:aa, joka on varsin toimiva PVR-järjestelmä Linuxille. Tällä viikolla päätin päivittää MythTV:n 0.19-versioon, joka tuo mm. DVB-tekstitystuen YLEn kanaville ja monia muita parannuksia.&lt;/p&gt;&#xA;&lt;p&gt;Kävipä kuitenkin niin, että jonkin epämääräisen nettiohjeen perusteella päivitin epähuomiossa MythTV:n uusimpaan svn head -versioon, joka alkoikin kaatuilla kerran päivässä. Onneksi &lt;a href=&#34;http://deb.thehunter.ws/dists/breezy/mythtv-stable/&#34;&gt;täältä&lt;/a&gt; [thehunter.ws] löytyi ohje, miten MythTV:n 0.19 stable-version saa asennettua Ubuntuun. Ei muuta kuin poistamaan vanhat paketit ja stabiilit tilalle. Tietokanta ja asetukset näyttivät säilyvän pienestä downgradesta huolimatta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Poliisit televisiossa</title>
      <link>https://kennethfalck.net/2006/03/07/poliisit-televisiossa/</link>
      <pubDate>Tue, 07 Mar 2006 20:45:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/03/07/poliisit-televisiossa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_97.jpg&#39; title=&#39;blogimg/blog_97.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_97.jpg&#39; alt=&#39;blogimg/blog_97.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Lempikyttäsarjani tv:ssä tällä hetkellä:&lt;ul&gt;&lt;li&gt;24 (&lt;a href=&#34;http://www.imdb.com/title/tt0285331/&#34;&gt;24&lt;/a&gt;, Fox)&lt;/li&gt;&lt;li&gt;Shield (&lt;a href=&#34;http://www.imdb.com/title/tt0286486/&#34;&gt;The Shield&lt;/a&gt;, FX)&lt;/li&gt;&lt;li&gt;Poliisipäällikkö Mannion (&lt;a href=&#34;http://www.imdb.com/title/tt0247087/&#34;&gt;The District&lt;/a&gt;, CBS)&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&#xA;&lt;p&gt;Outo yhdistelmä? Jostain syystä minusta on metkaa seurailla, millaisin tavoin jenkit suhtautuvat omaan maailmaansa. Esimerkiksi Shieldissä undercover-poliisin kokaiininkäyttö kuitataan &#39;loukkaantumisena virkatehtävissä&#39;. Mannionissa  konstaapeli olisi ollut automaattisesti huumeriippuvainen ja passitettu hoitoon, kuten kyseisen tv-sarjan perikonservatiivinen maailmankatsomus edellyttää.&lt;/p&gt;&#xA;&lt;p&gt;Mannion on muutenkin kunnostautunut erilaisten kansalaisoikeuksien polkemisessa, tai ainakin sen yrittämisessä. Taannoisessa lapsipornojaksossa käytiin mielenkiintoinen väittely siitä, miten tietokonegeneroidun pornon kieltäminen olisi estänyt pedofiilejä kaappaamasta pikkulapsia.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Applen media centerit</title>
      <link>https://kennethfalck.net/2006/02/28/applen-media-centerit/</link>
      <pubDate>Tue, 28 Feb 2006 21:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/02/28/applen-media-centerit/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_96.jpg&#39; title=&#39;blogimg/blog_96.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_96.jpg&#39; alt=&#39;blogimg/blog_96.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Apple vaikuttaa profiloituvan yhä enemmän media center -tyyppiseen käyttöön uusilla &lt;a href=&#34;http://www.apple.com/macmini/&#34;&gt;Mac Mini&lt;/a&gt; koneilla (jotka ovat tietysti Intel-pohjaisia). &lt;a href=&#34;http://www.apple.com/macmini/frontrow.html&#34;&gt;Front Row&lt;/a&gt; -esittely antaa ainakin mielikuvan, että käyttöliittymä sopisi hyvin kaukosäätimellä television ruudulta ohjattavaksi. Täytyy päästä kokeilemaan...&lt;/p&gt;&#xA;&lt;p&gt;Microsoftilla on tuntunut olevan etumatkaa tässä asiassa Windows XP Media Center Edition -koneillaan, joita vilisee nyt televisiomainoksissakin.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>mIRC 6.17 UTF-8-tuella</title>
      <link>https://kennethfalck.net/2006/02/18/mirc-6.17-utf-8-tuella/</link>
      <pubDate>Sat, 18 Feb 2006 23:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/02/18/mirc-6.17-utf-8-tuella/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_95.gif&#39; title=&#39;blogimg/blog_95.gif&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_95.gif&#39; alt=&#39;blogimg/blog_95.gif&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Vihdoinkin &lt;a href=&#34;http://www.mirc.com/get.html&#34;&gt;mIRC 6.17&lt;/a&gt;, jossa kauan odotettu UTF-8-tuki. Näyttäisi toimivan oletuksena fiksusti, eli ymmärtää sisääntulevaa UTF-8:a mutta lähettää ulospäin ISO-8859-1:tä.&lt;/p&gt;&#xA;&lt;p&gt;Nyt kun &lt;a href=&#34;http://irssi.org&#34;&gt;irssi 0.8.10&lt;/a&gt; niinikään tukee oletuksena UTF-8:a, IRC ehkä vihdoinkin siirtyy Unicode-aikaan... Ainakaan Windows- ja Linux-käyttäjillä ei ole enää valittamisen aihetta.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hakkerimatkailua Genevessä</title>
      <link>https://kennethfalck.net/2006/02/14/hakkerimatkailua-genevess%C3%A4/</link>
      <pubDate>Tue, 14 Feb 2006 23:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/02/14/hakkerimatkailua-genevess%C3%A4/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_94.jpg&#39; title=&#39;blogimg/blog_94.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_94.jpg&#39; alt=&#39;blogimg/blog_94.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tiesittekö, että Sveitsissä toimii puolet suomalaisista sähköpistokkeista ja puolet ei? Maadoittamattomat nimittäin toimivat hyvin, mutta sukomalliset töpselit ovat hieman liian paksuja mahtuakseen sveitsiläiseen rasiaan. En ole koskaan ennen edes huomannut, että pistokkeiden paksuudessa on eroa...&lt;/p&gt;&#xA;&lt;p&gt;Koska PowerBookin virtalähde on maadoitettu, ja kulutin jo toisen akkuni Helsinki-Kööpenhamina-Geneve-lennolla katsellessani War of the Worldsia, alkoi epätoivo hiipiä mieleen. Yritin ladata akkua kylpyhuoneen universaalista partakoneliitännästä, joka sallii paksummatkin pistokkeet, mutta sulake poksahti saman tien. Partakoneen johdon leikkaaminen ja kolvaaminen kiinni PowerBookiin ei sekään tuntunut hyvältä idealta..&lt;/p&gt;</description>
    </item>
    <item>
      <title>WLAN-tukiasema taskussa</title>
      <link>https://kennethfalck.net/2006/02/12/wlan-tukiasema-taskussa/</link>
      <pubDate>Sun, 12 Feb 2006 17:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/02/12/wlan-tukiasema-taskussa/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_93.jpg&#39; title=&#39;blogimg/blog_93.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_93.jpg&#39; alt=&#39;blogimg/blog_93.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Olen lähdössä työmatkalle ja keksin ottaa kerrankin mukaan pienikokoisen WLAN-tukiaseman, ettei tarvitse aina vedellä verkkokaapeleita ympäri huoneita. Pienen googlettamisen jälkeen huomasin, että itse asiassa omistan sellaisen jo: jokunen vuosi sitten hankkimani AirPort Express toimii yhtä lailla Access Point kuin Client-moodissakin.&lt;/p&gt;&#xA;&lt;p&gt;Olen käyttänyt AirPort Expressiä musiikin lähettämiseen olohuoneeseen, jolloin se toimii toisen WLAN-tukiaseman alaisuudessa. Pienellä konfiguraatiomuutoksella laite kuitenkin muuttuu itsenäiseksi tukiasemaksi, joka kytketään Ethernetiin ja verkkovirtaan.&lt;/p&gt;&#xA;&lt;p&gt;Ominaisuuksiltaan se on aika yksinkertainen NAT/DHCP-reititin ilman hienoja palomuuritoimintoja, mutta matkusteluun se lienee aika sopiva. Laite ei ole ihan taskukokoa, mutta toisaalta aika näppärä pitää mukana, kun erillistä virtalähdettä ja sojottavia antenneja yms. ei tarvita.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kyse ei ole pilakuvista</title>
      <link>https://kennethfalck.net/2006/02/07/kyse-ei-ole-pilakuvista/</link>
      <pubDate>Tue, 07 Feb 2006 14:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/02/07/kyse-ei-ole-pilakuvista/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_92.jpg&#39; title=&#39;blogimg/blog_92.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_92.jpg&#39; alt=&#39;blogimg/blog_92.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kävelin eilen kaupungilla ja törmäsin mielenosoitukseen. Joukko suomalaisia muslimeja vastusti Jyllands-Postenin pilakuvia melko rauhallisen tuntuisesti. Rupesin miettimään, että ei tässä tunnu olevan kyse mistään raivohullusta vääräuskoisille uhittelusta, vaan jostain ihan muusta. Miten jokin kauan sitten julkaistu lehtijuttu ylipäätään saa tavalliset ihmiset liikkeelle Helsingissäkin?&lt;/p&gt;&#xA;&lt;p&gt;Oma selitykseni ilmiölle on yhteisöllisyyden ja yhteisen asian puolustamisen tunne. Muhammedin pilakuvat ovat muslimiyhteisölle vain samanlainen yksittäinen tekijä, kuin vaikkapa Lex Karpela sähköisten oikeuksien puolustajille. Tällaiset tapahtumat saavat ihmiset liikkeelle, mutta taustalla on jotain paljon abstraktimpaa ja laajempaa, jota ilman koko yhteisöä ei olisi olemassa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symbian-alusta kuolee mahdottomuuteensa</title>
      <link>https://kennethfalck.net/2006/02/07/symbian-alusta-kuolee-mahdottomuuteensa/</link>
      <pubDate>Tue, 07 Feb 2006 12:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/02/07/symbian-alusta-kuolee-mahdottomuuteensa/</guid>
      <description>&lt;p&gt;Nokia &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=25978&amp;amp;tyyppi=1&#34;&gt;jatkaa mokailuaan&lt;/a&gt; Symbian-alustan yhteensopivuuskysymysten kanssa. Jo aiemmin on ollut tuttua, että suurella vaivalla kehitetyt sovellukset lakkaavat toimimasta heti seuraavan sukupolven kännyköiden tullessa markkinoille. Vakavasti otettava sovelluskehitys edellyttää jokaisen uuden kännykkämallin hankkimista sekä sovellusten uudelleenkääntämistä ja testaamista niissä -- ikään kuin Windows-sovelluskehittäjän olisi testattava ohjelmistonsa jokaisessa Dellin ja HP:n julkaisemassa uudessa PC-mallissa.&lt;/p&gt;&#xA;&lt;p&gt;Uutisen perusteella open source -kehitys on ymmärretty muutenkin aivan väärin: &lt;i&gt;&#34;Koska ilmaisten freeware- ja open source -ohjelmien kehittäjien ei voida odottaa maksavan sertifikaateista, ovat Symbian-yhteistyöyritykset kehittäneet näille oman julkaisutapansa. Freeware Route to Market tarkoittaa sitä, että kehittäjät saavat sertifikaatin ja allekirjoituksen ohjelmalle ilmaiseksi, jos se katsotaan laadukkaaksi ja täyttää yhtiöiden asettamat ehdot.&#34;&lt;/i&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mobiili-tv:stä tuplateostomaksut?</title>
      <link>https://kennethfalck.net/2006/02/03/mobiili-tvst%C3%A4-tuplateostomaksut/</link>
      <pubDate>Fri, 03 Feb 2006 01:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/02/03/mobiili-tvst%C3%A4-tuplateostomaksut/</guid>
      <description>&lt;p&gt;Yleisradion hallintojohtaja &lt;a href=&#34;http://www.itviikko.fi/uutiset/uutinen.asp?UutisID=72597&#34;&gt;kommentoi&lt;/a&gt; Teoston mobiili-tv-vaatimuksia oivasti: &#34;Olen nyt useamman vuosikymmenen ollut näiden asioiden kanssa tekemisissä, mutta tämä on kyllä tyhmintä, mitä minä olen kuullut. Tekijänoikeusjärjestöt ovat ahneudessaan nyt astuneet tyhjän päälle.&#34;&lt;/p&gt;&#xA;&lt;p&gt;Kysehän on Teoston, Kopioston ja Gramexin vaatimuksesta, jonka mukaan broadcasterien tulisi maksaa mobiili-tv-lähetyksistä teostomaksut kaksinkertaisina. En ole aivan varma mihin tämä näkemys perustuu, mutta ilmeisesti siellä ajatellaan mobiilitelevision katsojien seuraavan ohjelmia nojatuoleissaan samaan aikaan sekä kännykästä että olohuoneen televisiosta.&lt;/p&gt;&#xA;&lt;p&gt;Tämä näkemys on jo ennestään tuttu radiopuolelta, jossa halutaan myöskin laskuttaa saman ohjelmasisällön lähettämisestä niin Internetissä kuin radioaalloillakin. Luonnollisesti radiokuuntelijatkin pitävät FM-radiotaan auki samalla kun kuuntelevat nettiradioita.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Googlen sensuuri Kiinassa</title>
      <link>https://kennethfalck.net/2006/02/03/googlen-sensuuri-kiinassa/</link>
      <pubDate>Fri, 03 Feb 2006 00:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/02/03/googlen-sensuuri-kiinassa/</guid>
      <description>&lt;p&gt;Jos joku ei ole vielä tutustunut Googlen hakutulosten peukalointiin Kiinassa, kannattaa kokeilla näitä linkkejä:   &lt;a href=&#34;http://images.google.cn/images?hl=zh-CN&amp;amp;q=tiananmen%20square&#34;&gt;Kiinan näkymä&lt;/a&gt;    &lt;a href=&#34;http://images.google.com/images?q=tiananmen%20square&#34;&gt;Maailman näkymä&lt;/a&gt;&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Copy Controllin arvoitus</title>
      <link>https://kennethfalck.net/2006/01/29/copy-controllin-arvoitus/</link>
      <pubDate>Sun, 29 Jan 2006 17:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/01/29/copy-controllin-arvoitus/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_88.jpg&#39; title=&#39;blogimg/blog_88.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_88.jpg&#39; alt=&#39;blogimg/blog_88.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kuten Digitoday &lt;a href=&#34;http://www.digitoday.fi/showPage.php?page_id=11&amp;amp;news_id=52637&#34;&gt;raportoi&lt;/a&gt;, tekijänoikeusjärjestöjen &lt;a href=&#34;http://www.piraattitehdas.fi&#34;&gt;Piraattitehtaan arvoitus&lt;/a&gt; -propagandasarjakuvasta on julkaistu parodia: &lt;a href=&#34;http://hietanen.typepad.com/copyfraud/files/copycontrollinarvoitus.pdf&#34;&gt;Copy Controllin arvoitus&lt;/a&gt;. Ihan hauska. Toivottavasti herättää ajatuksia sellaisissa, joissa ajatukset eivät ole vielä heränneet. Kannattaa tsekata myös Digitodayn &lt;a href=&#34;http://www.digitoday.fi/tekijanoikeus/&#34;&gt;Tekijänoikeusblogi&lt;/a&gt;.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>UPnP kaipaa hiomista</title>
      <link>https://kennethfalck.net/2006/01/26/upnp-kaipaa-hiomista/</link>
      <pubDate>Thu, 26 Jan 2006 14:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/01/26/upnp-kaipaa-hiomista/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_87.jpg&#39; title=&#39;blogimg/blog_87.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_87.jpg&#39; alt=&#39;blogimg/blog_87.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Olen tutustunut viime kuukausina UPnP:n ihmeelliseen maailmaan. Perusajatus on hieno: jokainen kodin laite voi sen avulla löytää toisensa ja ohjata toisiaan, kunhan ne vain kytketään IP-verkkoon (kuten Ethernet tai WLAN). Käytäntö ei ole aivan yhtä kukkainen, sillä harva UPnP-laite tuntuu todellisuudessa toimivan yhteen saati edes löytävänsä toisiaan.&lt;/p&gt;&#xA;&lt;p&gt;Hauska esimerkki on &lt;a href=&#34;http://www.dlink.com/products/?pid=318&#34;&gt;D-Link DSM-320 MediaLounge&lt;/a&gt;, joka on televisioon kytkettävä mediasoitin. Sen pitäisi löytää kodin UPnP-mediapalvelimet ja esittää niiden tarjoilemaa audio-, video- ja stillikuvasisältöä television ruudulla. WLAN-moodissa laite ei toimi ollenkaan, sillä se sekoaa jo ennen mediaserverien löytymistä. Ilmeisesti testaus on jäänyt hieman puolitiehen, sillä WLAN-tuki toimii kuulemma vain D-Linkin oman tukiaseman kanssa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Prostituution laillisuudesta</title>
      <link>https://kennethfalck.net/2006/01/22/prostituution-laillisuudesta/</link>
      <pubDate>Sun, 22 Jan 2006 14:10:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/01/22/prostituution-laillisuudesta/</guid>
      <description>&lt;p&gt;Mainio &lt;a href=&#34;http://neilswaab.com/comics/wiggles/images/rehab252.jpg&#34;&gt;sarjis&lt;/a&gt; asiaa havainnollistamaan.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>MSN Messenger tuhoaa tiedostoja</title>
      <link>https://kennethfalck.net/2006/01/22/msn-messenger-tuhoaa-tiedostoja/</link>
      <pubDate>Sun, 22 Jan 2006 01:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/01/22/msn-messenger-tuhoaa-tiedostoja/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_85.jpg&#39; title=&#39;blogimg/blog_85.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_85.jpg&#39; alt=&#39;blogimg/blog_85.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Huomasinpa juuri, että MSN Messenger tuhoaa kyselemättä tiedostoja, kun vastaanottaa niitä File Transfer -toiminnon kautta ja yrittää avata suoraan Messengerin sisältä. Tässä tapauksessa kyse oli .m4a-tiedostosta (AAC), mutta sama koskee ilmeisesti myös &lt;a href=&#34;http://www.whoisdeep.com/2005/12/16/msn-messenger-or-hitler/&#34;&gt;mp3-tiedostoja&lt;/a&gt;. &lt;/p&gt;&#xA;&lt;p&gt;Muistelen hämärästi kuulleeni tästä aiemminkin, mutta vasta nyt törmäsin ilmiöön itse. Lieneekö taustalla levy-yhtiöiden ja Microsoftin salainen sopimus? Joka tapauksessa todella törkeää ilkivaltaa Microsoftin taholta.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sananvapauden puolesta</title>
      <link>https://kennethfalck.net/2006/01/02/sananvapauden-puolesta/</link>
      <pubDate>Mon, 02 Jan 2006 21:58:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/01/02/sananvapauden-puolesta/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_84.jpg&#39; title=&#39;blogimg/blog_84.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_84.jpg&#39; alt=&#39;blogimg/blog_84.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Vahtikoira tarjoaa &lt;a href=&#34;http://www.vahtikoira.net/?p=42&#34;&gt;organisoitua keskustelua&lt;/a&gt; kopiosuojausten kiertomenetelmistä. Kaikille lienee jo selvää, että tällainen keskustelu on Lex Karpelan voimaantulon myötä kiellettyä, eli nyt punnitaan sananvapautta ihan tosissaan.&lt;/p&gt;&#xA;&lt;p&gt;Keskustelusta löytyy esimerkiksi ohjeita shift-näppäimen painamiseksi CD:iden kuuntelemiseksi Windowsissa (ehkäisee muunmuassa pahojen tietoturva-aukkojen syntymistä) sekä tällainen näppärä koodinpätkä DVD:iden katseluun Linuxissa:&lt;/p&gt;&#xA;&lt;p&gt;#define m(i)(x[i]^s[i+84])&amp;lt;&amp;lt; unsigned&lt;br/&gt;&#xA;char x[5],y,s[2048]; main(n) {for(read(0,x,5);&lt;br/&gt;&#xA;read(0,s,n=2048); write(1,s,n))if(s[y=s[13]&lt;br/&gt;&#xA;%8+20]/16%4==1) {int i=m(1)17^256+m(0)8,k=m&lt;br/&gt;&#xA;(2)0, j=m(4)17^m(3)9^k *2-k%8^8,a=0,c=26;&lt;br/&gt;&#xA;for(s[y]-=16;--c;j*=2) a=a*2^i&amp;amp;1,i=i/2^j&amp;amp;1&amp;lt;&amp;lt;24;&lt;br/&gt;&#xA;for(j=127;++j&amp;lt;n;c=c&amp;gt;y) c+=y=i^i/8^i&amp;gt;&amp;gt;4^i&amp;gt;&amp;gt;12,i=i&amp;gt;&lt;br/&gt;&#xA;&amp;gt;8^y&amp;lt;&amp;lt;17,a^=a&amp;gt;&amp;gt;14, y=a^a*8^a&lt;br/&gt;&#xA;&amp;lt;&amp;lt;6,a=a&amp;gt;&amp;gt;8^y&amp;lt;&amp;lt;9,k=s[j],&lt;br/&gt;&#xA;k=&#34;7Wo~&#39;G_\216&#34;[k&amp;amp;7] + 2^&#34;cr3sfw6v;&lt;br/&gt;&#xA;*k+&amp;gt;/n.&#34;[k&amp;gt;&amp;gt;4]*2^k*257/8, s[j]=&lt;br/&gt;&#xA;k^(k&amp;amp;k*2&amp;amp;34)*6^c+~y;}}&lt;/p&gt;</description>
    </item>
    <item>
      <title>Merkistösotien paluu</title>
      <link>https://kennethfalck.net/2006/01/01/merkist%C3%B6sotien-paluu/</link>
      <pubDate>Sun, 01 Jan 2006 17:26:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2006/01/01/merkist%C3%B6sotien-paluu/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_83.png&#39; title=&#39;blogimg/blog_83.png&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_83.png&#39; alt=&#39;blogimg/blog_83.png&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kuka muistaa vielä, kun 90-luvun alkupuolella tapeltiin siitä, käytetäänkö purkeissa IBM-, ISO- vai SF7-skandeja? Sama sota on nyt alkanut uudelleen IRC-kanavilla, kun joukko käyttäjiä on päättänyt siirtyä de-facto-aseman saavuttaneesta ISO-8859-1:stä &lt;a href=&#34;http://wiki.tukaani.org/irc_ja_utf-8&#34;&gt;UTF-8:aan&lt;/a&gt; eli siis käytännössä Unicode-merkistöön.&lt;/p&gt;&#xA;&lt;p&gt;Itse kannatan muutosta. Unicode on nykyään melkeinpä jokaisen sovellusympäristön pohjana (Java, .NET, jne) ja sovellukset ja käyttöjärjestelmät tukevat sitä natiivisti. Varsinkin XML:n myötä UTF-8:sta on muodostunut muutenkin universaali merkistö, joka kattaa koko maailman tarpeet yhtäläisesti niin lännessä kuin idässä.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pientä saittiuudistusta</title>
      <link>https://kennethfalck.net/2005/12/31/pient%C3%A4-saittiuudistusta/</link>
      <pubDate>Sat, 31 Dec 2005 05:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/12/31/pient%C3%A4-saittiuudistusta/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_82.jpg&#39; title=&#39;blogimg/blog_82.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_82.jpg&#39; alt=&#39;blogimg/blog_82.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Vuoden vaihtumisen kunniaksi turhaa tauhkaa heitetty menemään ja uusimmista blogientryistä tehty etusivun pääsisältö. Blogi- ja kaverilinkkejä löytyy edelleen sivupalkeista. Hyvää uutta vuotta itse kullekin :-)&lt;/p&gt;&#xA;&lt;p&gt;(Näyttää tämä bloggaaminen kääntyvän hiljalleen kokonaan suomeksi. RSS 2.0 -tuki pitäisi vielä tehdä.)&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Paras joululahja tänä vuonna</title>
      <link>https://kennethfalck.net/2005/12/20/paras-joululahja-t%C3%A4n%C3%A4-vuonna/</link>
      <pubDate>Tue, 20 Dec 2005 21:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/12/20/paras-joululahja-t%C3%A4n%C3%A4-vuonna/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_81.png&#39; title=&#39;blogimg/blog_81.png&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_81.png&#39; alt=&#39;blogimg/blog_81.png&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tässä tämän vuoden &lt;a href=&#34;http://www.itviikko.fi/uutiset/uutisalue.asp?alue=viikko&amp;amp;UutisID=71832&#34;&gt;paras joululahja&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.kasvi.org/index.php?550&#34;&gt;Blogattu&lt;/a&gt; ja &lt;a href=&#34;http://sektori.com/uutiset/6858&#34;&gt;uutisoitu&lt;/a&gt; &lt;a href=&#34;http://www.digitoday.fi/showPage.php?page_id=11&amp;amp;news_id=51479&#34;&gt;muuallakin&lt;/a&gt; tietty.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Yksityisyyden rippeet</title>
      <link>https://kennethfalck.net/2005/12/14/yksityisyyden-rippeet/</link>
      <pubDate>Wed, 14 Dec 2005 15:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/12/14/yksityisyyden-rippeet/</guid>
      <description>&lt;p&gt;Olen jälleen kerran onnellinen, että pidän yllä omaa sähköpostipalvelintani, vaikka &lt;a href=&#34;http://www.ficora.fi/suomi/document/Viestintavirasto112004M.pdf&#34;&gt;Viestintävirasto onkin kyseistä sananvapautta pyrkinyt parhaansa mukaan sabotoimaan&lt;/a&gt; (blokkaamalla portin 25). Operaattorien kautta kulkevat sähköpostit &lt;a href=&#34;http://www.vahtikoira.net/?p=35&#34;&gt;logitetaan nyt sitten&lt;/a&gt; &lt;a href=&#34;http://www.kasvi.org/index.php?506&#34;&gt;hamaan tulevaisuuteen&lt;/a&gt; poliisien ja turvallisuuspäälliköiden iltalukemiseksi.&lt;/p&gt;&#xA;&lt;p&gt;Päivä päivältä ja pykälä pykälältä alkaa tuntua siltä, että nykyinen Internet on niin pilattu sekä spammilla että aivokuolleella lainsäädännöllä, että jotain uutta pitäisi kehittää. Jotain sen verran teknisesti edistyksellistä, että säätäjillä menisi taas se kymmenen vuotta edes tajuta sen olemassaolo.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kielekeselailu myös sähköpostiin</title>
      <link>https://kennethfalck.net/2005/12/12/kielekeselailu-my%C3%B6s-s%C3%A4hk%C3%B6postiin/</link>
      <pubDate>Mon, 12 Dec 2005 02:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/12/12/kielekeselailu-my%C3%B6s-s%C3%A4hk%C3%B6postiin/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_79.jpg&#39; title=&#39;blogimg/blog_79.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_79.jpg&#39; alt=&#39;blogimg/blog_79.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Olen käyttänyt &lt;a href=&#34;http://www.mozilla.com/firefox/&#34;&gt;Firefoxin&lt;/a&gt; tabeja netin selailemiseen siitä lähtien kun päätin siirtyä kokonaan Internet Explorerista pois. Minusta ne ratkaisevat oivasti sen ongelman, että Windowsin tehtäväpalkki täyttyy hetkessä lukemattomista ikkunoista eikä moniajo enää toimi kunnolla.&lt;/p&gt;&#xA;&lt;p&gt;Käytän myös &lt;a href=&#34;http://www.mozilla.com/thunderbird/&#34;&gt;Thunderbirdiä&lt;/a&gt; sähköpostin lukemiseen. Nyt &lt;a href=&#34;http://mozillazine.org/talkback.html?article=7758&#34;&gt;joku on näemmä keksinyt&lt;/a&gt;, että &lt;a href=&#34;https://bugzilla.mozilla.org/attachment.cgi?id=186166&#34;&gt;siinäkin voisi hyödyntää kielekeideaa&lt;/a&gt; useamman sähköpostin avaamiseen kerralla näytölle. &lt;/p&gt;&#xA;&lt;p&gt;Lieneekö hyödyllistä vai turhaa kikkailua? Odotan mielenkiinnolla Thunderbirdin versiota, jossa nuo tabit ovat mukana. Nykyisessä 1.5 RC1:ssä niitä ei vielä näy.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Olen rikollinen?</title>
      <link>https://kennethfalck.net/2005/12/11/olen-rikollinen/</link>
      <pubDate>Sun, 11 Dec 2005 21:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/12/11/olen-rikollinen/</guid>
      <description>&lt;p&gt;Tällainen &lt;a href=&#34;http://www.olenrikollinen.org/&#34;&gt;blogi&lt;/a&gt; osui silmään ensimmäistä kertaa. Pitänee seurata pysyykö vireillä ja riittääkö tekijänoikeuksissa jatkuvasti blogattavaa.&lt;/p&gt;&#xA;&lt;p&gt;Myöskin Karin &amp;amp; Co &lt;a href=&#34;http://www.vahtikoira.net/&#34;&gt;Vahtikoira&lt;/a&gt; vaikuttaa oikein mielenkiintoiselta lukemiselta.&lt;/p&gt;&#xA;&lt;p&gt;Kolmet pikkujoulut viime viikolla ilmeisesti sai aikaan suomenkielen suosimisen omassa blogissa, ehkä toivun vielä joskus :-)&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Turha lehmä</title>
      <link>https://kennethfalck.net/2005/12/09/turha-lehm%C3%A4/</link>
      <pubDate>Fri, 09 Dec 2005 11:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/12/09/turha-lehm%C3%A4/</guid>
      <description>&lt;p&gt;Tarkoititko tätä: &lt;a href=&#34;http://www.tanjasaarela.fi&#34;&gt;turha lehmä&lt;/a&gt;?&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Helsinki City Library endorsing non-free technology</title>
      <link>https://kennethfalck.net/2005/12/01/helsinki-city-library-endorsing-non-free-technology/</link>
      <pubDate>Thu, 01 Dec 2005 22:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/12/01/helsinki-city-library-endorsing-non-free-technology/</guid>
      <description>&lt;p&gt;According to a &lt;a href=&#34;http://www.itviikko.fi/uutiset/uutinen.asp?id=71495&#34;&gt;news article&lt;/a&gt;, the Helsinki City Library is educating consumers how to use Skype. That&#39;s all very nice, but do they realize Skype is a closed and proprietary VoIP system, with no support for open standards such as SIP and RTP? Personally, I don&#39;t believe that&#39;s a good way to build a future of interoperable and free VoIP communications for everybody. We don&#39;t need any more Microsofts and lockins to closed formats and protocols.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Good experiences with Ubuntu 5.10</title>
      <link>https://kennethfalck.net/2005/11/27/good-experiences-with-ubuntu-5.10/</link>
      <pubDate>Sun, 27 Nov 2005 22:26:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/11/27/good-experiences-with-ubuntu-5.10/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_75.jpg&#39; title=&#39;blogimg/blog_75.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_75.jpg&#39; alt=&#39;blogimg/blog_75.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I have heard much good about &lt;a href=&#34;http://ubuntulinux.org&#34;&gt;Ubuntu&lt;/a&gt; and decided to try it. I&#39;m happy. It&#39;s basically Debian, but polished-up and updated to modern versions of the Linux kernel and other software.&lt;/p&gt;&#xA;&lt;p&gt;Getting Ubuntu to work with a RADEON X700 video card was a breeze. It wasn&#39;t an out-of-the-box experience though. I had to &lt;a href=&#34;https://wiki.ubuntu.com/BinaryDriverHowto/ATI&#34;&gt;apt-get install the fglrx driver manually first&lt;/a&gt;, X wouldn&#39;t even start by default. Also, when upgrading the kernel, I had to reinstall the fglrx driver to generate the up-to-date module.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nokia SU-8W Bluetooth Keyboard</title>
      <link>https://kennethfalck.net/2005/11/23/nokia-su-8w-bluetooth-keyboard/</link>
      <pubDate>Wed, 23 Nov 2005 21:32:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/11/23/nokia-su-8w-bluetooth-keyboard/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_74.jpg&#39; title=&#39;blogimg/blog_74.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_74.jpg&#39; alt=&#39;blogimg/blog_74.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I got &lt;a href=&#34;http://www.nokia.fi/puhelimet/lisalaitteet/su8w/&#34;&gt;one of these&lt;/a&gt; to provide a better input method for the Nokia 770 tablet. It works pretty well, provided you install the &lt;a href=&#34;http://770.fs-security.com/keyboards.html&#34;&gt;770 Bluetooth keyboard plugin&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Problems so far: the keymap is wrong (using English while my keyboard is Finnish/Swedish), Bluetooth pairing doesn&#39;t work, in XTerm the Enter-key doesn&#39;t work properly, screen saver is not deactivated by keypresses (gets annoying pretty fast). I think these will be fixed in the future.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Slashdot: The real reason behind ITMS tiered pricing</title>
      <link>https://kennethfalck.net/2005/11/20/slashdot-the-real-reason-behind-itms-tiered-pricing/</link>
      <pubDate>Sun, 20 Nov 2005 23:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/11/20/slashdot-the-real-reason-behind-itms-tiered-pricing/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_73.jpg&#39; title=&#39;blogimg/blog_73.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_73.jpg&#39; alt=&#39;blogimg/blog_73.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;From &lt;a href=&#34;http://apple.slashdot.org/article.pl?sid=05/11/18/2058231&#34;&gt;Slashdot&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;p&gt;Raindance writes &#34;Joel on Software has an interesting piece on why Big Content is making loud noises about moving from &#39;flat fee&#39; to &#39;tiered&#39; pricing models on the ITMS. According to Joel, it&#39;s not about pricing songs commensurate with their economic value; rather, it&#39;s about allowing the labels to manipulate public perception of value through pricing.&#34; From the article: &#34;And now when a musician gets uppity, all the recording industry has to do is threaten to release their next single straight into the $0.99 category, which will kill it dead no matter how good it is. And suddenly the music industry has a lot more leverage over their artists in negotiations: the kind of leverage they are used to having. Their favorite kind of leverage. The &#34;we won&#39;t promote your music if you don&#39;t let us put rootkits on your CDs&#34; kind of leverage.&#34;&lt;/p&gt;</description>
    </item>
    <item>
      <title>(FIN) Kasvi ja Hautala: Kielto vahingollisille suojauksille</title>
      <link>https://kennethfalck.net/2005/11/18/fin-kasvi-ja-hautala-kielto-vahingollisille-suojauksille/</link>
      <pubDate>Fri, 18 Nov 2005 14:49:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/11/18/fin-kasvi-ja-hautala-kielto-vahingollisille-suojauksille/</guid>
      <description>&lt;p&gt;Kasvi blogittaa &lt;a href=&#34;http://www.kasvi.org/index.php?406&#34;&gt;Hautalan kanssa tekemästä lakialoitteestaan&lt;/a&gt;: Vahingolliset kopiosuojaukset kiellettävä lailla ja kuluttajalle taattava oikeus kolmeen kopioon.&lt;/p&gt;&#xA;&lt;p&gt;Omasta mielestäni kolme on aivan liian vähän, itselläni on pelkästään tietokoneita jo 5 kpl, 2 iPodia sekä useita kännyköitä. Vähintään 10 kopiota tarvitaan per kuluttaja. Mieluiten ei tietenkään mitään kvantitatiivista rajoitusta, vaan omaan käyttöön vapaa käyttöoikeus. Kuka sen nyt saisi määrätä, montako päätelaitetta kenelläkin saa olla.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>The recording industry just doesn&#39;t get it</title>
      <link>https://kennethfalck.net/2005/11/18/the-recording-industry-just-doesnt-get-it/</link>
      <pubDate>Fri, 18 Nov 2005 06:50:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/11/18/the-recording-industry-just-doesnt-get-it/</guid>
      <description>&lt;p&gt;EMI is &lt;a href=&#34;http://apple.slashdot.org/article.pl?sid=05/11/17/1752219&amp;amp;tid=141&amp;amp;tid=187&amp;amp;tid=3&#34;&gt;now pushing Apple&lt;/a&gt; to stop having static iTunes prices. They just don&#39;t get it. The whole idea behind the static $0.99 pricing is to make people actually forget they are buying anything -- since they don&#39;t have to consider the price. As a result, they&#39;ve spent enormous amounts of money on iTunes tracks.&lt;/p&gt;&#xA;&lt;p&gt;And now the recording industry, in it&#39;s endless lust for more profit, is about to break this model. If they succeed, iTunes sales will drop drastically, as people will stop to consider the prices every time they make a purchase decision. Way to go, EMI.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Best of the web</title>
      <link>https://kennethfalck.net/2005/11/15/best-of-the-web/</link>
      <pubDate>Tue, 15 Nov 2005 01:34:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/11/15/best-of-the-web/</guid>
      <description>&lt;p&gt;Some of the best websites in existence:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://khaaan.com&#34;&gt;khaaan.com&lt;/a&gt; - Khaaaan!&lt;br/&gt;&#xA;&lt;a href=&#34;http://zombo.com&#34;&gt;zombo.com&lt;/a&gt; - &#34;Anything is possible at Zombo.com.&#34;&lt;/p&gt;&#xA;&lt;p&gt;So there.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nokia 770: The Debian Tablet</title>
      <link>https://kennethfalck.net/2005/11/09/nokia-770-the-debian-tablet/</link>
      <pubDate>Wed, 09 Nov 2005 21:27:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/11/09/nokia-770-the-debian-tablet/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_69.jpg&#39; title=&#39;blogimg/blog_69.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_69.jpg&#39; alt=&#39;blogimg/blog_69.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Got one of &lt;a href=&#34;http://www.nokia.com/770&#34;&gt;these babies&lt;/a&gt; yesterday. I still don&#39;t really understand who and what exactly they&#39;re meant for, but they&#39;re cool! The pricing is moderate (300EUR+taxes at Nokia&#39;s webstore) and the performance is quite decent.&lt;/p&gt;&#xA;&lt;p&gt;The 770 is basically an embedded Linux box, based on an 220MHz ARM CPU with 64MB RAM. There&#39;s also 64MB of available built-in flash memory and an RS-MMC slot. Display is 800x480 (16bit color), allowing decent web browsing over 802.11b/g WLAN or Bluetooth with the built-in Opera.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Oops, Sony did it again</title>
      <link>https://kennethfalck.net/2005/11/03/oops-sony-did-it-again/</link>
      <pubDate>Thu, 03 Nov 2005 00:44:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/11/03/oops-sony-did-it-again/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_68.jpg&#39; title=&#39;blogimg/blog_68.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_68.jpg&#39; alt=&#39;blogimg/blog_68.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Not only has Sony excelled recently in &lt;a href=&#34;http://www.sysinternals.com/blog/2005/10/sony-rootkits-and-digital-rights.html&#34;&gt;Rootkit DRM technology&lt;/a&gt;, they&#39;ve also managed to create Yet Another Video Format solely for the PlayStationPortable device. Yep, you can&#39;t play ordinary MPEG-4 files on PSP.&lt;/p&gt;&#xA;&lt;p&gt;The 2.0 firmware does support MPEG-4 AVC (H.264), which provides very high quality in low bitrates. But you need to package the video stream in a special, Sony-only video format and directory structure. And of course, you can buy software to do this.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Beat Oracle</title>
      <link>https://kennethfalck.net/2005/10/24/the-beat-oracle/</link>
      <pubDate>Mon, 24 Oct 2005 17:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/10/24/the-beat-oracle/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_67.jpg&#39; title=&#39;blogimg/blog_67.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_67.jpg&#39; alt=&#39;blogimg/blog_67.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;My favorite podcast at the moment: &lt;a href=&#34;http://beatoracle.net/&#34;&gt;The Beat Oracle&lt;/a&gt; (KCSB 91.9fm, Santa Barbara, CA). They focus on the music, a lot of cool stuff from labels like Mute, Warp and others I&#39;ve never heard of. Sometimes you&#39;ve got to wade through a lot of crap to find the good stuff, but it&#39;s there.&lt;/p&gt;&#xA;&lt;p&gt;My favorite track from their 11.10.2005 episode: &#34;Caught in this affair&#34; by Swayzak (album: Himawari, released in 2000). You can &lt;a href=&#34;http://www.amazon.com/exec/obidos/tg/detail/-/B00004U058/002-7501654-9524811?v=glance&#34;&gt;listen to it on Amazon.com&lt;/a&gt;. Actually the whole album sounds pretty good.&lt;/p&gt;</description>
    </item>
    <item>
      <title>One year of blogging</title>
      <link>https://kennethfalck.net/2005/10/24/one-year-of-blogging/</link>
      <pubDate>Mon, 24 Oct 2005 17:30:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/10/24/one-year-of-blogging/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_66.jpg&#39; title=&#39;blogimg/blog_66.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_66.jpg&#39; alt=&#39;blogimg/blog_66.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Just realized I&#39;ve been blogging for over a year now. Not too actively, but I don&#39;t enjoy writing about stuff that doesn&#39;t matter.&lt;/p&gt;&#xA;&lt;p&gt;Of course, blogging is now really mainstream when even &lt;a href=&#34;http://blogit.helsinginsanomat.fi/paatoimittaja/&#34;&gt;the Glasshouse Mistress is doing it&lt;/a&gt;. Not that it wasn&#39;t a year ago already.&lt;/p&gt;&#xA;&lt;p&gt;What sometimes bugs me are blogs that don&#39;t actually include any links to other websites. Just babbling on and on by themselves. Oh well..&lt;/p&gt;</description>
    </item>
    <item>
      <title>Your printouts can be traced to you</title>
      <link>https://kennethfalck.net/2005/10/20/your-printouts-can-be-traced-to-you/</link>
      <pubDate>Thu, 20 Oct 2005 21:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/10/20/your-printouts-can-be-traced-to-you/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_65.jpg&#39; title=&#39;blogimg/blog_65.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_65.jpg&#39; alt=&#39;blogimg/blog_65.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Did you know that your printer is &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=25007&amp;amp;tyyppi=1&#34;&gt;embedding secret identification codes&lt;/a&gt; in each paper it prints out? The code made by Xerox DocuColor printers &lt;a href=&#34;http://www.eff.org/news/archives/2005_10.php#004063&#34;&gt;was recently broken by the EFF&lt;/a&gt;. Other big printer manufacturers, such as HP, also use similar codes.&lt;/p&gt;&#xA;&lt;p&gt;In other words, since the codes can be broken by anyone, they can also be used by anyone to trace a printout to the original printer. Think twice what you print!&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Success with MythTV on DVB-C</title>
      <link>https://kennethfalck.net/2005/10/11/success-with-mythtv-on-dvb-c/</link>
      <pubDate>Tue, 11 Oct 2005 19:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/10/11/success-with-mythtv-on-dvb-c/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_64.jpg&#39; title=&#39;blogimg/blog_64.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_64.jpg&#39; alt=&#39;blogimg/blog_64.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I&#39;ve been using &lt;a href=&#34;http://freevo.sourceforge.net&#34;&gt;Freevo&lt;/a&gt; as my main PVR for a long time. It doesn&#39;t have much features, but it&#39;s simple and works. I&#39;ve also tried installing &lt;a href=&#34;http://www.mythtv.org&#34;&gt;MythTV&lt;/a&gt; for several times and always given up. Now I finally made it, along with the &lt;a href=&#34;http://www.mythtv.org/modules.php?name=Downloads&amp;amp;d_op=viewdownload&amp;amp;cid=1&#34;&gt;MythTV 0.18.1&lt;/a&gt; release and some manual tweaking.&lt;/p&gt;&#xA;&lt;p&gt;MythTV is really cool, supporting multiple tuners and several frontends on Linux, Windows and Mac OS X. So it&#39;s easy to build a real home network. All you need is one backend PC with a tuner (or several tuners). The frontend PC&#39;s can be anywhere in the house as long as they&#39;re Ethernet-connected. You can use them to watch live tv, recordings or whatever the actual backend PC with the tuners can do.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Fairness of domain registration priorities</title>
      <link>https://kennethfalck.net/2005/10/05/fairness-of-domain-registration-priorities/</link>
      <pubDate>Wed, 05 Oct 2005 15:29:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/10/05/fairness-of-domain-registration-priorities/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_63.jpg&#39; title=&#39;blogimg/blog_63.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_63.jpg&#39; alt=&#39;blogimg/blog_63.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;According to &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=24887&amp;amp;tyyppi=1&#34;&gt;Tietokone&lt;/a&gt;, the .eu TLD will become available for registrations this year. However, only trademark holders and public organisations are allowed to apply for domain names; private persons must wait until next year.&lt;/p&gt;&#xA;&lt;p&gt;Now doesn&#39;t that sound a little bit odd? Who exactly says that large corporations (i.e. the only ones capable of defending their trademarks) are to have special privileges like this to common, limited resources?&lt;/p&gt;&#xA;&lt;p&gt;If the trademark law protects domain names, then let it protect. But this kind of elevation of the basic rights of corporations above individuals can only be bad.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Time to sell your iPod</title>
      <link>https://kennethfalck.net/2005/10/05/time-to-sell-your-ipod/</link>
      <pubDate>Wed, 05 Oct 2005 13:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/10/05/time-to-sell-your-ipod/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_62.jpg&#39; title=&#39;blogimg/blog_62.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_62.jpg&#39; alt=&#39;blogimg/blog_62.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The new copyright law &lt;a href=&#34;http://www.eduskunta.fi/triphome/bin/thw/trip/?${BASE}=aanestys&amp;amp;${THWIDS}=3.57/434472&amp;amp;${html}=aan5000&amp;amp;${THWURLSAVE}=57/434472&amp;amp;${maxhits}=1000&#34;&gt;was passed by the Parliament&lt;/a&gt; and will take effect in a few weeks, after the President has signed it. Digitoday has &lt;a href=&#34;http://www.digitoday.fi/tekijanoikeus/&#34;&gt;excellent coverage&lt;/a&gt;. The usual &lt;a href=&#34;http://www.tietokone.fi/uutta/uutinen.asp?news_id=24889&amp;amp;tyyppi=1&#34;&gt;news&lt;/a&gt; &lt;a href=&#34;http://www.itviikko.fi/uutiset/uutinen.asp?id=70397&#34;&gt;services&lt;/a&gt; have published &lt;a href=&#34;http://www.helsinginsanomat.fi/uutiset/tuoreet/artikkeli/Eduskunta+hyv%C3%A4ksyi+uuden+tekij%C3%A4noikeuslain/1101981180220&#34;&gt;brief stories&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;It&#39;s a sad day for consumer rights and freedom of speech in general, but perhaps the politicians &lt;a href=&#34;http://www.kasvi.org/index.php?301&#34;&gt;actually learned something&lt;/a&gt; and will fix things later on.&lt;/p&gt;&#xA;&lt;p&gt;Not that it really matters now, but I put some &lt;a href=&#34;http://www.kfalck.net/gallery/20051004_copyright_mielenosoitus&#34;&gt;pictures of yesterday&#39;s demonstration&lt;/a&gt; in my gallery.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Demonstration against the copyright proposal</title>
      <link>https://kennethfalck.net/2005/10/04/demonstration-against-the-copyright-proposal/</link>
      <pubDate>Tue, 04 Oct 2005 13:45:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/10/04/demonstration-against-the-copyright-proposal/</guid>
      <description>&lt;p&gt;A &lt;a href=&#34;http://www.masinointi.org/&#34;&gt;demonstration against the new Finnish copyright law proposal&lt;/a&gt; was held today at 13:00-14:00 in front of the Parliament House. You will probably see it in the evening news on TV1, MTV3 and Nelonen. &lt;a href=&#34;http://www.melankolia.net/kari/arkistot/005388.html&#34;&gt;Other people&lt;/a&gt; are blogging this too, of course. And yes, I was there too, snapping some pictures I might put in the gallery later on.&lt;/p&gt;&#xA;&lt;p&gt;The turnout was larger than I expected, although the police estimate it at only 300. Probably several people couldn&#39;t make it because of work. &lt;a href=&#34;http://www.effi.org&#34;&gt;EFFI&lt;/a&gt; was there of course, and they &lt;a href=&#34;http://www.effi.org/blog/kai-2005-09-30-2.html&#34;&gt;also blogged about it&lt;/a&gt; a few days ago.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MTV3 Design Off day</title>
      <link>https://kennethfalck.net/2005/10/03/mtv3-design-off-day/</link>
      <pubDate>Mon, 03 Oct 2005 21:11:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/10/03/mtv3-design-off-day/</guid>
      <description>&lt;p&gt;Check out &lt;a href=&#34;http://www.mtv3.fi&#34;&gt;MTV3&#39;s website&lt;/a&gt;, they&#39;re having their Design Off day. The website is actually quite usable now, since they dropped most images and flash animations. Won&#39;t last long I bet...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kasvi: Preparing the Parliament for Linux</title>
      <link>https://kennethfalck.net/2005/09/30/kasvi-preparing-the-parliament-for-linux/</link>
      <pubDate>Fri, 30 Sep 2005 18:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/09/30/kasvi-preparing-the-parliament-for-linux/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_59.jpg&#39; title=&#39;blogimg/blog_59.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_59.jpg&#39; alt=&#39;blogimg/blog_59.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;According to &lt;a href =&#34;http://www.kasvi.org/index.php?262&#34;&gt;Jyrki J. J. Kasvi&#39;s blog&lt;/a&gt;, the Finnish Parliament should start preparing for migration to Linux and OpenOffice. Linux is already being used for servers, and the next step would be to adopt the OpenDocument format for governmental communications.&lt;/p&gt;&#xA;&lt;p&gt;The &lt;a href=&#34;http://en.wikipedia.org/wiki/OpenDocument&#34;&gt;OpenDocument&lt;/a&gt; format has been &lt;a href=&#34;http://slashdot.org/article.pl?sid=05/09/30/0632243&amp;amp;tid=185&amp;amp;tid=187&#34;&gt;in the news&lt;/a&gt; recently, now that &lt;a href=&#34;http://it.slashdot.org/article.pl?sid=05/09/30/1210253&amp;amp;tid=102&amp;amp;tid=187&amp;amp;tid=185&amp;amp;tid=218&#34;&gt;StarOffice 8&lt;/a&gt; is &lt;a href=&#34;http://www.sun.com/smi/Press/sunflash/2005-09/sunflash.20050927.1.html&#34;&gt;out&lt;/a&gt;. &lt;/p&gt;&#xA;&lt;p&gt;Perhaps we will finally get out of the MS Word lockin and actually have some interoperability for office documents...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>New music</title>
      <link>https://kennethfalck.net/2005/09/23/new-music/</link>
      <pubDate>Fri, 23 Sep 2005 11:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/09/23/new-music/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_58.jpg&#39; title=&#39;blogimg/blog_58.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_58.jpg&#39; alt=&#39;blogimg/blog_58.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I decided to update my vinyl collection after a long pause.. Here are some comments on what I bought from &lt;a href=&#34;http://www.streetbeat.ac&#34;&gt;Street Beat &lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;b&gt;JUPITER ACE&lt;/b&gt; : 1000 Years [12&#34;]&lt;/p&gt;&#xA;&lt;p&gt;I woke up one morning to this song playing on Kiss FM. Even though I hate waking up, I pretty much fell in love with the song.&lt;/p&gt;&#xA;&lt;p&gt;&lt;b&gt;TOMAZ &amp;amp; KOBBE&lt;/b&gt; : Saturn Moons [12&#34;]&lt;/p&gt;&#xA;&lt;p&gt;This is Intec stuff, a bit more techno/minimal than the others mentioned here. Nicely swinging beat with just a little bit of melody to make it interesting.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Finland to get its own DMCA</title>
      <link>https://kennethfalck.net/2005/09/21/finland-to-get-its-own-dmca/</link>
      <pubDate>Wed, 21 Sep 2005 16:52:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/09/21/finland-to-get-its-own-dmca/</guid>
      <description>&lt;p&gt;Here we go. As reported by &lt;a href=&#34;http://www.helsinginsanomat.fi/uutiset/tuoreet/artikkeli/Eduskunta+on+taynna+tyhmia+ihmisia+jotka+ei+tajuu+mitaan+tietotekniikasta/1101981029565&#34;&gt;Helsingin Sanomat&lt;/a&gt;, the new DMCA-like &lt;a href=&#34;http://www.effi.org/tekijanoikeus/laki/tekijanoikeus-faq.html&#34;&gt;copyright law proposal&lt;/a&gt; remains unmodified by the parliament. Should the motion pass, new regulations will &lt;a href=&#34;http://mjr.iki.fi/eucd/kuvat/Lissu.png&#34;&gt;criminalize&lt;/a&gt; &lt;a href=&#34;http://mjr.iki.fi/eucd/kuvat/Henna.png&#34;&gt;trivial day-to-day&lt;/a&gt; &lt;a href=&#34;http://mjr.iki.fi/eucd/kuvat/Raili.png&#34;&gt;consumer activities&lt;/a&gt;, such as transferring music from a copy-protected CD to an MP3 player. &lt;/p&gt;&#xA;&lt;p&gt;Apparently many representatives &lt;a href=&#34;http://www.eduskunta.fi/faktatmp/utatmp/puh_83_2005_vp_2_27_27_p.htm&#34;&gt;don&#39;t even understand&lt;/a&gt; the problems the new law would raise, although some &lt;a href=&#34;http://www.eduskunta.fi/faktatmp/utatmp/puh_83_2005_vp_2_26_26_p.htm&#34;&gt;voices of reason&lt;/a&gt; are being heard. Mostly the parliament has been worried about &lt;a href=&#34;http://www.effi.org/blog/2005-09-16-Ville-Oksanen.html&#34;&gt;church music&lt;/a&gt;, however...&lt;/p&gt;&#xA;&lt;p&gt;On a funnier note, the recording industry has &lt;a href=&#34;http://www.ifpi.fi/ajankohtaista/article.html?newsid=118&#34;&gt;spoken their mind&lt;/a&gt; on the law proposal. Unsurprisingly, their appeal is plain evocative lobbying without any factual value or response to the problems at hand.&lt;/p&gt;</description>
    </item>
    <item>
      <title>3001: The Final Odyssey</title>
      <link>https://kennethfalck.net/2005/09/20/3001-the-final-odyssey/</link>
      <pubDate>Tue, 20 Sep 2005 17:53:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/09/20/3001-the-final-odyssey/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_57.jpg&#39; title=&#39;blogimg/blog_57.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_57.jpg&#39; alt=&#39;blogimg/blog_57.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Arthur C. Clarke&#39;s 3001: The Final Odyssey was an interesting conclusion to the Space Odyssey series (2001, 2010, 2061, 3001). The book by itself is slightly boring and doesn&#39;t really carry a plot rather than describes events and environments in a typical Clarkeish, ethereal style. It does, hover, provide some kind of closure to the whole monolith/sentinel issue and mankind&#39;s relation to it.&lt;/p&gt;&#xA;&lt;p&gt;If there was anything disappointing in this book, it was the computer virus thing. You will simply never make me believe that viruses, which are inherently smart blocks of code that utilize specific operating system or application features to spread and wreak havoc, could be applied to some generic alien technology. It just makes me think that the writer doesn&#39;t really understand what it&#39;s all about.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Back from Berlin &amp; Amsterdam</title>
      <link>https://kennethfalck.net/2005/09/11/back-from-berlin-amsterdam/</link>
      <pubDate>Sun, 11 Sep 2005 19:48:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/09/11/back-from-berlin-amsterdam/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;http://www.ibc.org/redes03/images/ibclogoonly.gif&#39; title=&#39;http://www.ibc.org/redes03/images/ibclogoonly.gif&#39;&gt;&lt;img src=&#39;http://kfalck.net/http://www.ibc.org/redes03/images/ibclogoonly.gif&#39; alt=&#39;http://www.ibc.org/redes03/images/ibclogoonly.gif&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I decided to make just one big conference trip this year and went to &lt;a href=&#34;http://www1.messe-berlin.de/vip8_1/website/MesseBerlin/htdocs/www.ifa-berlin.de/fset_home_e.html&#34;&gt;IFA&lt;/a&gt;, Berlin last Monday, flew straight to &lt;a href=&#34;http://www.ibc.org&#34;&gt;IBC&lt;/a&gt;, Amsterdam on Wednesday, and finally got home Saturday evening.&lt;/p&gt;&#xA;&lt;p&gt;IFA was cool, although pretty much a consumer show. It was all about who&#39;s got the biggest LCD&#39;s and plasmas, with Samsung apparently still being the leader with a 102&#34; plasma and a 82&#34; LCD. HDTV was also quite visible, with a lot of new HD satellite channels coming up during 2005-2006 in Europe.&lt;/p&gt;</description>
    </item>
    <item>
      <title>More /usr/games/fortune wisdom</title>
      <link>https://kennethfalck.net/2005/08/27/more-/usr/games/fortune-wisdom/</link>
      <pubDate>Sat, 27 Aug 2005 15:47:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/08/27/more-/usr/games/fortune-wisdom/</guid>
      <description>&lt;p&gt;If you rap your knuckles against a window jamb or door, if you brush your leg against a bed or desk, if you catch your foot in a curled-up corner of a rug, or strike a toe against a desk or chair, go back and repeat the sequence. &lt;/p&gt;&#xA;&lt;p&gt;You will find yourself surprised how far off course you were to hit that window jamb, that door, that chair.  Get back on course and do it again.  How can you pilot a spacecraft if you can&#39;t find your way around your own apartment?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Talk</title>
      <link>https://kennethfalck.net/2005/08/24/google-talk/</link>
      <pubDate>Wed, 24 Aug 2005 18:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/08/24/google-talk/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;http://www.google.com/talk/images/talk_logo.gif&#39; title=&#39;http://www.google.com/talk/images/talk_logo.gif&#39;&gt;&lt;img src=&#39;http://kfalck.net/http://www.google.com/talk/images/talk_logo.gif&#39; alt=&#39;http://www.google.com/talk/images/talk_logo.gif&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Okay, maybe you already know about this:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.google.com/talk/&#34;&gt;http://www.google.com/talk/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Yet another instant messaging system... This one, however, uses an open protocol (Jabber), so you can use a number of other clients than Google&#39;s own. Some are &lt;a href=&#34;http://www.google.com/talk/otherclients.html&#34;&gt;listed at Google&#39;s own site&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Tao of Programming</title>
      <link>https://kennethfalck.net/2005/07/13/the-tao-of-programming/</link>
      <pubDate>Wed, 13 Jul 2005 18:31:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/07/13/the-tao-of-programming/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_52.jpg&#39; title=&#39;blogimg/blog_52.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_52.jpg&#39; alt=&#39;blogimg/blog_52.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Hardware met Software on the road to Changtse. Software said:&lt;/p&gt;&#xA;&lt;p&gt;    &#34;You are the Yin and I am the Yang. If we travel together we will become famous and earn vast sums of money.&#34; &lt;/p&gt;&#xA;&lt;p&gt;And so the pair set forth together, thinking to conquer the world.&lt;/p&gt;&#xA;&lt;p&gt;Presently, they met Firmware, who was dressed in tattered rags, and hobbled along propped on a thorny stick. Firmware said to them:&lt;/p&gt;&#xA;&lt;p&gt;    &#34;The Tao lies beyond Yin and Yang. It is silent and still as a pool of water. It does not seek fame, therefore nobody knows its presence. It does not seeks fortune, for it is complete within itself. It exists beyond space and time.&#34; &lt;/p&gt;</description>
    </item>
    <item>
      <title>Fortune today</title>
      <link>https://kennethfalck.net/2005/07/13/fortune-today/</link>
      <pubDate>Wed, 13 Jul 2005 18:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/07/13/fortune-today/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_51.jpg&#39; title=&#39;blogimg/blog_51.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_51.jpg&#39; alt=&#39;blogimg/blog_51.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;A novice asked the master: &#34;In the east there is a great tree-structure that men call &#39;Corporate Headquarters&#39;.  It is bloated out of shape with vice-presidents and accountants.  It issues a multitude of memos, each saying &#39;Go, Hence!&#39; or &#39;Go, Hither!&#39; and nobody knows what is meant.  Every year new names are put onto the branches, but all to no avail.  How can such an unnatural entity exist?&#34;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google satellite maps of Europe</title>
      <link>https://kennethfalck.net/2005/06/28/google-satellite-maps-of-europe/</link>
      <pubDate>Tue, 28 Jun 2005 01:09:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/06/28/google-satellite-maps-of-europe/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;http://maps.google.com/mapfiles/maps_res_logo.gif&#39; title=&#39;http://maps.google.com/mapfiles/maps_res_logo.gif&#39;&gt;&lt;img src=&#39;http://kfalck.net/http://maps.google.com/mapfiles/maps_res_logo.gif&#39; alt=&#39;http://maps.google.com/mapfiles/maps_res_logo.gif&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Have you noticed that Google now provides &lt;a href=&#34;http://slashdot.org/article.pl?sid=05/06/26/0139251&amp;amp;tid=217&#34;&gt;satellite images&lt;/a&gt; of most of Europe?&lt;/p&gt;&#xA;&lt;p&gt;I can even see &lt;a href=&#34;http://maps.google.co.uk/maps?ll=60.193137,24.908645&amp;amp;spn=0.005150,0.007671&amp;amp;t=k&amp;amp;hl=en&#34;&gt;my home&lt;/a&gt; down there. And I&#39;m happy to see that Google is allowing linking to satellite locations, once again changing the world by allowing anyone to refer to pretty much any place on earth directly...&lt;/p&gt;</description>
    </item>
    <item>
      <title>Holiday in the Finnish archipelago</title>
      <link>https://kennethfalck.net/2005/06/27/holiday-in-the-finnish-archipelago/</link>
      <pubDate>Mon, 27 Jun 2005 20:56:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/06/27/holiday-in-the-finnish-archipelago/</guid>
      <description>&lt;p&gt;The long, sweaty, overworked spring of 2005 has finally ended and I am currently spending my summer holidays at the usual place, our &lt;a href=&#34;http://www.kfalck.net/gallery/20040229_Landella_Tommin_kanssa&#34;&gt;family island&lt;/a&gt; located in the &lt;a href=&#34;http://alk.tiehallinto.fi/www2/kartta/at19p2.htm&#34;&gt;southern Finnish archipelago near Porvoo and Pernaja&lt;/a&gt; (very close to Kabböle).&lt;/p&gt;&#xA;&lt;p&gt;The Midsummer party here went on quite nicely, with only a couple of cases of alcohol poisoning and one guy falling into the sea. Luckily, all of the forementioned are still alive and happy. We also made some interesting contact with the neighbours, who had brought their fully equipped car sound system and a computer loaded with mp3&#39;s to the seaside.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Acid2 test</title>
      <link>https://kennethfalck.net/2005/06/04/the-acid2-test/</link>
      <pubDate>Sat, 04 Jun 2005 18:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/06/04/the-acid2-test/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_48.jpg&#39; title=&#39;blogimg/blog_48.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_48.jpg&#39; alt=&#39;blogimg/blog_48.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Have you taken &lt;a href=&#34;http://www.webstandards.org/act/acid2/test.html&#34;&gt;the Acid2 test&lt;/a&gt; yet?&lt;/p&gt;&#xA;&lt;p&gt;It&#39;s really simple. Just open the page and see if your web browser displays a happy yellow face.&lt;/p&gt;&#xA;&lt;p&gt;If the face is okay, your browser supports HTML and CSS standards pretty well. If the face is broken, your browser has problems.&lt;/p&gt;&#xA;&lt;p&gt;Here&#39;s &lt;a href=&#34;http://www.webstandards.org/act/acid2/guide.html&#34;&gt;a technical explanation&lt;/a&gt; of the test.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Terratec Cinergy 1200 DVB-C with Linux</title>
      <link>https://kennethfalck.net/2005/06/04/terratec-cinergy-1200-dvb-c-with-linux/</link>
      <pubDate>Sat, 04 Jun 2005 18:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/06/04/terratec-cinergy-1200-dvb-c-with-linux/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_47.jpg&#39; title=&#39;blogimg/blog_47.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_47.jpg&#39; alt=&#39;blogimg/blog_47.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;These &lt;a href=&#34;http://www.verkkokauppa.com/popups/prodinfo.php?id=2148&#34;&gt;little cuties&lt;/a&gt; cost under 99 EUR and provide you with full access to DVB-C transport streams. Should be perfect for building a multi-channel-recording PVR box based on Linux.&lt;/p&gt;&#xA;&lt;p&gt;So, I ordered one of them and installed it on Debian unstable. Unfortunately, it didn&#39;t work out-of-the-box. The problem is related to the QAM-128 modulation used on DVB-C networks. The current 2.6.11 driver only supports QAM64 properly.&lt;/p&gt;&#xA;&lt;p&gt;Luckily, there is already a fix. You need to download the latest LinuxTV drivers from their &lt;a href=&#34;http://www.linuxtv.org/cvs.php&#34;&gt;CVS&lt;/a&gt;. Also install the Debian kernel sources for 2.6.11, and follow the instructions to replace the built-in drivers with the CVS counterpart. Then compile, install and boot the new kernel, and the card should work.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Debian udev &amp; grub with SATA drives</title>
      <link>https://kennethfalck.net/2005/05/29/debian-udev-grub-with-sata-drives/</link>
      <pubDate>Sun, 29 May 2005 21:07:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/05/29/debian-udev-grub-with-sata-drives/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;http://www.debian.org/Pics/debian.png&#39; title=&#39;http://www.debian.org/Pics/debian.png&#39;&gt;&lt;img src=&#39;http://kfalck.net/http://www.debian.org/Pics/debian.png&#39; alt=&#39;http://www.debian.org/Pics/debian.png&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Another Debian problem solved. I&#39;ve had a load of problems upgrading Debian systems from 2.4 to 2.6 series kernels, when the hard disks are SATA drives and using GRUB to boot. After the upgrade, Debian no longer boots but hangs with a kernel panic.&lt;/p&gt;&#xA;&lt;p&gt;Turns out, the problem was with udev and device names. Initially udev is disabled while running a 2.4 kernel, but becomes active when booting with 2.6. At the same time, all hard disk devices are renamed from /dev/hda0 to /dev/sda0 etc.&lt;/p&gt;</description>
    </item>
    <item>
      <title>More nerdy t-shirts found</title>
      <link>https://kennethfalck.net/2005/05/24/more-nerdy-t-shirts-found/</link>
      <pubDate>Tue, 24 May 2005 21:24:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/05/24/more-nerdy-t-shirts-found/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_45.jpg&#39; title=&#39;blogimg/blog_45.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_45.jpg&#39; alt=&#39;blogimg/blog_45.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you&#39;re in for a &lt;a href=&#34;http://www.splitreason.com/productdetail.php?id=183&#34;&gt;Tetris shirt&lt;/a&gt; or a &lt;a href=&#34;http://www.splitreason.com/productdetail.php?id=91&#34;&gt;Threesome hat&lt;/a&gt;, check out &lt;a href=&#34;http://www.splitreason.com/&#34;&gt;SplitReason.com&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Also carrying some &lt;a href=&#34;http://www.splitreason.com/productdetail.php?id=161&#34;&gt;Warcraft&lt;/a&gt; &lt;a href=&#34;http://www.splitreason.com/productdetail.php?id=113&#34;&gt;themed&lt;/a&gt; clothing...&lt;/p&gt;&#xA;&lt;p&gt;&lt;hr/&gt;&lt;/p&gt;&#xA;&lt;p&gt;Oh, and here&#39;s one more: &lt;a href=&#34;http://www.jinx.com&#34;&gt;Jinx.com&lt;/a&gt;. Don&#39;t know if they ship internationally though, haven&#39;t checked.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Too much work</title>
      <link>https://kennethfalck.net/2005/05/09/too-much-work/</link>
      <pubDate>Mon, 09 May 2005 01:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/05/09/too-much-work/</guid>
      <description>&lt;p&gt;Yeah, no more time to write here. Deadlines and meetings falling from everywhere... That&#39;s how it is. Hope to check back again when things ease up.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Waiting for the G5 PowerBook</title>
      <link>https://kennethfalck.net/2005/04/12/waiting-for-the-g5-powerbook/</link>
      <pubDate>Tue, 12 Apr 2005 21:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/04/12/waiting-for-the-g5-powerbook/</guid>
      <description>&lt;p&gt;Once again I&#39;ve been struck by an irresistible compulsion to buy an &lt;a href=&#34;http://www.apple.com&#34;&gt;Apple&lt;/a&gt; computer. I already possess an older iBook G3 laptop and a G4 desktop, but they&#39;re aging fast. What I really *must have* is a lightweight 12&#34; PowerBook with a &lt;a href=&#34;http://www.apple.com/g5processor/&#34;&gt;G5&lt;/a&gt; CPU.&lt;/p&gt;&#xA;&lt;p&gt;Of course, no such thing exists yet. All PowerBooks and iBooks are G4 at max 1.67 GHz. Meanwhile, the desktops are sporting dual-G5&#39;s at 2.5 GHz. What&#39;s holding up the mobile version?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vacation in World of Warcraft</title>
      <link>https://kennethfalck.net/2005/03/22/vacation-in-world-of-warcraft/</link>
      <pubDate>Tue, 22 Mar 2005 10:54:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/03/22/vacation-in-world-of-warcraft/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_42.jpg&#39; title=&#39;blogimg/blog_42.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_42.jpg&#39; alt=&#39;blogimg/blog_42.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Well, haven&#39;t written much lately, which is largely due to &lt;a href=&#34;http://www.wow-europe.com&#34;&gt;World of Warcraft&lt;/a&gt;. Tero, a friend of mine from work, sold me a copy of the game. Ever since I&#39;ve hade no problems of allocating my spare time.&lt;/p&gt;&#xA;&lt;p&gt;Just reached level 20 with my main character, a night elf druid on Aszune. I also have a level 14 tauren hunter on Shattered Hand. Right now I&#39;m working on a level 11 human warlock (on Aszune too) to make it my main. I really prefer warlocks for some reason, even if druids arent&#39;t bad at all either.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meet the Fockers</title>
      <link>https://kennethfalck.net/2005/02/21/meet-the-fockers/</link>
      <pubDate>Mon, 21 Feb 2005 22:40:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/02/21/meet-the-fockers/</guid>
      <description>&lt;p&gt;I was expecting more of this movie. Most of the jokes were already in the trailer. The combination of Dustin Hoffman, Barbra Streisand, Robert De Niro and Ben Stiller should be enough charisma for any film, but the script just didn&#39;t cut it.&lt;/p&gt;&#xA;&lt;p&gt;Basic problem: the movie tries to be serious between the jokes, but there&#39;s no message. It could be a parody of those &#39;never mind what others think, just be yourself&#39; American movies, but it&#39;s not really that either. Some of the jokes tried to hit that &#39;Something About Mary&#39; level, but they&#39;re just not evil enough.&lt;/p&gt;</description>
    </item>
    <item>
      <title>(FIN) Tanja Karpelan sensuurista</title>
      <link>https://kennethfalck.net/2005/02/21/fin-tanja-karpelan-sensuurista/</link>
      <pubDate>Mon, 21 Feb 2005 00:04:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/02/21/fin-tanja-karpelan-sensuurista/</guid>
      <description>&lt;p&gt;Kulttuuriministeri Tanja Karpela näyttää ottaneen elämäntehtäväkseen siivota Internetin. En lähde arvuuttelemaan ministerin motiiveja, mutta ainakin väärästä ministeriöstä taitaa olla kyse. Eikö kulttuuriministerin pitäisi keskittyä kehittämään kulttuuria?&lt;/p&gt;&#xA;&lt;p&gt;Ilmeisesti liikenneministeri Leena Luhtaselle ei ole vieläkään kerrottu, että hänen johtamansa ministeriöön kuuluu myös se viestintä-osa. Muuten luulisi ministerien kykenevän sopimaan edes alkeellisesta työnjaosta?&lt;/p&gt;&#xA;&lt;p&gt;Jos Tanja Karpelan ehdottama sensuuriesitys kiinnostaa (hyvässä tai pahassa), kannattaa lukea EFFI Ry:n lehdistötiedotteet aiheesta:&lt;br/&gt;&#xA;- &lt;a href=&#34;http://www.effi.org/julkaisut/tiedotteet/lehdistotiedote-2005-02-04.html&#34;&gt;EFFI: Ei digitaalisia kirjarovioita kouluihin ja kirjastoihin&lt;/a&gt;&lt;br/&gt;&#xA;- &lt;a href=&#34;http://www.effi.org/julkaisut/tiedotteet/lehdistotiedote-2005-02-10.html&#34;&gt;EFFI: Karpela ei ymmärrä mitä on sensuroimassa&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>80&#39;s tees</title>
      <link>https://kennethfalck.net/2005/02/17/80s-tees/</link>
      <pubDate>Thu, 17 Feb 2005 23:23:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/02/17/80s-tees/</guid>
      <description>&lt;p&gt;One more t-shirt website: &lt;a href=&#34;http://www.80stees.com/&#34;&gt;80stees.com&lt;/a&gt; for those 80&#39;s classics.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linux kernel swear count</title>
      <link>https://kennethfalck.net/2005/02/10/linux-kernel-swear-count/</link>
      <pubDate>Thu, 10 Feb 2005 03:25:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/02/10/linux-kernel-swear-count/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_38.jpg&#39; title=&#39;blogimg/blog_38.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_38.jpg&#39; alt=&#39;blogimg/blog_38.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Check the &lt;a href=&#34;http://www.vidarholen.net/contents/wordcount/&#34;&gt;Linux kernel swear count&lt;/a&gt; for a nice graph of various swear words appearing in the source code of Linux. The frequencies of the words are shown from kernel 1.1.13 throughout to 2.6.10, which is the latest at the time of writing.&lt;/p&gt;&#xA;&lt;p&gt;If would seem that frustration is generally increasing over time :-)&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Debian giving hell</title>
      <link>https://kennethfalck.net/2005/02/09/debian-giving-hell/</link>
      <pubDate>Wed, 09 Feb 2005 19:22:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/02/09/debian-giving-hell/</guid>
      <description>&lt;p&gt;&#xA;I&#39;ve been a Debian user ever since Red Hat dropped their 7.3 release support. I&#39;ve been using unstable (sid) with no problems, until lately. The fault seems to lie in udev.&#xA;&lt;/p&gt;&#xA;&lt;p&gt;&#xA;I don&#39;t know how, but a few days ago one of my Debian servers lost its /dev directory completely. Linux could no longer boot with an empty /dev, so I had to fix it with a boot disk. And I don&#39;t like doing that, since my 8-port Belkin switchbox hasn&#39;t arrived yet.&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google Maps launched</title>
      <link>https://kennethfalck.net/2005/02/08/google-maps-launched/</link>
      <pubDate>Tue, 08 Feb 2005 19:51:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/02/08/google-maps-launched/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_36.jpg&#39; title=&#39;blogimg/blog_36.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_36.jpg&#39; alt=&#39;blogimg/blog_36.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt; &lt;a href=&#34;http://slashdot.org/article.pl?sid=05/02/08/0926214&amp;amp;from=rss&#34;&gt;Google did it again&lt;/a&gt;: &lt;a href=&#34;http://maps.google.com/&#34;&gt;Google Maps&lt;/a&gt; has been launched. Seems like a fairly good user interface, at least on Firefox/IE.&lt;/p&gt;&#xA;&lt;p&gt;Just don&#39;t try to scroll the map, otherwise you may be surprised... Or perhaps the U.S. actually IS the whole world? That would certainly explain some things.&lt;/p&gt;&#xA;&lt;p&gt;Now we&#39;re just waiting for maps.google.fi.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Team America: World Police</title>
      <link>https://kennethfalck.net/2005/02/03/team-america-world-police/</link>
      <pubDate>Thu, 03 Feb 2005 21:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/02/03/team-america-world-police/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_35.jpg&#39; title=&#39;blogimg/blog_35.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_35.jpg&#39; alt=&#39;blogimg/blog_35.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;This is &lt;a href=&#34;http://www.teamamerica.com/&#34;&gt;the coolest movie this year&lt;/a&gt;! (Well, last year actually, but anyway.) If you&#39;re into South Park humour, you&#39;ll love this. It&#39;s all about making fun of the whole world; America, Europe, Asia as well as the Middle-East. There is a certain emphasis on the USA and it&#39;s (re)actions to terrorism, but everybody gets their share, including Hans Blix.&lt;/p&gt;&#xA;&lt;p&gt;The thing I liked most in this movie was the total absense of computer generated graphics. The film is all about wooden puppets, plastic scale models and real props. And that&#39;s way cooler than any of the latest Star Wars movies with all their fancy CGI effects. Although the puppets are actually radio controlled to enable a bit more facial expression, they&#39;re still real.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Movin&#39;</title>
      <link>https://kennethfalck.net/2005/01/27/movin/</link>
      <pubDate>Thu, 27 Jan 2005 00:19:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/01/27/movin/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_34.jpg&#39; title=&#39;blogimg/blog_34.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_34.jpg&#39; alt=&#39;blogimg/blog_34.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Well, here we are, in our new apartment. We weren&#39;t actually supposed to move until the end of Februrary, but decided to do it straight away. In fact, we weren&#39;t supposed to move until Sunday, but decided to bring our bed and cable modem here already. Cool.&lt;/p&gt;&#xA;&lt;p&gt;We&#39;re still renting. Not enough cash to buy our own yet, unless we move to a smaller place. Maybe in a few years, we&#39;ll see.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Albert Edelfelt at Ateneum, Helsinki</title>
      <link>https://kennethfalck.net/2005/01/17/albert-edelfelt-at-ateneum-helsinki/</link>
      <pubDate>Mon, 17 Jan 2005 00:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/01/17/albert-edelfelt-at-ateneum-helsinki/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_33.jpg&#39; title=&#39;blogimg/blog_33.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_33.jpg&#39; alt=&#39;blogimg/blog_33.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you haven&#39;t visited the &lt;a href=&#34;http://www.ateneum.fi/default.asp?docId=12513&#34;&gt;Albert Edelfelt 150th Anniversary Exhibition&lt;/a&gt; at &lt;a href=&#34;http://www.ateneum.fi&#34;&gt;Ateneum&lt;/a&gt;, you should. There seem to have been big waiting lines to get in lately, but the exhibition ends on 30.1.2005 so it&#39;s your last chance.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://en.wikipedia.org/wiki/Albert_Edelfelt&#34;&gt;Edelfelt&lt;/a&gt; was obviously a crucial piece of Finnish art history, together with his contemporaries such as &lt;a href=&#34;http://encyclopedia.thefreedictionary.com/Akseli%20Gallen-Kallela&#34;&gt;Akseli Gallen-Kallela&lt;/a&gt;, &lt;a href=&#34;http://encyclopedia.thefreedictionary.com/Eero%20J%E4rnefelt&#34;&gt;Eero Järnefelt&lt;/a&gt;, &lt;a href=&#34;http://encyclopedia.thefreedictionary.com/Akseli%20Gallen-Kallela&#34;&gt;Hugo Simberg&lt;/a&gt;, &lt;a href=&#34;http://www.edu.fi/oppimateriaalit/kultakausi/villelam.html&#34;&gt;Ville Vallgren&lt;/a&gt; (sculptor).&lt;/p&gt;&#xA;&lt;p&gt;If you watch the paintings in more or less chronological order, it&#39;s interesting to follow his &lt;a href=&#34;http://www.nikkemedia.fi/ivailu/nettikurssit/taidehistoria1/edelfelt.html&#34;&gt;phases in life&lt;/a&gt;, marked by familiar sceneries or recurring pictures of some important women in his life.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Got my new Roomba Discovery SE!</title>
      <link>https://kennethfalck.net/2005/01/02/got-my-new-roomba-discovery-se/</link>
      <pubDate>Sun, 02 Jan 2005 22:03:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2005/01/02/got-my-new-roomba-discovery-se/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_32.jpg&#39; title=&#39;blogimg/blog_32.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_32.jpg&#39; alt=&#39;blogimg/blog_32.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;After weeks of waiting, &lt;a href=&#34;http://www.roomba.de&#34;&gt;Roomba Deutschland&lt;/a&gt; finally delivered my new Roomba Discovery SE! It seems they needed to ship it from the U.S. so it took time, but I got it just in time for Christmas.&lt;/p&gt;&#xA;&lt;p&gt;After running it for a week now, I can recommend this device to anybody looking for some relief in home cleaning. It won&#39;t replace a traditional vacuum cleaner completely, and it&#39;s not totally automatic, but it still goes a long way.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Goodbye to simple services</title>
      <link>https://kennethfalck.net/2004/12/26/goodbye-to-simple-services/</link>
      <pubDate>Sun, 26 Dec 2004 01:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/12/26/goodbye-to-simple-services/</guid>
      <description>&lt;p&gt;Do you still remember the time before the Web? When servers were something that ran only on bank mainframes and data connections were mainly V.22bis?&lt;/p&gt;&#xA;&lt;p&gt;I can still remember how easy it was to build services back then. To set up a BBS with MBBS or PCBoard, all you needed was a cheap PC and a phone line. No application servers, no load balancers, no clustered databases, no redundant power supplies, no incremental backups, no fiber ring networks.. (Well, maybe the backups were there, sometimes.)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Alexander didn&#39;t leave me thinking</title>
      <link>https://kennethfalck.net/2004/12/07/alexander-didnt-leave-me-thinking/</link>
      <pubDate>Tue, 07 Dec 2004 21:15:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/12/07/alexander-didnt-leave-me-thinking/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_30.jpg&#39; title=&#39;blogimg/blog_30.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_30.jpg&#39; alt=&#39;blogimg/blog_30.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;When I go to the movies, I like to come out of the theatre with my head still trying to figure what the film was really about. It happens when the movie is a bit larger than it first seems - when there are more ideas and meanings hidden behind the visible and the obvious.&lt;/p&gt;&#xA;&lt;p&gt;Alexander was not one of those movies, at least not for me. It&#39;s a pretty straightforward account of the key events in Alexander&#39;s life. He gets born, has a wicked mother, loses dad, becomes king, conquers Asia, etc, etc. Not much going on there. Oh and did you notice he&#39;s gay? The movie sure makes certain you won&#39;t miss it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Innovation, nine to five</title>
      <link>https://kennethfalck.net/2004/11/22/innovation-nine-to-five/</link>
      <pubDate>Mon, 22 Nov 2004 18:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/11/22/innovation-nine-to-five/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_29.jpg&#39; title=&#39;blogimg/blog_29.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_29.jpg&#39; alt=&#39;blogimg/blog_29.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Does your calendar look like this?&lt;/p&gt;&#xA;&lt;p&gt;08:30 Department meeting&lt;br/&gt;&#xA;10:00 Project X meeting&lt;br/&gt;&#xA;11:00 Time to innovate new things (over lunch)&lt;br/&gt;&#xA;13:00 Project Y meeting&lt;br/&gt;&#xA;15:00 Product presentation by subcontractor Z&lt;br/&gt;&#xA;17:00 Time to innovate new things&lt;br/&gt;&#xA;18:00 Go home&lt;/p&gt;&#xA;&lt;p&gt;Since I work full-time in R&amp;D, I&#39;m starting to think this approach isn&#39;t promoting innovation. Is there maybe something wrong with the whole meeting-oriented work culture? Who says projects should be managed by having meetings?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Must Have: Nokia 9500 Communicator</title>
      <link>https://kennethfalck.net/2004/11/20/must-have-nokia-9500-communicator/</link>
      <pubDate>Sat, 20 Nov 2004 01:13:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/11/20/must-have-nokia-9500-communicator/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_28.jpg&#39; title=&#39;blogimg/blog_28.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_28.jpg&#39; alt=&#39;blogimg/blog_28.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I&#39;ve been playing with this new toy for a week now. I&#39;m actually quite impressed. The promised features are there - 802.11b WLAN, GPRS/EDGE, new PC Suite, Symbian 7 (S80 DP2.0) with MIDP Java, 80BM RAM, 128MB MMC included... But no WCDMA though.&lt;/p&gt;&#xA;&lt;p&gt;I was surprised how well the WLAN support works. The phone allows you to define a priority list of WLAN and GPRS access points. All Java and Symbian applications are automatically compatible with WLAN, even if they were originally developed with GPRS in mind. The phone detects WLAN networks automatically and falls back to GPRS when they&#39;re not available. EGPRS (EDGE) is quite fast.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ronald Hayman - (Boring) Voices of Nietzsche</title>
      <link>https://kennethfalck.net/2004/11/19/ronald-hayman-boring-voices-of-nietzsche/</link>
      <pubDate>Fri, 19 Nov 2004 22:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/11/19/ronald-hayman-boring-voices-of-nietzsche/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_27.jpg&#39; title=&#39;blogimg/blog_27.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_27.jpg&#39; alt=&#39;blogimg/blog_27.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Finally finished this little book (Finnish translation) which is supposed to be an introduction to Nietzsche&#39;s philosophy. I honestly found it the most boring book ever, mostly because it&#39;s just an incoherent stream of thoughts and excerpts with no sane structure.&lt;/p&gt;&#xA;&lt;p&gt;Okay, maybe philosophy is supposed to be like that, and Nietzsche&#39;s writing style certainly seems to match this approach. I just don&#39;t like it particularly.&lt;/p&gt;&#xA;&lt;p&gt;Perhaps the most rewarding part of the book was the last ten pages, where Hayman describes Nietzsche lapsing into (assumed) insanity, through his preposterous fantasies of world domination, and later his inability to distinguish himself from fictional characters.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Deception Point: Dan Brown at his best</title>
      <link>https://kennethfalck.net/2004/11/14/deception-point-dan-brown-at-his-best/</link>
      <pubDate>Sun, 14 Nov 2004 18:28:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/11/14/deception-point-dan-brown-at-his-best/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_26.gif&#39; title=&#39;blogimg/blog_26.gif&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_26.gif&#39; alt=&#39;blogimg/blog_26.gif&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;My first impressions after just having finished Dan Brown&#39;s second book, &lt;a href=&#34;http://www.danbrown.com/novels/deception_point/plot.html&#34;&gt;Deception Point&lt;/a&gt;: WOW! It&#39;s difficult for a native Finnish speaker like me to describe the feeling of adventure and suspense Brown is able to convey in his books, but take my word for it. It&#39;s there.&lt;/p&gt;&#xA;&lt;p&gt;While the previous political thriller, &lt;a href=&#34;http://www.danbrown.com/novels/digital_fortress/plot.html&#34;&gt;Digital Fortress&lt;/a&gt;, centered around NSA, Deception Point binds together a wider playing field involving the U.S. Senate, NRO, NASA and even the White House. Once again the heroes are a team - the older academic professor-type and the younger, intelligent and beautiful woman. No surprise from Brown there.&lt;/p&gt;</description>
    </item>
    <item>
      <title>1492: Conquest of Paradise</title>
      <link>https://kennethfalck.net/2004/11/14/1492-conquest-of-paradise/</link>
      <pubDate>Sun, 14 Nov 2004 04:59:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/11/14/1492-conquest-of-paradise/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_25.jpg&#39; title=&#39;blogimg/blog_25.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_25.jpg&#39; alt=&#39;blogimg/blog_25.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you never came around to seeing this movie, rent it or buy it. It&#39;s available in discount price in Anttila for 10 eur.&lt;/p&gt;&#xA;&lt;p&gt;I&#39;ve seen 1492 before, but I didn&#39;t quite look at it the same way I do now. For me, it used to be a rather generic biographical account of the discovery of America, based mostly on true stories and dramatization.&lt;/p&gt;&#xA;&lt;p&gt;But this time I realized that it was actually about the desire for power, and how a man can lose track of his life because of it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The primary function of copyright laws</title>
      <link>https://kennethfalck.net/2004/11/06/the-primary-function-of-copyright-laws/</link>
      <pubDate>Sat, 06 Nov 2004 17:41:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/11/06/the-primary-function-of-copyright-laws/</guid>
      <description>&lt;p&gt;&#34;The primary objective of copyright is not to reward the labor of authors, but [t]o promote the Progress of Science and useful Arts.&#34; &#34;To this end, copyright assures authors the right to their original expression, but encourages others to build freely upon the ideas and information conveyed by a work. This result is neither unfair nor unfortunate. It is the means by which copyright advances the progress of science and art.&#34;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Have you realized...</title>
      <link>https://kennethfalck.net/2004/11/05/have-you-realized.../</link>
      <pubDate>Fri, 05 Nov 2004 23:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/11/05/have-you-realized.../</guid>
      <description>&lt;p&gt;Have you realized that America just re-elected a president who cannot pronounce the word &#39;nuclear&#39;.&lt;/p&gt;&#xA;&lt;p&gt;Think about it.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Jenkkien hulluuden syitä etsimässä (FIN)</title>
      <link>https://kennethfalck.net/2004/11/04/jenkkien-hulluuden-syit%C3%A4-etsim%C3%A4ss%C3%A4-fin/</link>
      <pubDate>Thu, 04 Nov 2004 22:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/11/04/jenkkien-hulluuden-syit%C3%A4-etsim%C3%A4ss%C3%A4-fin/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_22.jpg&#39; title=&#39;blogimg/blog_22.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_22.jpg&#39; alt=&#39;blogimg/blog_22.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ilta-Sanomissa oli tänään mielenkiintoisia tarinoita USAn vaaleista. Ihmisille oli soiteltu tai kerrottu, että he eivät saa äänestää, koska ovat saaneet parkkisakon tai perheessä/suvussa on rikollinen. Eräässä puhelukampanjassa sanottiin, että äänestyksen voi suorittaa nyt heti puhelimitse. Joissain kaupungeissa jaettiin lentolehtisiä, joissa luki, että republikaanien äänestyspäivä on tiistaina ja demokraattien keskiviikkona.&lt;/p&gt;&#xA;&lt;p&gt;En tiedä miten tällaiseen pitäisi suhtautua... Jenkeillä koko vaalijärjestelmä on sekava, koska kansalaisilla ei ole mitään yleistä ja yhtäläistä äänioikeutta (esim. vangeilta se puuttuu). Ihmisille ei ole lainkaan niin itsestään selvää, että he saavat äänestää, kuin vaikkapa meillä Suomessa.&lt;/p&gt;</description>
    </item>
    <item>
      <title>No news is good news?</title>
      <link>https://kennethfalck.net/2004/10/30/no-news-is-good-news/</link>
      <pubDate>Sat, 30 Oct 2004 17:14:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/30/no-news-is-good-news/</guid>
      <description>&lt;p&gt;Seems that I haven&#39;t written any entries for some time now... I guess I haven&#39;t been doing anything else than work, and work I usually can&#39;t write about. Oh well.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Working with Windows Media Encoder SDK</title>
      <link>https://kennethfalck.net/2004/10/17/working-with-windows-media-encoder-sdk/</link>
      <pubDate>Sun, 17 Oct 2004 19:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/17/working-with-windows-media-encoder-sdk/</guid>
      <description>&lt;p&gt;I spent most of the weekend working with the Windows Media Encoder SDK, to set up automatic video capturing from TV. A poor man&#39;s TiVo :-)&lt;/p&gt;&#xA;&lt;p&gt;The encoder SDK can be used with C# which is pretty cool. It&#39;s quite easy to write a simple .NET application that operates a video capture card, such as the ViewCast Osprey 230 that I&#39;m using.&lt;/p&gt;&#xA;&lt;p&gt;Still having some problems though. I haven&#39;t found a way to detect the current aspect ratio (4:3 or 16:9) of Osprey&#39;s video input. It would be nice to change the capture resolution accordingly.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Just read: NO LOGO</title>
      <link>https://kennethfalck.net/2004/10/06/just-read-no-logo/</link>
      <pubDate>Wed, 06 Oct 2004 00:05:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/06/just-read-no-logo/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_19.jpg&#39; title=&#39;blogimg/blog_19.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_19.jpg&#39; alt=&#39;blogimg/blog_19.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Finally finished reading No Logo by Naomi Klein (Finnish translation, 2000).&lt;/p&gt;&#xA;&lt;p&gt;The first half of the book was actually pretty interesting, citing a lot of facts and fresh views of a new brand-based business world with the bad boys like Nike and Disney in the lead.&lt;/p&gt;&#xA;&lt;p&gt;It&#39;s very healthy to analyze how these brands, their advertising and their shops affect our culture, while we as individuals are prohibited by trademark and copyright laws from shaping that culture any further by ourselves. All we can do is accept the presence of the brands and let them decide where we are going.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Did you know: HTML Help for PHP</title>
      <link>https://kennethfalck.net/2004/10/04/did-you-know-html-help-for-php/</link>
      <pubDate>Mon, 04 Oct 2004 16:39:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/04/did-you-know-html-help-for-php/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_18.gif&#39; title=&#39;blogimg/blog_18.gif&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_18.gif&#39; alt=&#39;blogimg/blog_18.gif&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I just realized that there is a &lt;a href=&#34;http://www.php.net/download-docs.php&#34;&gt;Windows HTML Help file&lt;/a&gt; for PHP.&lt;/p&gt;&#xA;&lt;p&gt;It&#39;s probably been there all the time. But if you do a lot of PHP editing like me, and if you haven&#39;t tried it yet, try it, it&#39;s great.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sano ei verkkoäänestyksille (FIN)</title>
      <link>https://kennethfalck.net/2004/10/04/sano-ei-verkko%C3%A4%C3%A4nestyksille-fin/</link>
      <pubDate>Mon, 04 Oct 2004 11:21:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/04/sano-ei-verkko%C3%A4%C3%A4nestyksille-fin/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_17.jpg&#39; title=&#39;blogimg/blog_17.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_17.jpg&#39; alt=&#39;blogimg/blog_17.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;ITviikon &lt;a href=&#34;http://www.itviikko.fi/uutiset/uutinen.asp?id=63630&#34;&gt;uutisen&lt;/a&gt; mukaan liikenne- ja viestintäministeri Leena Luhtanen vilauttelee taas kerran vanhaa ajatusta Internetin kautta tapahtuvasta äänestyksestä. Tällä kertaa puhutaan jopa konkreettisesti vuoden 2007 eduskuntavaaleista.&lt;/p&gt;&#xA;&lt;p&gt;Soisi ja toivoisi viestintäministerinkin ymmärtävän, että verkkoäänestyksessä on fundamentaalisempia ongelmia kuin pelkästään äänten laskenta (joka sekään ei &lt;a href=&#34;http://it.slashdot.org/article.pl?sid=04/09/24/2046234&amp;amp;tid=103&amp;amp;tid=172&amp;amp;tid=17&amp;amp;tid=219&#34;&gt;USA:n Dieboldin kokemusten&lt;/a&gt; perusteella ole onnistunut kovin luotettavasti).&lt;/p&gt;&#xA;&lt;p&gt;Pahin ja ratkaisemattomin ongelma verkkoäänestyksessä on vaalisalaisuuden säilyttäminen. Kun kansalainen voi suorittaa äänestyksen kotona (tai millä tahansa Internet-päätteellä), ei ole mitään takeita siitä, uhataanko häntä esimerkiksi aseella päähän. Sopivasti aseistautunut joukko voi siis varmistaa vaalivoiton haluamalleen ehdokkaalle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>RSS &amp; Atom feeds available</title>
      <link>https://kennethfalck.net/2004/10/03/rss-atom-feeds-available/</link>
      <pubDate>Sun, 03 Oct 2004 22:37:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/03/rss-atom-feeds-available/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_12.png&#39; title=&#39;blogimg/blog_12.png&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_12.png&#39; alt=&#39;blogimg/blog_12.png&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;My blog is now available as &lt;a href=&#34;https://kennethfalck.net/rss.php&#34;&gt;RSS 1.0&lt;/a&gt; and &lt;a href=&#34;https://kennethfalck.net/atom.php&#34;&gt;Atom 0.3&lt;/a&gt; XML feeds.&lt;/p&gt;&#xA;&lt;p&gt;Check &lt;a href=&#34;https://kennethfalck.net/feeds.php&#34;&gt;my feeds page&lt;/a&gt; for more information on the feed formats, reader software, validators, etc.&lt;/p&gt;&#xA;&lt;p&gt;If you don&#39;t know what these feeds mean, they&#39;re basically a way to follow blogs and websites without having to open your web browser every time, just to check if there&#39;s something new.&lt;/p&gt;&#xA;&lt;p&gt;If you&#39;re using Mac OS X, I recommend &lt;a href=&#34;http://homepage.mac.com/stas/slashdock.html&#34;&gt;SlashDock&lt;/a&gt;, which displays new items as menu items on the Dock.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Another hit for intellectual freedom</title>
      <link>https://kennethfalck.net/2004/10/03/another-hit-for-intellectual-freedom/</link>
      <pubDate>Sun, 03 Oct 2004 19:57:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/03/another-hit-for-intellectual-freedom/</guid>
      <description>&lt;p&gt;As reported by &lt;a href=&#34;http://yro.slashdot.org/article.pl?sid=04/10/03/1352252&amp;amp;tid=123&amp;amp;tid=108&amp;amp;tid=155&amp;amp;tid=102&amp;amp;tid=98&#34;&gt;Slashdot&lt;/a&gt; and &lt;a href=&#34;http://www.rochesterdandc.com/apps/pbcs.dll/article?AID=/20041002/BUSINESS/410020333&amp;amp;SearchID=73185676035359&#34;&gt;rochesterdandc.com&lt;/a&gt;, Kodak just won a patent lawsuit against Sun&#39;s Java technology.&lt;/p&gt;&#xA;&lt;p&gt;Apparently, Kodak owns some obscure software patent that can be interpreted to describe the way Java (and Microsoft&#39;s .NET) work. They didn&#39;t invent it themselves, they just bought the patent rights from another company and sued Sun.&lt;/p&gt;&#xA;&lt;p&gt;Of course, Sun and Microsoft probably never even knew about the patent, much less utilized its ideas for developing their own products. Software development just doesn&#39;t work that way.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vaalikonetuloksia (FIN)</title>
      <link>https://kennethfalck.net/2004/10/03/vaalikonetuloksia-fin/</link>
      <pubDate>Sun, 03 Oct 2004 03:12:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/03/vaalikonetuloksia-fin/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_15.gif&#39; title=&#39;blogimg/blog_15.gif&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_15.gif&#39; alt=&#39;blogimg/blog_15.gif&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&#xA;Tässäpä mielenkiintoisia tuloksia. Ketähän nämä tyypit on, en ole koskaan kuullutkaan...&#xA;&lt;/p&gt;&#xA;&lt;table&gt;&#xA;&lt;tr&gt;&lt;td colspan=&#34;5&#34;&gt;Parhaat 3:&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;900&lt;/td&gt;&lt;td&gt;Nuottanen Jaana&lt;/td&gt;&lt;td&gt;Vihreät&lt;/td&gt;&lt;td&gt;340&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;339&lt;/td&gt;&lt;td&gt;Eriksson Kimmo&lt;/td&gt;&lt;td&gt;Liberaalit&lt;/td&gt;&lt;td&gt;323&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;166&lt;/td&gt;&lt;td&gt;Lillja Jan&lt;/td&gt;&lt;td&gt;RKP&lt;/td&gt;&lt;td&gt;320&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td colspan=&#34;5&#34;&gt;Huonoimmat 3:&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;714&lt;/td&gt;&lt;td&gt;589&lt;/td&gt;&lt;td&gt;Haavisto Kristiina&lt;/td&gt;&lt;td&gt;SKP&lt;/td&gt;&lt;td&gt;-204&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;715&lt;/td&gt;&lt;td&gt;280&lt;/td&gt;&lt;td&gt;Mansikka-Aho Cata&lt;/td&gt;&lt;td&gt;Keskusta (sit)&lt;/td&gt;&lt;td&gt;-226&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;tr&gt;&lt;td&gt;716&lt;/td&gt;&lt;td&gt;606&lt;/td&gt;&lt;td&gt;Paananen Antti&lt;/td&gt;&lt;td&gt;SKP&lt;/td&gt;&lt;td&gt;-283&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;&#xA;Vaalikone: &lt;a href=&#34;http://www.vaalikone.fi&#34;&gt;http://www.vaalikone.fi&lt;/a&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Babylon 5: Season 3 arrived!</title>
      <link>https://kennethfalck.net/2004/10/03/babylon-5-season-3-arrived/</link>
      <pubDate>Sun, 03 Oct 2004 00:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/03/babylon-5-season-3-arrived/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_14.jpg&#39; title=&#39;blogimg/blog_14.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_14.jpg&#39; alt=&#39;blogimg/blog_14.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Related to that previous entry, the same shipment also brought in my &lt;a href=&#34;http://www.amazon.co.uk/exec/obidos/ASIN/B00009XMNU/ref=pd_sim_d_dp_1/202-0919493-8930211&#34;&gt;Babylon 5 Season 3 DVD box set&lt;/a&gt;. Been waiting for that for months now (since I finished watching Season 2).&lt;/p&gt;&#xA;&lt;p&gt;Now I just have to wait for mencoder to finish encoding them into XviDs. I rarely bother with the actual DVDs any more... It&#39;s more comfortable just to encode everything and store on hard disk, just like I&#39;ve been doing with CDs for many years now.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Game Boy Advance SP games arrived!</title>
      <link>https://kennethfalck.net/2004/10/03/game-boy-advance-sp-games-arrived/</link>
      <pubDate>Sun, 03 Oct 2004 00:26:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/03/game-boy-advance-sp-games-arrived/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_13.jpg&#39; title=&#39;blogimg/blog_13.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_13.jpg&#39; alt=&#39;blogimg/blog_13.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Amazon finally delivered my order of Pac-Man, Super Mario Bros and Harvest Moon 2 for GameBoy Advance!&lt;/p&gt;&#xA;&lt;p&gt;I also got my travel pack with the headphone adapter and USB charger cable...&lt;/p&gt;&#xA;&lt;p&gt;A little something about the games:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.amazon.co.uk/exec/obidos/ASIN/B0001ZZNMO/ref=pd_sim_vg_dp_2/202-0919493-8930211&#34;&gt;Pac-Man&lt;/a&gt; needs no explanation of course. It&#39;s all just about wandering around in dark rooms, eating magic pills and listening to repetetive music...&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.amazon.co.uk/exec/obidos/ASIN/B0001ZZNNI/ref=pd_sim_vg_dp_2/202-0919493-8930211&#34;&gt;Super Mario Bros&lt;/a&gt; is as cool as ever, although there are slight contrast problems with the colors on GBA SP. Can you still remember all the entrances to the bonus rooms?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Why is this blog/website in English?</title>
      <link>https://kennethfalck.net/2004/10/02/why-is-this-blog/website-in-english/</link>
      <pubDate>Sat, 02 Oct 2004 17:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/10/02/why-is-this-blog/website-in-english/</guid>
      <description>&lt;p&gt;You may be wondering why this website including the blog section is in English, although I&#39;m Finnish, and Finnish is my first language.&lt;/p&gt;&#xA;&lt;p&gt;Well the answer is simple. I&#39;ve visited far too many European websites, especially in the .de domain, that only contained information in their native language, usually German. It pisses me off beyond belief when there is important information publically available on the web, but in the wrong language.&lt;/p&gt;</description>
    </item>
    <item>
      <title>AirPort Express rocks</title>
      <link>https://kennethfalck.net/2004/09/29/airport-express-rocks/</link>
      <pubDate>Wed, 29 Sep 2004 02:43:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/09/29/airport-express-rocks/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images/blogimg/blog_10.jpg&#39; title=&#39;blogimg/blog_10.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net/blogimg/blog_10.jpg&#39; alt=&#39;blogimg/blog_10.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;TNT finally delivered my new &lt;a href=&#34;http://www.apple.com/airportexpress/&#34;&gt;AirPort Express&lt;/a&gt; today.&lt;/p&gt;&#xA;&lt;p&gt;No, it&#39;s not the same thing as AirPort Extreme or the other basestation models. It&#39;s basically a WLAN-to-Audio bridge that you can use e.g. for streaming music to your bedroom, which is exactly what I use it for.&lt;/p&gt;&#xA;&lt;p&gt;To be fair, AirPort Express can do more than that. It&#39;s also a USB-to-WLAN printer adapter, and in fact, it does function as a pocket-size WLAN access point / gateway if you want it to.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Telecom guys suck</title>
      <link>https://kennethfalck.net/2004/09/21/telecom-guys-suck/</link>
      <pubDate>Tue, 21 Sep 2004 22:02:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/09/21/telecom-guys-suck/</guid>
      <description>&lt;p&gt;Have you ever tried to send operator logos and ringtones to a mobile phone? It&#39;s a mess!&lt;/p&gt;&#xA;&lt;p&gt;I mean, it&#39;s not just that there are numerous different standards and specifications, but &lt;a href=&#34;http://www.forum.nokia.com/html_reader/main/1,4997,2452,00.html?page_nbr=16&#34;&gt;you&#39;re not even supposed to follow them!&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Then of course, there is the madness with the &lt;a href=&#34;http://www.visualtron.com/support04.htm&#34;&gt;operator and network codes&lt;/a&gt; that don&#39;t have anything meaningful to do with the real world (like area codes, for example). Not only that, but they also came up with an unbelievable encoding never seen before, the &lt;a href=&#34;http://www.forum.nokia.com/html_reader/main/1,4997,2452,00.html?page_nbr=6&#34;&gt;&#34;Reverse  little-endian BCD filled with F16&#34;&lt;/a&gt;!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Virtual windows with LCDs</title>
      <link>https://kennethfalck.net/2004/09/15/virtual-windows-with-lcds/</link>
      <pubDate>Wed, 15 Sep 2004 01:20:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/09/15/virtual-windows-with-lcds/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images//blogimg/blog_8.jpg&#39; title=&#39;/blogimg/blog_8.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net//blogimg/blog_8.jpg&#39; alt=&#39;/blogimg/blog_8.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Here&#39;s a cool project found on Slashdot: If your room doesn&#39;t have enough windows, or you don&#39;t like the default view, just build a set of &lt;a href=&#34;http://www.hoagy.org/virtualwindow/&#34;&gt;Virtual windows&lt;/a&gt; from LCD displays.&lt;/p&gt;&#xA;&lt;p&gt;If I were more hardware inclined, I&#39;d like to give it a shot. But I guess I&#39;ll just settle for a HDTV video projector, once I can afford one...&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dan Brown: Digital Fortress</title>
      <link>https://kennethfalck.net/2004/09/13/dan-brown-digital-fortress/</link>
      <pubDate>Mon, 13 Sep 2004 00:36:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/09/13/dan-brown-digital-fortress/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images//blogimg/blog_7.jpg&#39; title=&#39;/blogimg/blog_7.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net//blogimg/blog_7.jpg&#39; alt=&#39;/blogimg/blog_7.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Just returned from my trip to Amsterdam, where I finished reading &lt;a href=&#34;http://www.danbrown.com&#34;&gt;Dan Brown&lt;/a&gt;&#39;s first techno-thriller, the NSA novel &lt;a href=&#34;http://www.danbrown.com/novels/digital_fortress/reviews.html&#34;&gt;Digital Fortress&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;It&#39;s fair to say Brown is a controversial author. He has an extraordinary way of advancing the story, leaving you hanging for more at the end of every chapter. On the other hand, he&#39;s been criticized of poor literary value, and his characters seem a bit shallow. It&#39;s always the athletic professor and the smart, strikingly beautiful woman scientist in her thirties (probably reflecting Brown&#39;s own marriage). Basically, it seems like he&#39;s writing movies in the form of novels.&lt;/p&gt;</description>
    </item>
    <item>
      <title>New geek t-shirt store found</title>
      <link>https://kennethfalck.net/2004/09/07/new-geek-t-shirt-store-found/</link>
      <pubDate>Tue, 07 Sep 2004 22:35:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/09/07/new-geek-t-shirt-store-found/</guid>
      <description>&lt;p&gt;If you wear weird geekish t-shirts like me, maybe you want to check out &lt;a href=&#34;http://www.geekculture.com/geekculturestore/index.html&#34;&gt;Geek Culture&lt;/a&gt;. They seem to carry a couple of funny ones.&lt;/p&gt;&#xA;&lt;p&gt;Of course, it&#39;s nowhere near the original &lt;a href=&#34;http://www.thinkgeek.com&#34;&gt;ThinkGeek&lt;/a&gt; where I get most of my wardrobe... If you&#39;ve never been there, check it out. They have all the toys you need, too.&lt;br/&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Google taking over the world</title>
      <link>https://kennethfalck.net/2004/09/07/google-taking-over-the-world/</link>
      <pubDate>Tue, 07 Sep 2004 00:46:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/09/07/google-taking-over-the-world/</guid>
      <description>&lt;p&gt;&lt;a href=&#39;https://kennethfalck.net/images//blogimg/blog_6.jpg&#39; title=&#39;/blogimg/blog_6.jpg&#39;&gt;&lt;img src=&#39;http://kfalck.net//blogimg/blog_6.jpg&#39; alt=&#39;/blogimg/blog_6.jpg&#39; align=&#39;right&#39; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Did you know that they even have their own &lt;a href=&#34;http://www.googlestore.com/home.asp&#34;&gt;merchandise shop&lt;/a&gt;? Just noticed it in the official &lt;a href=&#34;http://www.google.com/googleblog/&#34;&gt;Google Blog&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Before you get too excited and dump your whole life into your 1GB &lt;a href=&#34;http://gmail.google.com&#34;&gt;Gmail&lt;/a&gt; account, maybe you want to read &lt;a href=&#34;http://www.gmail-is-too-creepy.com&#34;&gt;this little analysis&lt;/a&gt; first.&lt;/p&gt;&#xA;&lt;p&gt;Right now all search engines are building massive databases of your web surfing habits, shopping interests, etc. Whenever you clear your cookies, they lose track. But what if you sign in to your email account, &lt;i&gt;with the tracking cookie still active, because it comes from the same domain&lt;/i&gt;? There&#39;s something to think about...&lt;/p&gt;</description>
    </item>
    <item>
      <title>Me too!</title>
      <link>https://kennethfalck.net/2004/09/06/me-too/</link>
      <pubDate>Mon, 06 Sep 2004 14:41:00 +0000</pubDate>
      <guid>https://kennethfalck.net/2004/09/06/me-too/</guid>
      <description>&lt;p&gt;Maybe it&#39;s about time I started a blog. I have a home page now, anyway. Obviously I couldn&#39;t just use an existing blogging system, but coded my own from scratch. Here it is, enjoy.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ajattelu</title>
      <link>https://kennethfalck.net/thinking/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/thinking/</guid>
      <description>&lt;p class=&#34;page-lead&#34;&gt;&#xA;Ajatuksia ohjelmistokehityksestä, arkkitehtuurista, asiakkaista ja siitä, mitä tuotantojärjestelmät opettavat ajan mittaan.&#xA;&lt;/p&gt;&#xA;&lt;div class=&#34;thinking-hero-image&#34;&gt;&#xA;&lt;img src=&#34;https://kennethfalck.net/images/thinking-bg.png&#34; alt=&#34;Thinking&#34; /&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;1-kuunteleminen-on-tärkeämpää-kuin-elegantti-ratkaisu&#34;&gt;&#xA;  1. Kuunteleminen on tärkeämpää kuin elegantti ratkaisu&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#1-kuunteleminen-on-t%c3%a4rke%c3%a4mp%c3%a4%c3%a4-kuin-elegantti-ratkaisu&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Olen ollut etenkin urani alkupuolella toteuttamassa IT-ratkaisuja, jotka eivät ole vastanneet asiakkaiden tarpeisiin.&lt;/p&gt;&#xA;&lt;p&gt;Syy on ollut aina sama: projektissa on kehitetty hieno tekninen ratkaisu ongelmaan, joka on ollut olemassa ainoastaan kehittäjien mielikuvissa.&lt;/p&gt;&#xA;&lt;p&gt;Vuosien mittaan olen oppinut tulkitsemaan asiakkaiden tarpeita, tekemään niihin omia lisäehdotuksiani, ja toisaalta ennustamaan jonkin verran tulevaisuutta. Näin tekniset ratkaisut onnistuvat ratkaisemaan oikean ongelman ja niiden elinkaaresta tulee oikean mittainen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blog Archive</title>
      <link>https://kennethfalck.net/archive/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/archive/</guid>
      <description>&lt;p&gt;Welcome to Kenneth Falck&amp;rsquo;s Blog Archive&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://kennethfalck.net/posts/&#34;&gt;View All Blog Articles Here&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kokemus</title>
      <link>https://kennethfalck.net/selected-work/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/selected-work/</guid>
      <description>&lt;p class=&#34;page-lead&#34;&gt;Olen rakentanut tuotantojärjestelmiä 1990-luvulta lähtien — verkkosivustoista teollisuuden IoT-järjestelmiin ja kansainvälisiin oppimisalustoihin. AWS on ollut pääasiallinen alustani 2010-luvun alusta lähtien. Ohessa muutamia poimintoja vuosien varrelta.&lt;/p&gt;&#xA;&lt;div class=&#34;selected-work-hero-image&#34;&gt;&#xA;&lt;img src=&#34;https://kennethfalck.net/images/selected-work.png&#34; alt=&#34;Selected work&#34; /&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;kansainvälinen-oppimisalusta&#34;&gt;&#xA;  Kansainvälinen oppimisalusta&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#kansainv%c3%a4linen-oppimisalusta&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Vuodesta 2022 lähtien olen työskennellyt useita vuosia kansainvälisen oppimisalustan parissa, jolla on miljoonia käyttäjiä eri maista. Projekti on sisältänyt laajan kirjon erilaisia AWS-pohjaisia taustajärjestelmiä:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;AWS Fargate -pohjainen järjestelmä loppukäyttäjien koodin turvalliseen ajamiseen, jonka myöhemmin laajensin myös AWS Lambda -pohjaiseksi.&lt;/li&gt;&#xA;&lt;li&gt;Organisaatio- ja ryhmänhallinta: käyttäjien kutsumiseen, oikeuksien tarkistamiseen ja tuotelisenssien hallintaan liittyvät järjestelmät.&lt;/li&gt;&#xA;&lt;li&gt;Käyttäjien välinen reaaliaikainen yhteistyö CRDT-tekniikalla (conflict-free replicated data types), joka mahdollistaa samanaikaisen tiedostojen muokkaamisen.&lt;/li&gt;&#xA;&lt;li&gt;Stripe-pohjaisen laskutusjärjestelmän siirto vanhasta alustasta AWS Serverless -ympäristöön ilman käyttökatkoja, jatkuvaa tietokantojen synkronointia hyödyntäen.&lt;/li&gt;&#xA;&lt;li&gt;Varmuuskopiointijärjestelmät Git-repositoryille, S3-bucketeille, Cognito-käyttäjärekistereille ja DynamoDB-tauluille.&lt;/li&gt;&#xA;&lt;li&gt;Mobiiliarkkitehtuuri: push-ilmoitukset, laskutusintegraatio ja käyttäjätunnistus sekä mobiilisovelluksessa että AWS-taustapalveluissa.&lt;/li&gt;&#xA;&lt;li&gt;Skaalautuva reaaliaikaisen analytiikkadatan tallennus- ja aggregointijärjestelmä (Firehose / Parquet / Athena) React-käyttöliittymineen.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;aws-iot--teollisuuden-laitteiden-hallinta&#34;&gt;&#xA;  AWS IoT — teollisuuden laitteiden hallinta&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#aws-iot--teollisuuden-laitteiden-hallinta&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Vuodesta 2017 lähtien suunnittelin ja toteutin suuren teollisuusasiakkaan AWS IoT -pohjaisen järjestelmän nostolaitteiden hallintaan asiakkaiden tiloissa. Järjestelmä perustui räätälöityyn Yocto Linux -pohjaiseen käyttöjärjestelmään, joka hyödynsi AWS Greengrass -alustaa paikallisten sovellusten hallintaan laitteessa. Pilvialusta hoiti laitteiden turvallisen käyttöönoton ja konfiguroinnin, sovellushallinnan, käyttöjärjestelmäpäivitykset ja datan keräämisen.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Työtapa</title>
      <link>https://kennethfalck.net/hidden-how-i-work/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://kennethfalck.net/hidden-how-i-work/</guid>
      <description>&lt;p class=&#34;page-lead&#34;&gt;Ratkon yleensä astetta haastavampia teknisiä ongelmia kuin tavalliset API-, tietokanta- ja verkkosivustoprojektit. Omaksun uudet teknologiat nopeasti ja olen toisinaan työskennellyt AWS-palveluiden parissa jo ennen niiden virallista julkaisua. Päädyn yleensä mukaan projekteihin silloin, kun tarvitaan joku, joka selvittää vaikeatkin ongelmat.&lt;/p&gt;&#xA;&lt;div class=&#34;how-i-work-hero-image&#34;&gt;&#xA;&lt;img src=&#34;https://kennethfalck.net/images/how-i-work.png&#34; alt=&#34;How I work&#34; /&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;yhteistyön-aloitus&#34;&gt;&#xA;  Yhteistyön aloitus&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#yhteisty%c3%b6n-aloitus&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Aloitamme yleensä tapaamisella — etänä tai paikan päällä — jossa käymme läpi ratkottavan ongelman ja esitän alustavia ideoita lähestymistavasta. Tapaamisen perusteella sovimme jatkosta: teen tarvittaessa tarkemman ehdotuksen projektin sisällöstä, tai asiakas saattaa jo tietää haluavansa minut töihin tietyllä allokaatiolla.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
