Los Techies : Blogs about software and anything tech!

SOLID Development Principles – In Motivational Pictures


I found the Motivator this morning. It lets you create your own motivational pictures. So, here’s my first run at creating the SOLID software development principles in motivational picture form. I ‘borrowed’ the images from google image search results. I hope you find them to be as fun as I do! I have them all hanging up in my team room, already. :)

(Update: I never expected the response to this post to be so great! There have been many inquiries about prints, high res versions, etc. As I said in the comments below, the source pictures that are linked via the thumbnails are all I have. There does appear to be some effort to produce high res versions, though. See the comments for more info!)

 

Update: Due to the continuous request for prints, posters, calendars, etc, we (LosTechies) are looking into what it would take to get these turned into high quality prints of various types. I don’t have any detail yet, but I am hoping to have some good info on this, fairly soon.

 

SOLID

Software development is not a Jenga game.

SOLID

(This one was created by Mark Nijhof’s. He posted it via twitter and I’m borrowing it for my own collection.)

 

Single Responsibility Principle

Just because you can, doesn’t mean you should.

Single Responsibility Principle 2

(Update: I knew I had seen this Swiss Army knife in a Single Responsibility post before. Gabriel reminded me where.)

 

Open Closed Principle

Open chest surgery is not needed when putting on a coat.

Open Closed Principle 2 

Liskov Substitution Principle

If it looks like a duck, quacks like a duck, but needs batteries – you probably have the wrong abstraction

Liskov Subtitution Principle

Interface Segregation Principle

You want me to plug this in, where?

Interface Segregation Principle

Dependency Inversion Principle

Would you solder a lamp directly to the electrical wiring in a wall?

 

 

 

Dependency Inversion Principle

Creative Commons License

There’s been a lot of request to re-use these images, so I’m going to release them under a Creative Commons license.

Creative Commons License 

SOLID Motivational Posters, by Derick Bailey, is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.

Kick It on DotNetKicks.com
Posted Feb 11 2009, 12:36 PM by derick.bailey

Comments

Mark Nijhof wrote re: SOLID Development Principles – In Motivational Pictures
on 02-11-2009 12:44 PM

Very nice! I especially like the ducks.

sean biefeld wrote re: SOLID Development Principles – In Motivational Pictures
on 02-11-2009 12:58 PM

Excellent, I like the single responsibility image the best.   It is the most Illuminating of the principle it represents

derick.bailey wrote re: SOLID Development Principles – In Motivational Pictures
on 02-11-2009 1:21 PM

@Sean,

ya - it's hard finding pictures that really do show you what the principle is all about.

Scott C Reynolds wrote re: SOLID Development Principles – In Motivational Pictures
on 02-11-2009 1:33 PM

on the other hand, if I'm going camping, I don't necessarily want unitaskers. I'd think about saving room by packing one (probably less extreme) swiss army knife.

Ah analogies.

derick.bailey wrote re: SOLID Development Principles – In Motivational Pictures
on 02-11-2009 1:52 PM

@Scott,

Yeah. Isn't it wonderful how analogies are often single directional, completely falling apart from the other direction? :)

James wrote re: SOLID Development Principles – In Motivational Pictures
on 02-11-2009 1:53 PM

Hah!  I used a picture of that same knife when writing about YAGNI yesterday.

Great pictures

Chris Taylor wrote re: SOLID Development Principles – In Motivational Pictures
on 02-11-2009 6:46 PM

Awesome pictures.  Well done.

Can't decide on a favorite!  Though, I do find the DIP one most illuminating.  :D

Reflective Perspective - Chris Alcock » The Morning Brew #285 wrote Reflective Perspective - Chris Alcock » The Morning Brew #285
on 02-12-2009 2:33 AM

Pingback from  Reflective Perspective - Chris Alcock  » The Morning Brew #285

DannyBhoy wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 3:20 AM

Fantastic!  My favourite has to be the OCP.  I've always found that one quite hard to get across... now I'm going to have this motivational pic close to hand at all times. :-)

SOLID Development Principles ??? In Motivational Pictures | Steve Freeman wrote SOLID Development Principles ??? In Motivational Pictures | Steve Freeman
on 02-12-2009 4:26 AM

Pingback from  SOLID Development Principles ??? In Motivational Pictures |  Steve Freeman

Mat Roberts wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 5:21 AM

Love the Dependency Inversion Principle (that's also the one I'm trying to learn at the moment)

Ian Nelson wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 6:51 AM

Brilliant stuff. I'd buy a set...!

Michael A. Smith wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 6:53 AM

Man, these are bloody brilliant :D

Kevin Miller wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 7:51 AM

Thanks Derick this post just made my morning. Great job. Please put posters up on the LosTechies mech table. I'll take a set.

Aggregator @ Bitubique wrote Motivational posters for programmers!
on 02-12-2009 7:51 AM

submitted by neutronbob to programming [link] [0 comments]

derick.bailey wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 8:11 AM

Wow! I never expected this kind of response from these. :)

There have been several inquiries about using them and or getting prints, etc.... please feel free to copy, print or do whatever you wish with these! I wanted to share with the community so that others can use them for their own purposes.

As for prints - the images that are linked are the original sizes / resolutions from the Motivator. I don't have any higher resolutions. Sorry. I'll have to think about creating some higher res versions... but don't have any clue how long that would take me. Anyone else want to join in an effort on doing that? :)

unclaimed money wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 8:23 AM

The block one was the best. How about house of cards for spaghetti code?

Justin Etheredge wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 9:15 AM

@derick I"m definitely going to create a print version of the first one. I'll let you know when I get it up!

Strongbad wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 9:26 AM

Hey dumpus, why don't you take that single responsibility device and shove it in your eye.

Sry, saw the strong sad avatar and couldn't resist. :-D

Very nice collection though.

Mark Nijhof wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 10:11 AM

@Justin I have a higher resolution image of the blocks that you can get from here: blog.fohjin.com/.../Jenga-Fallen.jpg

matelot wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 11:59 AM

WTF is "Dependency Inversion Principle" ?

derick.bailey wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 12:31 PM

@matelot

see the "SOLID software development principles" link at the beginning of the post. it has descriptions and examples of all the principles that are shown in these images.

biker dude wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 1:24 PM

I'm so like poster nr 2, just because you can, doesn't mean you should

Chipping the web: February 12th -- Chip’s Quips wrote Chipping the web: February 12th -- Chip’s Quips
on 02-12-2009 2:01 PM

Pingback from  Chipping the web: February 12th -- Chip’s Quips

ZOMG wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 3:24 PM

Exactly what are they teaching at university computer science departments -- or more precisely, what you learning there -- if you think these bits of common sense are "brilliant"?

"Software development is not a Jenga game."  -- Not exactly Lao Tzu.

ASPInsiders wrote SOLID Development in Pictures
on 02-12-2009 3:28 PM

While I can’t claim to be a huge adherent of any particular set of development principles (I admire others’

derick.bailey wrote re: SOLID Development Principles – In Motivational Pictures
on 02-12-2009 3:33 PM

@ZOMG,

Nothing. That's the problem. Our universities don't teach ANYTHING about the real world of software development. I hire college graduates from computer science and information systems schools quite regularly. My default assumption, after many many years of hiring college graduates, is that they know nothing of the real world. I have never been let down from this expectation.

what you think is 'common sense' is not - not in software development, anyways. What is common sense in one industry (medical - hence the surgery poster; or electrical - hence the soldering wires poster) is not common sense in software development. I am devoting much of my career to correcting this poor situation.

Links 2/11/09 « Jeff Weaver wrote Links 2/11/09 « Jeff Weaver
on 02-12-2009 8:17 PM

Pingback from  Links 2/11/09 « Jeff Weaver

links for 2009-02-12 « My Weblog wrote links for 2009-02-12 « My Weblog
on 02-12-2009 10:02 PM

Pingback from  links for 2009-02-12 « My Weblog

NexNova » Blog Archive » Links del giorno: February 13, 2009 wrote NexNova » Blog Archive » Links del giorno: February 13, 2009
on 02-12-2009 11:16 PM

Pingback from  NexNova » Blog Archive   » Links del giorno: February 13, 2009

Chris wrote re: SOLID Development Principles – In Motivational Pictures
on 02-13-2009 7:21 AM

Great posters!

Rick Minerich wrote re: SOLID Development Principles – In Motivational Pictures
on 02-13-2009 9:46 AM

I wish I could buy them as a set

Javier Lozano wrote re: SOLID Development Principles – In Motivational Pictures
on 02-13-2009 12:43 PM

These are hilarious!  I wonder how many will 'get it'? :)

Julian Dominguez wrote re: SOLID Development Principles – In Motivational Pictures
on 02-13-2009 12:52 PM

Excelent! Especially the" single responsibility principle" one

Doc Pete wrote re: SOLID Development Principles – In Motivational Pictures
on 02-13-2009 7:12 PM

This is heuristics to the 9.6 out of 10

Keep up the good work

Andre wrote re: SOLID Development Principles – In Motivational Pictures
on 02-13-2009 7:17 PM

FUNNY!!! but true. keep up the good work ;)

Best-practice object-oriented design principles - SOLID | Oh I See wrote Best-practice object-oriented design principles - SOLID | Oh I See
on 02-13-2009 9:20 PM

Pingback from  Best-practice object-oriented design principles - SOLID | Oh I See

igorbrejc.net » Fresh Catch For February 15th wrote igorbrejc.net » Fresh Catch For February 15th
on 02-15-2009 1:10 AM

Pingback from  igorbrejc.net » Fresh Catch For February 15th

Ryan Garaygay wrote re: SOLID Development Principles – In Motivational Pictures
on 02-17-2009 1:41 PM

DIP. haha. solder a lamp directly in the wall. my cat pulls it off all the time :)

This is funny but what can i say, motivating :) Thanks

RWendi's Blog wrote Link: SOLID Development Principles – In Motivational Pictures
on 02-20-2009 4:00 PM
Five principles for object oriented software engineering — The Endeavour wrote Five principles for object oriented software engineering — The Endeavour
on 02-22-2009 3:06 AM

Pingback from  Five principles for object oriented software engineering — The Endeavour

Dev Blog AF83 » Blog Archive » Veille technologique (x2) : Annonces, Contenus, Conf??rences, M??thodes, Agilit??, D??veloppment, Langages, Editeurs, Outils, Bases de donn??es, Protocoles, Biblioth??ques, SEO, Ergonomie, etc. wrote Dev Blog AF83 » Blog Archive » Veille technologique (x2) : Annonces, Contenus, Conf??rences, M??thodes, Agilit??, D??veloppment, Langages, Editeurs, Outils, Bases de donn??es, Protocoles, Biblioth??ques, SEO, Ergonomie, etc.
on 02-23-2009 1:48 PM

Pingback from  Dev Blog AF83  » Blog Archive   » Veille technologique (x2) : Annonces, Contenus, Conf??rences, M??thodes, Agilit??, D??veloppment, Langages, Editeurs, Outils, Bases de donn??es, Protocoles, Biblioth??ques, SEO, Ergonomie, etc.

dauchande wrote re: SOLID Development Principles – In Motivational Pictures
on 02-23-2009 3:05 PM

Somebody needs to do something like this for the GoF patterns.

UUpThere wrote re: SOLID Development Principles – In Motivational Pictures
on 02-25-2009 9:28 PM

Great work.

May I suggest an alternative for the Open/Closed Principle: "Eating something different shouldn’t require open chest surgery."

This emphasizes the requirement that a member with an abstract (base) class parameter be able to process the parameter value regardless of type, avoiding runtime type inspection. The parameter is "food"; the actual type of the parameter is the kind of food. We should be able to eat all kinds of food without modifying our digestive system.

Maudrit » Blog Archive » Single Responsibility Principle wrote Maudrit » Blog Archive » Single Responsibility Principle
on 02-26-2009 11:01 PM

Pingback from  Maudrit  » Blog Archive   » Single Responsibility Principle

SOLID Development Principles ??? In Motivational Pictures (enhanced) « maxheapsize.com wrote SOLID Development Principles ??? In Motivational Pictures (enhanced) « maxheapsize.com
on 03-08-2009 6:36 PM

Pingback from  SOLID Development Principles ??? In Motivational Pictures (enhanced) «  maxheapsize.com

Steve Smith's Blog wrote Space Coast ASP.NET MVC and SOLID Principles Talk
on 04-19-2009 11:41 PM

Last week I visited the Space Coast .NET user group in Florida (courtesy of INETA) to talk about ASP.NET MVC and SOLID software development principles.  If you’re interested, you can grab the slides and demos from the link below: Download slides

jlockwood wrote re: SOLID Development Principles – In Motivational Pictures
on 04-25-2009 1:36 AM

@derick.bailey Holy crap Derick, I missed this post when it was published (apology here).  This is brilliant!  

IUpdateable from Eric Nelson wrote Dependency Inversion Principle from SOLID – in a picture :-)
on 04-27-2009 6:24 PM

I started reading into the SOLID Principles in March bit didn’t get very far before I moved on to do

ASP.NET 3.5 Social Networking: wrote SOLID principles explained in a visual manner
on 05-08-2009 12:29 AM

SOLID principles explained in a visual manner

Baka.Blog wrote Solid Principles
on 05-19-2009 4:48 AM

These are not “ commandments ” but merely engineering principles/guidelines: http://www.lostechies.com

Steve Smith's Blog wrote TechEd 2009 Session Aftermath
on 05-27-2009 11:27 AM

I’m a bit later than usual in posting my slides and demos from my talks, and for that I apologize.  TechEd this year was a lot of fun, albeit a little disappointing due to its being a smaller show than in past years.  However, it was great to

Steve Smith's Blog wrote DRY - Don’t Repeat Yourself - Motivator
on 06-08-2009 1:16 PM

I’ve been meaning to create a DRY (Don’t Repeat Yourself) motivational poster for a while now, ever since seeing Derick Bailey’s SOLID posters .  To me, DRY is at the heart of many software patterns and principles, and sums up much better the similar

Just because you can, doesn’t mean you should « shino.de wrote Just because you can, doesn’t mean you should « shino.de
on 07-08-2009 2:08 PM

Pingback from  Just because you can, doesn’t mean you should «  shino.de

The SOLID Principles, Explained with Motivational Posters ??? Global Nerdy wrote The SOLID Principles, Explained with Motivational Posters ??? Global Nerdy
on 07-15-2009 11:21 PM

Pingback from  The SOLID Principles, Explained with Motivational Posters ??? Global Nerdy

Tune Up Your PC » Post Topic » The SOLID Principles, Explained with Motivational Posters wrote Tune Up Your PC » Post Topic » The SOLID Principles, Explained with Motivational Posters
on 07-16-2009 3:36 AM

Pingback from  Tune Up Your PC  » Post Topic   » The SOLID Principles, Explained with Motivational Posters

涙目で仕事しないSE wrote オブジェクト指向設計の原則がよく分かるかも知れない画像
on 07-17-2009 10:02 PM

...

Twitted by ctford wrote Twitted by ctford
on 07-21-2009 8:22 AM

Pingback from  Twitted by ctford

' + title + ' - ' + basename(imgurl) + '(' + w + 'x' + h +') wrote ' + title + ' - ' + basename(imgurl) + '(' + w + 'x' + h +')
on 07-31-2009 10:40 AM

Pingback from  ' + title + ' - ' + basename(imgurl) + '(' + w + 'x' + h +')

ninjacoding.net wrote SOLID Development Principles blog war
on 08-04-2009 4:20 PM

SOLID Development Principles blog war

ninjacoding.net wrote SOLID Development Principles blog war
on 08-07-2009 5:49 PM

SOLID Development Principles blog war

Rock SOLID software construction wrote Rock SOLID software construction
on 08-08-2009 4:17 AM

Pingback from  Rock SOLID software construction

Twitter Trackbacks for SOLID Development Principles ??? In Motivational Pictures - new ThoughtStream("Derick Bailey"); - Los Techies : [lostechies.com] on Topsy.com wrote Twitter Trackbacks for SOLID Development Principles ??? In Motivational Pictures - new ThoughtStream("Derick Bailey"); - Los Techies : [lostechies.com] on Topsy.com
on 08-30-2009 11:04 AM

Pingback from  Twitter Trackbacks for                 SOLID Development Principles ??? In Motivational Pictures - new ThoughtStream("Derick Bailey"); - Los Techies :         [lostechies.com]        on Topsy.com

Alexandru Bolboaca-Diaconu (alexboly) 's status on Tuesday, 29-Sep-09 13:03:40 UTC - Identi.ca wrote Alexandru Bolboaca-Diaconu (alexboly) 's status on Tuesday, 29-Sep-09 13:03:40 UTC - Identi.ca
on 09-29-2009 9:03 AM

Pingback from  Alexandru Bolboaca-Diaconu (alexboly) 's status on Tuesday, 29-Sep-09 13:03:40 UTC - Identi.ca

SOLID Class Design: The Single Responsibility Principle « Tom Dalling wrote SOLID Class Design: The Single Responsibility Principle « Tom Dalling
on 11-21-2009 12:32 AM

Pingback from  SOLID Class Design: The Single Responsibility Principle «  Tom Dalling

SOLID Class Design: The Open Closed Principle « Tom Dalling wrote SOLID Class Design: The Open Closed Principle « Tom Dalling
on 11-21-2009 12:35 AM

Pingback from  SOLID Class Design: The Open Closed Principle «  Tom Dalling

SOLID Class Design: The Liskov Substitution Principle « Tom Dalling wrote SOLID Class Design: The Liskov Substitution Principle « Tom Dalling
on 11-21-2009 1:49 AM

Pingback from  SOLID Class Design: The Liskov Substitution Principle «  Tom Dalling

SOLID Class Design: The Dependency Inversion Principle « Tom Dalling wrote SOLID Class Design: The Dependency Inversion Principle « Tom Dalling
on 12-19-2009 2:40 AM

Pingback from  SOLID Class Design: The Dependency Inversion Principle «  Tom Dalling

SOLID: Software that works. | Developing UX wrote SOLID: Software that works. | Developing UX
on 02-09-2010 6:45 PM

Pingback from  SOLID: Software that works. | Developing UX

SOLID Class Design: The Interface Segregation Principle « Tom Dalling wrote SOLID Class Design: The Interface Segregation Principle « Tom Dalling
on 02-18-2010 8:17 AM

Pingback from  SOLID Class Design: The Interface Segregation Principle «  Tom Dalling

Copyright Los Techies 2008, 2009. All rights reserved.
Powered by Community Server (Commercial Edition), by Telligent Systems