As software engineers we tell each other to "pick the right tool for the job," but tbh,

The breadth and depth of knowledge to 1) know of all relevant alternatives, and 2) understand the meaningful differences between them, is nigh-impossible to build from on-the-job experience.

It takes an unreasonable level of interest and time to build that knowledge for a *subset* of the field.

Is there *any wonder* we collectively keep reaching for the wrong tools?

I'm thinking of infrastructure tooling, I'm thinking of frameworks, I'm thinking of libraries, I'm thinking of languages, I'm thinking of architectures,

None of the necessary knowlede is in any curriculum, nor in any of the SEO-stuffed articles you find when trying to search for answers.

It is nigh-impossible for most engineers, on most issues, to make informed decisions.

@cvennevik partially this is because we stopped building these tools in the early 00s/mid 90s.

I am not joking. Research kept going but we lost the industry knowledge of this domain. We are starting to rediscover some of it thanks to both typescript and rust community.

But it will take a long time, and there is nearly no funding. The industry forgot that we can have good tools and it actually impact output and outcomes.

@Di4na I wouldn't have thought of this angle, so thank you for bringing it up.

(Also really cool seeing you in the replies as I've really liked your writing on developer tooling and process engineering)

@cvennevik @Di4na To continue Thomas' insights, I don't think that we need to know all the tools, but we need work experience w/ one or more of each category.
- DBs: SQL/NoSQL DBs, maybe a column-based DB. Graph DB as a bonus
- IaC & cloud connectors, like Terraform
- object-oriented and functional languages, JS as something in-between.
You see what I mean? Patterns, solutions repeat themselves. Each new job will add more to the toolbox but only if we observe and not just consume.
@cvennevik @Di4na What we can't learn from libs and tools though, are industry specificities: e-commerce, SaaS, document management, mechanical, new digital domains to name a few categories. All have specific goals and key needs. Getting specialized in more than one of those will make you portfolio of skills growing exponentially because you can combine them.

@yellowbrickc @cvennevik I agree, and I will add...

There is a slew of other things that you do not talk about here that exist (at least in theory and in research), which make my point :D

Effect handlers would allow us to have capabilities and DI for testing far more than we do today, but it is totally out of the realm of tools we consider.

For deployment tools, too, I know what exists in some dark corner that we can barely think about. Same for dynamic tracing. etc etc

@Di4na @cvennevik ๐Ÿ’ฏ the field is very wide, there are wonderful and exciting things out there we could spend several lifetimes to learn. It is really the question of every person to decide what they enjoy the most.

@yellowbrickc Yeah, my thinking is that each job adds too little, too slow, to our toolbox. Without going out of our way and in-depth on particular topics, I think we're bound to have major blind spots.

Like, I've learned a ton about web dev as a field from engaging with people, doing side projects, and actively reading articles for months, and it has taught me lots that I would never have learned on the job.

And I am now conscious of *even more* things within it that I have blind spots on.

@cvennevik Yes, this is what I mean by observing and not just consuming. I fully agree that our job means a life-long learning but my experience is not learning not enough on the job. This depends on each person, for sure. I can't talk about others, but in any phase of my life, from school to studies to restarting my life as an engineer, I always learned something new, every day. The last 3 jobs I left because I realised that I have nothing new to learn = I got bored. /1

@yellowbrickc Kinda hurts to read because I like my current workplace and feel like I can do good work here but also I'm largely working with familiar stuff every single day ๐Ÿ˜ญ

Mostly feeling like I'm learning by trying to push and improve the code base.

@cvennevik Which is boring, isn't it? At some point you should decide if the joy you feel is enough in this phase of your life. Nobody says you should follow my example ๐Ÿ™ˆ It was the right thing for me, does not need to be the same for you ๐Ÿค—
@cvennevik About side projects: I never did any of those, but I used to go for years to Open Spaces. I learned C# and MVC on my first open space ๐Ÿ˜†. I learned about Neo4J on another one, just like TensorFlow. In my whole life I choose very carefully what training to pay for and I did this only 3 times in the last 20 years. /2
@cvennevik The opportunities are there, since covid more than ever, we just need to grab them. Fun fact: my last conf around a language was Scala Days in 2018. I learned nothing what I can't learn by reading the documentation/blogs. I still use this opportunities but not to learn about libs and tools but about better, more efficient and necessary collaboration.
/end
@yellowbrickc I went to my first Open Space event last weekend!! I got to do a Capture the Flag for the first time, and touched React for the first time since uni ๐Ÿ˜ƒ
@cvennevik Open Spaces and NON-recruiting-driven meetups are the best places to learn because you can discuss and not just listen. You can meet people, find out how they learn, and learn from their mistakes and advice. I always called them the best "free time for nerds" - spending time with other nerds without a strict agenda
@yellowbrickc Yessss, it's so good. I'm keeping my eye out for similar events.

@cvennevik @yellowbrickc
Do you know about the @SoCraTes_Conf ?
It's actually an whole series of #OpenSpace events in Europe and the whole world.

I can highly recommend it

See also the partner conferences at the bottom of https://www.socrates-conference.de/home

SoCraTes - The Conference for Software Craft and Testing

@realn2s @cvennevik @SoCraTes_Conf this! Socrates is one name you can't fail.
@realn2s @yellowbrickc Unfortunately I'm not one for a lot of international travel, and it would have to be by plane too (traveling by train from Trondheim is a multi-day non-option for me), giving me a bit of a bad conscience. So it's mostly going to be online events, for me.
@cvennevik @yellowbrickc
Understood
Btw do you know @coderbyheart
He also based in Trondheim and into open spaces ๐Ÿ˜„
SoCraTes-IT

Software Craft and Testing Conference Italy

@cvennevik @yellowbrickc
Was it a security related open space?

@realn2s @yellowbrickc It was the Friends of Good Software unconference! https://frogsconf.nl/

@lisihocke hosted the CTF for us ๐Ÿฅฐ

Friends of Good Software Conference

Friends of Good Software (FroGS) - Saturday 28 February 2026 CET (open space)

FroGS conf
@cvennevik @realn2s @lisihocke just stick with her and you will learn more than you can bear ๐Ÿ˜€
@yellowbrickc @cvennevik @lisihocke
โ˜๐Ÿป๐Ÿ˜„
@realn2s @yellowbrickc @cvennevik you're all too kind! ๐Ÿ˜…๐Ÿ˜Š๐Ÿ™๐Ÿป (and I love seeing so many of my communities overlap in such beautiful ways)
@cvennevik @yellowbrickc @lisihocke
๐Ÿ˜„
We are organising a security focused #OpenSpace conference together (with some more people)
Home

Welcome to the Open Security Conference (osco), the people-centred international gathering for everyone interested in cybersecurity. Join us 5-8 November 2026 in Rรผckersbach, Germany.

Open Security Conference

@yellowbrickc @cvennevik @Di4na Exactly this. Itโ€™s also both humbling and enlightening to realise that our field is young and at best at the stage of medieval alchemists before the discovery of thermodynamics.

It will still take years, perhaps even generations, to formalise, distill and simplify the knowledge we accumulate to something comparable to the laws of physics. In the meantime, we all just have to learn the craft, practice the patterns and build up a gut feeling of what works, when it works, and what doesnโ€™t.

@bitbear @yellowbrickc @cvennevik I am not sure I agree there, for once that I am the optimist. I think this is more a problem of paying people to build the tools than to invent and formalise or simplify it.
@Di4na @bitbear @cvennevik I fully agree with @bitbear . Until we are in the situation that "3 engineers solve the same problem in 5 different ways", we can't talk about standards and defaults. For me, this is the beauty and the pain of our industry at the same time. But it is not efficient, and it is not reliable. Hell, we can't even define what is a junior or a senior engineer.

@yellowbrickc @Di4na @cvennevik indeed! As @trondhjort has explored in length, development is a socio-technical skill.

As such, in most of the domains worth discussing (occupying the 2 ยฝ last quadrants of Cynefin), we are dealing with such advanced systems that itโ€™s very difficult to prescribe cause and effect.

Software development is comparable in age and maturity of fields such as psychology and economics. All of them are about exploring and making sense of such complex systems that whatever enlightenments and knowledge we have uncovered, itโ€™s only the first layer of fresh snow on the tip of the iceberg.

Itโ€™s hard to obtain the perspective required to view the current state of affairs as the minuscule steps of progress they actually are, instead of self-elevating us to the status of resident royal astrologers.

Itโ€™s difficult, but I think this perspective and the humility it imbues is a very important skill to pursue โ€” for all of the mentioned fields (especially economics).