D³, Debug Driven Development

Development mechanics have taken a rather huge paper in the programming world in late years. Nowadays you can read all kind of funny names for development techniques such as TDD, XP, Scrum, etc. In the python world TDD (Test Driven Development) has become highly popular and this is reflected everywhere (eg: Django apps has a full testing suite out of the box).

However this never suited the way I work. Since I’ve learned all by myself, I grew my own development mechanics based on 5 basics steps:

  1. Choose feature to work on
  2. Write a small mock up of what it will look like
  3. Test it as a user (it’s critical that you test the feature as a user, not an automated process)
  4. Fix bugs found
  5. Repeat 3 and 4 ad eternum (or as necessary)

This not only allows you to be your own user, but it also gives you an early feeling of what the feature is like and what it bring to the table for the whole product.

Since being highly product focused, D³ matches quite nicely with rapid development techniques. It becomes an iterative process with small cycles forcing the programmer to focus on what matters, no fancy designs.

Now I think, Are there any others debug driven developers out there? How does this all fit with “Premature optimization is the mother of all evil”? I understand that TDD leads to clean code, but in the practice most projects never get 100% code coverage or 100% test pass.

How about focusing on the project and not the development process as a standalone science? Leave the polishing for later! Focus on what matter and bring features to your product!

What is your favorite activity to do with students if/when you have the 10 minutes of "leftover" time at the end of class?

(Or do you just let them use it as free time?)

Teacher Dare Day: What is your favorite part about being a teacher?

Two things.

  1. All the crazy things that come out of their mouths. They say the weirdest but most hilarious things.
  2. The lightbulb effect. That moment when what you’ve taught them clicks and you get to watch it happen.

Other than Tumblr, how do you wind down after a school day?

Teacher Dare Day: If you had to teach a different grade/subject than you currently do, what would you want to teach?

I’d want to teach middle school, I think. Middle school English. The thought of doing this has crossed my mind several times lately. 

Teacher Dare Day!

If you run centers in your classroom, how do you manage them? What centers do you have?

Off TDD Question -

If you were going to get a tattoo based on teaching, what would it be, and why?

Why I write unit tests for javascript code

I been writing javascript for many years but I just recently started writing unit tests for my code.   I´ve been procrastinating about this for many years but now I consider it to be absolutely necessary.

What got me started was that I was creating a javascript heavy app and realized that it was no way I could be confident about the app working correctly without a good test coverage.

But the second as important thing is that writing tests forces me to make better design decisions about my code & the result becomes much more maintainable.

If you are sold on this idea don’t ask your boss if he agrees with you.  As a web professional writing tests should simply be a “way of life” and a tool to write quality code.

TDD: Describe the one person in your school building that you could not survive without.

Mine is my classroom-neighbor. She’s been teaching for fifteen years and has been my rock this year — even going as far as insisting she’s not my rock because I’m doing great on my own, which is its own form of support and validation. But the reality is: she is never anything but glad to see me, has infinite patience for all my questions, and always always makes the time to help me out. She’s amazing.

Loading more posts...