August 2004 Archives
...are great.
However, it looks like there are some folks taking automated builds to the extreme (It sure looks like those folks have too much time on their hands).
Very cool.
...by Justin Rogers. For your browsing convenience, here are links to the first four installments:
Math Installment #4: Bounding Regions
Math Installment #3: A quick look at wavy text
Math Installment #2: I needed some circular oriented text
Math Installment #1: Image layout logic
Mikhail makes a case for hungarian notation.
There are two large gaping holes in his argument:
- Naming variables a, b, c leaves a lot to be desired. Actually, as far as our team is concerned, if you would use a variable name like this in a method longer than 3 lines I would probably shoot you right away. No questions asked. Of course, you're welcome to use 'i', 'j' or 'k' in a three line for loop (if there's no iterator available).
- If methods are that long to make you wonder if a specific variable was passed by reference or value, you're in for a major refactoring job before making any changes to the method
And don't get me started on hungarian notation.
Beinahe meine Voraussage getroffen. War klar, daß es nicht für eine Medaille reichen würde.
...on presentations:
They suck: too many slides, too much information on the slides, too small font, and "read" not "spoken." (via beyond bullets).
Here's the whole enchilada. Eat, uhm, read it now.
...even yours truly found out about IT Conversations. Pretty cool. Looks like I need an iPod now. :-)
Franziska van Almsik, 200m Freistil - 6. Platz.
...gone wild.
ROFL.
Spending more time on creating useful, readable & understandable function/method/variable/contant names is time well spent. And you'll find you can cut back on comments substantially. Especially as those comments tend to be cut/copy/pasted across your source code files and you'll end up with a significant amount of comments which don't relate to the method/function they were supposed to comment.
Edsger Dijkstra: The people who are best at programming are the people who realize how small their brains are. They are humble. (via Coding Horror).
Be humble. Even if you're smart as hell, follow a set of simple practices (unit-test, small methods, refactor mercilessly, proper naming of functions/variables/constants, ...). Now you're in a position to put your brain to good use on those hard problems which inevitably come up while coding.
Ned Batchelder uses intermediate booleans to tame conditions from hell.
Ned does a great job of cleaning up those conditions from hell. I would recommend taking it one step further: When cleaning up complex conditions, create functions/methods instead of intermediate booleans, thus facilitating reuse of these partial conditions.
GUI Patterns by Martijn van Welie (via Tao of Mac).
Kevin Rutherford on avoiding boolean parameters and why there are two categories of if... statements (via Exploration through example)
The Daily WTF - Curious Perversions In Information Technology (via Andy Pols).
Hilarious. FreeThisSchnizzle(). I like that one.
German speakers out there, please don't ask me about the WTF acronym. :-)
...die olympischen Spiele vor der Tür stehen, hier die Anmerkungen zum gleichnamigen Asterix-Heft.
Triggered by mental models of persistence, I checked out Jonathan Boutelles weblog and found an interesting article on when to to invest in usability.
Subscribed.
Sara Allen posted a thoughtful article on persistence in web-applications/RIA.
Rethinking persistence in desktop applications seems to be a worthwhile endeavour, too. With todays 100GB+ hard-drives, multiple GHZ-machines and multiple-undo system architectures, why make it a requirement for the user to explicitly save a document? Why not saving it incrementally? Thus bringing versioning into the picture for the average user?
On a side note, explicit saves ("commits") are considered standard in database-applications, however there a database system which supports automatic persistence: FileMaker. To my knowledge, every keystroke/change to a record/table field/columns is made persistent automatically.
I always thought MacOS Carbon was messy.
Looks like some folks really anticipate getting their hands on DOOM III.