Where are all the modern software design books?
There was a huge burst of creativity around software design & analysis from the late 1980s up to the early 2000s (All the OOD ones, GoF, Fowler, Martin, Evans, HtDP etc) and then there's not been much since (except for DDD stuff)
Recently there has been some new activity: "A Philosophy of Software Design", "Secure By Design" and just now "Software Design for Flexibility".
("Designing Data-Intensive Applications" and "Code as a Crime Scene/Software Design X–Rays" are great but not really design books imo)
Yes, there's been been lots of architecture ones, first SOA and now microservices, but I don't count those as software design either. If you search on Amazon, there's nothing too interesting other than the ones I already mentioned. Many are really old! amazon.com/gp/bestsellers…
So, why is this? Is there is nothing new to say in software design over the last 20 years? Or did Agile's fear of BDUF kill off design thinking? Or is it just that design books don't sell? (I don't think the last one is a factor, because there are not many blogs on design either)
Anyway, I'm interested in other people's takes on this!

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Scott Wlaschin

Scott Wlaschin Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @ScottWlaschin

2 May
In response to this tweet, people recommended their favorite design-focused books, which I'll list.
But read on to the end because I want more :)

"Growing Object-Oriented Software, Guided by Tests" by @natpryce & @sf105
"Practical Object-Oriented Design" by @sandimetz

1/n
"Programming DSLs in Kotlin" by @venkat_s
"Joy of Kotlin" by @pysaumont
"Designing Elixir Systems with OTP" by @JEG2 & @redrapids
"Data-oriented design" dataorienteddesign.com/dodbook/
leanpub.com/usablesoftware… by @alexboly

2/n
And some FP-focused ones

"Elements of Clojure" by @ztellman
"Grokking Simplicity" by @ericnormand
"FP in Scala" by @pchiusano and @runarorama
"Functional Design and Architecture" by @graninas

3/n
Read 10 tweets
30 Mar
Thread! I've watched 100s of hours of photography videos on YouTube. I've learned from the experts! From them, I've learned that being a good photographer is all about having the latest gear, having more megapixels, and knowing those cool Lightroom tricks.
So, thank you, YouTube experts! I now have the confidence to help other beginning photographers get better. In the rest of this thread I'll critique some photos that have been sent to me for review.
We'll start with one sent to me by "Henri". My critique: there's too much motion blur. Next time, up your ISO and use a faster shutter speed. And there's way too much sensor noise! Get yourself a professional camera, mate!
Read 24 tweets
23 Dec 19
If you care about usability, human factors, normal accidents, etc, then this is a must read. If this has been reported correctly, the design of the ship's navigation system is shocking.
features.propublica.org/navy-uss-mccai…
To summarize: The US Navy's John McCain collided with an oil tanker and 10 people died. The crew using the navigation system got blamed but the navigation system itself didn't. Sadly, though, many of the mistakes have been made before and will probably be made again 😟
Mistake #1 -- Lack of training: [the helmsman] felt confident using the system to control the speed and heading of the ship. But... “There was actually a lot of functions on there that I had no clue what on earth they did,” he said of the system.
Read 26 tweets
12 Oct 19
I'm developing a new alternative to microservices that addresses many of the problems that people run into. I call it "SPMSA". Bear with me -- I'll explain the acronym in a later tweet. 1/
First, design your microservices in the usual way. No more than 500 lines each, say, and with well-defined interfaces. But here's the first trick: you put them all in the same repo. This means that you have a single commit that encompasses all services at once. 2/
That means when you commit or refactor, you can build and test the services as a whole system and be sure that they *always* all work together! Awesome! 3/
Read 12 tweets
4 Aug 19
This is a great idea: . Before I was a programmer I use to do a bit of odd-job carpentry, so I'm going to chime in with my take based on my experiences in that field.
When you're outside an area of expertise looking in, it can often seem monolithic and uniform, but when you're an insider you quickly realize that there are many different subcommunities, each with different specialties and different approaches. They sometimes hate each other :)
We know this is true for programming, so why shouldn't we expect this is true for everything else too? In fact, a good clue that someone doesn't have any experience in a certain area is that they radically over-simplify things. Experienced people never think things are simple.😀
Read 25 tweets
24 Jun 19
NewCrafts is the one of the best conferences if you like alternative takes on programming culture. There are a number of excellent videos available on their site: videos.ncrafts.io I'm going link to a few below. #newcrafts
If you have a philosophical bent, start with "Nihilism and technology" by @ethicistforhire videos.ncrafts.io/video/338479835
or "In defence of uncertainty" by @abebab videos.ncrafts.io/video/338449961
Read 11 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!