Koodia pinnan alla
Markus Hjort, Yrjö Kari-Koskinen
Devaajille suunnattu podcast pinnan alla tapahtuvasta ohjelmistoteknologian magiasta. Puikoissa Markus Hjort ja Yrjö Kari-Koskinen – rakkaudesta lajiin.
Devaajille suunnattu podcast pinnan alla tapahtuvasta ohjelmistoteknologian magiasta. Puikoissa Markus Hjort ja Yrjö Kari-Koskinen – rakkaudesta lajiin.
41. Ilmailudata
Episodit
Siviilipuolella ilmailuliikenteen tieto siitä missä milloinkin saa lentää perustuu edelleen vahvasti sähkemuotoiseen tiedottamiseen, joten luotetttavan digitaalisen kartan rakentaminen tämän tiedon varassa ei ole yksinkertaista. Tässä jaksossa asiantuntijavieraamme Juha Lindstedt Flyk-yrityksestä kertoo siitä miten hän on jo yli vuosikymmenen ollut rakentamassa ohjelmistoratkaisuja luotettavampaan ilmailuun. Linkkejä Flyk Toisiotutkavastain (Transponderi) NOTAM Fintraffic Liikenne- ja viestintävirasto (Traficom) FinnHEMS Open Flightmaps OpenAIP European AIS Database (Eurocontrol EAD) Federal Aviation Administration (Yhdysvallat FAA) AIS-palvelu (ais.fi) Automatic Dependent Surveillance–Broadcast (ADS-B) Flightradar24 GeoJSON Spatial analysis (Geospatial-haku) Unmanned aircraft system traffic management (UAS-ilmatila) MongoDB Vieras Juha Lindstedt Juontajat Markus Hjort Yrjö Kari-Koskinen Äänityöt Tuomas Ahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ LinkedIn: https://www.linkedin.com/company/koodia-pinnan-alla/ Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Podcast on epäkaupallinen. Äänitöiden osalta yhteistyökumppaninamme on Vuono Group. Katso myös Vuonon avoimet työpaikat.
Ruoan verkkokaupan automaattiset keräilykeskukset ovat viime vuosina rantautuneet Suomeen ja sitä kautta verkkokaupasta tilatut ostokset saattavatkin olla jo monesti robottien keräilemiä. Tässä jaksossa tutustumme siihen miten tällaisten keräilykeskusten ohjelmistoa rakennetaan käytännössä. Asiantuntijavieraana meillä on Kim Rejstöm S-ryhmästä. Linkkejä https://hok-elanto.fi/news/hok-elanto-avaa-yhden-euroopan-suurimmista-ruoan-verkkokaupan-kerailykeskuksista-vantaalle/ Warehouse Management System (WMS) Distribution Center (DC) Micro Fulfillment Center (MFC) Autostore Vieras Kim Rejström Juontajat Markus Hjort Yrjö Kari-Koskinen Äänityöt Tuomas Ahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ LinkedIn: https://www.linkedin.com/company/koodia-pinnan-alla/ Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Podcast on epäkaupallinen. Äänitöiden osalta yhteistyökumppaninamme on Vuono Group. Katso myös Vuonon avoimet työpaikat.
Sähköposti on yksi internetin vanhimmista palveluista ja se on myös edelleen yksi tärkeimmistä internet-teknologioista. Tässä jaksossa sukellamme sähköpostin syövereihin ja keskustelemme siitä mistä kaikista komponenteista moderni sähköpostipalvelu oikeastaan koostuu. Asiantuntijavieraana on Aki Tuomi Dovecot-yrityksestä, jossa kehitetään suosittua palvelinpään sähköpostiohjelmistoa. Linkkejä Dovecot Postfix MX MTA MUA POP3 IMAP JMAP MSA MAPI MIME Sieve RFC Open-core model Valgrind Open-Xchange Coverity Clang Pytest Ansible Buildbot Vieras Aki Tuomi Juontajat Markus Hjort Yrjö Kari-Koskinen Äänityöt Tuomas Ahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ LinkedIn: https://www.linkedin.com/company/koodia-pinnan-alla/ Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Podcast on epäkaupallinen. Äänitöiden osalta yhteistyökumppaninamme on Vuono Group. Katso myös Vuonon avoimet työpaikat.
Miten monta eri monikkomuotoa kattaa kaikki maailman kielet? Mitä pitää tietää, kun haluaa sopeuttaa oman ohjelmistoprojektinsa tukemaan sen käyttöä eri kielillä? Entä mitä kaikkea työtä lokalisaatiokirjastojen ja -tietokantojen taustalla tapahtuu? Saimme vieraaksi Eemeli Aron kertomaan mistä rakennuspalikoista lokalisointijärjestelmät koostuvat. Eemeli rakentaa työkseen lokalisointikirjastoja ja -formaatteja Mozillalla. Linkkejä ICU Messageformat Kansainvälistäminen ja lokalisointi – Internationalization (i18n) and localization (l10n) ICU-kirjastot Unicode Common Locale Data Repository (CLDR) Kotoistus Fluent MessageFormat2 Pseudolokalisaatio Neural machine translation (NMT) Vieras Eemeli Aro Juontajat Markus Hjort Yrjö Kari-Koskinen Äänityöt Tuomas Ahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ LinkedIn: https://www.linkedin.com/company/koodia-pinnan-alla/ Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Podcast on epäkaupallinen. Äänitöiden osalta yhteistyökumppaninamme on Vuono Group. Katso myös Vuonon avoimet työpaikat.
Aktiivisessa kehityksessä olevan tuotantosovelluksen taustajärjestelmän uudelleenkirjoitus ei ole mikään pikkujuttu. Tässä jaksossa käydään läpi esimerkkitarina siitä miksi ja miten tällainen uudelleenkirjoitus onnistui Digitaalisen Asuntokauppa DIASin kontekstissa. Kyseessä on erikoisjakso, sillä asiantuntijavieraiden penkeillä istuukin tällä kertaa podin vetäjät Markus Hjort ja Yrjö Kari-Koskinen. Jakson juontajana on Webbidevaus-podastista tuttu Antti Mattila. Linkkejä Digitaalinen Asuntokauppa DIAS PostgreSQL Clojure Lohkoketju Corda Bitcoin Penetraatiotestaus Digitaalinen allekirjoitus Vieras Markus Hjort Yrjö Kari-Koskinen Juontajat Antti Mattila: Webbidevaus.fi ja Rarely Needed Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ LinkedIn: https://www.linkedin.com/company/koodia-pinnan-alla/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Podcast on epäkaupallinen. Äänitöiden osalta yhteistyökumppaninamme on Vuono Group. Katso myös Vuonon avoimet työpaikat.
Kauan odotettuun GraphQL-jaksoon saimme vieraaksi Lauri Piispasen Starcartilta. Heillä GraphQL on ollut käytössä alusta asti. Lauri valottaa hyväksi koettuja mekanismeja GraphQL-taustajärjestelmien rakentamiseksi kuten federointi, aggregointi ja näihin soveltuvat teknologiapinot. Linkkejä Starcart GraphQL GraphQL-Federointi Next.js Apollo Gateway Apollo Server Domain-driven design tRPC gRPC Grafbase Githubin GraphAQL-rajapinta Hasura PostGraphile Generate code from your GraphQL schema How to monitor GraphQL apps with Apollo server Tutorial: Designing a GraphQL API Vieras Lauri Piispanen Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ LinkedIn: https://www.linkedin.com/company/koodia-pinnan-alla/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Podcast on epäkaupallinen. Äänitöiden osalta yhteistyökumppaninamme on Vuono Group. Katso myös Vuonon avoimet työpaikat.
Minkälaista on koodata ja debugata ohjelmistoa, joka asennetaan kovaa vauhtia avaruudessa liikkuvaan kuutioon? Tästä ja muusta satelliitin ohjelmointiin liittyvistä erikoisuuksista kanssamme keskustelemassa on asiantuntijavieras Daniel Landau Kuva Spacelta. Linkkejä Kuva Space FPGA Laitteistokuvauskielet VHDL ja Verilog Hyperspectral imaging CAN-väylä Camera Link Protocol Cubesat Space Protocol S Band Matala Maan kiertorata (LEO) VLEO Tinyscript Vieras Daniel Landau: @daniel Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ LinkedIn: https://www.linkedin.com/company/koodia-pinnan-alla/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Podcast on epäkaupallinen. Äänitöiden osalta yhteistyökumppaninamme on Vuono Group. Katso myös Vuonon avoimet työpaikat.
Miten PostgreSQL-tietokanta mukautetaan serverless-ympäristöjen käyttöön ja miten laskennan ja taltion erottaminen auttaa siinä? Heikki Linnakangas on vieraanamme kertomassa miten Neon on rakentanut relaatiotietokantaratkaisun, joka mahdollistaa muun muassa helppokäyttöiset datan haaraumat ja aikamatkustuksen. Linkkejä Neon Neon-tallennusjärjestelmä Githubissa PostgreSQL Sivutus Transaction log Ceph storage system Amazon Aurora Amazon S3 Vieras Heikki Linnakangas Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Podcast on epäkaupallinen. Äänitöiden osalta yhteistyökumppanimme on Vuono Group. Katso myös Vuonon avoimet työpaikat.
Julkiset pilvipalvelut ovat muodostuneet vakiotavaksi rakentaa tuotteelle infrastruktuuri. Tämän ei tarvitse kuitenkaan olla se yksi ja ainoa tapa toteuttaa asioita kustannustehokkaasti. Tässä jaksossa tutustutaan Smartlyn infrastruktuuriin, jossa tuhansien palvelimien rauta on vuokrattua, mutta kaikki muu hoidetaan itse käyttöjärjestelmätasolta lähtien. Asiantuntijavieraana meillä on Ville Lautanala kertomassa kuinka tämä kaikki toimii käytännön tasolla. Linkkejä Smartly Kubernetes Ansible Elastic Stack Kibana Prometheus Grafana VictoriaMetrics SLOth PagerDuty Hetzner Virtuaalilähiverkko (VLAN) David Heinemeier Hansson, 37Signals: We have left the cloud Vieras Ville Lautanala: @lautis Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Yhteistyökumppani Vuono Group Vuonon avoimet työpaikat
Lähes kaikissa ohjelmistoprojekteissa tehdään integraatioita eri järjestelmien väleillä esimerkiksi REST APIen, GraphQL:n tai webhookien avulla. Saimme vieraaksemme Oskari Virtaojan Swarmialta keskustelemaan siitä, millä tekniikoilla ja työkaluilla integraatiot voidaan rakentaa luotettavasti. Linkkejä Swarmia Webhookit GraphQL Google Pub/Sub Rate limiting Traffic shaping Google Cloud Functions RabbitMQ Sidekiq Idempotentti Reentrant Kirjastot sisään tulevan datan parsimiseen ja validointiin io-ts zod Swagger Domain-driven design OAuth Vieras Oskari Virtaoja Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Yhteistyökumppani Vuono Group Vuonon avoimet työpaikat
Eristetyissä tietoverkoissa on kriittistä, ettei mikään tieto valu pois verkosta. Moderneissa verkoissa laitteita on joka lähtöön eikä ole yksinkertaista varmistaa, ettei yksikään bitti karkaa maailmalle. Saimme vieraaksemme Ossi Herralan SensorFulta kertomaan, miten Rustilla toteutetaan koodia, jolla yritetään karata verkosta ja siten testataan verkon eristystä. Linkkejä SensorFu Fuzzing Libpcap -kirjasto iptables ethernet Address Resolution Protocol (ARP) ICMP Software-defined Networking (SDN) Active Directory Purdue-malli Blogi: VPN-reititin, josta pääsi paketti lipsahtamaan Internettiin kesken käynnistysprosessin Blogi: Eristetyt verkot pilvipalveluissa Vieras Ossi Herrala: @oherrala Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Yhteistyökumppani Vuono Group Vuonon avoimet työpaikat
Mikä merkitys verkkolatenssilla on sovellusten rakentamisessa ja miten reunalaskenta voi ratkaista pilvipalvelujen latenssin aiheuttamia haasteita? Saimme vieraaksemme reunatietokanta Turson CTO:n Pekka Enbergin keskustelemaan mm. reunalaskennasta, reunatietokannoista sekä lähi- ja kaukoreunasta. Pekka vieraili aiemmin podissamme keskustelemassa systeemohjelmoinnista jaksossa 3. Linkkejä SQLite Turso Reunalaskenta eli edge computing Cloudflare Serverless computing Latenssi Vercel Netlify Cloudflare Workers Scale to Zero Cloudflare D1 Amazon Lambda Amazon S3 Serverless Postgres Neon Snapshot isolated read ACID: atomicity, consistency, isolation, durability Fly.io WebAssembly SQLite in AWS Lambda Vieras Pekka Enberg: @penberg Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Yhteistyökumppani Vuono Group Vuonon avoimet työpaikat
Kauden viimeisessä jaksossa käsittelyssä on kaksi asiaa yhden hinnalla. Jakson aiheena on käännösautomaatio, jota käsittelemme avoimen lähdekoodin projektin esimerkin kautta. Vieraana meillä on Jussi Pakkanen Rakettitieteeltä, joka on suositun Meson-buildtyökalun pääkehittäjä. Linkit Meson The Meson Build System - 4+ years of work to become an overnight success Devausblogi Kääntäjä Turing-täydellisyys GCC-kääntäjä CMake Autotools D-Bus Python Python Tybe Stubs Fortran Gstreamer Scipy CppCon-konferenssi Cygwin Msys HP-UX-käyttöjärjestelmä AIX-käyttöjärjestelmä Jussin kirja Rosebud Sarjakuvakauppa Kirjastotietue Vieras Jussi Pakkanen: @jpakkane Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Yhteistyökumppani: Vuono Group Anna palautetta podcastista
Mihin tarvitaan keskuskoneita eli OG ATK:ta ja COBOLia 2020-luvulla? Entä lyökö COBOL-ohjelmointi todella leiville? Saimme vieraaksemme Samlinkilta Juha Korhosen, joka kertoo mitä kaikkea ohjelmointi keskuskoneympäristössä käytännössä tarkoittaa ja mitkä keskuskoneen vahvuudet ovat. Linkit Y2K – Vuosi 2000 muutokset COBOL-ohjelmointikieli Keskuskone IBM z/OS Minitietokoneet IMS CICS UNIX System Services 3270 Pääte Eräajo Raka-Tuki Zowe WebSphere for z/OS EBCDIC-merkistö Rexx-ohjelmointikieli Joel Spolsky: Things You Should Never Do Open Mainframe Project: COBOL-ohjelmointikurssi Rekisteröinti IBM:n COBOL-ympäristöön Historiaa: Kun suurkone tuli Suomeen Vieras Juha Korhonen Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Yhteistyökumppani: Vuono Group Anna palautetta podcastista
Tekoälypohjainen puheentunnistus on ollut arkipäivää jo pidemmän aikaa yksinkertaisissa puheohjaussovelluksissa. Tässä jaksossa menemme kuitenkin syvemmälle teknologiaan ja käymme läpi miten tekoäly pystyy automaattisesti moderoimaan videopelien keskusteluja. Asiantuntijavieraana jaksossa meillä on Speechlyn teknologiajohtaja Hannes Heikinheimo. Linkit Puheentunnistus Prediktiivinen analyytiikka) Syväoppimenen (deep learning) Inferenssi Transformer PyTorch gRPC-protokolla ProtoBuf-formaatti Speehly The 5 AI Technologies You Need for Voice Chat Moderation in Games Whisper Siri NVIDIA A100 Vieras Hannes Heikinheimo: @hannes_hei Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Yhteistyökumppani: Vuono Group Anna palautetta podcastista
Jouni Roivas Tuxeralta pääsi vieraaksemme kertomaan mitä tarkoittaa luotettava tiedostojärjestelmä ja miten sellaisia kehitetään ja testataan. Tuxeralla on pitkä historia Linuxin tiedostojärjestelmäajurien kehityksessä. He kehittävät nykyisin useita luotettavia tiedostojärjestelmä mm. vaativiin sulautettuihin ympäristöihin. Linkit Tuxera NTFS – Microsoftin Windowsin tiedostojärjestelmä NTFS 3G – Linux-ajuri Fuse – Filesystem in Userspace FAT – File Allocation Table Tarkistussumma Datan korruptio Defragmentaatio eli eheyttäminen Write amplification Flash-muisti Accelerated aging C-ohjelmointikieli perf – profilointi QEMU Journalointi inode Merkle tree Practical File System Design with the Be File System What is xfstests? xfstests Vieras Jouni Roivas: @jouniroivas Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Yhteistyökumppani: Vuono Group Anna palautetta podcastista)
Virtuaalitodellisuusteknologia kehittyy tällä hetkellä kovaa vauhtia ja sovelluskohteita löytyy nykyään sekä kuluttaja että ammattipuolelta. Teknologiaan liittyy paljon erilaisia lyhenteitä kuten VR, AR ja XR. Tässä jaksossa tutustumme siihen mitä kaikkea virtuaalitodellisuus oikeastaan tarkoittaa ja miten tätä teknologitaa hyödyntäviä sovelluksia käytännössä kehitetään. Asiantuntijavieraana meillä on alan pioneeri Samuli Jääskeläinen Varjolta. Linkit Laajennettu todellisuus XR Virtuaalitodellisuus VR Lisätty todellisuus AR FIVR Suomen vr devaajien kerho / startup hubi FIVR:n Helsinki hub Unity XR devaamisen aloitus Unreal XR devaamisen aloitus Hotas: Hands On Throttle-And-Stick Varjo Vieras Samuli Jääskeläinen: @Zhamul Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Yhteistyökumppani: Vuono Group Anna palautetta podcastista)
Mitä tekemistä on Google Mapsilla ja lääketieteellisellä kuvantamisella? Miten mahdollistetaan isojen kuvamassojen tehokas käsittely ja selaaminen? Vieraanamme on Matti Äijänen Aiforialta kertomassa digipatologiasta eli tekoälyavusteisesta sairauksien diagnosoinnista digitaalisista kudosnäytteistä. Linkit Azure Blob Storage OpenSeadragon Map tiles & pyramid: How web maps work | Web Mapping Basic #1 From Biopsy to Diagnosis Neuroverkot Microsoft .NET MongoDB RabbitMQ Redis Protocol Buffers (Protobuf) Terraform Vieras Matti Äijänen: @AeijaeMatti Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Yhteistyökumppani: Vuono Group Anna palautetta podcastista
Signaaleja kuuntelemalla ja analysoimalla voi tutkia olemassaolevan järjestelmän toimintaa. Parhaimmillaan näistä signaaleista voi takaisinmallintaa miten joku ohjelma on toteutettu. Asiantuntijavieraana meillä asiasta kertomassa on tunnettu signaalihakkeri Oona Räisänen. Jaksossa käymme läpi muutamia mielenkiintoisia signaalimysteerejä, joita Oona on ollut tutkimassa. Linkkejä HDMI DVI DisplayPort Takaisinmallinnus Oonan blogi Disobey -tapahtuma Liquid DSP -kirjasto SoX -komentorivityökalu csdr -komentorivityökalu gqrx -softaradio Fourier -muunnos Signal Identification Guide Spectogram View RTL-SDR Quick Start Guide Pea Whistle Steganography Data Radio Channel (DARC) Vieras Oona Räisänen: @windyoona Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Yhteistyökumppani: Vuono Group Anna palautetta podcastista
Millä teknologioilla rakennetaan luotettava ajonaikainen suoritusympäristö pilveen? Entä miten siihen liittyvät käsitteet TEE, enclave ja attestaatio? Saimme Mikko Ylisen Inteliltä kertomaan confidential computing -teknologioista, joilla mahdollistetaan prosessien ajaminen niin, että data on salattuna keskusmuistissa. Linkkejä TEE – Trusted execution environment Enclave Varmentaminen – attestation TCB – Trusted computing base Confidential computing node on Azure Kubernetes Services Intel SGX in Azure Gramine RATS – Remote ATtestation ProcedureS Developers guide to Gramine Open-Source Lib OS for running unmodified Linux Apps with Intel SGX Frameworkeja eri ohjelmointikielille EGo – confidential compouting framework in Go Rust EDP Enarx - Confidential Computing with WebAssembly Confidential Compute for PyTorch Vieras Mikko Ylinen Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Yhteistyökumppani: Vuono Group Anna palautetta podcastista
Moni sovellus luottaa tiedon tallentamisessa perinteiseen relaatiotietokantaan vaikka se ei aina olisikaan optimaalisin vaihtoehto. Tässä jaksossa sukellamma vaihtoehtoisten tietokantojen maailmaan ja puhumme graafitietokannoista. Vieraana Mikko Harju Taisteelta jakamassa kokemuksia erilaisten graafitietokantojen käytöstä. Jaksossa käsittelemme tarkemmin näiden kantojen ominaisuuksia ja pohdimme minkälaisissa tilanteissa niiden käytöstä saa etua. Linkkejä: Using datascript and static EDN as a super-lightweight CMS Datalog in Javascript Apache Age Datomic Excision in Datomic Datascript XTDB Neo4J Cypher Neo4J Cloud Mundaneum Asami TerminusDB SPARQL Wikidata Datalog Learn Datalog Today fly.io Entity–attribute–value model Rich Hickey: Database as a Value Vieras Mikko Harju: @mikharj Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Äänityöt Tuomas Ahva: @tuomasahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Yhteistyökumppani: Vuono Group Anna palautetta podcastista
Moderni maailmamme on riippuvainen siitä, että ihmiset ja laitteet pystyvät kommunikoimaan keskenään internetin välityksellä. Pinnan alla tätä kaikkea tietoa välittävät erilaiset verkkolaitteet, joissa olevan softan pitää olla erityisen luotettavaa ja skaalautuvaa. Tässä jaksossa verkkolaiteohjelmistojen veteraani Juhamatti Kuusisaari on vieraanamme keskustelemassa siitä miten näitä softia koodataan. Linkkejä: Reititin Reaaliaikainen käyttöjärjestelmä Sovelluskohtainen integroitu piiri eli ASIC FPGA ohjelmoitava porttimatriisi Priority ceiling Lockdep Reaaliaikatuki Linux kerneliin Vieras Juhamatti Kuusisaari Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Mitä pitää tietää kvanttimekaniikasta ja -fysiikasta, jotta voi ohjelmoida kvanttitietokoneelle? Entä mitä ovat kubitit, superpositio ja kvanttipiirit? Ja koska saavutetaan kvanttiherruus? Saimme vieraaksemme IQM:ltä Olli Ahosen ja Hermanni Heimosen, jotka tekevät töitä ihan oikeiden kvanttitietokoneiden kanssa ja kertovat mistä kaikesta kvanttiohjelmoinnissa on oikeasti kysymys. Linkkejä: IQM Kvanttilaskennan peruskäsitteet Kvanttitietokone Superpositio Lomittuminen - kietoutuminen - entanglement Optimaalinen arbitraasi Kvanttietu - quantum advantage: kumpi on nopeampi supertietokone vai kvanttitietokone Kubitti Analogiset tietokoneet Kvanttipiirit ja -portit Koherenssi Fideliteetti Ohjelmistotyökalut Qiskit Cirq Kvanttisimulaattori, Lista simulaattoreista Pilvikvanttilaskenta Kvanttilaskennan opiskelu Matematiikka Vektorit Matriisit Kompleksiluvut Qiskitin verkko-oppikirja edX-verkkokurssi: Introduction to Quantum Computing for Everyone Coursera-verkkokurssi: Introduction to Quantum Information Kirjoja kvanttiohjelmoinnista kaikille Introduction to Classical and Quantum Computing Quantum Computing: An Applied Approach Quantum Computation and Quantum Information (Matemaattisempi kirja) Kirjoja kvanttiohjelmoinnista heille, jotka tuntevat tietojenkäsittelytieteen perusteita Programming Quantum Computers: Essential Algorithms and Code Samples Quantum Computing since Democritus Vieraat Hermanni Heimonen: @HermanniHei Olli Ahonen @olliahonen Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Jakson äänityöt meille teki Tuomas Ahva Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Matkan varrella mikropalveluarkkitehtuuri on mainittu monessa jaksossa. Tällä kertaa pureudumme tarkemmin siihen mistä siinä on kyse. Mitkä ovat mikropalveluarkkitehtuurin hyvät ja huonot puolet? Vieraana meillä on Vincitiltä Jari Laari, jolla on ensikäden kokemusta siitä, miten monoliittijärjestelmää on purettu pala kerrallaan kohti mikropalveluarkkitehtuuria. Linkkejä: Sam Newman: Building Microservices AWS-referenssiarkkitehtuuri Azure-referenssiarkkituuri Vieras Jari Laari: @JariLaari Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Mikä tekee tietokonepelien tekoälystä hyvän? Miten selllainen luodaan? Miten eri pelityyppien tekoälyn kehitys eroaa toisistaan? Näistä kanssamme keskustelemassa Antti Mannisto, joka on ollut luomassa mm. Alan Waken vihollisten tekoälyä Remedyllä. Mainitut pelit Pathway to Glory Alan Wake Turbo sliders Turbo sliders unlimited Linkkejä Redlynx Remedy Pathfinding Avoin pelimaailma (open world) AAA-pelit Ensimmäisen persoonan ammuntapeli (FPS, 3PS) Reaaliaikainen strategiapeli (RTS) Unity AI assets Ray Casting Kirjallisuutta Stuart Russell & Peter Norvig: Artificial Intelligence, a Modern Approach Steve Rabin: AI Game Programming Wisdom (osat 1-4): yksittäisiä artikkeleita erinäisistä pelitekoälyistä Mat Buckland: Programming Game AI by Example Vieras Antti Mannisto Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Tule mukaan kehittämään DIASia: https://dias.fi/jobs.html
SRE eli Site Reliability Engineering on alunperin Googlen lanseeraama malli sovelluspalvelujen kehittämiseen ja hallintaan. Tavoitteena on lähestyä IT-operointia ja palveluiden luotettavuuden parantamista sovelluskehitysmäisesti ja riskejä hallitsemalla. Halusimme selvittää mitä kaikkea tämä käytännössä tarkoittaa. Tässä jaksossa meillä on vieraana Jaakko Pallari Polar Squadista avaamassa mitä kaikkea SRE oikeastaan on. Linkkejä: Site Reliability Engineering SLO Incident Postmortem Chaos Engineering Chaos Toolkit Resilience4J Health Check Grafana Grafana Loki/ Prometheus Elasticsearch InfluxDB Honeycomb Sloth SRE Finland Vieras Jaakko Pallari: @lepovirta Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Tule mukaan kehittämään DIASia: https://dias.fi/jobs.html
Pelialan pioneeri Jani Penttinen Las Vegasista pääsi vieraaksemme kertomaan miten helppoa indiepeliohjelmointi konsoleille nykyisin on. Kynnys aloittaa 3D-pelien ohjelmointi on todella matalalla ja esimerkiksi Xboxille saa hyvin helposti developer kitin, jolla pääsee alkuun oman pelin kehittämisessä. Bloodhouse ja Housemarque Remedy Entertainment Westwood Studios AAA-pelit Demoskene Frameworkit ja SDK:t Unity Unity Asset Store Unreal Engine Visual Studio Steamworks Xbox Creators Program ID@Xbox C#-ohjelmointikieli DirectX OpenGL Mainitut pelit Guntech Guntech2 Among Us Fall Guys Auta Ukrainan sodan uhreja Punaisen ristin katastrofirahasto Auta Unicefin kautta Ukrainan lapsia Vieras Jani Penttinen: @jani_penttinen Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Tänä vuonna Kajaanissa otetaan käyttöön maailman nopeimpiin kuuluva supertietokone LUMI. Jussi Enkovaara CSC:ltä kertoo tässä jaksossa mitä kaikkea supertietokoneella voi tehdä, mikä tekee supertietokoneesta supertietokoneen ja mitä tekniikoita sen ohjelmoinnissa käytetään, jotta saadaan siitä kaikki tehot irti. LUMI-supertietokone Tieteen tietotekniikan keskus CSC CSC:n uutinen LUMIsta Supertietokoneohjelmointikurssi Elements of supercomputing MPI Coding game Rinnakkaisohjelmointi Pthreads OpenMP Message Passing Interface (MPI) Supertietokoneohjelmoinnissa käytetyt ohjelmointikielet Fortran C++ Python R Julia GPU-ohjelmointi: Nvidia CUDA AMD ROCm AMD HIP Koneoppiminen TensorFlow Keras Muuta IBM Blue Gene Supercomputer Top 500 supercomputers Singularity container system for HPC Gromacs molecular dynamics simulation GPAW quantum mechanics simulation Herrasmieshakkerit-podin Supertietokonejakso CSC Mahti CSC Puhti Vieras Jussi Enkovaara Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Vieraanamme on Anniina Sallinen Ouralta ja Koodikahvit-podista, jonka kanssa syväsukellamme koneoppimisen ja datan käsittelyn operointiin pilvessä (MLOps). Tämä tarkoittaa käytänteitä kuten versionnit, monitoroinnit, tietoturva ja CI/CD. Lisäksi käydään läpi millaisia rooleja koneoppimistiimissä on ja mitä moderneja työkaluja on tarjolla koneoppimismallin luontiin ja käsittelyyn jatkuvassa operoinnissa. Linkkejä Koodikahvit-podcast AWS Sagemaker Sagemaker Notebook Instances Python TypeScript AWS Cloud Development Kit (CDK) AWS API Gateway AWS Lambda Otsikkokuvan diagrammin lähde: Wikipedia File:ML Ops Venn Diagram.svg ja lisenssi: CC-BY-SA 4.0 Vieras Anniina Sallinen: @annisalli Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Tässä jaksossa keskustelemme massiivisista käyttäjä- ja pyyntömääristä. Minkälaisia ratkaisuja pitää tehdä palvelinpäässä, kun asiakasohjelmisto on asennettu yli kahteen miljardiin mobiililaitteeseen ja kun koneoppimista vaativia pyyntöjä pitää käsitellä yli 100 000 kertaa sekunnissa. Vieraana meillä on Antti Klemetti, joka on tullut kertomaan tarinan siitä miten Unityn maailmanlaajuista mainosverkkoa pyöritetään Suomesta käsin. Linkkejä Unity Ads MongoDB Apache Kafka Apache Cassandra Aerospike Canary Release Prometheus Grafana Google Cloud Bigtable Vieras Antti Klemetti Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Petrus Repo tuli vieraaksemme keskustelemaan Kuberneteksesta: Mikä se itse asiassa on ja mitä se ratkaisee? Kenen pitäisi olla kiinnostunut Kuberneteksestä? Milloin Kubernetesta kannattaa käyttää ja milloin se kannattaa rakentaa itse? Linkkejä: Kubernetes Supervisor – Verkkosivujen kuormitustestaus rdx.net – Olemassaolevien sovellusten siirto Kubernetesiin Docker Borg: The Predecessor to Kubernetes Cloud native computing foundation – CNCF Kubernetes pilviympäristöissä: Google Kubernetes Engine (GKE) Azure Kubernetes Service (AKS) Amazon Elastic Kubernetes Service (EKS) AWS Fargate Amazon Elastic File System (EFS) Red Hat Ceph Storage Heroku – The Twelve-Factor App – Periaatteet pilviapplikaation kirjoittamiseen Amazon Elastic Container Service (ECS) Googlen ohjeistusta pilviarkkitehtuuriin: Best practices for operating containers Immutable infrastructure in the age of Kubernetes Google Cloud Run – Konttien serverless-ajoympäristö, luo kontteja ajoon rinnakkain on-demand määritetyn metriikan perusteella Smartly Minikube – Paikallinen Kubernetes cluster K3s – Lightweight Kubernetes Kind – One-off local klustereita devaus- ja testikäyttöön Skaffold – Devaustyökalu paikallisen Kubernetes clusterin automaattiseen re-konfigurointiin Helm – Dynaamisiin Go-templateihin perustuva konfiguraatiohallinta, säilöö asennetun konfiguraation tilan klusteriin Kustomize – Deklaratiivinen konfiguraatiohallinta, ei säilytä asennetun konfiguraation tilaa Kubernetes Slack Kubernetes Github Lens – Kuberneteksen visuaalinen hallintatyökalu, kätevä tuotantoympäristössä Kubernetes Podcast – Googlen julkaisema Kubernetes podcast Communityn ylläpitämä AWS terraform – AWS EKS käyntiin "vaivattomasti" (tuska tulee vasta päivänä 2) Kubernetes the Movie Kubernetes sarjakuvana Vieras Petrus Repo: @petrusrepo Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Tässä jaksossa keskustelemme taustajärjestelmäkehityksen skaalauksesta tiiminäkökulmasta. Miten ohjelmistoa voidaan tehokkaasti kehittää, kun tuotekehitystiimejä on kymmeniä ja tiimien määrä tuplaantuu vuosittain. Jakson vieraaksi olemme saaneet Woltilta Jerry Pussisen, joka toimii Competence Leadina Python-teknologiaan liittyen. Pureudumme muun muassa tyypityksen hyötyihin Python-ohjelmointikielessä ja siihen miten autonomiset tiimit toimivat ilman erillistä arkkitehtiroolia. Hyväksi havaittuja periaatteita kehittämiseen isossa skaalassa: tiimien autonomia palvelujen ja/tai repojen omistajuus tiimienvälisen keskustelun fasilitaattorit ohjelmointikielen tyypitys, esim tyyppivinkit Pythonissa Linkkejä: Python-ohjelmointikieli: https://www.python.org/ Kotlin-ohjelmointikieli: https://kotlinlang.org/ Jerryn Helsinki Python meetup -esitys tyyppiturvallisesta Pythonista: https://www.youtube.com/watch?v=tKy1idOUW8s Staattinen tyyppitarkistaja mypy: https://mypy.readthedocs.io/en/stable/ Type stubs -tiedostot: https://mypy.readthedocs.io/en/stable/stubs.html Vieras Jerry Pussinen, Wolt: @JerryPussinen Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Kausi kaksi alkaa jaksolla 9, jossa puhumme pilvi-infrastruktuurista kehittäjän näkökulmasta. Minkälaisilla työkaluilla ja toimintatavoilla saadaan mahdollisimman hyvä kehittäjäkokemus infrahommiin. Vieraana meillä on Yle OPS-tiimistä Jami Karvanen, joka on urallaan päässyt kokemaan infrahommien kehityksen palvelinten käsinkonfiguroinnista nykyaikaiseen pilvipalvelumaailmaan. Linkkejä: yle.dev https://yle.dev/ Terraform: https://www.terraform.io/ CI: Github Actions https://github.com/features/actions AWS Amazon Elastic Container Service (ECS) https://aws.amazon.com/ecs/ AWS Amazon CloudFront https://aws.amazon.com/cloudfront/ AWS Amazon Machine Images (AMI) https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html AWS Amazon Elastic Kubernetes Service (EKS) https://aws.amazon.com/eks/ Grafana: https://grafana.com/ Kubernetes: https://kubernetes.io/ Ruby-ohjelmointikieli https://www.ruby-lang.org/en/ Go-ohjelmointikieli https://golang.org/ Go Modules https://go.dev/blog/using-go-modules Rust-ohjelmointikieli https://www.rust-lang.org/ Scratch container https://hub.docker.com/_/scratch Koodipohjainen infra – Infrastructure as Code (IaC) https://en.wikipedia.org/wiki/Infrastructure_as_code Yle OPS webinaari https://webinars.yle.dev/OPS-Webinaari_5-5-2021.mp4 Softan hiilijalanjäljen laskeminen https://medium.com/teads-engineering/evaluating-the-carbon-footprint-of-a-software-platform-hosted-in-the-cloud-e716e14e060c Yle Terraform wrapper https://github.com/Yleisradio/yle_tf Vieras Jami Karvanen Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Tule mukaan kehittämään Ykän ja Markuksen kanssa DIASia https://dias.fi/jobs.html
Ensimmäisen kauden viimeisessä jaksossa sukellamme sormusten maailmaan vieraanamme Oura-sormuksen laiteohjelmiston kehittäjä Juha-Pekka Syrjälä. Keskustelemme laiteläheisen ohjelmoinnin rajoitteista, miten ne vaikuttavat laiteohjelmiston arkkitehtuuriin, miten hardiksen ja softan debuggaus onnistuu, millainen ohjelmoinnin palautesykli on ja mikä CI/CD:n rooli on siinä. Lisäksi juttelimme laajalle levinneen laitteen ohjelmiston ja siihen integroituneiden mobiiliapplikaatioiden testauksen haasteista. Juha-Pekka antoi myös vinkkejä miten laiteläheisessä ohjelmoinnissa pääsee nykyisin varsin helposti alkuun. Linkkejä: Oura: https://ouraring.com/ PPG eli Photoplethysmogram-signaali PPG-signaalin vastaanottopää fotodiodi NTC-vastus OTA-päivitys Raspberry Pi Arduino Matlab C-ohjelmointikieli Vieras Juha-Pekka Syrjälä, Oura Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista anonyymisti
Jaksossa 7 vieraanamme on Maaret Pyhäjärvi Vaisalasta keskustelemassa muun muassa rajapintojen testaamisesta. Käymme läpi mitä ovat testaamisen mustat aukot, miten rajapintojen elinkaariajattelu liittyy testaamiseen ja mistä tietää onko API ja sen kehittäjäkokemus (DX) kehityskelpoinen. Entä miten löytyvät klassiset ongelmat rajapinnoissa tai niiden spekseissä, erityisesti liittyen päivämääriin tai syötteen pakollisuuteen? Lopuksi sivuamme myös tekoälyn roolia testaamisessa ja sitä, että alalla tulee riittämään töitä niin testaajille kuin kehittäjillekin tekoälyn kasvavasta käytöstä huolimatta. Linkkejä ja muistiinpanoja: Approval Tests Balanssi eri testauskerrosten välillä Yksikkötestaus eli kehittäjän tahtotila API-kerroksen eli liiketoiminnallisten skenaarioiden testaus Käyttöliittymän testaus Big List of Naughty Strings Tekoälyn testauksen IVVES-projekti: https://ivves.weebly.com/ Konenäkö osana testausta: https://www.test.ai/ Vieras Maaret Pyhäjärvi: @maaretp Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista anonyymisti
Jaksossa 6 vieraana on Markus Lindqvist OP-ryhmästä. Hän kertoo miten OP on lähtenyt modernisoimaan pankkipalvelujen rakentamista AWS-pilvialustalle. Pohdimme millä perusteella pankkipalvelun voi viedä pilveen ja mitä se vaatii mm. rajapintojen, tietoturvan, logituksen ja regulaation kannalta. Entä millainen arkkitehtuuri mahdollistaa reaaliaikaisen pääsyn mainframessa tallennettavaan dataan? Markus kertoo myös, miten palvelujen operointi ja devops-malli on saatu toimimaan OP:lla. Linkkejä OP Tech podcast: https://soundcloud.com/op-ryhmae/sets/op-tech Amazon Web Services: https://aws.amazon.com/ Apache Kafka: https://kafka.apache.org/ AWS Direct Connect: https://aws.amazon.com/directconnect/ Vieras Markus Lindqvist: @markuslindqv Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista
Jakson 5 aiheena ovat graafihaut ja niiden hyödyntäminen isojen datamassojen louhinnassa. Aiheesta keskustelemassa keskustelemassa IPRallyn CTO Juho Kallio, joka on ollut viime vuodet rakentamassa tekoälyä hyödyntävää patenttihakukonetta. Pureudumme siihen miten ison datamassan hakemisessa voi hyödyntää graafeja, vektoreita ja neuroverkkoja. Linkkejä IPRally: https://www.iprally.com/ Annoy: https://github.com/spotify/annoy PyTorch: https://github.com/pytorch/pytorch NLP: https://en.wikipedia.org/wiki/Natural_language_processing Tensor: https://en.wikipedia.org/wiki/Tensor Neo4J: https://github.com/neo4j/neo4j Kahvit näppikselle -podcast: https://www.aalto.fi/fi/podcastit/kahvit-nappikselle Vieras Juho Kallio: @juhopkallio Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia Kotisivu: https://koodiapinnanalla.fi/ Twitter: @KoodiPinnanAlla Sähköposti: koodaillaan@koodiapinnanalla.fi Anna palautetta podcastista Tule mukaan kehittämään Ykän ja Markuksen kanssa DIASia https://dias.fi/jobs.html
Jakson 4 aiheena ovat tapahtumapohjaiset arkkitehtuurit. Tällä kertaa meillä mukana keskustelemassa aiheesta Sharetriben CTO Olli Vanhapiha. Keskusteluissa käymme läpi mitä tapahtumapohjainen arkkitehtuuri tarkoittaa ja minkälaista käytännön hyötyä siitä on devaajan työkalupakissa. Linkkejä Tapahtumapohjainen arkkitehtuuri: https://en.wikipedia.org/wiki/Event-driven_architecture Change Data Capture (CDC): https://en.wikipedia.org/wiki/Change_data_capture Martin Kleppmann: Designing Data Intensive Applications: https://dataintensive.net/ Datomic: https://www.datomic.com/ Kafka: https://kafka.apache.org/ Debezium: https://debezium.io/ Sharetribe: https://www.sharetribe.com/ Vieras Olli Vanhapiha: @vanhaol Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia https://koodiapinnanalla.fi/ @KoodiPinnanAlla Anna palautetta podcastista Tule mukaan kehittämään Ykän ja Markuksen kanssa DIASia https://dias.fi/jobs.html
Jakson 3 aiheena on systeemiohjelmointi. Vieraana Linux-kerneldevaaja Pekka Enberg, joka tekee työkseen tietokantaa ScyllaDB-nimisessä firmassa. Pekka kertoo minkälaista on tehdä softaa syvemmällä pinnan alla, jossa abstraktiotasoja raudan ja softan välissä on vähemmän. Linkkejä ScyllaDB: https://www.scylladb.com/ Apache Cassandra: https://cassandra.apache.org/ QEMU: https://www.qemu.org/ KVM: https://www.linux-kvm.org/page/Main_Page Profilointi: http://www.brendangregg.com/linuxperf.html Portable Hardware Locality (hwloc): https://www.open-mpi.org/projects/hwloc/ Non-Uniform Memory Access (NUMA): https://en.wikipedia.org/wiki/Non-uniform_memory_access Seastar framework: http://seastar.io/ Vieras Pekka Enberg: @penberg Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia https://koodiapinnanalla.fi/ @KoodiPinnanAlla Tule mukaan kehittämään Ykän ja Markuksen kanssa DIASia https://dias.fi/jobs.html
Vuoden viimeisessä jouluspesiaalijaksossa Markus ja Ykä käyvät läpi nostoja ja oppeja vuoden varrelta. Lopussa muistellaan paria eeppistä mokaa kummankin uralta ja mitä niistä opittiin. Nostot Rust-ohjelmointikieli ja muistinhallinta Tietoturva Twitter social engineering attack YubiKey hardware security key Authy 2FA palvelu Amplifi Wifi Router Muista: huolehdi omasta tietoturvasta, epäile muiden tietoturvaa, ota käyttöön 2FA, ota käyttöön uudet laitteet ja päivitä niiden softat Infrastructure as Code (IaC) AWS CloudFormation Azure ARM Templates Kubernetes Etätyö ja ergonomia Paras työasento on se seuraava Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia https://koodiapinnanalla.fi @KoodiPinnanAlla
Jakson 1 aiheena on mobiilipelibäkkärit. Vieraana Matias Kirvelä Supercellin Clash Royale -tiimistä. Matias on viime vuodet ollut koodaamassa eri pelifirmoissa bäkkäreitä mobiilipeleihin ja jakaa tarinansa siitä minkälaiselta suositun onlinemobiilipelin tekeminen näyttää pinnan alla. Lainauksia: “pulssi on korkeella ja kädet on kylmät” “deploy-hanskat, pystyy naputtelee, verenpaine nousee niin kovaks et kädet on jäässä” "serverityypit huomataan kun peli ei toimi" Linkkejä Elixir: https://elixir-lang.org Protobuf: https://developers.google.com/protocol-buffers Vieras Matias Kirvelä: @mkirvela Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia https://koodiapinnanalla.fi/ @KoodiPinnanAlla
Jakson 0 aihe on modernit bäkkärit. Vieraanamme on Oskar Ehnström Futuricelta, joka on on työskennellyt pitkään projektissa Sanomilla, missä tehdään mikropalveluarkkitehtuurilla bäkkäreitä useisiin Suomen tunnetuimpiin uutissivustoihin. Linkkejä Scala Play Framework: https://www.playframework.com/ Vieras Oskar Ehnström: @oehnstro Juontajat Markus Hjort: @mhjort Yrjö Kari-Koskinen: @ykarikos Seuraa podcastia https://koodiapinnanalla.fi/ @KoodiPinnanAlla