Orlando .NET User Group Talk – 12 Practices to be a Better Developer

Last week I gave a talk at the Orlando .NET User Group on Practical Software Craftsmanship – 12 Practices to be a Better Developer. Most of these 12 are just things I have learned over my years of development. I promised I would put links to the slides and resources from my talk. They are in no particular order and I don’t claim they are nothing more than fortune cookie wisdom :D . I will try and write more about these in the future.

Download 12 Steps to a Better Developer.pptx.zip (15261.7K)

The 12 Practices

  1. Source Control – If you don’t store your code in source control, you’re putting your company at risk.
  2. Test-Driven Development produces higher-quality code. Behavior Driven Design – Behavior is documentation for other developers and users.
  3. Build Systems – Building is more than just compiling code.
  4. Continuous Integration – Check in early and often.
  5. Real Time Code Review – Two heads are better than one.
  6. Refactoring: Easy as red light green light.
  7. Read Code – “You don’t become a better writer by just writing.” Scott Hanselman
  8. Code In Increments – Real programmers work for hours and hours straight, without a break, without even looking up. Don’t break your flow to stop and compile: just keep typing! :)
  9. Sharpen your skills by learning a new language.
  10. Learn SOLID
    • Single Responsibility Principle – There should never be more than one reason for a class to change.
    • Open Closed Principle – A class should be open
for extension but closed for modification.
    • Liscov Substitution Principle – Subtypes must be substitutable for their base types.
    • Interface Segregation Principle – Clients should not be forced to depend upon interfaces that they do not use.
    • Dependency Inversion Principle – High level modules should not depend upon low level modules. Both should depend upon abstractions. Abstractions should not depend upon details. Details should depend upon abstractions.
  11. Know when to unlearn. The ways you learned when you first started are clearly the best ways. Not much has changed since then, really. :)
  12. Be a Mentor

Resources

These are great places to pick up some of the key concepts:

Scott Hanselman – Reading To Be A Better Developer
S.O.L.I.D. Month on LosTechies
31 Days of Refactoring
MSpec BDD Tool
MSpec is your BFF
xUnit
xUnit Patterns

Listened to: Death Whispered a Lullaby from the album “Damnation” by Opeth

Related Articles:

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

About Scott Densmore

A transplant from Seattle to Florida trying to bring some community love to the sunshine state. And don't call me a hippie.
This entry was posted in Uncategorized. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • http://pwnagepants.lostechies.com/ Marcus Bratton

    Re: #8

    I’m having a hard time detecting if that’s sarcasm or not. I’m hoping it is. :)

  • http://tech.wowkhmer.com samnang

    This is a great post.

  • http://goarticles.com/article/The-Three-Vital-Systems-That-a-C-Sharp-Dot-Net-Developer-Should-Really-Learn-to-Turn-Out-to-Be-Successful/7256936/ CallumPope

    I think .NET devlopment  is unconditionally the most adjustable web application language. for anyone.