Two more uses for a Secure Hash
Filed Under Programming
In a previous article I talked about using salt with a secure hash, but all of the examples assumed that the secure hash would be used to validate passwords. Secure hashes can be used for many other purposes, and I’ll illustrate that by describing two other possible uses. Read more
Post Links
Permalink | Trackback | Leave a Comment
Why User Stories?
Filed Under Programming
Any software project needs a Business Requirements Document (BRD)—a document which describes what the deliverable is supposed to do once it’s been built. The traditional (waterfall) way is to write it in paragraph form, but several agile development techniques recommend writing it in the form of a collection of “User Stories”. Read more
Post Links
Permalink | Trackback | Leave a Comment
Always use Salt
Filed Under Programming
I’m not a very good cook. One reasons is that I’ve never mastered the art of tasting the food as I go along and seasoning it properly. When cooking, I never seem to add the right amount of salt. As a programmer, though, I always use salt. Read more
Units of Work
Filed Under Programming
When I was a physics student one of the things that I learned to do was “unit analysis”. That’s where you simply consider what units an answer has: is it in meters, or meters squared? Surprisingly, there is an enormous amount that can be learned just by doing unit analysis. Recently, I applied unit analysis our scrum backlog (the process by which my company chooses what tasks to work on) and I learned something surprising. Read more
Post Links
Permalink | Trackback | 6 Comments
How to talk about Data Structures
Filed Under Programming
I’ve been interviewing lately for “senior programmer” positions. I find it outright astonishing how many applicants for these positions lack what I would consider the most fundamental of programming skills. Some people have suggested using FizzBuzz (a trivial programming exercise) as a filter; what I use is a discussion of data structures. Read more
Post Links
Permalink | Trackback | Leave a Comment
A Creaky Old Man’s Defense of Creaky old Code
Filed Under Programming
I’m beginning to wonder whether I’m turning into an “old fogey” of a computer programmer. You know, the elderly fellow who has an office near the server room; the one who always objects to the use of any new technology and goes on at length about “the good old days” — you know, back when Real Programmers punched their cards out by hand. Read more
Post Links
Permalink | Trackback | 3 Comments
Immutable Trees and Threading Evil - Part 2
Filed Under Programming
In part 1 I introduced immutable trees, this time I will talk about threading evil. If you haven’t yet read part 1, go back and do so now. Read more
Post Links
Permalink | Trackback | 4 Comments
Immutable Trees and Threading Evil - Part 1
Filed Under Programming
I was reading a post in Eric Lippert’s Blog and started to post a reply, but when I realized just how much I needed to say, I decided it should be it’s own post, nay: series of posts on my blog. Let me take you on an interesting tour of immutable data structures (good!) and threading behavior (scary!). Read more
Post Links
Permalink | Trackback | Leave a Comment
It’s Not Exactly Artificial Intelligence
Filed Under Programming
Edsger W. Dijkstra possessed an extraordinary ability to communicate elegantly and precisely. I admire, but could never emulate his ability to put an entire essay into a single statement. Yesterday I came across the following gem:
The question of whether a computer can think is no more interesting than the question of whether a submarine can swim.
– E. W. Dijkstra [cite]
Post Links
Permalink | Trackback | 3 Comments
Feast or Famine
Filed Under Programming
About four weeks ago, the project that I was working on was abruptly canceled. It wasn’t that there was anything wrong with the way the project was going — there were lots of things wrong with the way the project was going, but the cancellation was due to a change in business direction. So for the past four weeks I’ve been trying to find something useful to do with myself. Read more
Post Links
Permalink | Trackback | Leave a Comment