Archive for June, 2008

Fedora 9

30 June 2008

Tuli mieliteko asentaa Fedora 9 iltapuhteena. No ei kun tuumasta toimeen. Valitettavasti kotona ei ollut yhtään tyhjää DVD levyä joten joten jouduin tyytymään usb tikku live asennukseen. Asennuksen tekeminen onnistui liveusb-creator ohjelmalla ilman sen suurempia murheita.

Asensin x86_64 KDE:n jakelun. Mitenkään ihmeellisesti uutta asennus ohjelma (Anaconda) ei tarjonnut, levyn kryptaus tukea tosin tarjottiin partitioidessa. Netti ja äänet toimi ihan ensimmäisellä käyttökerralla.

Se mikä aiheuttaa pienimuotoisen shokki reaktion on uusi KDE 4.

  • Käynnistä valikko on muutettu, nyt paikallaan selattava.
  • Ikonien ulkoasu on erilainen. Niissä on pyöristetyt tausta reunat ja ikoneitten kokoo pystyy muuttamaan ja niitä pystyy kallistamaan.
  • Automaattisesti liikkuva järjestelmänlautanen (system tray), joka häiritsee kätevästi kun pomppaa ruudun toiseen reunaan, en halunnut leikkiä kissaa ja hiirtä -> kytkin pois.
  • Päivityksistä ilmoitetaan tehokkaasti (katso kuva).

Täytyy alkaa muokkaamaan tätä oman näköiseksi jos tuntumaa tulisi enemmän.

Valokuva ja gps

28 June 2008

Tänään oli Digitoday:n uutispalvelussa pieni uutinen: Ohjelma keksii, missä valokuva on otettu. Siinä valokuvan ottopaikkaa koitetaan päätellä vertaamalla muita kuvia.

Tutkimuksen projektisivulla on pieni muitoinen tutkimus raportti, joka kertoo kuinka hyvin tässä onnistuttiin. Keskimääräinen virhe oli noin 200km, joka kuulostaa aika vähältä (katso raportti kuva 6). Itse analysointi algoritmia ei kuitenkaan esitelty.

Tästä herää kysymys että mitä uusi työkaluja on mahdollista luoda kun otetaan hyväksi netin suositut palvelut. Tämän tyyppistä ohjelmaa on mahdoton luoda ilman hyvin suurta valokuva arkistoa josta jokaisesta valokuvasta on gps data tiedossa.

GPS koordinaatin saaminen valokuvasta ei kuulosta kovin hyödylliseltä ominaisuudelta loppukäyttäjälle. Luulisi että kyseisestä toiminnosta on enemmän hyötyä jossain tiedustelu toiminnassa.

Olisi mielenkiintoista nähdä tutkimus mitkä olisivat kyseisen maantieteellisen alueen kuvatuimmat kohteet, tätä tietoa voisi varmaan käyttää hyväksi turismin suunnittelussa.

Blogien sensuuri

27 June 2008

Tämän päivän puheen aiheena on ollut blogien sensuuri.

Elikkä kysymys on tästä T&T lehden uutisesta: EU harkitsee blogeille ennakkosensuuria.
Petteri Järvisen mietteitä asiasta: Mikä blogeissa pelottaa viranomaisia?

Muistiossa esitetään mm. blogien luokittelua. Tietysti blogin voi aina luokitella jotenkin. Mutta hyvin äkkiä tämän tyyppisestä luokittelusta tulee toimimaton. Muistaako kukaan enään ICRA luokittelua?

EU:sa luultavasti oletetaan että ihmiset ovat aivottomia surffaajia jolla ei ole minkäänlaista arviointikykyä. Vaikka WinCapita vähän tätä osoittaakin niin eiköhän se kuitenkin ole häviävän pieni prosentti joka lähettää rahaa afrikkalaiseen pankkiin, joka kerta kun saa ilmoituksen lottovoitosta sähköpostiin. Eikö tämmöinen johda siihen että mikroaalto uunissa lukee “Älä kuivata kissaasi tällä” amerikkalaiseen tyyliin.

Tanoth

26 June 2008

Tanoth on Flash pohjainen fantasia peli. Vaikka peli on komean näköinen luulen että siitä ei tule koskaan hirveää menestystä. Miksikö? Koska pelaaminen on erittäin hidasta.

Kun haluaa hahmon kehittyvän on suoritettava erilaisia seikkailuja, kun seikkailu aloitetaan niin pelaaja matkustaa kohteeseen ennen kuin saa selville tapahtuiko mitään erikoista. Seikkailusta riippuen matka kestää 10-45 minuuttia. Jona aikana ruudulla etenee hiljalleen edistymispalkki jossa on jäljellä oleva aika. Odotettavaa aikaa pystyy kyllä lyhentämään ostamalla jonkinlaisen kulkuvalineen (esim. aasi/hevonen) mutta kuten sanotaan odottavan aika on pitkä.

Seikkailut ovat kulkemista paikasta toiseen ja yksittäisen hirviön lahtaamista. Toisia pelaajia vastaan pystyy taisteleen. Taisteluista saa statiikka pohjaisen yhteen vedon jossa luetellaan omat ja vastustajan hahmojen tiedot. Taisteluista saa raportin sähköpostiin.

Pelissä menestyminen riippuu käytännössä rahasta, rahaa saa lahtaamalla toisia pelaajia, seikkailemalla sekä tekemällä töitä. Työnteko tässä pelissä kannattaa ja maksimi aika jonka voi olla töissä on kahdeksan tuntia (jonka aikana ei tietenkään pysty pelaamaan). Rahalla pystyy päivittämään oman hahmon ominaisuuksia sekä ostamaan erilaisia tarvikkeita.


Levenšteinin etäisyys

25 June 2008

Pieni nörtti sisimmässä heräsi kun tuli satunnaisen surffailun aikana törmättyä algoritmiin josta ei ole kuullut.

Levenšteinin etäisyys kuvaa pienintä määrää operaatioita jolla toinen merkkijono voidaan muuttaa toiseksi. Eli algoritmista on hyötyä silloin kun pitää selvittää miten lähellä toisiaan annetut merkkijonot ovat. Algoritmin kehitti Vladimir Levenshtein vuonna 1965.

Nopeasti pohtien tulee kaksi käytännön sovellusta mieleen.

Oikein kirjottamisen tarkoitus, saadaan aikaiseksi google tyyppinen ehdotus että tarkoititko sanaa x. Sekä salasanojen vahvuus testauksessa pystytään kätevästi tarkastamaan kuinka lähellä ehdotettu salasana on nykyistä salasanaa.

Jos kiinnostus heräsi niin lisää tietoa löytyy Englannin kielisestä Wikipediasta sekä PHP ohjeista evenshtein() funktion kohdalta. Valmiita selkeitä toteutuksia muille kielille tältä sivulta.

Kuinkahan paljon erilaisilta kirjoitus virheiltä olisi vältytty jos windowsissa olisi ollut valmiina palikka joka tarkistaa kielen ulkoasun. KDE:ssä vastaava systeemi on ollut ties kuinka kauan.

Excel: Tallennus solun mukaan

24 June 2008

Pistetään tämmöinen pikku vinkki jos jollekulle olisi hyötyä. Ideana on tallentaa Excel taulukko solun A1 mukaan, jossa on päivämäärä. Tiedoston nimi muodostuu solusta olevasta päivämäärästä ja loppu liitteestä eli tiedoston nimeksi tulee jotain “23.6.2008 myynti.xls”. Makroa on helppo muokata niin että myynti.xls jälkiliite saadaan napattua jostain toisesta solusta. Excel 2007 versiossa tiedoston voisi tallentaa xlsm muodossa.

Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
        Dim Tied As String, uusiTied As String
        Tied = Range("A1").Value
        uusiTied = Tied & " myynti.xls"
        ChDir ActiveWorkbook.Path
        ActiveWorkbook.SaveAs Filename:=uusiTied
End Sub

Koodin väritystä WordPressissä

23 June 2008

Löysin blogiin WP-Syntax lisäosan, se värittää liitetyn koodin käyttäen GeSHi palikkaa. Hyvänä puolena on että se tukee huimaa joukkoa erilaisia kieliä.

No liitetään tähän pieni C# esimerkki koodi, joka ihmettelee annettua teksti tiedostoa.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
using System;
using System.Text;
using System.IO;
 
namespace cnt_wrd
{
    class Program
    {
        static int[] freqtbl = new int [256];
 
        static int Main(string[] args)
        {
            FileStream istream;
 
            if (args.Length == 0)
            {
                Console.WriteLine("Use: cnt_wrd file.txt\n");
                return 0;
            }
            try
            {
                istream = new FileStream(args[0], FileMode.Open, FileAccess.Read);
            }
            catch (Exception)
            {
                Console.WriteLine("Could not open for reading.");
                return -1;
            }
 
            StreamReader reader = new StreamReader(istream);
            StringBuilder strb = new StringBuilder();
 
            // Counter for the stats
            int Lines = 0;
            int Words = 0;
            int Chars = 0;
            int Sentences = 0;
 
            while (reader.Peek() > 0)
            {
                ++Lines;
                strb.Length = 0;
                string str = reader.ReadLine();
                Chars += str.Length;
                Sentences = SentencesCount(str);
                Words += Count(str);
            }
            istream.Close();
 
            for (int i = 0; i < freqtbl.Length; i++)
            {
                if (freqtbl[i] == 0)
                    continue;
                Console.Write("{0} {1}\t", Convert.ToChar(i), freqtbl[i]);
            }
            Console.WriteLine("\nLines: {0}, Sentences:{1}, Words: {2}, Chars: {3}",
                    Lines, Sentences, Words, Chars);
            return (0);
        }
 
        static int SentencesCount(string str)
        {
            int cnt = 0;
 
            for (int i = 1; i < str.Length; i++)
            {
                if (str[i] == '.')
                    cnt++;
                if (str[i] == '?')
                    cnt++;
                if (str[i] == '!')
                    cnt++;
            }
            if (cnt == 0)
                cnt = 1;
 
            return cnt;
        }
 
        static int Count(string str)
        {
            int c = 0;
 
            for (int i = 1; i < str.Length; i++)
            {
                if (char.IsWhiteSpace(str[i - 1]) == true)
                {
                    if (char.IsLetterOrDigit(str[i]) == true ||
                        char.IsPunctuation(str[i]))
                    {
                        c++;
                        freqtbl[str[i]]++;
                    }
                }
            }
            if (str.Length > 2)
            {
                c++;
            }
            return c;
        }
    }
}

Näppäimistön synty ja kuolema

22 June 2008

Koskaan ei pitäisi juoda tietokoneen ääressä. Näppäimistö sai ikävän tee kylvyn ja nopeasta pelastus operaatiosta huolimatta se siirtyi kierrätykseen. Vara näppäimistö pitäisi aina olla kaapissa mukana näin tohelolla henkilöllä, mutta kun siellä on jo muutakin roinaa jo tarpeeksi.

Eikun aamulla ruokakauppaan ja mukaan tarttui Microsoft Comfort Curve Keyboard 2000. Täytyy myöntää että tuntuu vähän oudolta näin äkkimältään vanhan kunnon Keytronic perheeseen tottuneena. Outouden tekee matalaprofiili näppäimet joita ei tarvitse totuttuun tyyliin hakata. Eli kun vaistomaisesti luulee olevansa näppäimen puolessa välissä niin onkin jo painanut näppäimen sisään.

Näppäimistö on myös puolta matalampi vanhaa Keytronikkiin verrattuna. Näppäimistö tuntuma tuntuu olevan pehmeä, näppäimistöä mainostetaan hiljaisena mutta mitään käytönnön eroa en huomannut. Muut näppäimet ovat ehkä pikkasen hiljaisempia mutta välilönti pitää tuttua nakuttavaa ääntä.

Näppäimet eivät ole aivan suoraviivaisesti aseteltu vaan kaartuvat 6 asteen kulmassa. Tämä pitäisi olla ergonomisesti parempi. Myös näppäimistön kokoja on muutettu etusormelle tarkoitettu pystyrivin näppäimet ovat muita isompia.

Multimedia näppäimistö löytyy pakolliset: taakse, eteen, kotiin, etsi, posti, sekä 4 näppäintä soittimelle. Eli näppäimiä on yhteensä 105. Erikoisuutena on numeronäppäimistön oikealla ylhäällä valojen vieressä oleva näppäin joka käynnistää laskimen. No kai tämä on elintärkeä toiminto nyky ajan toimisto ihmiselle.

Näppäimistö on kiiltävän musta ja USB liitettävä. Mukana tuli itse näppäimistö ja pari lue nämä lappusta. Pakkaus mainostaa veden kestävyyttä mutta enpä uskalla testata.

Lyhyesti: Sutkot ok ergonäppis, jotkut ehkä kaipaavat rannetukea.

Uusi ilme

21 June 2008

Web-sivut ovat saaneet uuden ilmeen. Kyllästyin vanhaan ja ajattelin tehdä asialle jotain.

Sivusto pyörii nyt kokonaan Wordpressin alla, erillisen blogin sijaan. Toivottavasti sisällön hallinta on näin helpompaa. Samalla vaihtui myös sivuston kieli Englannista suomeen. Kotimaisella kielellä tulee kuitenkin kirjoitettua laajempia juttuja. Samalla suomensin Wordpressin, täytyy testailla tuleeko suomennoksesta lisää ongelmia.

Täytyy koittaa jos saisi muutamia teknisiä yksityiskohtia muokattua kuntoon ja ulkoasua parannettua. Nuo valmiit teemat ei kuitenkaan miellytä silmää, vaikka niitä hyvin runsaasti saatavilla.

No eiköhän tämä tästä pikkusen myllerryksen jälkeen lähde pyörimään.