Viimeviikolla kävimme kahden W3:laisen voimin Tukholmassa November Camp konferensissa. November Camp on yksipäiväinen Symfony-sovelluskehykseen keskittyvä ja kehittäjille suunnattu tapahtuma. Symfony on suosittu PHP-pohjainen moderni sovelluskehys, jota me W3:lla olemme jo pidemmän aikaa käyttäneet.
Pidin itse yhden presentaation tapahtumassa, aiheesta Tekninen velka ja vanhan projektin modernisointi Symfony-sovelluskehyksen avulla (eng. Tackling Technical Debt – breathe new life into a legacy project with Symfony2).
Technical dept with @cvuorinen #NovemberCamp #symfony #legacy #LegacyProject pic.twitter.com/ShTu0PEzkX
— Symfony Sverige (@symfonyse) November 14, 2014
Aihe on sikäli tärkeä, että nykyään on paljon vanhoja projekteja, joissa koodin laatu ei ole kovin hyvä ja joissa on paljon teknistä velkaa. Tämä johtuu osittain siitä että web-kehityksen osalta ala on mennyt viimevuosina paljon eteenpäin. Parhaat käytännöt ovat muuttuneet ja erityisesti laadunvarmistukseen ja automatisoituun testaamiseen liittyvät menetelmät ja työtavat ovat yleistyneet. Maailmassa on siis tällä hetkellä hyvin paljon 5-10 vuotta vanhoja web-sovelluksia, jotka ovat edelleen käytössä olevia järjestelmiä, mutta joita on hyvin vaikeaa ja kallista ylläpitää ja kehittää eteenpäin.
Sain esityksestä hyvää palautetta. Monet kehittäjät tulivat esityksen jälkeen kertomaan, että he työskentelevät jonkin vanhan järjestelmän kanssa, ovat ajatelleet sen modernisointia, ja että he saivat esityksestä hyviä ideoita miten asian kanssa kannattaa edetä.
IT-järjestelmän peruskorjaus
Myös IT-järjestelmät kaipaavat peruskorjausta ja modernisointia, erityisesti jos järjestelmän elinkaari on pitkä. Meillä W3 Groupissa IT-rakennusmestarit ovat onnistuneesti modernisoineet erilaisia järjestelmiä ja minunkin esitykseni pohjautui käytännön kokemuksiin. Modernisointi voidaan toteuttaa esimerkiksi siten, että vanha järjestelmä integroidaan moderniin Symfony-sovelluskehykseen ja molempia käytetään rinnakkain. Tällöin modernisointia voidaan tehdä pikkuhiljaa normaalin kehityksen ja muiden korjausten yhteydessä. Tällainen asteittainen modernisointi on usein paljon kustannustehokkaampi vaihtoehto kuin koko järjestelmän korvaaminen uudella. Olemassa olevan vanhan järjestelmän korvaaminen kokonaan uudella vastaavalla on usein erittäin haastava projekti ja ne hyvin harvoin, jos koskaan, onnistuvat täysin odotusten mukaisesti.
Muuta November Campin antia
Tapahtumassa oli monia muita mielenkiintoisia presentaatioita, liittyen mm. Symfony-sovellusten tietoturvaan, suorituskyvyn parantamiseen, Facebookin PHP:n päälle rakentamaan Hack-ohjelmointikieleen sekä yleisesti sovellusten arkkitehtuuriin.
Tapahtumassa puhui myös uuden Symfonyn päälle rakennetun verkkokauppa-alustan Syliuksen pääkehittäjä, joka esitteli Syliusta ja sen suunnittelufilosofiaa. Sylius vaikuttaa todella mielenkiintoiselta ratkaisulta PHP:n verkkokauppakentällä, koska se on hyvin suunniteltu ja moderni alusta, jota on helppo muokata omiin tarpeisiin sekä integroida olemassaoleviin Symfony-pohjaisiin järjestelmiin.
Kuva Hector Melo A.
Carl Vuorinen työskentelee W3 Groupissa tiiminvetäjänä ja sovellusarkkitehtina. Häntä kiinnostaa kaikki web-kehitykseen liittyvä ja jatkuva oppiminen.