LTY:n .NET Sovelluskehitys -intensiivi, päivä 2

.NET Sovelluskehitys -intensiivin toinen päivä alkoi mikroluokassa ohjelmointiympäristöön tutustumisella. Luokkaan oli asennettu valmiiksi Visual Studio 2005, mutta kaveri oli tietenkin onnistunut valitsemaan juuri yhden niistä neljästä koneesta, joissa Visual Studion asennus ei kunnolla toiminut. Onneksi ohjelmointiympäristön debug-ominaisuuskin saatiin kuntoon ylläpidon suoritettua noin pari tuntia yhteensä kestäneen korjaus- ja service pack -asennuksen.

Sillä välin kun muut leikkivät Visual Studiolla, ehdin todeta Monodevelop -ohjelman asentamisen OS X:lle mahdottomaksi. Fink ei löytänyt peileiltä haluttuja paketteja Gnome-työpöytäympäristön asentamiseksi. Kai ohjelman voisi asentaa käsinkin, mutta sivuilla olevat ohjeet ja lista useista paketeista, joita pitäisi kääntää tietyillä optioilla, ei oikein herätä innostusta. Lisäksi sivuilla mainittu MacUX -projekti Monodevelop -asennuspaketin kasaamiseksi OS X:lle, on kirjoitusten mukaan jäämässä kesken. Pitää vielä yrittää Finkin kautta asennusta, asentamalla ensin Gnomen eri lähteistä (stable) ja tämän jälkeen Monodevelopin (unstable).

OS X:lle tarjolla olevien .NET-järjestelmän -kehitystyökalujen suhteen on harmillista, että Monodevelopin asentaminen OS X:lle on turhan hankalaa ja muiden ohjelmien tuki ohjelmoijalle on olematonta. Vaikka XCode:lla voi ohjelmoida C#:ia, on sen käyttäminen aloittelijan lähtökohdista kohtalaisen hankalaa ilman minkäänlaisia ohjelmointiapuja. Yhtä hyvin voisi ohjelmoida vimillä. Leikin kuitenkin XCoden lisäksi hieman Interface Builder -ohjelmalla ja helpostihan Cocoa# -käyttöliittymä rakentui.

Päivä sisälsi myös katsauksen .NET-järjestelmän tarkempiin ominaisuuksiin ja toiminnallisuuteen ja näimme muutamia demoja. Ei mitään sinällään erikoista. Mainostaakseen Imagine Cupia Microsoft tarjosi jokaiselle kilpailusivustolle rekisteröityneelle yhden vapaavalintaisen kirjan ja pelin. Valitsin vaihtoehdoista ”ASP.NET 2.0 Applications: Advanced Topics” -kirjan ja ”Gears Of War” -pelin Xbox 360:lle, vaikka en kyseistä konsolia omistakaan. Pitänee kai harkita ostamista :)

Päivän lopuksi käsiteltiin kurssin arvosteluperusteita ja aihepiiriä, johon liittyen pitäisi perjantaihin mennessä koodata jonkinlainen Windows- tai Web-pohjainen sovellus. ”Technology & Education” -teema on sinällään läheinen, mutta järkevän sovelluksen kehittäminen lyhyessä ajassa tuo omat haasteensa. Aivan yksin ei sovellusta tarvi kehittää, vaan päivän aikana muodostettiin 3-4 hengen ryhmiä. Varsinaisen ohjelman jälkeen ryhmät jäivät ideoimaan voittajasovellustaan tähtäimessään perjantain koodijulkistus ja palkinnot. Voi olla hankalaa kehittää toimivaa ideaa näin lyhyessä ajassa, joka jaksaisi kantaa myös mainostettuun Imagine Cupiin. Eihän sitä tosin koskaan tiedä.

Huomenna ja torstaina aamupäivät on varattu luennoille ja iltapäivällä jatketaan koodausta. Aikaa ei juuri tuhlattavaksi ole.

LTY:n .NET Sovelluskehitys -intensiivi, päivä 1

Tänään alkoi Lappeenrannan teknillisen yliopiston järjestämä .NET Sovelluskehityskurssi, joka toteutetaan intensiivinä 5.3 – 9.3.2007 Code Camp -periaatteella. Ensimmäisen päivän ohjelmana oli Microsoftin sovelluskehityskiertue, joka käsitti katsauksen .NET kehitysympäristöön, ominaisuuksiin ja mahdollisuuksiin. Kurssi toimii myös lähtölaukauksena Imagine Cup:iin.

Microsoftin sovelluskehityskiertue oli jotakuinkin samanlainen kuin vuosi sitten, kun sellaisessa kävin. Alkuun yleisesti aiheesta, Imagine Cup:n mainostusta, jonka jälkeen käsiteltiin .NET-järjestelmää kohtalaisen yleisellä tasolla ja luotiin katsaus mitä .NET 3.0 tuo tullessaan. Lisäksi yhteistyökumppani kertoi työelämän tarpeista ja haasteista sovelluskehityksen parissa työskenneltäessä. Aiheiden välissä pidettiin sopivasti kahvitaukoja, jotka Microsoft ystävällisesti tarjosi ja jonka laskuun myös lounas meni. Tietenkin Microsoftin Visual Studio -kehitystyökalua ja kumppanuusohjelmia mainostettiin riittävästi. Kyllähän se Visual Studio ihan kivalta ja toimivalta näytti. Esitysten jälkeen ilta jatkui LTY:n rantasaunalla illanvieton ja vapaamuotoisen keskustelun merkeissä ja tarjolla oli syötävää, juotavaa ja sauna.

Tapahtuma oli ihan mukava ja esityksiäkin jaksoi kuunnella, vaikkakin aiheita käsiteltiin hieman liian yksinkertaisesti. .NET-ympäristöstä sai jonkinlaisen kuvan, mutta joitakin aiheita olisi voinut käsitellä hieman syvemmin ja jättää toisia aiheita, kuten C# esimerkkien rakentamista, hieman vähemmälle. Arkkitehtuuri ja mahdollisuudet käsiteltiin aika pintapuolisesti ja kokonaiskuva jäi aika hajanaiseksi; paljon kivoja ominaisuuksia, hienoja käyttöliittymiä, helppoa koodigeneroimista, erilaisia rajapintoja ja hyvät kehitystyökalut. Myös Vistan karkkimainen käyttöliittymä ja toiminta tulivat tutuiksi.

Huomenna intensiivikurssi jatkuu luennoilla, demoluennoilla, aiheen valinnalla ja koodaamisella. Asensinkin jo Mac OS X:lle Mono -ympäristön, XCode:en C# -pluginin. ASP.NET -sovelluksia voi ajaa Mono:n mukana tulleen XSP -palvelimen avulla. Kaikki tarvittava löytyi Mono -projektin sivuilta, mutta ympäristön voi asentaa myös Darwin Portsin kautta. Peruskoodit kuten C# HelloWorld.cs, Cocoa# -HelloWorld.app ja ASP.NET HelloWorld.aspx toimivat, joten asennus onnistui. Monon, C# -ympäristön ja XCoden käytöstä lisää myöhemmin.

Kurssilla koodausympäristönä toimii Visual Studio 2005, mutta oma Mono -ympäristö Mac OS X:ssä helpottaa ominaisuuksien testaamista ja samalla voi vertailla koodin toimivuutta .NET ja Mono -ympäristöissä. Nopeasti testattuna XCoden C# -pluginin tuki ohjelmoijalle oli olematonta, joten ohjelmointiympäristöjen vertailu ei ole mielekästä. Jos omistaisin Macbookin voisin ajaa Windowsia ja Visual Studiota Parallelin kautta ja silti nauttia OS X:n mukavuuksista.

Saa nähdä kuinka ahdasta huomenna mikroluokkaan ja koneiden äärelle tulee, sillä luokka on kohtalaisen pieni ja innokkaita koodaajia ensimmäisen päivän perusteella runsaasti.

WordPress 2.1.2 turvallisuuspäivitys julkaistu

WordPressistä julkaistiin versio 2.1.2 ja päivittämistä tuoreimpaan versioon suositellaan.

Long story short: If you downloaded WordPress 2.1.1 within the past 3-4 days, your files may include a security exploit that was added by a cracker, and you should upgrade all of your files to 2.1.2 immediately. It appeared that the 2.1.1 download had been modified from its original code.

Hakusanoja helmikuulta

Seurailen ajoittain Awstatsin ja Google Analyticsin avulla millä hakusanoilla sivustolle on löydetty. Käytetyt hakusanat vaihtelevat, mutta ilmeisesti kuiva sisäilma vaivaa monia, sillä ilmankostutin on ollut kestosuosikki pidemmän aikaa.

Helmikuun Top 5 -hakusanat olivat:

  1. ilmankostutin, 59 kpl
  2. työnhakulomakkeet, 57 kpl
  3. digi-tv viikko, 12 kpl
  4. soks se on kiva sillo, 8 kpl
  5. kiintolevyn tyhjennys, 5 kpl

Kosteamman sisäilman jälkeen toiseksi suosituin hakusana oli keväisin aina ajankohtainen työnhaku ja työnhakulomakkeet. Työnhakulomakkeista ja työnhausta kirjoittelin kesällä ja aihe kaipaisi uutta katsausta. Yritysten lomakkeissa ja työnhakuprosesseissa on suuria eroa ja paljon parannettavaa löytyy. Kesään verrattuna eivät lomakkeet tai toimintatavat ole juurikaan muuttuneet.

Kolmantena listalta löytyy kirjoitus Digi-tv-viikosta. 12.–18. helmikuuta vietetyllä Digi-tv-viikolla Yle tarjosi digitietoa muun muassa siitä minkälaista sisältöä on tarjolla ja mitä laitteita digiaikaan siirtymisessä käytännössä tarvitaan.

Viidentenä listalla oleva kirjoitus kiintolevyn tyhjentämisestä on aina ajankohtainen, kun vanhaa kiintolevyä ollaan myymässä tai poistamassa käytöstä.

Hakusanoista tulikin mieleen, että tuollainen pieni USB-ilmankostutin olisi oiva hankinta. Tietokoneet keräävät pölyä, tuottavat lämpöä ja kuivattavat talvisin jo valmiiksi kuivaa sisäilmaa. Täytteeksi vain tislattua vettä ja lisäksi säännöllistä puhdistusta.

Bittorrent aloittaa viihteen myymisen vertaisverkossa

Tietokone-lehti uutisoi Bittorrentin aloittavan televisiosarjojen ja elokuvien myymisen vertaisverkossa. Bittorrent Entertainment Network -palvelussa on tarjolla aluksi noin 5000 nimikettä viihdealan suurimmilta yrityksiltä, kuten Warner Bros, Paramount Pictures, 20th Century Fox ja MGM. Aikaisemmin Bittorrent on niittänyt mainetta enemmän tai vähemmän kyseenalaisen sisällön levittämiseen liittyen, vaikka kyseisellä p2p-tekniikalla on paljon laillisia ja hyödyllisiä käyttötarkoituksia.

Uudessa palvelussa sisältö on hinnoiteltu maltillisesti ja tv-sarjoja voi ostaa omaksi 1,99 dollarilla, joka on tuttu hinta muista nettikaupoista. Elokuvia voi vain vuokrata, jolloin uusista leffoista veloitetaan 3,99 dollaria ja vanhemmista 2,99 dollaria. Käyttöaikaa on 30 päivää latauksesta tai päivä katselun aloittamisesta. Bittorrentin näkemyksen mukaan noin kolmannes käyttäjistä olisi valmis ainakin osittain siirtymään maksullisen sisältöön, jolloin Tietokone-lehden mukaan palvelu olisi vakava kilpailija esimerkiksi iTunes -palvelulle, joka tarjoaa samanlaista palvelua.

Bittorrent Entertainment Network -palvelun sisältö on näppärästi vuorattu Windows Media Player DRM:ään (digitaalinen käyttöoikeuksien hallinta), joten toimivuudesta ja käyttöalustoista voi olla montaa mieltä. Toki suuri yleisö on Windows-käyttäjiä ja muut käyttöjärjestelmät kannattaa unohtaa, kun tehdään bisnestä. En kyllä ole testannutkaan, miten hyvin Windows Media Player DRM toimisi Linuxilla tai Mac OS X:llä. En käytännönsyistä ymmärrä miksi myytävä digitaalinen sisältö pitää aina rampauttaa DRM:llä, kun sisällöstä on jo maksettu. Gizmodo huomauttaa Bittorrenttia käsittelevässä kirjoituksessaan, että Microsoft on markkinoinut hyvin DRM:äänsä, koska useimmat suuret digitaaliset elokuvajakelijat iTunesta lukuun ottamatta ovat ottaneet sen käyttöönsä.

Elokuvien ja tv-sarjojen digitaalista tarjontaa löytyy jo Applen iTunes -palvelusta, joka tarjoaa viihdettä iTunes -ohjelman kautta. Bittorrent tulee samoille markkinoille lähes samalla idealla, tarjonnalla ja hinnoittelukin on ainakin tv-sarjojen osalta sama. Nopeasti vilkaistuna iTunesin kautta pystyi ostamaan elokuvia 10-15 dollarin hintaan. Molemmat palvelut on rikottu DRM:llä, mutta on aivan liiaksi toivottua, että kuluttaja voisi lähitulevaisuudessa itse päättää ostamansa digitaalisen sisällön käytöstä.

Tv-sarjojen seuraamisesta ilman mainoskatkoja ja kun itselle parhaiten sopii, voisi helpostikin maksaa muutaman euron ja elokuvista alle leffateatterin hinta ei myöskään kuulostaisi pahalta. Nähtäväksi kuitenkin jää, rantautuvatko digitaaliset mediapalvelut Suomeen ja jos niin milloin. Suomessa hyvät tv-sarjat tulevat parhaimmillaankin vuoden viiveellä ja usein eivät ollenkaan, joten markkinoita iTunesin ja Bittorrentin kaltaisille kohtuuhintaisille tv-sarjapalveluille varmasti olisi.

Lisäys 1.3.2007:
Ars Technica testaa Bittorrentin p2p-viihdekaupan hieman heikoin tuloksin. Puolet viihteestä jäi toistumatta ja ongelmia oli myös tilausprosessissa.

Vauhdita OS X:n postiohjelmaa

Mac-maailmassa sähköpostin lukemiseen voi käyttää mainiota Mail.app ohjelmaa, mutta itse olen pitäytynyt pääasiallisesti Thunderbirdissä riippumatta alla olevasta käyttöjärjestelmästä. Niko Nymanin /personal -blogin kirjoitus viittaa näppärään Mail.app nopeutusvinkkiin, joka nopeuttaa sen toimintaa.

Käytännössä vinkki siivoaa Mail.appin käyttämän SQLite tietokannan kopioimalla sisällön väliaikaiseen tietokantaan ja lataamalla tämän jälkeen tietokannan kopiosta. Ajan kuluessa tietokantaan tehdyt lisäykset ja poistot voivat jättää tietokannan tiedostorakenteen sirpaleiseksi, joka hidastaa sen käsittelyä. Alkuperäisessä ohjeessa vacuum -komennolle annetaan parametri ”subject”, mutta SQLiten ohjeen mukaan komento ei enää ota parametrejä, vaan suorittaa käskyn koko tietokantaan.

Vinkki menee seuraavasti:

Sulje Mail.app.
Avaa Terminal ja suorita komennot:

cd ~/Library/Mail
sqlite3 Envelope\ Index
sqlite> vacuum;
sqlite> .exit

Tämän jälkeen Mail.app -ohjelma pitäisi toimia nopeammin, jos se aikaisemmin tahmasi. Samaan lopputulokseen päästään myös siirtämällä ”Envelope Index” työpöydälle ja avaamalla tämän jälkeen Mail.app, joka nyt indeksoi sähköpostit uudelleen. Nopeutusvinkin suorittaminen saattaa myös pienentää suureksi kasvaneen tietokannan kokoa.

Vietä päivä ilman tietokonetta

Shutdown Day -sivustolla Denis Bystrov ja Michael Taylor heittävät haasteen olemaan ilman tietokonetta 24 tuntia maaliskuun 24. päivänä, joka on lauantai. Maailmanlaajuisen kokeen tarkoituksena on selvittää kuinka moni pystyy olemaan päivän ilman tietokonetta.

Harmillisesti sivustolla ei kerrota mitkä laitteet luokitellaan tietokoneiksi. Ovatko kaikki laitteet missä on tietotekniikkaa sisällä tietokoneita vai lasketaanko vain perinteiset tietokoneet kuten PC:t tai Macit? Entäs pelikonsolit ja mihin kategoriaan matkapuhelimet tai mp3-soittimet kuuluvat? Tietokoneistetussa maailmassa, ainakin mitä länsimaihin tulee, luopuminen tietotekniikasta on vaikeaa, ellei mahdotonta. Ilman tietokonetta pärjää kyllä helpostikin, varsinkin viikonloppuisin.

”Sulje Tietokone Päiväksi” -päivä on lauantai, joten kyseisen päivän voisi helposti kuvitella viettävänsä ilman tietokonetta. Jos päiväksi olisi valittu jokin arkipäivä, olisi ajatuksessa ollut vielä vähemmän järkeä. Toisaalta joku energiatekniikan opiskelija voisi laskea millaisen energiaylijäämän ”sammutuspäivä” voisi hyvin onnistuessaan aiheuttaa ja montako sähköntuotantolaitosta joudutaan ajamaan alas yllättävän kulutusmuutoksen ansiosta. Pitäisiköhän teemapäivä nimetä uudelleen. ”Vietä päivä ilman tietokonetta ja loppuviikko ilman sähköä” kuulostaa mukavalta.

Kaikki eivät ole ”Shutdown Day” -ideasta innoissaan ja ideaa kehotetaan boikotoimaan. Ideaa verrataan olemaan hengittämättä 24 tuntia ja tuonkin ajan voisi käyttää wowin pelaamiseen, uutissyötteiden lukemiseen tai netissä surffaamiseen. Siis jos olet sammutuspäivää vastaan, käytä kyseisenä päivänä tietokonetta tuplasti normaaliin.

(via Gizmodo)