Kodsnack 620 - Encapsulation of knowledge, with Dejan Milicic
2024-12-17 05:26Fredrik talks to Dejan Milicic about software development - understanding, methods, and stories.
We start by talking about encapsulation of knowledge and the essential software in organizations. Almost every organization should - it can be argued - be developing software that solves their unique problems, and yet so many outsource so much of their knowledge encapsulation. Oh, and we can never completely encapsulate our knowledge in code either, so all the more reason to keep people who actually know what the code does and why around.
Dejan tells us about his way to Ravendb and a developer relations role - and how you can craft your own job, stepping suitably outside of your comfort zone along the way.
We also talk about shortening attention spans, daring to dig down a bit and find out about the context of things. Like the second sentence of some oft-repeated quote. Prohibit bad things, but help automate doing good things and avoid doing the bad things completely.
Dejan shares some database backstories - why would someone want to build one more database? Specifically, what lead to the creation of Ravendb? And the very strong opinions which have been built into it. Avoiding falling into marketing-driven development.
After that, we drift into talking about processes and how we work. Every organization is unique - which strongly speaks against adapting the “best practices” and methodologies of others. Or keeping things completely the same for too long. Innovation is also about doing what other people are not doing.
Why is concurrency still hard? The free lunch has been over for twenty years! Functional programming and immutability offer ways forward, why aren’t these concepts spreading even more and faster? We get right back to understanding more context when Dejan discusses how few of us seem to have understood, just for example, the L in SOLID. Dive deeper, read more, and you will find new things and come up with new ideas.
Finally, Dejan would like to see software development becoming just a little bit more mathematical. So that things can be established, verified and built on in a different way.
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
- Dejan
- Ravendb
- Informatics
- Domain-driven design
- Event sourcing
- Data is worthless - said in episode 601
- Developer relations
- Nosql databases
- Jack of all trades
- Jimmy - who introduced Fredrik to Dejan at Øredev 2024
- Hibernate
- Relational databases
- Oren Eini - creator of Ravendb
- Antipatterns
- n+1
- Couchbase
- Scrum
- Agile software development
- The Toyota approach
- The Scrum guide
- Unison programming language - VC funded
- Dr. Dobb’s journal
- The free lunch is over
- Concurrency
- SOLID
- Liskov substitution principle
- Repositories on top Unitofwork are not a good idea - by Rob Conery
- Elm
Titles
- A mathematician turned software developer
- Coding, but without deadline
- Saturated with software development
- Encapsulation of knowledge
- A bit surreal
- Accept people as they are
- There’s a second line
- Professional depression
- Prevented, not diagnosed
- The pipeline kind of thinking
- Frustration-driven development
- (You shouldn’t be) Punished for being successful
- The largest company of his or her life so far
- Optimized for maintaining the status quo
- Wash away all the context
- Manager of one
- The proverbial Jira
- Substantial content
- Methods of moving forward