Käytämme evästeitä - ne auttavat meitä antamaan sinulle paremman verkkokokemuksen.
Sivustoamme käyttämällä hyväksyt, että saatamme tallentaa ja käyttää evästeitä laitteellasi.

Maailma »   Uutiset 

Uutiset

2-21-2008 Pääkirjoitus: Projekti .NET

Tämän vuoden suurin projektimme on kaikkien web-sivujen uusiminen. Hattrick on saavuttanut pisteen, jossa vanha koodi jää tehottomaksi ja jonka parissa on hankalampi työskennellä jokaisen uuden lisäyksen jälkeen. Hyödynnämme projektissa parempaa web-alustaa, joka tulee pitemmän päälle tehostamaan sivuston toimintaa ja nopeuttamaan ja helpottamaan uusien ominaisuuksien kehittämistä.

Projektin haittapuoli on, että bugeja voi esiintyä siirtymäkaudella normaalia enemmän. Tämän olemme jo voineet havaita, sillä projekti aloitettiin viime vuonna. Jotkin bugit eivät kuitenkaan ole itse asiassa bugeja, ja ehkäpä kärsivällisyytenne kasvaa, jos tiedätte syyn joihinkin ongelmiin ja projektin tavoitteisiin koko Hattrickin kannalta. En ole teknikko, ja minulle tarkemmasta tutustumisesta oli hyötyä. Kerron siis asioista omasta näkökulmastani.
Työtoverini toimistossamme ovat erittäin mukavia, mutta joskus tunnen itseni ulkopuoliseksi, koska muut ovat tietokonenörttejä (minulle kaikki ohjelmoijat ovat nörttejä). Minä en siis ole "nörtti", joten en ymmärrä heidän kieltään. En voi kuitenkaan välttyä oppimasta joitakin asioita silloin tällöin. Viime aikoina työtoverini ovat opettaneet minulle uuden sanan: "dotnetittäminen". Se ei taida olla oikea sana, mutta koulutetut tietoteknikkotyökaverini puhuvat siitä jatkuvasti aivan kuten vapahtajasta puhuttaisiin.

Työtoverini paksuja kirjoja selaamalla olen oppinut, että oikea sana olisi .NET (ja tähän siirtyminen .NET-muuntamista). Heidän mielestään se on huippujuttu, mutta minä näen lähinnä ongelmia siihen liittyen. En varmasti ole ainoa Hattrick-käyttäjä, joka on harmissaan viime aikojen ongelmien johdosta. Työtoverini ovat pätevää porukkaa, joten ymmärrän, että .NET-järjestelmän täytyy olla hyvä. En kuitenkaan ymmärtänyt aluksi, miksi sitä tarvittaisiin, kun minulle sanottiin, että lopulta koko sivusto pitäisi toteuttaa .NET-tekniikalla. Lopulta ymmärsin itsekin.

ASP ja .NET
Hattrick koki edellisen suuren ohjelmointimuutoksen vuonna 2000, kun kaikki web-sivut rakennettiin ASP-tekniikan päälle. Nörttikielestä käännettynä ASP (Active Server Pages) tarkoittaa runkojärjestelmää, jonka minä ymmärrän olevan jokin, joka tukee muita asioita ja jonka päälle voi rakentaa uutta. Osa tätä järjestelmää on ASP.NET, uudempi ja kuumempi versio ASP:stä. ASP:ssä kaikki sivut ovat erillisiä yksiköitä, kun taas .NET-järjestelmässä sivut yhdistyvät toisiinsa ja luovat yhden järjestelmän.

.NET-siirtymisen syyt
Työkaverieni mielestä olemme vaiheessa, jossa kaikkien sivujen koodaaminen uudelleen on välttämätöntä. Jotkin koodit on kirjoitettu vuosia sitten, ja niitä voidaan tehostaa. Lisäksi uusia toiminnallisuuksia lisättäessä on sivuille kirjoitettu uutta koodia, mikä on tehnyt sivun ymmärtämisestä ja sen parissa työskentelemisestä vaikeaa. Koodin kirjoittaminen uudelleen ASP.NET-järjestelmään tehostaa parantaa suorituskykyä. Vielä merkittävämpää on, että uuden vakioalustan ylle on nopeampi ja helpompi ohjelmoida uusia toimintoja. Lisäksi voimme tehdä uusista toiminnoista entistä parempia - kaikki tämä vähemmällä työllä.

Minulle on myös kerrottu, että .NET-koodaus on hauskaa: "APS-ohjelmointi on kuin päivittäinen loputon keskustelu daytradingista, kun taas .NET tuo keskusteluun uusia ottelumoottori-ideoita." Tähän ei ole oikein vastaan sanomista.

.NET ja Hattrick
Loimme Hattrickin ensimmäisen .NET-sivun loppuvuodesta 2006. Tuosta lähtien kaikki uudet sivut on luotu .NET-järjestelmässä ja olemme siirtäneet siihen myös joitain vanhoja sivuja. Junioriakatemiat, otteluluettelot ja kirjanmerkit on esimerkkejä .NET-sivuista. On helppo havaita, mitkä sivut on kirjoitettu .NET-järjestelmässä ja mitkä ASP:ssä: ASP-sivut päättyvät asp-tunnisteeseen ja .NET-sivut aspx-tunnisteeseen.

.NET ja aloitussivu
Nörttikielessä ei ole sanaa rakkaus, mutta ehkä se kuvaisi hyvin .NET-järjestelmän ja aloitussivun suhdetta. Lukemattomia kertoja olen yrittänyt siirtyä otteluluettelooni ja juniorijoukkueeni sivulle, ja minut on ohjattu sen sijaan aloitussivulle. Työtovereillani on tietysti looginen selitys tähän. Kun kirjaudut Hattrickiin, kirjaudut ASP-järjestelmään, mutta samanaikaisesti sinut kirjataan "haamukirjautumisena" myös .NET-järjestelmään. Joskus .NET-kirjautumisen yhteys kuitenkin menetetään. Tavallisesti ASP-yhteyden katketessa näyttöön ilmestyy aikakatkaisuviesti ja sinun on kirjauduttava uudelleen. Tässä tapauksessa päädyt kuitenkin aloitussivulle, koska ASP-kirjautuminen on edelleen käytössä.
Tämä oli vielä normaalia aikakatkaisua ärsyttävämpää, ennen kuin tiesin syyn ongelmaan. Nyt se ei kuitenkin häiritse kovin paljoa. Pyrimme tietysti poistamaan nämä ongelmat ja parantamaan toimivuutta, mutta valitettavasti kaikkia ongelmia ei voi korjata, ennen kuin koko sivusto on siirretty .NET-järjestelmään. Tähän kuluu aikaa todennäköisesti koko tämä vuosi, mutta muutostyö on kovimmillaan keväällä.

.NET ongelmien aiheuttajana?
Olisi ehkä helppo syyttää .NET-järjestelmää kaikista mahdollisista ongelmista, mutta jopa minun kaltaiseni ohjelmoinnista vähemmän tietävä ymmärtää, ettei se olisi reilua eikä ongelmat sillä poistuisi. Hattrick on jatkuvasti muuttuva ja kehittyvä ympäristö, joten kohtaamme väistämättä laitteistojen tai ohjelmistojen vioista tai molemmista johtuvia virheitä ja suorituskyvyn heikkenemistä. Useimmat Hattrick-käyttäjät hyväksyvät varmasti tällaiset ongelmat, mutta edellä kuvaamani aloitussivuongelma ja samankaltaiset viat saattavat turhauttaa. Toivottavasti ymmärrätte ongelmia paremmin nyt, kun tiedätte syyn niihin.

Jotain on vialla…
... on vikailmoitus, jota inhoamme yhtä paljon kuin tekin. Pyrimme pitämään tuollaiset viestit mahdollisimman vähäisinä. Olemme nyt muuttaneet järjestelmän rakenteita siten, että voimme varautua suurempaan kuormaan sivustolla ja säilyttää hyvän laatutason riippumatta kuormituksesta. Järjestelmämuutokset johtivat myös siihen, että meillä on varapalvelin .NET-testikäyttöön (erään kollegan mielestä tämä oli tarkoitetttua...). Kun sivu on siirretty .NET-järjestelmään, vapaaehtoishenkilökuntamme testaa sitä jonkin aikaa, ennen kuin julkistamme muutokset kaikille.

Testaus ei ole pomminvarmaa
Voisinpa sanoa, että testaus on pomminvarmaa, mutta näin ei kuitenkaan ole. Joskus bugi livahtaa testialueelta havaitsematta. Usein syynä on eri selaimet (ja selainlisäosat), ja ongelmat voivat jostain syystä näyttäytyä vain tiettynä aikoina tai tietyissä tilanteissa tai syntyä monen tekijän yhdistelmänä.

Ruusunpunaisia lupauksia
Pyrin välttämään tyhjiä lupauksia, joita en varmasti pysty pitämään, ja kollegani ovat varmasti samaa mieltä. .NET-siirtymä aiheuttaa todennäköisesti uusia bugeja. Teemme parhaamme ongelmien ehkäisemiseksi, ja pyrimme korjaamaan uudet ongelmat mahdollisimman nopeasti. Toivon myös, että te tulette toimeen ongelmien kanssa paremmin, kun tiedätte, mitä on tekeillä ja mitä on koko prosessin tuloksena - parempi ja nopeampi Hattrick!
 
Server 071