Kodsnack in English Kristoffer, Fredrik, Tobias
-
- Technology
All the English episodes of Kodsnack - a podcast by developers, about anything interesting to developers
-
Kodsnack 584 - A free deadline in September, with Malin Sundberg and Kai Dombrowski
Fredrik is joined by Malin Sundberg and Kai Dombrowski for a quick chat about the Deep dish Swift conference, the past and present of Mercury weather, their next app project, and what might happen at Apple’s WWDC in June.
The first big topic is the developer conference Deep dish Swift. Malin and Kai not only participated in the conference itself, but also created the Slices podcast, interviewing the speakers of the conference. How are indie developers different from each other, and why might it be a bad idea for Malin and Kai to do a regular podcast with Charlie Chapman?
We then dig into the evolution of Mercury weather since the last episode - especially the trip forecast feature. Yes: timezones were a big part of the challenge. The secret marketing advantage of having a Mac version of your IOS app.
Next Malin and Kai talk about their movie industry project - an app for planning shoot days for movies and TV. A project which has given them lots of insight into the quirks of a whole new industry, and made them see whole different things in movies they watch.
We revisit our use of VR for work and gaming. VR of course shades naturally into bringing Mercury to Vision pro - a quick process, but some interesting adjustments were required.
With WWDC fast approaching, we talk wishes and ideas. What would we like the Ipad to become? We do some interesting speculation about Apple’s coming focus on “AI” and how that might work together with apps. Fredrik should perhaps spend some time on his Mac app?
Finally, Malin and Kai reveal their summer project: a kanban-style workflow tracking app. Done with paper cuts!
Also: good deadlines. If Apple gives you one for free, you take it!
Thank you Cloudnet for sponsoring our VPS!
Comments, questions or tips? We a re @kodsnack, @tobiashieta, @oferlund and @bjoreman on Twitter, have a page on Facebook and can be emailed at info@kodsnack.se if you want to write longer. We read everything we receive.
If you enjoy Kodsnack we would love a review in iTunes! You can also support the podcast by buying us a coffee (or two!) through Ko-fi.
Links
Malin
Kai
Triple glazed studios
Mercury weather
Orbit
Core coffee - Malin and Kai’s meetups. There are both online and in-person events
Bahnhof
ICQ
JSDay in Verona
Grusp
Deep dish Swift
Josh - arranger of Deep dish Swift
Øredev
Slices - the podcast interviewing speakers of Deep-dish Swift
Charlie Chapman
Charlie’s Slices episode for 2024 (he participated in 2023 as well)
Jessie Linden - talked about Swift and gestures
Jessie’s episode of Slices
Deep-dish pizza
Giordano’s - one of the original deep-dish pizzas
Liu Malnati’s - much thicker deep-dish pizza
Kodsnack 493 - The last episode with Malin and Kai
Six colors on Mercury’s trip forecast
Tornado alley
Air force one
Fallout - the TV series
Roy Andersson
The last of us
The room
Red matter
Doom VFR
Meta remote desktop
Immersed
Imac G4: “The old Imac with the arm”
Swiftui
Swift charts
The Ipad event
Procreate
Stage manager
Ferrite
Lumafusion
Kanban
Jira
Trello
Shortcuts
Podcast chapters
WWDC meetups
Synk - Fredrik’s latest podcast
Titles
Gigabit for ten crowns less
Good job, brain
Completely solidified knowledge
In the right track already
A good strategy for conferences
The right amount of time to talk to people
Snub two people at once
It’s nice to be done
A procrastination project
Not the smartest time management decision
Proper pizza research
Podcasting and pizza
22 back to 3
An interesting pile of edge cases
How do we handle that in the app?
You lose most of your Sunday
Ask to push lunch
The logistics of filming
Making a movie versus building an app
The Ipad strapped to his belt
Everything gets to me
A world clock for weather
People have clocks for that
Xcode, but for touch
Done with paper cuts!
A very clean look into the state of our projects
Ever-growing “done” column
All the modes I made
A free deadline in September
If Apple gives you a free deadline, you take i -
Kodsnack 573 - This is not a toy project, with Leandro Ostera and Emil Privér
Fredrik is joined by Emil Privér and Leandro Ostera for a discussion of the OCaml ecosystem, and making it Saas-ready by building Riot.
First of all: OCaml. What is the thing with the language, and how you might get into it coming from other languages? The OCaml community is nice, interested in getting new people in, and pragmatic. And it has a nice mix of research and industry as well.
Then, Leandro tells us about Riot - an experiment in bringing everything good about the Erlang and Elixir ecosystems into OCaml. The goal? Make OCaml saas-ready. Riot is not 1.0 just yet, but an impressive amount has been built in just five(!) months.
Emil moves the discussion over to the mindset of shipping, and of finding and understanding good ideas in other places and picking them up rather than reinventing the wheel. Leandro highly recommends reading the code of other projects. Read and understand the code and solutions others have written, re-use good ideas and don’t reinvent the wheel more often than you really have to.
Last, but by no means least, shoutouts to some of the great people building the OCaml community, and a bit about Emil’s project DBCaml.
Thank you Cloudnet for sponsoring our VPS!
Comments, questions or tips? We a re @kodsnack, @tobiashieta, @oferlund and @bjoreman on Twitter, have a page on Facebook and can be emailed at info@kodsnack.se if you want to write longer. We read everything we receive.
If you enjoy Kodsnack we would love a review in iTunes! You can also support the podcast by buying us a coffee (or two!) through Ko-fi.
Links
Emil
Leo
Leo on Twitch
Previous Kodsnack appearances by Emil
Riot
Sinatra
Backbone.js
Ember.js
Angularjs
React
Erlang
Tarides - where Leandro currently works
OCaml
Robin Milner - designer of ML
Caml
Javacaml
F#
Imperative programming
Object-oriented programming
Pure functions and side effects
Monads
The OCaml compiler
Reason - the language built by Jordan Walke, the creator of React
Standard ML
React was prototyped in Standard ML
Melange - OCaml compiler backend producing Javascript
OCaml by example
The OCaml Discord
The Reason Discord
Rescript
Jane street
High-frequency trading
The Dune build system
Erlang process trees
Caramel - earlier experiment of Leandro’s
Louis Pilfold
Gleam
Algebraic effects
Continuations
Pool - Emil’s project
Gluon
Bytestring
Atacama - connection pool inspired by Thousand island
Nomad - inspired by Bandit
Trail - middleware inspired by Plug
Sidewinder - Livewire-like
Saas - software as a service
DBCaml
Johan Öbrink
Ecto
Mint tea - inspired by Bubble tea
Autobahn|Testsuite - test suite for specification compliance
Serde - Rust and OCaml serialization framework
S-expressions
TOML
Dillon Mulroy
Metame - community kindness pillar
welltypedwitch
Sabine maintains ocaml.org
OCaml playground
OCaml cookbook - in beta, sort of
teej_dv
ocaml.org
Pool party
Drizzle
SQLX
SQL Join types (left, inner, and so on)
dbca.ml
internet.bs
The Caravan
Essentials of compilation
Reading rainbow
Titles
Few people can have a massive impact
Impact has been an important thing for me
It’s a language out there
A very long lineage of thinking about programming languages
Programs that never fail
The functional version of Rust
Melange is amazing
This is not a toy project
Yes, constraints!
Wonders in community growth
Arrow pointing toward growth
Programs that don’t crash
A very different schoold of reliability
Invert the arrow
Very easy on the whiteboard
Multicore for free
An entire stack from scratch
Built for the builders
A massive tree of things
Make OCaml saas-ready
Leo is a shipper
Standing on the shoulders of many, many giants
Learn from other people
I exude OCaml these days
Sitting down and building against the spec
You just give it something
Your own inner join
We build everything in public
The gospel of the dunes -
Kodsnack 570 - Debug your ideas, with Eric Normand
Fredrik is joined by Eric Normand for a discussion of debugging your ideas through domain modeling, using Eric’s concept of lenses to find more good questions to ask.
Eric is writing a book about domain modeling and has developed the concept of lenses - ways to look at various aspects of your domain, model, and code in order to better consider various solutions and questions.
Why? Because design is needed, but is easily lost in the modern urge to be fast and agile. There’s a lot you can and need do on the way to a working system. Eric pushes for design which is an integral part, perferably right in the code, rather than a separate one which can become outdated and separated without anyone noticing. Just spend a little more time on it.
Tricks for seeing your domain with fresher eyes.
Change is not always maximal and unpredictable! But thinking it is can lead to a lot of indirection and abstraction where a single if-statement could have sufficed for years.
Refactoring as a way of finding the seams in your model. What is the code actually supposed to do? How does it actually fit with the domain?
Recorded during Øredev 2023, where Eric gave two presentations about the topics discussed: Better software design with domain modeling and Stratified design and functional architecture.
Thank you Cloudnet for sponsoring our VPS!
Comments, questions or tips? We are @kodsnack, @tobiashieta, @oferlund and @bjoreman on Twitter, have a page on Facebook and can be emailed at info@kodsnack.se if you want to write longer. We read everything we receive.
If you enjoy Kodsnack we would love a review in iTunes! You can also support the podcast by buying us a coffee (or two!) through Ko-fi.
Links
Eric
Eric’s Øredev 2023 presentations:
Better software design with domain modeling
Stratified design and functional architecture
Eric has his own podcast
Grokking simplicity - Eric’s book on functional programming
Domain modeling
Waterfall
UML
Clojure
REPL - Red-evaluate-print loop
Kodsnack 294 - the episode where Dan Lebrero gave Fredrik a feel for REPL-driven development
Domain modeling lenses
Drawing on the right side of the brain
The “keynote yesterday” - Na’Tosha Bard about code outliving you (see also episode 558)
Then a miracle occurs
Titles
I’m really on to something
Anti-design trend
In a waterfall world
On the way to code
Experimentation in code
Not about moving your hand
I don’t want rules
Yes, that’s the right question!
Take five minutes
Spending more time on it
Code lets me play with ideas
I’m happy working on a whiteboard
Debug your ideas
Server babysitters -
Kodsnack 567 - Arrow straight through, with Matt Topol and Lars Wikman
Fredrik has Matt Topol and Lars Wikman over for a deep and wide chat about Apache Arrow and many, many topics in the orbit of the language-independent columnar memory format for flat and hierarchical data. What does that even mean? What is the point? And why does Arrow only feel more and more interesting and useful the more you think about deeply integrating it into your systems?
Feeding data to systems fast enough is a problem which is focused on much less than it ought to be. With Arrow you can send data over the network, process it on the CPU - or GPU for that matter- and send it along to the database. All without parsing, transformation, or copies unless absolutely necessary.
Thank you Cloudnet for sponsoring our VPS!
Comments, questions or tips? We are @kodsnack, @tobiashieta, @oferlund and @bjoreman on Twitter, have a page on Facebook and can be emailed at info@kodsnack.se if you want to write longer. We read everything we receive.
If you enjoy Kodsnack we would love a review in iTunes! You can also support the podcast by buying us a coffee (or two!) through Ko-fi.
Links
Lars
Matt
Øredev
Matt’s Øredev presentations: State of the Apache Arrow ecosystem: How your project can leverage Arrow! and Leveraging Apache Arrow for ML workflows
Kallbadhuset
Apache Arrow
Lars talks about his Arrow rabbit hole in Regular programming
SIMD/vectorization
Spark
Explorer - builds on Polars
Null bitmap
Zeromq
Airbyte
Arrow flight
Dremio
Arrow flight SQL
Influxdb
Arrow flight RPC
Kafka
Pulsar
Opentelemetry
Arrow IPC format - also known as Feather
ADBC - Arrow database connectivity
ODBC and JDBC
Snowflake
DBT - SQL to SQL
Jinja
Datafusion
Ibis
Substrait
Meta’s Velox engine
Arrow’s project management committee (PMC)
Voltron data
Matt’s Arrow book - In-memory analytics with Apache Arrow
Rapids and Cudf
The Theseus engine - accelerator-native distributed compute engine using Arrow
The composable codex
The standards chapter
Dremio
Hugging face
Apache Hop - orchestration data scheduling thing
Directed acyclic graph
UCX - libraries for finding fast routes for data
Infiniband
NUMA
CUDA
GRPC
Foam bananas
Turkish pepper - Tyrkisk peber
Plopp
Marianne
Titles
For me, it started during the speaker’s dinner
Old, dated, and Java
A real nerd snipe
Identical representation in memory
Working on columns
It’s already laid out that way
Pass the memory, as is
Null plus null is null
A wild perk
Arrow into the thing
So many curly brackets you need to store
Arrow straight through
Something data people like to do
So many backends
The SQL string is for people
I’m rude, and he’s polite
Feed the data fast enough
A depressing amount of JSON
Arrow the whole way through
These are the problems in data
Reference the bytes as they are
Boiling down to Arrow
Data lakehouses
Removing inefficiency -
Kodsnack 560 - Starting with courage, with Diana Larsen
Recorded on-stage at Øredev 2023 just after her keynote, Fredrik chats to Diana Larsen about leadership and building good teams.
How to get into leaderhip? Often it’s more about picking up expectations than getting a formal onboarding
Learning to not do things yourself when you start leading - everything you do is one less thing the team learns to do for itself
Leadership roles are on different levels, and on a different level than non-leadership positions. A lot of thing can become invisible to people on other levels. Some things should be, others should be made visible. People want to be understood, and understand what other people in the organization are doing and what challenges they have.
And everything doesn’t have to be a formal meeting with agendas and stuff.
Power dynamics - hard to percieve and to talk about. Even what location you are in can become part of the power dynamics and important to take into consideration.
Teams - they also exist on different levels. They don’t have to be static.
Thank you Cloudnet for sponsoring our VPS!
Comments, questions or tips? We are @kodsnack, @tobiashieta, @oferlund and @bjoreman on Twitter, have a page on Facebook and can be emailed at info@kodsnack.se if you want to write longer. We read everything we receive.
If you enjoy Kodsnack we would love a review in iTunes! You can also support the podcast by buying us a coffee (or two!) through Ko-fi.
Links
Øredev
The Øredev 2023 video playlist on Youtube
Diana
Diana’s keynote: Catch fire with resilient learning teams
Diana’s second presentation: Stop wasting time on ineffective retrospectives!
Diana’s books:
Agile retrospectives
Liftoff
The five rules of accelerated learning
Chris Corrigan - “Everything you do for the group is one less thing they know they can do for themselves” (in the lower half of the page)
James Shore
The Agile fluency game
Circles & soup retro
Scrum
Mob programming
Titles
Leaders and followers
Starting with courage
Learning is okay here
We can’t know it all
Unknown power
Strong three-person teams -
Kodsnack 559 - Non-fungible plants, with Cyrus Clarke
Recorded on-stage at Øredev 2023 just after his keynote, Fredrik chats to Cyrus Clarke about plants, imagining things, exploring, and building. And not presenting speculative things as possible here right now. Daring to not be useful right now.
How to bridge the gap between theory and academia on one side and practice and industry wanting to build things right now? By example.
Do our short time scales and focus on iteration hurt us? Eighteen months sounds like an impossibly long timespan, because we think in two-week iterations of what we have and customers want right now.
Getting in touch with researchers. Adapt how you talk to people! Scientists and artists are very similar.
We are all at intersections between things.
Thank you Cloudnet for sponsoring our VPS!
Comments, questions or tips? We are @kodsnack, @tobiashieta, @oferlund and @bjoreman on Twitter, have a page on Facebook and can be emailed at info@kodsnack.se if you want to write longer. We read everything we receive.
If you enjoy Kodsnack we would love a review in iTunes! You can also support the podcast by buying us a coffee (or two!) through Ko-fi.
Links
Øredev
The Øredev 2023 video playlist on Youtube
Cyrus
Cyrus' keynote: Storing data nature’s way
Cyrus' previous projects
South by Southwest
The non-fungible plant
NFT:s
Anthurium - the plant
Titles
Data and plants
Non-fungible plants
That nice melting pot
Scientists are also artists
A little bit more imaginative
That’s all we are
Constant “of course"s