October 2003 Archives
http://cvsfinder.sourceforge.net/
Adding Generics to the Java language isn't going to revolutionary change the status quo. People extremely over estimate the value of language constructs in the overall scheme of providing compelling solutions to a customer. [Artima Weblogs]
Yes.
Introducing "Longhorn" for Developers. More parts to follow.
The Demand for Software Quality - A Conversation with Bertrand Meyer, Part I.
Quality - What's lacking in the conversation so far is a precise definition what software quality really is.
- Developers define software quality in terms of a specification ("works as designed")
- Users define software quality in terms of their expectation ("works as expected").
Specification and expectation are not in-line most of the time.
Couple of ideas concerning Rendezvous technology.
Pashua is a tool for creating simple, but native Aqua GUIs for Perl, PHP, Python, shell scripts and AppleScript. Pretty cool. Simple concept.
Informationen zur Zahlendarstellung im Rechner. Relevant für Azubis.
Dependency Inversion Principle. How to structure your design to minimize dependencies.
Martin Fowler on Continuous Integration. There's also an interesting variation of the article targeted towards C++ development.
Exploring with Wiki. A Conversation with Ward Cunningham, Part I by Bill Venners.
Martin Fowler talks about Refactoring for the C language and points to some interesting resarch projects.
Free CVS Book, 2nd edition.
There's lots of good stuff on Ned Batchelder's site:
Plus, an interesting Blog. Subscribed.
In favor of exceptions.
Looks like a promising blog about HI-related issues. And the comic is cool, too: http://www.ok-cancel.com/index.html. Subscribed.
Strings, some practical advice. Now that I've gone off a bit about the structure of strings, you're probably wondering what exactly good is it all? Knowing how things work doesn't necessarily translate to any sort of utility, at least not immediately. (I think it's essential for real understanding, but real understanding is in short supply on so many things...) But some good advice is in order. Like so many things I go on about, keep in mind that this is from the standpoint of a VM designer/implementor--I understand and do infrastructure. I have precious little experience implementing applications, unless you consider something like Parrot... [Squawks of the Parrot]
What the heck is: A string. And no, it's not nearly as stupid a question as it may seem. This time out, we're going to talk about string data, what it means, how its interpreted, and odds are how much stuff you've never had to think about with it. Strings are remarkably complex things. Remarkably confusing, too, if you're mono-lingual in a language with a simple base writing system. (Like, say, me) A "string", for our purposes, is a series of bits that represents some piece of text in a human language. What you're reading now is text, as is the stuff in your phone book,... [Squawks of the Parrot]
Robert Scoble asks lots of great questions regarding the upcoming OS technology from both Microsoft and Apple.
98-page refactoring example by Martin Fowler.
Martin Fowler talks about TechnicalDebt.
You have a piece of functionality that you need to add to your system. You see two ways to do it, one is quick to do but is messy -
you are sure that it will make further changes harder in the future. The other results in a cleaner design, but will take longer to put in
place...
'dftb' Resources oder "Der grüne Knödel".
Dialoge werden unter MacOS Carbon durch eine Vielzahl von Resourcen beschrieben:
- 'DLOG' - Der eigentliche Dialog
- 'DITL' - Die Liste der Controls im Dialog
- 'CNTL' - Definition von Controls im Dialog (für nicht-triviale (Reiter) oder "moderne" Controls (Bevel-Buttons))
- 'dctb' - Farbinformationen zum Dialog
- 'dlgx' - Erweiterte Informationen zum Dialog, wie z.B. Verwendung von Hintergründen, Embedding Hierarchy etc.
- 'dftb' - Fontinformationen zu den einzelnen Controls im Dialog
Insbesondere zu jedem Static-Text sollte ein entsprechender Eintrag in der 'dftb' Resource vorhanden sein. Resorcerer pflegt die 'dftb' Resource beim Bearbeiten der 'DLOG'/'DITL' Resource nicht immer korrekt mit, so daß teilweise Controls im Dialog ohne 'dftb' Eintrag existieren. Dies führt zur Laufzeit zu nicht reproduzierbaren Effekten wie dem plötzlichen Formatieren eines Texts im Dialog mit zufälligen Informationen. Wieder was auf die harte Tour gelernt.
Anticipating Builds.
Everytime I make changes to a header file, I immediately save it and start a build. Meanwhile, I continue working on the corresponding source code. This strategy cuts down the build time substantially, because all dependent files are getting build while still working on the source code.
Yea, probably not the world's most advanced strategy, but it works well.
Wichtig.
Niemals $log cvs-makros in header-files einbauen, sonst darf man nach einem cvs commit gleich nochmal einen Full-Build machen. Mal abgesehen davon, daß sich mir der Sinn der $log Makros sowieso nicht erschließt und ich diese sukzessive rauswerfe.