The good, the bad, and the ugly developers

Intresting tweet

I saw very interesting tweet from Glenn Block @gblock and this remind me with something I read in The Clean Coder book from Uncle Bob Martin, which talks about professional developer and what to do to be a professional. Uncle Bob describe the professional developer takes the responsibility of his mistakes, it’s true because if he take this responsibility, he’ll learn from his mistakes and learn how he made it in first place, so he can avoid it next time, even if he make this mistake again he knows how to solve it quick and clean.

Personally I learn like this and it’s teach you the lesson very well.

Dear readers please give me your feedback/opinion about this subject.

Tagged on: ,
  • Mohamed_Meligy

    While I don’t agree with what he is implying here (I bet he doesn’t mean it as it came out), because good developers can be new to programming and too smart that they learn what’s needed so quickly (Jeff Atwood talks a lot about this, and about why he tries to hire interns “students”, in his blog and his book “Effective Programming, more than writing code”), there are also some facts about how broken everything we use it, that it really helps and saves some valuable debugging and google-fu time to know not just how to use the tool, but also to know how to use it in a way that avoids all the known common gotchas BEFORE you hit them.

    This very thing makes it very difficult for me to imagine how new developers can get into let’s say ASP.NET webforms for example. You teach them a bit of HTML, a bit of CSS, a bit of C#, a bit of Webforms, a bit of SQL, and then you tel them why use a master page, why use validation groups, why this CSS doesn’t work in this browser and what’s the work-around, why use SessionState service, why their code breaks when they did, what’s the trick to send a file for download, what about SQL injection, what’s the trade-off between ORMs and direct ADO.NET or micro-ORM, what not-well documented conventions to use in NH, why and how they should use single EF context / NH session per request, etc… etc…

    All the tricks that DID take us years to learn and overcome. It does take time to grasp those because quite often you have to grasp them by falling into them or reading about them then getting a bad fix then realizing again what’s the side effect and get the right solution. Some smart developers do this sort of things in VERY short time, but they still take “some” time to get through most of the common one sand don’t need even this extra time in finding or inventing the solutions to common solved problems.

    • EmadMokhtar

      What you disagree with is the time factor, but I was focusing on the whole picture of fall in bad and learn from it “Rise and fall” that’s what craftsmanship is to lean about it and to learn how to put in practice.