Full Width [alt+shift+f] Shortcuts [alt+shift+k] TRY SIMPLE MODE
Sign Up [alt+shift+s] Log In [alt+shift+l]

tonsky.me

tonsky.me
We shouldn’t have needed lockfiles Imagine you’re writing a project and need a library. Let’s call it libpupa. You look up its current...
2 days ago
7
2 days ago
Imagine you’re writing a project and need a library. Let’s call it libpupa. You look up its current version, which is 1.2.3, and add it to your dependencies: "libpupa": "1.2.3" In turn, the developer of libpupa, when writing its version 1.2.3, needed another library: liblupa. So...
tonsky.me
Gaslight-driven development Any person who has used a computer in the past ten years knows that doing meaningless tasks is just...
3 weeks ago
23
3 weeks ago
Any person who has used a computer in the past ten years knows that doing meaningless tasks is just part of the experience. Millions of people create accounts, confirm emails, dismiss notifications, solve captchas, reject cookies, and accept terms and conditions—not because they...
tonsky.me
Podcast: Datomic: самая рок-н-рольная БД @ Тысяча фичей Чем Datomic отличается от других баз данных и почему иногда остутствие оптимизатора лучше, чем его...
a month ago
17
a month ago
Чем Datomic отличается от других баз данных и почему иногда остутствие оптимизатора лучше, чем его присутствие
tonsky.me
Talk: Local-first is not going to win, but that’s okay @ Local-First Conf We’ll explore the complexities of traditional stack (db-server-frontend), develop a theory of...
2 months ago
13
2 months ago
We’ll explore the complexities of traditional stack (db-server-frontend), develop a theory of software evolution: which systems succeed and why. Then we’ll see how local-first fits into it and which local-first-adjacent practices are making software development easier and...
tonsky.me
Logo: Cyrillic version of Internet Explorer logo. Because it’s iconic.
2 months ago
tonsky.me
When You Get to Be Smart Writing a Macro Day-to-day programming isn’t always exciting. Most of the code we write is pretty straightforward:...
3 months ago
18
3 months ago
Day-to-day programming isn’t always exciting. Most of the code we write is pretty straightforward: open a file, apply a function, commit a transaction, send JSON. Finding a problem that can be solved not the hard way, but smart way, is quite rare. I’m really happy I found this...
tonsky.me
Talk: Clojure workflow with Sublime Text @ SciCloj A deep overview of Clojure Sublimed, Socket REPL, Sublime Executor, custom color scheme, clj-reload...
4 months ago
38
4 months ago
A deep overview of Clojure Sublimed, Socket REPL, Sublime Executor, custom color scheme, clj-reload and Clojure+. We discuss many usability choices, implementation details, and broader observations and insights regarding Clojure editors and tooling in general.
tonsky.me
Podcast: Мир стал строго лучше @ Думаем дальше С Ильей Бирманом обсуждаем, как меньше критиковать, и — разумеется — критикуем Эпл изо всех сил.
4 months ago
30
4 months ago
С Ильей Бирманом обсуждаем, как меньше критиковать, и — разумеется — критикуем Эпл изо всех сил.
tonsky.me
Podcast: Nikitonsky про современные редакторы кода @ Тысяча фичей Каким должен быть редактор кода в 2024 году? Почему Vim морально устарел, а IDEA, кажется, сдает...
10 months ago
73
10 months ago
Каким должен быть редактор кода в 2024 году? Почему Vim морально устарел, а IDEA, кажется, сдает позиции? Популярность Zed, минимализм SublimeText, гибкость Emacs и многое другое в новом выпуске.
tonsky.me
Logo: Squint Squint is a light-weight dialect of ClojureScript with a compiler and standard library. “The idea is...
a year ago
51
a year ago
Squint is a light-weight dialect of ClojureScript with a compiler and standard library. “The idea is that when you squint, it still looks like CLJS”.
tonsky.me
Where Should Visual Programming Go? There’s a wonderful article by Sebastian Bensusan: “We need visual programming. No, not like that.”...
a year ago
45
a year ago
There’s a wonderful article by Sebastian Bensusan: “We need visual programming. No, not like that.” (the dot is part of the title ¯\_(ツ)_/¯). In it, Sebastian argues that we shouldn’t try to replace all code with visual programming but instead only add graphics where it makes...
tonsky.me
Clojure macros continue to surprise me Clojure macros have two modes: avoid them at all costs/do very basic stuff, or go absolutely...
a year ago
42
a year ago
Clojure macros have two modes: avoid them at all costs/do very basic stuff, or go absolutely crazy. Here’s the problem: I’m working on Humble UI’s component library, and I wanted to document it. While at it, I figured it could serve as an integration test as well—since I showcase...
tonsky.me
Local, first, forever So I was at the Local-First Conf the other day, listening to Martin Kleppmann, and this slide caught...
a year ago
47
a year ago
So I was at the Local-First Conf the other day, listening to Martin Kleppmann, and this slide caught my attention: Specifically, this part: But first, some context. What is local-first? For the long version, go to Ink & Switch, who coined the term. Or listen for Peter van...
tonsky.me
Talk: Clj-reload: A smarter way to reload code @ In Clojure, we all love the REPL. We love playing with our code and seeing results applied live...
a year ago
37
a year ago
In Clojure, we all love the REPL. We love playing with our code and seeing results applied live without ever restarting the app. But in any project, there comes a time when your state becomes more complex than a simple set of functions. Evaluating the buffer does not...