1. Sep 26th, 2007

    Rounded Corners – 153 (Divide by zero)

    Debug this. Apparently there’s a gender divide related to debugging:

    A couple of years ago, they stumbled upon an intriguing tidbit: Men, it seemed, were more likely than women to use advanced software features, specifically ones that help users find and fix errors. Programmers call this “debugging,” and it’s a crucial step in building programs that work.

    Other data points from ComputerWorld.

    Test-driven living. Personal unit tests:

    Basically, I’ve made a list of personal unit tests: assertions about myself that I’d like to be true.

    Metaphorically speaking. Instead of deciding which software development methodology is the ultimate hammer for your production nails, try picking a metaphor and running with it:

    There are lots of discussions on Software Development “methodologies”. They are codified sets of practices on how to do software development “correctly”. When you get down to the root of each of these methodologies, the root of all of them is a metaphor.

    The real deal. Using protect_from_forgery (originally CsrfKiller) to avoid CSRF attacks in Rails 2.0.

    Special place in hell. I was just going through the SalesForce API, I heard it’s CRUD-over-SOAP, so I went looking for anything resembling conditional GET or PUT. After all, tunneling HTTP over SOAP over HTTP has been done before, and conditional PUTs are great for read consistency, which the rest of the API does quite well.

    I didn’t find what I was looking for. But I did find this:

    UserTerritoryDeleteHeader: Specify a user to whom open opportunities are assigned when the current owner is removed from a territory. If this header is not used or the value of its element is null, the opportunities are transferred to the forecast manager in the territory above, if one exists. If one does not exist, the user being removed from the territory keeps the opportunities.

    Yes. This is a SOAP header. It goes in the header part of the envelope. But it only affects certain payloads. By causing side effects. At the application level.

    Above, the zero way out.

    Your comment, here ⇓