Robotti aloitti otsikkotehtailun - poliisi vastasi kumiluodeilla
Botsikot on fiktiivisiä uutisotsikoita luova verkkopalvelu. Palvelussa on lista luoduista otsikoista, joista hauskimpia käyttäjät voivat tykätä eli "peukuttaa". Sivustoon liittyy myös olennaisesti Twitter-botti @Botsikot, joka tweettaa automaattisesti eniten peukutetut botsikot. Parhaimmillaan Botsikot ovat hauskoja, ajankohtaisia ja jopa sarkastisia tai kantaaottavia.
Idea Botsikoihin lähti Hacker News-palstalle lähetetystä sivusta joka generoi uusia otsikoita vanhojen Hacker News otsikoiden perusteella. Sivulle on linkitetty myös python-koodi, jolla otsikot on luotu. Otsikot luodaan lähdemateriaalin pohjalta hyödyntäen Markovin ketjuja. Käytännössä koodi laskee lähdemateriaalin perusteella tilastollisesti millä todennäköisyydellä mitkäkin sanat esiintyvät peräkkäin lauseessa. Tämän jälkeen koodi arpoo aiemmin laskettuja todennäköisyyksiä käyttäen uusia lauseita. Lopputuloksena syntyy siis lähdemateriaalissa esiintyneiden lauseiden yhdistelmiä. Markovin ketjut tuottavat useimmiten kieliopillisesti oikeita lauseita myös suomenkielellä, koska ne perustuvat sanojen tilastolliseen esiintymiseen eivätkä kielioppiin. Botsikot luodaan ainakin toistaiseksi myös tällä samalla Python scriptillä.
Koodin lisäksi otsikoiden luontiin tarvitaan myös lähdeaineistoksi kymmeniä tuhansia otsikoita. Mitä enemmän lähdeaineistoa on sitä alkuperäisimmältä luodut otsikot kuulostavat. Ylellä luodaan tuhansia uutisotsikoita joka viikko, mutta pelkästään Ylen otsikoita käytettäessä otsikoita täytyisi valita lähdeaineistoon hyvin pitkältä ajalta, jotta aineistoa saadaan tarpeeksi. Botsikot käyttääkin lähdeaineistona myös muiden suomalaisten verkkojulkaisujen otsikoita, jotka kerätään verkkosivujen RSS-syötteistä.
Botsikot eivät käytä lähdeaineistonaan kaikkia löydettyjä uutisia. Jokaisen löydetyn uutisen sosiaalisen median jakomäärät tarkistetaan tasaisin väliajoin ja lähdeaineistoksi kelpuutetaan vain artikkelit jotka ovat saaneet enemmän kuin yhden jaon Facebookissa, Twitterissä ja LinkedInissä yhteensä. Tällä tavoitellaan sitä että lähdeaineistona käytetään otsikoita joiden aiheistä Botsikoiden lukijat ovat todennäköisesti kuulleet. Lisäksi lähdeaineistona käytetään vain viimeisen kolmenkymmenen päivän aikana luotuja otsikoita botsikoiden aiheiden tuoreuden varmistamiseksi.
Botsikoiden luontikoodin ja lähdeaineiston ohella palvelun ydin koostuu käyttöliittymästä, jossa botsikoita peukutetaan. Käyttöliittymä koostuu kolmesta osasta, joista yksi keskittyy kaikkien aikojen parhaimpien botsikoiden esittelyyn ja toinen viimeisen 24 tunnin sisällä luotujen botsikoiden esittelyyn. Etusivu listaa kaikki alle viikon vanhat botsikot, joita ei @Botsikot ei ole vielä tweetannut. Etusivu on siis lista botsikoista jotka @Botsikot tweettaa seuraavaksi.
Idea Botsikoihin lähti siis muiden kirjoittamasta ja julkisesti jakamasta koodista, joka pystyi sellaisenaan hyödyntämään Ylellä jo olemassaolevaa suomenkielistä lähdeaineistoa. Botsikoiden ensimmäisen version lähdeaineistona toimi tietokannasta poimitun 10 000 sosiaalisessa mediassa jaetuimman uutisotikon lista, jota käyttäen manuaalisesti luotiin sata ensimmäistä botsikkoa. Ideat tweettibotista sekä peukutuskäyttöliittymästä syntyivät naureskellessamme näille ensimmäisille Botsikoille. Nämä ensimmäiset botsikot ovat jopa hauskempia kuin nykyisessä käyttöliittymässä näkyvät, koska lähdeaineisto on kerätty pidemmältä ajanjaksolta ja täten botsikoihin yhdistellyt asiat liittyvät harvemmin toisiinsa. Markovin ketjujen huumoriarvo kiteytyy loistavasti näihin kahteen esimerkkiin: "ISON-komeetta hipoi aurinkoa - vain twerkkaus puuttui" ja "Maa järisi kuusamossa - kyydissä kolme nuorta."
Käyttöliittymä ja Twitter-botti luotiin kolmen päivän aikana muun työn ohessa, jonka jälkeen linkki käyttöliittymään laitettiin jakoon Twitterissä. Botsikoihin tutustui ensimmäisen päivän aikana noin 2500 ihmistä ja botille kertyi reilut sata seuraajaa. Tällä hetkellä suurin osa botin seuraajista on teknologian edelläkävijöitä ja toimittajia, mutta voisikohan Botsikot kiinnostaa myös suurempaa yleisiöä? Ainakin Mikko Hyppönen ja Suomen UNICEF ry ovat kiinnostuneita.
Nyt kun Botsikoiden perustoiminnallisuudet ovat valmiit ja alkuperäinen visio on toteutettu on aikaa miettiä miten Botsikoita voisi kehittää tai hyödyntää johonkin muuhun tarkoitukseen. Botsikoiden seuraava kehityssuunta on vielä avoin, mutta ainakin sessiopohjainen käyttäjätunnistus tullaan vaihtamaan Ylen kaikki palvelut kattavaan käyttäjätunnusjärjestelmään. Myös Botsikon luontiin käytettävää koodia voisi parantaa monin tavoin. Ideointia on myös tehty uutistekstien sekä ingressien koneelliseksi luomiseksi, uutiskuvien automaattiseksi lisäämiseksi Ylen arkistoista tai joukkoistamalla. Onko sinulla ideoita miten Botsikoita voisi kehittää?
Mikäli sinulla on ainutlaatuista tekstiä jonka pohjalta haluat generoida uusia "Botsikoita" on Botsikoiden koodi on vapaasti käytettävissäsi ja saatavilla GitHubissa. Koodi sisältä tweettibotin, peukutuskäyttöliittymän ja laudeiden luontikoodin. Lähdeaineiston keräys ei ole kuulu tähän projektiin, mutta lähdeaineistona pystyy periaatteessa käyttämään mitä tahansa tekstiä raamatusta liikennetiedotteisiin.