All blogs / Software / engineering practice
quanttype
quanttype by Miikka Koskinen
- Posts
- 262 from 14 Aug 2013 to 8 Oct 2026
- Posting
- monthly (9 in the last year)
- Kind
- personal blog
- Feed
- https://quanttype.net/index.xml
2026 9
2025 9
2024 24
- Weeknote 19: ADRs record decisions
- Weeknote 18: Code comments
- Weeknote 17: Caching Docker builds on GitHub Actions
- Weeknote 16: Late code review
- Weeknote 15: Technology radar
- Weeknote 14: Throwing it away
- Weeknote 13: Deterministic Simulation Testing
- Weeknote 12: In the weeds
- Weeknote 11: Weeknotes
- Weeknote 10: Prototyping
- Weeknote 9: EuroRust 2024
- Weeknote 8: Feedback
- Weeknote 7: Memray + k8s
- Weeknote 6: Heart of Clojure
- Weeknote 5: Broken Input
- Weeknote 4: Debugging Tools
- Weeknote 3: Object Storage
- Weeknote 2: Developer Experience
- Weeknote 1: Schema Evolution
- paketoi 0.1
- A toolbox of methods
- GitHub's PRs could be better
- Creating AWS Lambda zip files with Pex
- Yearnote 2023
2023 4
2022 6
2021 11
- Split tokens in Clojure
- Enjoying the silence
- clojure.xml and untrusted input
- clojure.spec and untrusted input
- Why take notes, anyway?
- The goal is to deliver working software
- Winter-posting
- When to not use code review
- Writing is a core skill for developers
- Clojure project automation tool of my dreams
- Yearnote 2020
2020 43
- NixOS impressions
- Code review in context
- New shell prompt with Starship
- Early impressions on morning pages
- Code review is for collaboration
- Why bother with Integrant?
- Two albums of sad music
- What are DIDs?
- Caching HTTP requests in Clojure
- Generating random tokens in Clojure
- clj-branca: lessons learned
- Branca and yak shaving
- Solving the diamond problem with shading
- Local memoized recursive functions
- No blog this week
- Is this art?
- JWT and its alternatives
- Looking good in a suit
- The minimalist program
- Two things that make logging out hard
- Summer reading
- Signing .jars is worthless
- On paddling
- Summer vacation
- Building software without hiring anyone
- Who is going to use the programming language?
- Automating spec-tools releases
- Have you seen the swan?
- Essential features of data specification libraries
- Schema, Spec, and Malli
- Elegant knowledge transfer
- Ricoh GR III, a year later
- Put files where they are expected
- Video calls are cool but have you tried writing
- Freezing deployments is risky
- Working from home: initial impressions
- Programming is writing
- Making decisions without asking your boss
- No need for something to say
- Logging request IDs in Tornado
- Hello again, Python
- Joys of a heavy camera
- Yearnote 2019
2019 16
- Standard problems, standard solutions
- Just automate syntax formatting
- Keeping code review fast
- The power of code review
- Coercing JSON with malli
- Karhunkierros IV
- Karhunkierros III
- Karhunkierros II
- Karhunkierros I
- The joys of coverage
- The hallway track conference
- Interpreting Moriyama
- Ricoh GR III - initial impressions
- Handbrewing coffee
- Revisiting Clojure testing
- Yearnote 2018
2018 12
2017 30
- Secure Scuttlebutt: some technical details
- A new JSON library appears
- Break from blogging
- What is first-order logic?
- Please publish changelogs
- Write more macros
- Hiking from Pyhä to Luosto
- Focus on understandble code
- What is pair programming like?
- Using Beeminder to keep blogging
- What are hybrid maps?
- ZuriHac 2017
- Commit messages are worthless
- On sailing
- On JSONfeed
- clojure.spec for configuration validation
- What is functional analysis?
- JUnit output for Clojure tests
- prog1 in Clojure
- Darkroom update
- Keskustalaisuus vaalikoneessa
- How I use Anki
- Configuring Clojure apps
- Thinking about gear (acquisition syndrome)
- Ice in black and white
- The surprises of photography
- Reading highlights from 2016
- Technical tooling for making better software
- Running ClojureScript tests with Karma
- Clojure test runner of my dreams
2016 25
- Curry On and ZuriHac
- Some questions (June 2016)
- On feeling guilty about not being good enough
- You'll want locally scoped CSS
- Why look beyond JavaScript?
- What is descriptive set theory?
- How I solved the Orbital Challenge
- Mamiya RB67 Pro-S
- What's the point of dependent types?
- We're in early days of software engineering
- Finding that lemma: Coq search commands
- How to divide by zero?
- Take better photos by looking carefully
- defaultdicts all the way down
- Runtime exceptions in Elm
- Multitenant Flask-SQLAlchemy
- What is forcing, anyway?
- Elementary algebra in Coq: Trivial group
- Please give demanding tech talks
- Elementary algebra in Coq: Defining a group
- What's in a proof?
- Getting started with Coq
- Helsinki Haskell User Group
- On Infinite Jest
- The bare minimum to know about RELAX NG
2015 39
- Yearnote 2015
- Math is hard, let's go blogging
- Code review requires trust
- Color film update
- Python is not good enough
- Printers now work
- Spinning while sleeping
- Joylent mini-review
- Dabbling in film photography
- Webpacking a project
- Exercising is like eating
- Moral obligations of ad blocking
- Commandments for code review
- Some questions I can't answer
- Everyday carry (August 2015)
- Copenhagen highlights
- Shell pro-tip: create weekly working directories
- Wash your smelly travel towel with vinegar
- FRP and self-adjusting computation
- Running is great for lazy people
- The Moat of Scrumbut
- Speech as art
- A Mind for Numbers
- Spend some time away from computers
- ROS: Good, bad and ugly
- The Law of Partial Test Coverage
- Good math exercises build trust
- Quickly jumping between git branches
- Emacs: Get the path for current buffer from command-line
- Birds and context-free grammars
- You should take lecture notes with pen and paper
- Tornien taisto is coming soon
- New theorem prover: Lean
- The value of MOOCs is not in the videos
- Are quantum computers faster than classical computers?
- This Week in Finnish Politics
- Types of JavaScript
- Setting up Coq, Ssreflect and Proof General on OS X
- Yearnote 2014
2014 27
- Ambronite mini-review
- Going to write a bachelor's thesis
- Guts of the Golden Pig
- Event notes: ClojuTRE 2014
- A photo essay: Haronmäki
- Customizing Nix packages
- Did taking photos teach me anything?
- Four scientific ways to hack your learning
- NP and non-deterministic Turing machines
- Why does everything fall apart so quickly?
- Practicing photography
- Houkutteleva tutkijanura
- In praise of Hiccup
- Is being normal anti-establishment?
- Electromagnetic Field 2014
- Math is programming
- When is static typing worthwhile?
- Hard things in software engineering
- Linux problems, April 2014
- Baudrillard on Jogging
- Renaming files with zmv
- Weak views, strongly held
- Flappy Sine
- nix-docker and docker volumes
- Baana, Helsinki
- Compiling assembler files with avr-gcc without C runtime
- People Never Change