home | changes | index | login

Technical Idea Logging

IdeaLogging that relies too heavily on geek DomainKnowledge to be generally interesting.

All folding knives should lock.

The Leatherman Skeletool line is a remarkable set of designs, but contrasting these with their more "primitive" brethren, it becomes obvious that the older-style models which so clearly descend from the original, basic PersonalSurvivalTool were the technological achievement of real magnitude.

"assert at module boundaries"

Networking is where you come to understand that every process is an analog process.

FreeSoftware is as much a technical decision as it is an ideological one.

Framing is everything, I guess.

Nobody gives a shit about your infrastructure, except possibly where it's busted.

There appears to be a lower bound on the size of a useful water pipe.

The InternetExplorer box model with margins/padding/borders inside the box actually makes way more sense.

Things which are incredibly stupid: My cell phone complaining that it's running out of memory for text messages with a grand total of 78 stored. My cell phone with a camera which stores 1280x960 JPEGS and 15 second video clips, features which I have ''never actually used'' although I send at least a couple texts a day. What the fuck, people?

TWiki is the suck.

Pixel-for-pixel conversion of Illustrator files to web pages is a dumb activity on several levels, but it does kind of remind me of playing with Legos, for some reason.

Put the entire goddamned article/entry/page in your feed, unless there is a compelling reason to do otherwise. (Wiki changestreams and version control logs seem like natural exceptions.)

The technocracy is a circlejerk.

Where the optimization phase is not premature, it will be mythical.

It's mostly a very bad idea to do little popups on mouseovers. Unobtrusive title text is reasonable. Thumbnailed screenshots are almost certainly not.

If you think it's already being backed up somewhere, there is a very good chance that you're wrong.

Aesthetic preferences in the technical realm, as elsewhere, are seldom disconnected from practical concerns.

Have you ever noticed how many of the basic problems are temporal?

I suspect that bolding key words or phrases in text actually damages readability. (JakobNielsen and a generation or two of textbook designers seem to disagree with me.)


Wow, most GUIs are ''really'' not designed to run at 800x600 these days.

Like half-assed code, really cheap hardware is frequently a FalseEconomy.

For all of this subculture's counterculture pretensions, the rank and file of the technocracy signed on the dotted line before they could have known there was anything at stake.

Oh that joyous, carcinogenic smell of fresh electronics.


QualityAssurance is a bullshit made up term.

If you're ever feeling depressed that you work in a Java shop, stop to contemplate for a moment how truly fortunate you are not to work in a PHP shop.

The Sham of Software

Expand then contract:

: ... I keep rediscovering this basic tenet of data munging over and over: that the easiest way of dealing with data that has highly variable structure is "expand then contract" – or "normalise then mangle", I suppose. The principle is that instead of going straight from input to output, you go from input to an intermediary format to output, where the intermediary format is regularised in some fashion. Ideally, all related constructs in the input can be mapped to a single construct in the intermediary format; as far as possible, the same applies to constructs in the output. That way, instead of m·n mappings you only have to deal with m+n.

Stop beating your head against the wall: Source control, versioning, backups, tests, redundancy.

Some optimization is not premature.

The dominant technical paradigm is Too Fucking Complicated. Read that either way.

I always used to take (rhetorically, at least) this kind of absolutist position on standards, standards compliance, "correctness". Lately I'm thinking I feel more anti-stupid / anti-harmful / anti-evil than anything about this stuff. Maybe it's all the XML in the air.

The killer AJAX (buzzword friendly!) web app: A WYSIWYG editable wiki, with changes visible to all users in near-realtime. Further thought: Make it do tabular, spreadsheet-like data ''painlessly''. Steal lots of code and make it do functions. Model "sheets" as collections of records, definable by explicit lists or the output of functions (including search queries).

"Real" markup will always have more expressive power past a certain level of complexity than lightweight wiki-style efforts. It will almost always be more of a pain in the ass before that threshold is reached. This is not a particularly satisfying state of affairs.

What people who haven't learned better fundamentally want from electronic documents is total transparency, total independence from software. Of course this is impossible, but it explains why this stuff causes so much pain. If you can see it on the screen, why can't you combine it with everything else? If you can put two sheets of paper together, put a sticky note on it, whatever, why is it any different on the screen? Why can't your Word document just be a wiki page? Why can't you put Excel sheets on web pages, copy and paste images into plain text, send a Visio file to everyone and have it just show up? A lot of software has made this situation worse by being stupid and evil (in that order though the two are hard to disentangle), but this feels like a fundamental problem.

If it matters, why aren't you tracking revisions and backing it up? ''Because the model doesn't work like that, and it's too much effort even when you know how.''

It's becoming apparent to me that most VersionControl systems are about 90% oriented towards making up for broken filesystems and filesystem UI mechanics. (On the other hand, does this line of thinking take you down the abortive path of ResourceForks and so on?)

I only started to recognize a sometime-utility to ObjectOrientedProgramming when I understood that the usual example of modeling some real-world entity or another (jukeboxes and the like are popular) is a bad approach to most problems. Maybe unless you're writing InteractiveFiction - that is, specifically solving the problem of directly modeling real-world objects.

Software should work better.

I don't love unix because it makes stuff easy. I love unix because it makes stuff possible. I don't hate unix because it can't do things; I hate unix because of how hard they are to do.

There are PerverseIncentives for technology professionals to build systems which are complex enough to require the employment of technology professionals. This isn't an insight which applies more to computers than to, say, cars, but it stands out with computers because our society is already accustomed to paying rent to automechanics.

If you turn off the stylesheets, what does the page look like?

Am starting to suspect that really large organizations tend to produce really awful code.

The infrastructure of internet e-mail sucks. Hard.

A thought on SSL: This model bugs me because I think it's intended to solve an irrelevant problem. I don't care if the identity of a given machine is verified by some third party "authority". I only care if the traffic between me and a given machine is encrypted. Is there something I'm missing here?

I'd like to propose a new status scale for tech workers: Percentage of daily calorie intake from bagels.

This whole "Web 2.0" thing is goddamn annoying buzzword bullshit. Also, "Search Engine Optimization" needs to die.

What if a wiki just used all capitalized nouns as WikiWords? You could write German-style - no initial caps for sentences (am I remembering this correctly?), and cap every noun ("proper" or not).

pick a name (required to comment or edit a page)
last edited October 10, 2010