Software as Craft: a First Look at Syntropy - NoteflakesSoftware as Craft: a First Look at Syntropy<br>13·06·2026<br>I’ve always been interested in coding as a craft - a thing to do with your<br>hands, your eyes and your mind. In many ways, I feel that a lot of the<br>satisfaction and accomplishment I get from making software comes from the<br>process itself, the doing of it, and not necessarily the end result. To quote<br>one of my favorite musicians:
Most vagabonds I knowed don’t ever want to find the culprit
That remains the object of their long relentless quest,
The obsession’s in the chasing and not the apprehending,
The pursuit you see and never the arrest.
Tom Waits, Foreign Affair
This is also one of the reasons why the recent AI "revolution" doesn’t really<br>resonate with me. They say about us software developers that we always are<br>looking to automate our workflows, but personally this is not what’s driving me.<br>I don’t mind spending a few more minutes on writing another REST controller,<br>or another Javascript keyboard event handler, or just copying files and manually<br>setting up a new server. And I find in many cases I spend more time thinking<br>about a problem than actually coding the solution!
To me this is all part of the process, it’s all enjoyable, and since I’m my own<br>boss, I have the luxury of taking my time. My clients know that I’m dependable<br>and available when there’s a problem, and that I get the job done, so I can<br>concentrate on the process itself, and not worry so much about velocity.
This is also why I like to make my own tools, instead of just blindly relying on<br>some ready-made frameworks or libraries. It’s not only about freedom, it’s also<br>about the joy of creation, and the deeper understanding and knowledge of the<br>lower-level aspects of the system I’m building, be it parsing HTTP requests,<br>putting together SQL queries, issuing system calls, forking, trapping process<br>signals etc.
Are We All Just CRUD Monkeys?
Now don’t get me wrong, I totally understand the value of using frameworks such<br>as Ruby on Rails, and the ecosystem that goes with<br>it. Rails provides teremendous value to developers, and an infrastructure for<br>building web apps in big teams. And it also demands a deep knowledge, but of a<br>different kind. Instead of learning about low-level stuff, you learn about what<br>solutions already exist for the problem you’re trying to solve, and how to<br>integrate them into your app. It’s sort of like the difference between knowing<br>how to properly use and sharpen a wood chisel, and knowing how to properly<br>use and maintain a tenoning machine.
It’s perfectly fine to build yourself a career on top of Ruby on Rails, call<br>yourself a CRUD<br>monkey, and now with<br>the help of AI technologies you can have an entire army of CRUD monkeys at<br>your service. DHH says he’s built an entire career on being a CRUD monkey, but<br>in a way that’s not true. Rather, he’s created Ruby on Rails (of course, with<br>the help of many other contributors), which is a great piece of software that in<br>many ways has revolutionized web development. So perhaps it’s more accurate to<br>say that he made a career on turning other people into CRUD monkeys. But I<br>think for him also, there’s the joy of working on Ruby on Rails itself, and not<br>only using it to make CRUD apps.
Ruby is not Only Rails
One big problem in the Ruby community is the somewhat disproportionate place<br>Rails has in the ecosystem. While there’s still a lot happening in the community<br>off the Rails, it’s prettyclear that most of the activity is still around<br>Rails. At the last Euruko<br>conference in Viana do<br>Castelo, by my count more than half of the talks were about Rails or tools that<br>integrate with Rails. In and of itself this is not necessarily a bad thing, but<br>I found it a bit sad that there was no presence (as far as I could tell) for any<br>other web framework: no Roda, no Hanami, no Sinatra. Maybe this is just the<br>nature of things, but is it really desirable?
Rails is incredibly powerful, it provides so much value out of the box. But<br>there are other approaches possible, and maybe Rails can even learn from them.<br>There are precedents: Merb was a simpler and<br>faster alternative to Rails, before being merged into Rails.<br>Sequel has shown developers that there’s a<br>better way to work with databases, and then ActiveRecord got Arel. So Rails can<br>actually gain from more innovation in the Ruby ecosystem.
A First Look at Syntropy (part I)
So with that in mind, I’d like to share with you a first look at the web<br>framework I’m currently working on, which I call<br>Syntropy, and which actually is what<br>drives this website.
I chose the name Syntropy because in the last few years I’ve been passionate<br>about Syntropic<br>Agroforestery<br>as an approach to agriculture (I’m an amateur gardener), and to the<br>cultivation of rich and diverse ecosystems that are also beneficial to human<br>beings.
Syntropy is kind of the inverse of entropy. While entropy is the natural<br>tendency of a given system towards disorder and decay...