Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostustaVincitOy
Modernin ohjelmistoprojektin odotetaan olevan yksikkö- ja integraatiotestattu, koodikattavuuden kartoitettu, muutosten katselmoitu, ja koodin siirtyvän automaattisesti versiohallinnasta ajoon beta- ja tuotantoklustereille. Milloin? No versiohallintaan puskettaessa tietysti. Versiohallintalähtöistä, automoitua lähdekoodin ja tuotteenhallintaa GitHubista Traviksen syövereihin ja ajoon Amazonin Elastic Beanstalkiin. Tule kuulemaan hiljaista tietoa tämän vuosituhannen ohjelmistokehityksen perustyökaluista.
Aleksi Häkli from Vincit Oy gave a short reflective talk on SaaS.
SaaSiin pa(i)nostusta or Forcing the SaaS
Modernin ohjelmistoprojektin odotetaan olevan yksikkö- ja integraatiotestattu, koodikattavuuden kartoitettu, muutosten katselmoitu, ja koodin siirtyvän automaattisesti versiohallinnasta ajoon beta- ja tuotantoklustereille. Milloin? No versiohallintaan puskettaessa tietysti. Versiohallintalähtöistä, automoitua lähdekoodin ja tuotteenhallintaa GitHubista Traviksen syövereihin ja ajoon Amazonin Elastic Beanstalkiin. Tule kuulemaan hiljaista tietoa tämän vuosituhannen ohjelmistokehityksen perustyökaluista.
Vincit Teatime 2015.2 - Otto Kekäläinen: Don't be a gitVincitOy
Otto Kekäläinen from Seravo Oy gave a talk on how to use git correctly.
Don't be a git or The essentials you should know about git to use it correctly
Git on Linus Torvaldsin kehittämä versionhallintatyökalu, jonka ominaisuudet riittävät maailman laajimman ohjelmistoprojektin tarpeisiin. Git itsessään on hyvä lähtökohta jatkuvan integraation, laadunvalvonnan ja tehokkaan monen kehittäjän ympäristön pohjatyökaluksi. Tehokas käyttö ja yhteistyö vaatii kumminkin työkalun hallinnan. Ovatko branching, merging, rebasing ja bisecting varmasti tuttuja käsitteitä? Kuule kokeneelta kehittäjältä parhaat vinkit ja ota git haltuun.
This talk will dive into the topic of how changes take place in the organization where teams are self-organizing and autonomous. There is no management. The talk will share some insights and practical examples that we have learned at Vincit where there are over 180 employees and two managers.
Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostustaVincitOy
Modernin ohjelmistoprojektin odotetaan olevan yksikkö- ja integraatiotestattu, koodikattavuuden kartoitettu, muutosten katselmoitu, ja koodin siirtyvän automaattisesti versiohallinnasta ajoon beta- ja tuotantoklustereille. Milloin? No versiohallintaan puskettaessa tietysti. Versiohallintalähtöistä, automoitua lähdekoodin ja tuotteenhallintaa GitHubista Traviksen syövereihin ja ajoon Amazonin Elastic Beanstalkiin. Tule kuulemaan hiljaista tietoa tämän vuosituhannen ohjelmistokehityksen perustyökaluista.
Aleksi Häkli from Vincit Oy gave a short reflective talk on SaaS.
SaaSiin pa(i)nostusta or Forcing the SaaS
Modernin ohjelmistoprojektin odotetaan olevan yksikkö- ja integraatiotestattu, koodikattavuuden kartoitettu, muutosten katselmoitu, ja koodin siirtyvän automaattisesti versiohallinnasta ajoon beta- ja tuotantoklustereille. Milloin? No versiohallintaan puskettaessa tietysti. Versiohallintalähtöistä, automoitua lähdekoodin ja tuotteenhallintaa GitHubista Traviksen syövereihin ja ajoon Amazonin Elastic Beanstalkiin. Tule kuulemaan hiljaista tietoa tämän vuosituhannen ohjelmistokehityksen perustyökaluista.
Vincit Teatime 2015.2 - Otto Kekäläinen: Don't be a gitVincitOy
Otto Kekäläinen from Seravo Oy gave a talk on how to use git correctly.
Don't be a git or The essentials you should know about git to use it correctly
Git on Linus Torvaldsin kehittämä versionhallintatyökalu, jonka ominaisuudet riittävät maailman laajimman ohjelmistoprojektin tarpeisiin. Git itsessään on hyvä lähtökohta jatkuvan integraation, laadunvalvonnan ja tehokkaan monen kehittäjän ympäristön pohjatyökaluksi. Tehokas käyttö ja yhteistyö vaatii kumminkin työkalun hallinnan. Ovatko branching, merging, rebasing ja bisecting varmasti tuttuja käsitteitä? Kuule kokeneelta kehittäjältä parhaat vinkit ja ota git haltuun.
This talk will dive into the topic of how changes take place in the organization where teams are self-organizing and autonomous. There is no management. The talk will share some insights and practical examples that we have learned at Vincit where there are over 180 employees and two managers.
Vincit Teatime 2015 - Case Käyttöauto: Google GlassVincitOy
Mietitkö koskaan millaista olisi kehittää tuotetta tulevaisuuden alustalle Proof-of-Concept hengessä? Onko puettava teknologia lähellä sydäntäsi? Kerromme millaista on työskennellä uuden, kehitysasteella olevan teknologian parissa ja millaisen ympäristön Google Glass tarjoaa haasteineen ja mahdollisuuksineen. Pääset kurkkaamaan pellin alle Suomen ensimmäiseen autokaupoille toteutettuun Google Glass -sovellukseen.
Vincit Teatime 2015 - Heikki Salo: Case ZenRobotics: JavaScriptin äärirajoillaVincitOy
Modernit selainympäristöt sisältävät optimoituja JavaScipt-moottoreita, mutta ovatko nekään tarpeeksi vahvoja pyörittämään interaktiivista 3D-robottivisualisaatioita? Saavatko reaaliaikainen kuvankäsittely ja laskenta selaimen kuin selaimen polvilleen, vai ovatko uudet JavaScript-rajapinnat tuoneet jo ratkaisuja näihin ongelmiin? Ja jos teknologia onnistuisikin jo vastaamaan näihin haasteisiin, kuinka välttää perinteisemmät ongelmat isoja JavaScript-ohjelmia rakentessa?
Vincit Teatime 2015 - Niko Kurtti: Case Shopify: SaaS:n testaaminen, mihin un...VincitOy
Lähes jokaista nykyaikaista ohjelmistoa testataan ennen kuin muutokset viedään käyttäjän saataville. Ohjelmiston käyttäjälle tarjoavaa alustaa nykypäivän DevOps-Cloud-InfraAsCode -hype maailmassakaan ei kuitenkaan usein testata samalla innolla. Vastaukset oleellisiin kysymyksiin kuten "katkeavatko käyttäjän yhteydet" tai "onko split brain mahdollinen" jäävät usein pintapuoliseen manuaaliseen koittamiseen. Infrakoodia voidaan kuitenkin testata ja kokonaisiin järjestelmiin kohdentaa järjestelmätestausta. Aivan kuten ohjelmistokehityksessäkin, oma paikkansa on myös tutkivalla testauksella. Tuotannossa, tottakai.
Oletko miettinyt milloin NoSQL-tietokannan valinta on perusteltua? Niin olen minäkin.Alunperin Facebookin tarpeisiin kehitetty Cassandra-tietokanta on kerännyt paljon kehuja mutkattoman skaalautumisen ansiosta. Menestyksen taustalla on joukko poikkeuksellisen innovatiivisia teknisiä ratkaisuja, kuten Gossip-protokolla ja operaatiokohtaiset konsistenssitasot. Esimerkiksi Cassandran tietomallin tai rajapintojen asettamista suunnittelurajoitteista on vähemmin tietoa saatavilla.Yhdistävästä nimityksestä huolimatta erilaiset NoSQL-ratkaisut eroavat kuin yö ja päivä. Tavanomaisesta relaatiomallista luopumista kannattaa harkita vasta kun tuntee riittävän hyvin valitun teknologian tekemät kompromissit.Kerron Vincitin kokemuksista Cassandran onnistuneesta soveltamisesta reaalimaailman ohjelmistoprojektissa. Miten valinta vaikutti projektiin ja mitä jälkikäteen ajatellen olisi voinut tehdä toisin?
Kannattaako graafikko pitää leivässä? - Vincit Teatime 2014VincitOy
Pari vuotta sitten Vincitiin palkattiin ensimmäinen graafikko koodarilauman keskelle, ja siitä toiminta on laajentunut kokonaiseksi tiimiksi käyttöliittymäsuunnittelijoita ja graafikoita. Ilman kasvukipuja ja orastavia vatsahaavoja ei kuitenkaan olla selvitty.Kerromme miten Vincitissä graafikoiden ja koodareiden yhteistyö on kehittynyt. Monenlaisia työtapoja on kokeiltu – vaihtelevalla menestyksellä. Lisäksi annamme ideoita ohjelmistotaloille jotka harkitsevat omien graafikoiden palkkaamista.
Node.js – mikä ja miksi - Vincit Teatime 2014VincitOy
Reaaliaikaiset verkkopalvelut ovat luoneet uusia haasteita web-sovelluksille. Node.js ratkaisee niistä monia. Vauhdilla kasvavan yhteisönsä ansiosta se sopii lisäksi mainiosti myös askelta perinteisempiin tehtäviin, esimerkiksi REST-rajapintapalvelimeksi. Katsaus Node.js:ään ja sen kuumimpiin kirjastoihin.
Kuvittele, että olet tilanteessa, jossa sinulla on mahtava tuote, mutta sinulla ei ole tarjota oikein mitään mobiilikäyttäjille. Pysähdyt hetkeksi miettimään vaihtoehtojasi:“Pitäisikö tehdä mobiiliwebbisivu? Vai kannattaisiko sittenkin toteuttaa natiivisovellus? Niitä pitäisi tehdä ainakin kolme, jotta saisin tuen kaikille suosituimmille alustoile. Entä hybridisovellukset tai jokin cross platform -työkalu? Eikös se säästäisi kustannuksissa, koska tarvitsisi tehdä vain yksi sovellus kaikille alustoille?”
Vincitillä olemme toteuttaneet mobiiliprojekteja lähes kaikille alustoille. Kerron mitä olemme oppineet ja millaisia ongelmia kohdanneet, jotta sinun ei tarvitse olla sekaisin mobiilista.
Docker on kehityksen alla oleva avoimen lähdekoodin projekti, jonka tavoitteena on tarjota yhtenäinen ympäristö palvelinsovellusten suorittamiseen lähes missä tahansa. Perusajatuksena on, että Dockerilla paketoitu sovellus käyttäytyy sekä kehittäjien työkoneilla että erilaisilla palvelin- ja pilvialustoilla identtisesti. Docker-sovellukset tuovat suoritusympäristönsä mukanaan, mutta ovat huomattavasti kevyempiä luoda ja käynnistää kuin perinteiset virtuaalikoneet.
Vincit Teatime 2015 - Case Käyttöauto: Google GlassVincitOy
Mietitkö koskaan millaista olisi kehittää tuotetta tulevaisuuden alustalle Proof-of-Concept hengessä? Onko puettava teknologia lähellä sydäntäsi? Kerromme millaista on työskennellä uuden, kehitysasteella olevan teknologian parissa ja millaisen ympäristön Google Glass tarjoaa haasteineen ja mahdollisuuksineen. Pääset kurkkaamaan pellin alle Suomen ensimmäiseen autokaupoille toteutettuun Google Glass -sovellukseen.
Vincit Teatime 2015 - Heikki Salo: Case ZenRobotics: JavaScriptin äärirajoillaVincitOy
Modernit selainympäristöt sisältävät optimoituja JavaScipt-moottoreita, mutta ovatko nekään tarpeeksi vahvoja pyörittämään interaktiivista 3D-robottivisualisaatioita? Saavatko reaaliaikainen kuvankäsittely ja laskenta selaimen kuin selaimen polvilleen, vai ovatko uudet JavaScript-rajapinnat tuoneet jo ratkaisuja näihin ongelmiin? Ja jos teknologia onnistuisikin jo vastaamaan näihin haasteisiin, kuinka välttää perinteisemmät ongelmat isoja JavaScript-ohjelmia rakentessa?
Vincit Teatime 2015 - Niko Kurtti: Case Shopify: SaaS:n testaaminen, mihin un...VincitOy
Lähes jokaista nykyaikaista ohjelmistoa testataan ennen kuin muutokset viedään käyttäjän saataville. Ohjelmiston käyttäjälle tarjoavaa alustaa nykypäivän DevOps-Cloud-InfraAsCode -hype maailmassakaan ei kuitenkaan usein testata samalla innolla. Vastaukset oleellisiin kysymyksiin kuten "katkeavatko käyttäjän yhteydet" tai "onko split brain mahdollinen" jäävät usein pintapuoliseen manuaaliseen koittamiseen. Infrakoodia voidaan kuitenkin testata ja kokonaisiin järjestelmiin kohdentaa järjestelmätestausta. Aivan kuten ohjelmistokehityksessäkin, oma paikkansa on myös tutkivalla testauksella. Tuotannossa, tottakai.
Oletko miettinyt milloin NoSQL-tietokannan valinta on perusteltua? Niin olen minäkin.Alunperin Facebookin tarpeisiin kehitetty Cassandra-tietokanta on kerännyt paljon kehuja mutkattoman skaalautumisen ansiosta. Menestyksen taustalla on joukko poikkeuksellisen innovatiivisia teknisiä ratkaisuja, kuten Gossip-protokolla ja operaatiokohtaiset konsistenssitasot. Esimerkiksi Cassandran tietomallin tai rajapintojen asettamista suunnittelurajoitteista on vähemmin tietoa saatavilla.Yhdistävästä nimityksestä huolimatta erilaiset NoSQL-ratkaisut eroavat kuin yö ja päivä. Tavanomaisesta relaatiomallista luopumista kannattaa harkita vasta kun tuntee riittävän hyvin valitun teknologian tekemät kompromissit.Kerron Vincitin kokemuksista Cassandran onnistuneesta soveltamisesta reaalimaailman ohjelmistoprojektissa. Miten valinta vaikutti projektiin ja mitä jälkikäteen ajatellen olisi voinut tehdä toisin?
Kannattaako graafikko pitää leivässä? - Vincit Teatime 2014VincitOy
Pari vuotta sitten Vincitiin palkattiin ensimmäinen graafikko koodarilauman keskelle, ja siitä toiminta on laajentunut kokonaiseksi tiimiksi käyttöliittymäsuunnittelijoita ja graafikoita. Ilman kasvukipuja ja orastavia vatsahaavoja ei kuitenkaan olla selvitty.Kerromme miten Vincitissä graafikoiden ja koodareiden yhteistyö on kehittynyt. Monenlaisia työtapoja on kokeiltu – vaihtelevalla menestyksellä. Lisäksi annamme ideoita ohjelmistotaloille jotka harkitsevat omien graafikoiden palkkaamista.
Node.js – mikä ja miksi - Vincit Teatime 2014VincitOy
Reaaliaikaiset verkkopalvelut ovat luoneet uusia haasteita web-sovelluksille. Node.js ratkaisee niistä monia. Vauhdilla kasvavan yhteisönsä ansiosta se sopii lisäksi mainiosti myös askelta perinteisempiin tehtäviin, esimerkiksi REST-rajapintapalvelimeksi. Katsaus Node.js:ään ja sen kuumimpiin kirjastoihin.
Kuvittele, että olet tilanteessa, jossa sinulla on mahtava tuote, mutta sinulla ei ole tarjota oikein mitään mobiilikäyttäjille. Pysähdyt hetkeksi miettimään vaihtoehtojasi:“Pitäisikö tehdä mobiiliwebbisivu? Vai kannattaisiko sittenkin toteuttaa natiivisovellus? Niitä pitäisi tehdä ainakin kolme, jotta saisin tuen kaikille suosituimmille alustoile. Entä hybridisovellukset tai jokin cross platform -työkalu? Eikös se säästäisi kustannuksissa, koska tarvitsisi tehdä vain yksi sovellus kaikille alustoille?”
Vincitillä olemme toteuttaneet mobiiliprojekteja lähes kaikille alustoille. Kerron mitä olemme oppineet ja millaisia ongelmia kohdanneet, jotta sinun ei tarvitse olla sekaisin mobiilista.
Docker on kehityksen alla oleva avoimen lähdekoodin projekti, jonka tavoitteena on tarjota yhtenäinen ympäristö palvelinsovellusten suorittamiseen lähes missä tahansa. Perusajatuksena on, että Dockerilla paketoitu sovellus käyttäytyy sekä kehittäjien työkoneilla että erilaisilla palvelin- ja pilvialustoilla identtisesti. Docker-sovellukset tuovat suoritusympäristönsä mukanaan, mutta ovat huomattavasti kevyempiä luoda ja käynnistää kuin perinteiset virtuaalikoneet.
13. 5. KOODIN LAATU
Onko koodi helppolukuista, hyvin testattua ja dokumentoitua, ilman teknistä velkaa?
14. 6. HELPPO JULKAISU
Onko uuden ohjelmaversion julkaisu helppoa nappia painamalla?
15. 7. TESTAUS
Onko projektin testaaminen helppoa? Onko testit automatisoitu? Onko manuaalitestaus tehty huolella?
16. 8. SELKEÄT TAVOITTEET
Tiedätkö mitä olet toteuttamassa? Onko tavoitteet selvät muutamaksi seuraavaksi viikoksi teknisestä näkökulmasta? Onko korkean tason tavoitteet tiedossa seuraaville kuukausille?
17. 9. TUKIPROSESSIT
Toimiiko IT-infra ja tuki?
Onko asiakkaan testiversioiden luonti helppoa?
Onko WLAN:n kanssa ongelmia?
19. Uskon että projektini onnistuu tavoitteissaan ja että asiakas on tyytyväinen tuloksiin.
Uskon myös, ettei budjetti tai aika lopu ennen tavoitteiden saavuttamista.
10. LUOTTAMUS