Whenever I undertake something big and challenging enough to be worthwhile, whether editing a W3C specification, running a more demanding distance, a new software project, or something else, I notice a similar trajectory of progress: Ready to start: Full of adrenaline and excitement. Audacious goals seem readily reachable. 5-10% through: Whoa, this is difficult! And…
Category: patternalia
This epic posting on MVC helped me better understand the pattern, and all the variants that have flowed outward from the original design. One interesting observation is that the earlier designs used Views primarily as output-only, and Controllers primarily as input-only, and as a consequence the Controller was the one true path for getting data…
Bob DuCharme, Innodata Isogen Content analysis: why? You’ve “inherited” content. Need to save time or effort. Handy tool 1: “sort”. As in the Unix command line tool. (Even Windows) Handy tool 2: “uniq -c” (flag -c means include counts) Elsevier contest: interface for reading journals. Download a bunch of articles, and see what’s all in…
I’m pondering implementing the computational parts of the XForms Model in XQuery. Doing so in a largely functional environment poses some challenges, though. Has anybody tackled this before? How about in any functional language, including ML, Haskell, Scheme, XSLT, or careful Python? I borrowed the book Purely Functional Data Structures from a friend–this looks to…
Levy a $24,000, one-time tax, payable in installments over 10 years, against anyone who took out an interest-only mortgage (or various other high-risk instruments) during the previous 10 years, using the full nasty power of the IRS to collect (garnishing wages, etc.) Take the proceeds and give it to homeowners who did NOT engage in…
In C, if you find yourself writing large switch statements (or rafts of if statements), you should consider using pointers to functions instead. In C++, if you find yourself writing large switch statements (or rafts of if statements), you should consider using objects and polymorphism instead. In XQuery, If you find yourself writing large typeswitch…
Tips from Leo Reilly in How to Outnegotiate Anyone (Even a Car Dealer!). Be patient. If you insist on having something today, know what you want and be prepared to pay for it. Never disclose your deadline. Cultivate a positive relationship with the other party. Don’t make the other side look stupid (for a prolonged…
Holding steady at 1280 x 854 but due for an upgrade soon. Seriously, if you find yourself setting various goals just because something on the calendar changed, you probably don’t have the long-term motivation needed to see it through, which is why so many new years’ resolutions lie in broken heaps by mid February. If…
This blog page at the W3C discusses the TAG finding that a data format specification SHOULD provide for version information, specifically reconsidering that suggestion. As a few data points, XML 1.1 (with explicit version identifiers) is something of a non-starter, while Atom (without explicit version identifiers) is doing OK so far–though a significant revision to…
Many things in life are simpler when you only need to be within 5%: Pi is pretty much 3 Water weighs pretty much 8 pounds a gallon A quart is pretty much a liter (and a gallon, 4 liters) A year has pretty much 360 days, and pretty much 31 million seconds The speed of…
My Copious Free Time(tm) has been filled lately by two different evaluation projects. One is the 2nd Annual Writing Show Best First Chapter of a Novel Contest, for which the first round of judging is just winding up. The main benefit for contest entrants is that every submission gets a professional critique of at least…
If it’s been quiet on this front it’s because I’ve been engrossed in my continuing education. Andy Oram sent me a copy of Beautiful Code, a thoroughly enjoyable work from O’Reilly. If you like stretching your brain by reading code-intense essays from top-tier coders, I recommend this volume. In particular, I’m been digging into Douglas…
my new publishing technique is unstoppable – but why limit to blog posts? GET Introspection URI scan the list of workspaces for the collection you want to post to GET to Collection URI read the nice [atom] feed POST to the collection URI push an item formatted as [a nice atom entry] GET or HEAD…
A little bit back, Cringely had a brilliant column about billable events and the last mile. Everything the telcos (and others) do these days is primarily aimed at creating billable events. This includes the net neutrality debates. In fact, at&t is so skilled at revenuing, they can generate billable events out of nothing at all….
About a year ago, on this blog I started a series called “Patternalia”, examining various patterns in technology and life in the style of a popular Christopher Alexander series. Over the coming weeks and months, I’m going to revive the series, first of all by getting the old entries into WordPress. Everything will be under…