Tuesday, October 29, 2013

How very SOLID of you.

It's not that I can't multitask. I just choose to follow the   Single Responsibility Principle.
I've been doing interviews again. It always surprises me when you throw out the generic question, why don't you OOP me a pet shop, or a DVD kiosk, or a Secret Santa site...take your pick or make up your own...and the interview totally falls over.  What are they teaching you in Comp Sci?  I'm not saying they should specifically be teaching you the Single Responsibility Principle or SOLID (but they should).  I'm even less stating that you should memorize the damn thing (but you should be familiar with it to the point you understand it).  What I'm saying is that if you're going in for an interview - primarily this applies to new grads, although I get my share of experienced devs and masters students who fall into the same camp - you should go out and quickly refamiliarize yourself with one acronym (GRASP, YAGNI, or go easy on yourself and use DRY) and when someone asks a Pet Shop question, take five minutes to walk them through why it's important in the context of a design.  Uses up interview time.  Shows you know the basics.  And it also shows - almost as important - that you care about the interview and took the time to prepare and come with something to fill the gaps and show you know how to think on your own.  The same can be said of Software Design Patterns.  If you can't at least say the MVC is Model View Controller, I don't know what you've been doing for the last several years.  I'm not sure how you can escape MVC without doing it on purpose.

Rant over.

http://en.wikipedia.org/wiki/Single_responsibility_principle
http://en.wikipedia.org/wiki/Solid_(object-oriented_design)
  • Single Responsibility Principle
  • Open/Closed Principle
  • Liskov Substitution Principle
  • Interface Segregation Principle
  • Dependency Inversion Principle
Snarky: It's not that I can't multitask. I just choose to follow the Single Responsibility Principle.
Title: How very SOLID of you.

No comments:

Post a Comment