...subtitled, The Things Geeks Wonder About as They're Trying to Fall Asleep. Well, this particular geek, anyway.
Why didn't marketers think to call it "oystershell" packaging? (Pearls + seafood > seafood by itself--am I right?)
Why did it take a whole generation to finish Death Star 1.0, when 2.0 was operational in something like three years?
When cordless mice outnumber ones with tails, can we start calling them "hamsters"?
How many C programmers reflectively invoke the increment operator in "C++" and (mentally) call the language "D"?
Wasn't MI6 (in the Bond films) rather short-sighted to have a thousand special agent numbers (000 - 999) but only 26 letters for command/support staff (e.g. "M" and "Q")? And where does "Moneypenny" fit into all this anyway?
Are Java classes considered "illegitimate" because they can only have one parent?
When the screen of Enterprise's bridge is being used for videoconferencing, how is anyone supposed to drive?
Speaking of which...am I the only one who thinks that the "Starfield" screen-saver would be 1000% better with the occasional swipe of a windshield wiper?
When my COBOL prof. reminisced about computer memory being "a buck a byte," was that just because "two bits" is retro. slang for twenty-five cents?
How will Superman's changing-room and Dr. Who's Tardis be plausible in a world of mobile phones?
What would happen if you used Romulan Ale as the chaser for a Pan-Galactic Gargle Blaster?
Thoughts on computers, companies, and the equally puzzling humans who interact with them
Friday, December 31, 2010
Thursday, December 30, 2010
Another programming/real-world intersection
At the moment, the house smells of cedar chest and banana bread, both tell-tale signs that someone was on a domestic roll today. But, rightly, that roll was supposed to stop much sooner than it actually did. That it didn't was largely a matter of not respecting dependencies. That and certain "might as well get it out from underfoot while I'm thinking about it" tendencies that will forever bar me from the "agile"/"lean" programming clubhouse.
For context: In software development (particularly the planning and scheduling parts of it), a "dependency" is pretty much what it sounds like: One bit of work can't proceed before another one is finished. When you're a one-woman band, as I so often am, it's mostly a non-issue--at least in the sense that it's not, technically, wasting time if different tasks take more or less time than expected. I can only do one of them at a time anyway.
Of course, when more than one person is involved, that's where timing becomes crucial to figure out. If Programmer A takes longer than expected to complete a "dependency," Programmer B could be twiddling his thumbs doing busywork until A finishes. Similarly, (albeit less likely), should Programmer A finishes her dependency before B expects it, she could be twiddling her thumbs if no one has her slated to pick up on anything else.
In today's case, constraining factors were the limited daylight (for shoveling) and not paying close enough attention to the clock or watch (for the washer/tryer cycles). I'd add the cat's nap schedule (because he was due for a thorough brushing), except I don't think any scheduling methodology in existence (including my gut instinct) could handle the near-quantum nature of the nap/not-nap duality that is His Doodness. The saving grace was that there was more than plenty of picking and putting and sweeping and dish-washing and random acts of organization. Thus, it was a productive day.
All the same, I'm dismayed that five years of estimating are as (apparently) as much gut instinct for non-programming projects as they are in software development. Except that this time, my gut forgot to remind me to sandbag appropriately.
For context: In software development (particularly the planning and scheduling parts of it), a "dependency" is pretty much what it sounds like: One bit of work can't proceed before another one is finished. When you're a one-woman band, as I so often am, it's mostly a non-issue--at least in the sense that it's not, technically, wasting time if different tasks take more or less time than expected. I can only do one of them at a time anyway.
Of course, when more than one person is involved, that's where timing becomes crucial to figure out. If Programmer A takes longer than expected to complete a "dependency," Programmer B could be twiddling his thumbs doing busywork until A finishes. Similarly, (albeit less likely), should Programmer A finishes her dependency before B expects it, she could be twiddling her thumbs if no one has her slated to pick up on anything else.
In today's case, constraining factors were the limited daylight (for shoveling) and not paying close enough attention to the clock or watch (for the washer/tryer cycles). I'd add the cat's nap schedule (because he was due for a thorough brushing), except I don't think any scheduling methodology in existence (including my gut instinct) could handle the near-quantum nature of the nap/not-nap duality that is His Doodness. The saving grace was that there was more than plenty of picking and putting and sweeping and dish-washing and random acts of organization. Thus, it was a productive day.
All the same, I'm dismayed that five years of estimating are as (apparently) as much gut instinct for non-programming projects as they are in software development. Except that this time, my gut forgot to remind me to sandbag appropriately.
Wednesday, December 29, 2010
Smart phones, dumb decisions
I was fortunate enough to receive a few CDs to feed to the iPod, which I haven't updated in a few months. Which served as a reminder that iTunes counts how many times a track's been played. Because you know as well as I do that if that information's not being shipped back to the Mother Ship in Cupertino now, it will be. Although, upon further review, I've been accused of any number of things, but having any taste or consistency in music has not been one of them. Which means that I'm figuratively weeing in the data pool. Hee.
Certainly, knowing makes me complicit in Apple's eavesdropping--no question. But the idea of smartphone apps monetizing not only what I'm doing but where I'm doing it is orders of magnitude creepier. And more infuriating.
Frankly, this time I'm cheering for the lawyers and tobacco-settlement-scale penalties. Why? Because it's the only recourse in a world where the mobile companies have been given carte blanche by the current FCC, with its successors no more likely to curb abuses. Because, you know, forbidding software makers to pimp their paying customers to advertisers would "hurt competitiveness," "stifle innovation," and "cost jobs." (Because the oligarchs are already doing a bang-up job of that all by themselves, thank you very little.)
The notion that the free market will correct it is laughable. First, the four-way oligopoly in smartphone platforms will eventually be three--probably sooner than we imagine. (My money's on Microsoft dropping out before RIM goes belly-up.) Moreover, how many tens of millions of iPhones have been sold to people who couldn't possibly have missed AT&T's Rosencrantz-and-Guildenstern collusion with warrantless surveillance?
Which brings me to my last thought: If the government were collecting that level of detail on peeps, we'd morph into a nation of mobile Luddites. Yet, as we (collectively) should have groked in 2006, that data is only one network connection connection or data dump away from being in the NSA's hands...and being classified as "state secrets." Why on earth would that single degree of separation make a difference in anyone's mind?
Which is why I believe that, even if the plaintiffs came away with a pittance and some of the co-defendents are driven out of business by a heavy-handed damages award, it'll be the best thing to happen to the market. And to set the precedent that privacy is a right, not a privilege that can be rescinded with a vague clause in the clickwrap weasel-ese.
Certainly, knowing makes me complicit in Apple's eavesdropping--no question. But the idea of smartphone apps monetizing not only what I'm doing but where I'm doing it is orders of magnitude creepier. And more infuriating.
Frankly, this time I'm cheering for the lawyers and tobacco-settlement-scale penalties. Why? Because it's the only recourse in a world where the mobile companies have been given carte blanche by the current FCC, with its successors no more likely to curb abuses. Because, you know, forbidding software makers to pimp their paying customers to advertisers would "hurt competitiveness," "stifle innovation," and "cost jobs." (Because the oligarchs are already doing a bang-up job of that all by themselves, thank you very little.)
The notion that the free market will correct it is laughable. First, the four-way oligopoly in smartphone platforms will eventually be three--probably sooner than we imagine. (My money's on Microsoft dropping out before RIM goes belly-up.) Moreover, how many tens of millions of iPhones have been sold to people who couldn't possibly have missed AT&T's Rosencrantz-and-Guildenstern collusion with warrantless surveillance?
Which brings me to my last thought: If the government were collecting that level of detail on peeps, we'd morph into a nation of mobile Luddites. Yet, as we (collectively) should have groked in 2006, that data is only one network connection connection or data dump away from being in the NSA's hands...and being classified as "state secrets." Why on earth would that single degree of separation make a difference in anyone's mind?
Which is why I believe that, even if the plaintiffs came away with a pittance and some of the co-defendents are driven out of business by a heavy-handed damages award, it'll be the best thing to happen to the market. And to set the precedent that privacy is a right, not a privilege that can be rescinded with a vague clause in the clickwrap weasel-ese.
Tuesday, December 28, 2010
A (cynical) thought on maintenance vs. new development
I don't know many programmers who care for scut-work maintenance coding, but it does--typically--have one huge upside: Most of the decisions have already been made. Yes, I realize that has creativity-stifling connotations. Yet, to me, it seems to be a touchstone of new, groundbreaking development that everyone wants in on the glamor of designing without the responsibility for making the final call(s). Let's just say that when you find yourself in a meeting time-warp, listening to the same parties having the same arguments to avoid facing the same--now costlier--decisions, you can appreciate a spate of mindless drudgery.
As long as it's a short spate, anyway.
The trick, naturally, is to switch it up--think of it as balancing cardio and weight-lifting, if that helps. Cardio is boring (sometimes even with podcasts) And if you're working in a caste system that consistently has the same crowd on maintenance and the the other clique on shiny new development, it's a a red flag, IMO. Personally, I can only consider it "optimizing" if you're looking to develop dysfunctional habits--in individuals as well as the organization.
As long as it's a short spate, anyway.
The trick, naturally, is to switch it up--think of it as balancing cardio and weight-lifting, if that helps. Cardio is boring (sometimes even with podcasts) And if you're working in a caste system that consistently has the same crowd on maintenance and the the other clique on shiny new development, it's a a red flag, IMO. Personally, I can only consider it "optimizing" if you're looking to develop dysfunctional habits--in individuals as well as the organization.
Monday, December 27, 2010
The subtext of an important anniversary
If it were only a question of missing a birthday--even one with such a memorable date--I'd still be mightily embarrassed. But I must 'fess up to the fact that I didn't know about it until today. It turns out that this past Saturday was the 20th birthday of the World Wide Web, in the sense that Sir Tim Berners-Lee uploaded the first web page on that day in 1990 (after concocting hypertext earlier that year).
Although the actual day of the year pales in significance to the event itself, I don't think it's entirely irrelevant. If you adhere to a particular religion, you might speculate that someone was blowing off his duty to interact with family that day. Me, I prefer to project no further than my understanding of the binary character of the last week of the year. To wit: That week tends to be either: a.) A complete write-off, or b.) A bubble of productivity that defies--yea, blithely spits in the eye of--the laws of time.
The difference is in the hustle, I suppose. Given the realities of the workaday world (with its inbox-bombing, meetings held simply because that's what we do every Monday at eight, darnitalready, its cat-herding and/or consensus-building, fire-fighting, etc.), I might as easily find myself writing this post on Valentine's Day of next year. (Or St. Patrick's Day. Or Memorial Day. Or Independence Day. You get the idea...)
(On December 25, 1990, I was six days away from owning my first computer (an Epson 8088 with two 5.25" floppy drives and a CGA monochrome monitor). That was an upgrade from the second-hand IBM Selectric my friend P. had found for me. Not to knock the Selectric, mind you--as a keyboard snob, I can assure you that it spoiled me for life. That being said, it was an upgrade I imagined would be invaluably useful to my career as a freelance writer. In that aspect, at least, I can compare myself to Sir Tim: Dreams are like children in that they rarely turn out to be what you intended. That, and they can have children of their own for the next iteration of that story...)
Navel-gazing aside, I thought the anniversary was too important to leave trampled by the other obligations of this time of year. And, if nothing else, the web's underpinnings will be 21 come next Christmas. Which is as good a reason as I can think of to raise a glass--if I'm safely home, of course--to (legally) raise a toast to its birthday.
Although the actual day of the year pales in significance to the event itself, I don't think it's entirely irrelevant. If you adhere to a particular religion, you might speculate that someone was blowing off his duty to interact with family that day. Me, I prefer to project no further than my understanding of the binary character of the last week of the year. To wit: That week tends to be either: a.) A complete write-off, or b.) A bubble of productivity that defies--yea, blithely spits in the eye of--the laws of time.
The difference is in the hustle, I suppose. Given the realities of the workaday world (with its inbox-bombing, meetings held simply because that's what we do every Monday at eight, darnitalready, its cat-herding and/or consensus-building, fire-fighting, etc.), I might as easily find myself writing this post on Valentine's Day of next year. (Or St. Patrick's Day. Or Memorial Day. Or Independence Day. You get the idea...)
(On December 25, 1990, I was six days away from owning my first computer (an Epson 8088 with two 5.25" floppy drives and a CGA monochrome monitor). That was an upgrade from the second-hand IBM Selectric my friend P. had found for me. Not to knock the Selectric, mind you--as a keyboard snob, I can assure you that it spoiled me for life. That being said, it was an upgrade I imagined would be invaluably useful to my career as a freelance writer. In that aspect, at least, I can compare myself to Sir Tim: Dreams are like children in that they rarely turn out to be what you intended. That, and they can have children of their own for the next iteration of that story...)
Navel-gazing aside, I thought the anniversary was too important to leave trampled by the other obligations of this time of year. And, if nothing else, the web's underpinnings will be 21 come next Christmas. Which is as good a reason as I can think of to raise a glass--if I'm safely home, of course--to (legally) raise a toast to its birthday.
Sunday, December 26, 2010
Another use for source control
I picked up on some code files I haven't looked at in a few weeks. Cross checking a few "Last Modified" dates against the "Received" and "Sent" dates in an email thread, I quickly realized that it was easier to just fire up a command line and punch in a few Mercurial commands to answer questions like:
Have I made any changes since I "saved" the last round of tweaks/fixes/etc.?
What files did the last round of changes hit? What did I say about them when I checked them in? (Does what I said then even make sense now?)
When did I do that?
When you live cheek-by-jowl with the same code-base week-in and week-out, the brain tends to make its own bookmarks and annotations. Or, at least my brain tends to do that. Longer lapses are a different matter, and that's one instance where such "by-product" data from the process of using source control comes in terribly handy at times. The trivial amount of time spent pushing (commented!) changesets to the repository for safe-keeping, in my opinion, more than pays for the lack of thrashing around when it's time to pick up where you left off.
Have I made any changes since I "saved" the last round of tweaks/fixes/etc.?
What files did the last round of changes hit? What did I say about them when I checked them in? (Does what I said then even make sense now?)
When did I do that?
When you live cheek-by-jowl with the same code-base week-in and week-out, the brain tends to make its own bookmarks and annotations. Or, at least my brain tends to do that. Longer lapses are a different matter, and that's one instance where such "by-product" data from the process of using source control comes in terribly handy at times. The trivial amount of time spent pushing (commented!) changesets to the repository for safe-keeping, in my opinion, more than pays for the lack of thrashing around when it's time to pick up where you left off.
Friday, December 24, 2010
Frivolous Friday, 12.24.2010: Failed game concepts
(Blame Dennis--who spent much of last night playing with the local board game peeps--for this one.)
Veggieland - Apparently, Bussells sprouts, lima beans, kale, broccoli and the like don't lend themselves to kindergarten playtime so much as colorful sugar. Who knew?
Connect Phi - Even the original market segment (young math nerds) couldn't fathom how to make black or red markers add up to an irrational number.
Commune - Focus group players quickly bored of the lack of competition when required to share all dividends and windfalls equally among players. Also, the silver "car" player marker had been replaced by a tandem bike--and, really, where's the fun of squabbling over who gets that, I ask you.
Madoff: The Game - Apparently, being fleeced in a Ponzi scheme isn't fun, even when you know that's the whole point.
Autopsy - This edgier remake of Operation failed to impress its targeted "morbid teen" demographic despite appropriately graphic playing pieces (bullets, perforated bowel, smoker's lung, etc.)
Miners of Catan - Test players despaired of building enough tunnels to trade coal for food at the company store before having to put their young children to work or dying of black lung.
Urban Myth Pursuit - Critical thinkers, fans of Snopes.com, and the generally well-informed fared poorly at this game, although the "compulsive email forwarder" demographic showed some promise.
Scooby Clue - Although the prospect of "those darned kids" turning on each other with accusations of murder appealed to many testers, the mystery mansion mashup never garnered much credibility, what with with the go-go boots, psychedelic van parked in the carriage house and all.
Veggieland - Apparently, Bussells sprouts, lima beans, kale, broccoli and the like don't lend themselves to kindergarten playtime so much as colorful sugar. Who knew?
Connect Phi - Even the original market segment (young math nerds) couldn't fathom how to make black or red markers add up to an irrational number.
Commune - Focus group players quickly bored of the lack of competition when required to share all dividends and windfalls equally among players. Also, the silver "car" player marker had been replaced by a tandem bike--and, really, where's the fun of squabbling over who gets that, I ask you.
Madoff: The Game - Apparently, being fleeced in a Ponzi scheme isn't fun, even when you know that's the whole point.
Autopsy - This edgier remake of Operation failed to impress its targeted "morbid teen" demographic despite appropriately graphic playing pieces (bullets, perforated bowel, smoker's lung, etc.)
Miners of Catan - Test players despaired of building enough tunnels to trade coal for food at the company store before having to put their young children to work or dying of black lung.
Urban Myth Pursuit - Critical thinkers, fans of Snopes.com, and the generally well-informed fared poorly at this game, although the "compulsive email forwarder" demographic showed some promise.
Scooby Clue - Although the prospect of "those darned kids" turning on each other with accusations of murder appealed to many testers, the mystery mansion mashup never garnered much credibility, what with with the go-go boots, psychedelic van parked in the carriage house and all.
Thursday, December 23, 2010
The accidental marketer
Yes, I know this is a First World Problem, and please don't get me wrong: I like giving. But wrapping presents? [shudder] At this time of year in particular, it becomes metaphor for everything that's wrong with our credit-fueled, bling-obsessed culture. (Not to mention how it rubs my nose in the fact that I've again knuckled under. Also in how very much I suck at it: Oh, it should be a matter of trivial geometry--that is, until the paper expands and shrinks while I cut it. Tricksy paper--it hatesss usss, yess it doess, my precioussss...) I could bang on about the superficiality, the waste, the mind-boggling non sequitur that is the stick-on bow, but let's take the obvious for granted, shall we?
Sadly, the era when cardboard wrapping paper cores could be "repurposed" in light-sabre duels ended circa 1984--timing I blame more on the fact that my (non-geek) sister turned 14 and thus, by definition, too cool for such antics than the fact that Return of the Jedi was soooo 1983. ('Cuz', really, the Empire was toast, Darth Vader made his deathbed return to The Light Side, Leia and Han were finally going to have a chance to "do it," Luke was officially a Jedi, blahblahblah. For love of The Force, how much more closure do you geeks need anyway??!!)
But I digress.
It didn't help my opinion of how I spent a chunk of this evening when I realized that I, in essence, was marketing--and not necessarily in the best of ways. Obviously, printed paper and bows bling things up. (Dennis' Aunt used to forgo tags for writing the recipients' names in glitter--a custom quickly put out to pasture when she and his uncle adopted one, then two daughters.) Then, too, there's the element of artificial mystery created by disguising the contents. (Dad--the eternal practical joker--took that to an extreme with my Stepmom by nesting a jewelery within a matroishka doll of boxes--all the way up to cardboard that had once held a washing machine.)
But, for me, the most soul-sucking aspect is the pointless herd-following. Which makes it like so much other "marketing." Like the full page ad in the--dying--New York Times. A float in the Macy's parade. The eponymous stadium. The Facebook "fan page" that's only followed by other spammers. The CEO's blog that hasn't been updated (by the CEO's personal assistant, naturally) since 2004. The Twitter account that consists mainly of Foursquare-esque check-ins to the office. Robo-calling and spamming and catalog-bombing a one-time customer relentlessly enough to drive her/him into the arms of the competitor...assuming s/he ever needs such a product again.
That sort of thing. Depressing, really. Maybe I'm extrapolating the simile too much. I'm not above "recycling" wrapping paper--Dennis picks on me for it, in fact--but honestly, wouldn't it just be easier on everyone if we'd just save a small stack of "holiday" grocery store bags for gift-wrapping and call it good? Anyone with me? Anybody?
Sadly, the era when cardboard wrapping paper cores could be "repurposed" in light-sabre duels ended circa 1984--timing I blame more on the fact that my (non-geek) sister turned 14 and thus, by definition, too cool for such antics than the fact that Return of the Jedi was soooo 1983. ('Cuz', really, the Empire was toast, Darth Vader made his deathbed return to The Light Side, Leia and Han were finally going to have a chance to "do it," Luke was officially a Jedi, blahblahblah. For love of The Force, how much more closure do you geeks need anyway??!!)
But I digress.
It didn't help my opinion of how I spent a chunk of this evening when I realized that I, in essence, was marketing--and not necessarily in the best of ways. Obviously, printed paper and bows bling things up. (Dennis' Aunt used to forgo tags for writing the recipients' names in glitter--a custom quickly put out to pasture when she and his uncle adopted one, then two daughters.) Then, too, there's the element of artificial mystery created by disguising the contents. (Dad--the eternal practical joker--took that to an extreme with my Stepmom by nesting a jewelery within a matroishka doll of boxes--all the way up to cardboard that had once held a washing machine.)
But, for me, the most soul-sucking aspect is the pointless herd-following. Which makes it like so much other "marketing." Like the full page ad in the--dying--New York Times. A float in the Macy's parade. The eponymous stadium. The Facebook "fan page" that's only followed by other spammers. The CEO's blog that hasn't been updated (by the CEO's personal assistant, naturally) since 2004. The Twitter account that consists mainly of Foursquare-esque check-ins to the office. Robo-calling and spamming and catalog-bombing a one-time customer relentlessly enough to drive her/him into the arms of the competitor...assuming s/he ever needs such a product again.
That sort of thing. Depressing, really. Maybe I'm extrapolating the simile too much. I'm not above "recycling" wrapping paper--Dennis picks on me for it, in fact--but honestly, wouldn't it just be easier on everyone if we'd just save a small stack of "holiday" grocery store bags for gift-wrapping and call it good? Anyone with me? Anybody?
Wednesday, December 22, 2010
Reality check
Today's mail included an envelope from my credit card company, marked "Account Information Enclosed." This being about bill-time, I opened it to find a(nother) round of "blank checks"--or as we call them, "shredder food." Granted, throwing them directly into the trash could be bad, so it's just as well that I didn't blow the envelope off. But "account information"? Seriously?
Now, it doesn't sound like the big banks have too many problems these days, but a trust deficit is definitely one of them. Direct-mail chicanery doesn't help. And if a bank's business model relies--even partially--on gullibility and impulsiveness, do I really want to do business with it? Just sayin'...
Now, it doesn't sound like the big banks have too many problems these days, but a trust deficit is definitely one of them. Direct-mail chicanery doesn't help. And if a bank's business model relies--even partially--on gullibility and impulsiveness, do I really want to do business with it? Just sayin'...
Tuesday, December 21, 2010
Metrics that miss the point
One of the key differences between Twitter and Facebook seems to be the nature of the ecosystem that's grown up around each. Facebook seems to favor a big-tent kind of mentality--providing, of course, that they sell you the canvas. Twitter's much looser: They own the campground, metaphorically speaking, but don't seem to impose too many other restrictions as long as you're not waking people with tribal drumming and howling at the moon at two in the morning.
Different folks will of course find differing value in each ethos, of course. But they are, mostly, mutually exclusive. Say what you will about dialectic and synthesis, but I strongly feel that applying the rules of one to the mechanisms of the other is foolhardy.
Tonight @JakeWobegon tweeted about running afoul of a Twitter account that, for all practical purposes, has hired a doorman--and a snooty one at that. It's called TrueTwit. (Aside: I'd like to take this moment to congratulate the person who dreamed up the name b/c sixty-one million Brits--not to mention those of us who grew up on PBS BBC rebroadcasts--are now snickering up their/our sleeves at you. Good job.) But anyhoo...the basic idea behind the service is to "validate" those who would follow your tweets to make sure they don't associate with "the wrong crowd," as Mummy would say over tea and crumpets.
Yes, yes, I know: Lie down with dogs, wake up with fleas and All That, but it's Twitter, for pete's sake! Anyone who knows half of anything about the way it works is aware of two salient facts:
That's not to say that I don't actively block the obvious spammers, porn-bots or those whose (ahem!) "agendas" are diametrically opposed to my weltanshauung. But that's something I take responsibility for doing. The ones fishing for knee-jerk follow-backs normally take care of themselves. But everyone else--so far as I'm concerned, anyway--is doing me a favor.
But as much as I seem to be tilting at a strawman here, my main--and much larger--point is that "followers" can easily become valued followees, and no algorithmic metric can compete with spending a little time profile-surfing and coming to a rational judgement--sometimes only even a gut feeling before making the keep/block call. That, and if you're to important to "groom" your Twitter entourage yourself, you should probably hire a real person to do it for you.
Different folks will of course find differing value in each ethos, of course. But they are, mostly, mutually exclusive. Say what you will about dialectic and synthesis, but I strongly feel that applying the rules of one to the mechanisms of the other is foolhardy.
Tonight @JakeWobegon tweeted about running afoul of a Twitter account that, for all practical purposes, has hired a doorman--and a snooty one at that. It's called TrueTwit. (Aside: I'd like to take this moment to congratulate the person who dreamed up the name b/c sixty-one million Brits--not to mention those of us who grew up on PBS BBC rebroadcasts--are now snickering up their/our sleeves at you. Good job.) But anyhoo...the basic idea behind the service is to "validate" those who would follow your tweets to make sure they don't associate with "the wrong crowd," as Mummy would say over tea and crumpets.
Yes, yes, I know: Lie down with dogs, wake up with fleas and All That, but it's Twitter, for pete's sake! Anyone who knows half of anything about the way it works is aware of two salient facts:
- Peeps don't monitor followers in real real-time (and block the spammers and other unsavory types).
- Peeps who obsess about the quality of their followers never mentally graduated from middle school and shouldn't be followed anyway.
That's not to say that I don't actively block the obvious spammers, porn-bots or those whose (ahem!) "agendas" are diametrically opposed to my weltanshauung. But that's something I take responsibility for doing. The ones fishing for knee-jerk follow-backs normally take care of themselves. But everyone else--so far as I'm concerned, anyway--is doing me a favor.
But as much as I seem to be tilting at a strawman here, my main--and much larger--point is that "followers" can easily become valued followees, and no algorithmic metric can compete with spending a little time profile-surfing and coming to a rational judgement--sometimes only even a gut feeling before making the keep/block call. That, and if you're to important to "groom" your Twitter entourage yourself, you should probably hire a real person to do it for you.
Monday, December 20, 2010
Postcard from an alternative Universe
(At least it sure feels like it.) After several years on using Ubuntu as my go-to operating system at home and on the road I'm recycling a Windows XP box (purchased in 2003) to use as a test web server.
Ooof, what a pain! (I speak in relative terms, of course). It doesn't help that it's been over half a decade since I officially impersonated a system administrator, either. Windows itself installed--albeit slowly due to the older hardware. After installation, I was greeted with an interface that even Playskool would consider "chunky." That's where the handy-dandy Dell driver CD comes in. That thing boots from CD, but because of the monitor resolution--and probably the fact that it leans a little heavily toward "landscape" than it does "portrait"--some of the window is cut off. And by "some" I mean "most," you understand. That included any buttons for installing said drivers--most importantly the video-flavored ones that would let me see the parts of the window that would let me install them.
Sigh.
In the end, it probably took me fifteen minutes to figure out how to even access the video driver files, realize that the driver CD wasn't really "installing" the driver. (Rather, it unzipped a bunch of files--including to the hard drive, where I had to locate the Setup.exe file and run it.) So, once I installed the drivers, rebooted, set the screen resolution to something I could work with, installed the network drivers and rebooted again, spelled out my internet connection information for Windows, it was time to venture out on the internet and grab Service Pack 2 (and hope that no one was prowling my neck of Teh Internets for unpatched systems).
First run at Service Pack 2 didn't go so well--Windows Update basically freaked out on me. At the time of writing, I'm on my second try and it seems to be progressing now. After that, it'll be off to install an Apache Web server, its PHP plugin, the MySQL database server, plus a few amenities for the comfort and convenience of your faithful blogger. If I'm lucky, that'll only chew up the rest of my evening.
Now, I realize that it's not fair at all to compare the 2003 version of Windows XP (customized or no) to the 2010 versions of Ubuntu. I'm too much a Hufflepuff for that. Also, two separate versions of Ubuntu died out somewhere before or during hard-drive reformatting, which basically left me with an oversized patio brick where a PC used to be. (In retrospect, I should have grabbed a Mandrake CD from the same era to see what would happen. Alas, I didn't think of that until just now.) But if there were a comparison to be made between installing a vintage operating system and childbirth--in the sense of forgetting how awful it was until it's too late--this would be an opportune moment.
And thus I find myself down the rabbit-hole, through the looking-glass, or whatever 19th century Brit. Lit. memes my gentle reader cares to resurrect. By which I mean wishing that installing a reasonably secure and usable operating system were a matter of popping a single CD into the drive. Of wistfully thinking of how dropping a web server, PHP support and a database can done by typing one single line of code into a command-prompt. Of having to make a mental note to go into the firewall and punch a hole or two in it for the web server & friends. And--for pity's sake--wishing that this whole process didn't require so darned many iterations and reboots.
Call me spoiled. But whatever you do, don't categorically slag the Linux user experience. At least not when I'm within earshot.
Ooof, what a pain! (I speak in relative terms, of course). It doesn't help that it's been over half a decade since I officially impersonated a system administrator, either. Windows itself installed--albeit slowly due to the older hardware. After installation, I was greeted with an interface that even Playskool would consider "chunky." That's where the handy-dandy Dell driver CD comes in. That thing boots from CD, but because of the monitor resolution--and probably the fact that it leans a little heavily toward "landscape" than it does "portrait"--some of the window is cut off. And by "some" I mean "most," you understand. That included any buttons for installing said drivers--most importantly the video-flavored ones that would let me see the parts of the window that would let me install them.
Sigh.
In the end, it probably took me fifteen minutes to figure out how to even access the video driver files, realize that the driver CD wasn't really "installing" the driver. (Rather, it unzipped a bunch of files--including to the hard drive, where I had to locate the Setup.exe file and run it.) So, once I installed the drivers, rebooted, set the screen resolution to something I could work with, installed the network drivers and rebooted again, spelled out my internet connection information for Windows, it was time to venture out on the internet and grab Service Pack 2 (and hope that no one was prowling my neck of Teh Internets for unpatched systems).
First run at Service Pack 2 didn't go so well--Windows Update basically freaked out on me. At the time of writing, I'm on my second try and it seems to be progressing now. After that, it'll be off to install an Apache Web server, its PHP plugin, the MySQL database server, plus a few amenities for the comfort and convenience of your faithful blogger. If I'm lucky, that'll only chew up the rest of my evening.
Now, I realize that it's not fair at all to compare the 2003 version of Windows XP (customized or no) to the 2010 versions of Ubuntu. I'm too much a Hufflepuff for that. Also, two separate versions of Ubuntu died out somewhere before or during hard-drive reformatting, which basically left me with an oversized patio brick where a PC used to be. (In retrospect, I should have grabbed a Mandrake CD from the same era to see what would happen. Alas, I didn't think of that until just now.) But if there were a comparison to be made between installing a vintage operating system and childbirth--in the sense of forgetting how awful it was until it's too late--this would be an opportune moment.
And thus I find myself down the rabbit-hole, through the looking-glass, or whatever 19th century Brit. Lit. memes my gentle reader cares to resurrect. By which I mean wishing that installing a reasonably secure and usable operating system were a matter of popping a single CD into the drive. Of wistfully thinking of how dropping a web server, PHP support and a database can done by typing one single line of code into a command-prompt. Of having to make a mental note to go into the firewall and punch a hole or two in it for the web server & friends. And--for pity's sake--wishing that this whole process didn't require so darned many iterations and reboots.
Call me spoiled. But whatever you do, don't categorically slag the Linux user experience. At least not when I'm within earshot.
Sunday, December 19, 2010
Technical difficulties - no post tonight
What should have been a no-brainer bare-bones installation of Ubuntu and a web server for testing has turned into a right pain, for which--based on the evidence presented thus far--I'm currently inclined to blame Dell hardware. But the error-and-trial has wiped out my budgeted writing time. (And then some.)
Until tomorrow...
Until tomorrow...
Saturday, December 18, 2010
A new "golden ratio" for the age of outsourcing
No doubt, I've harped on this theme before, but it came around to bite me again this past week--which clearly means The Universe at Large isn't heeding my rants--shocking as that may seem. [insert sarcastic eyeroll]
The backstory is that the client in question--so far as I can tell, anyway--staffs its I/T department almost exclusively with vendors (meaning temps). Mind you, I'm not slagging temp. employees: I've been there, done that and ragged out the t-shirt for good measure. But is it ever obvious when the contracts expire! That's when I stroll into work, to be greeted by emails (from their third shift) telling me to fix data in a system to which I have absolutely zero direct access.
You'd think that by this point, I'd have a boilerplate response filed away on a shared drive by now. But, apparently, I'm a slow learner. So I merely direct the "newbie" to the proper channels (i.e. the "upstream" application that actually generates the data) and make a point of carbon-copying the person who reported the original issue. Normally, that's the last I hear of it. Until the next contract renewal, anyway.
If it were a question of the company pissing away its intellectual capital in false economies, I'd shrug and dismiss them with a simple, "Good shuttance, ya mouth-breathing, bean-counting wankers." But the fact is that they're offloading some of that cost to "my" balance-sheet via the "free" training I provide to fill the vacuum of organizational know-how.
I suppose there's a rule-of-thumb metric buried in here somewhere that has to do with the ratio of temps vs. "real" employees one works with. And, while I wouldn't presume to interpret the actual significance of that ratio for any given situation, I do think it's a number worth tracking--regularly and for the long haul. Granted, it can't match the real "golden ratio" for sheer nerdtastic coolness. But if you find yourself in the position of having to triage clients, I think that there are few better indicators of the health & longevity of a business relationship.
The backstory is that the client in question--so far as I can tell, anyway--staffs its I/T department almost exclusively with vendors (meaning temps). Mind you, I'm not slagging temp. employees: I've been there, done that and ragged out the t-shirt for good measure. But is it ever obvious when the contracts expire! That's when I stroll into work, to be greeted by emails (from their third shift) telling me to fix data in a system to which I have absolutely zero direct access.
You'd think that by this point, I'd have a boilerplate response filed away on a shared drive by now. But, apparently, I'm a slow learner. So I merely direct the "newbie" to the proper channels (i.e. the "upstream" application that actually generates the data) and make a point of carbon-copying the person who reported the original issue. Normally, that's the last I hear of it. Until the next contract renewal, anyway.
If it were a question of the company pissing away its intellectual capital in false economies, I'd shrug and dismiss them with a simple, "Good shuttance, ya mouth-breathing, bean-counting wankers." But the fact is that they're offloading some of that cost to "my" balance-sheet via the "free" training I provide to fill the vacuum of organizational know-how.
I suppose there's a rule-of-thumb metric buried in here somewhere that has to do with the ratio of temps vs. "real" employees one works with. And, while I wouldn't presume to interpret the actual significance of that ratio for any given situation, I do think it's a number worth tracking--regularly and for the long haul. Granted, it can't match the real "golden ratio" for sheer nerdtastic coolness. But if you find yourself in the position of having to triage clients, I think that there are few better indicators of the health & longevity of a business relationship.
Friday, December 17, 2010
Two weeks' notice
(No, that doesn't quite mean what it usually means. But let's start at the beginning.)
To my gentle reader and honored guest in my little slice of the blogosphere:
It is times like these that make me wish I'd kept the receipts for my college English degree so that I could ask for a refund. Simply because UWEC did not teach me the vocabulary or grammar or style equal to the task of saying "thank you" for the inspiration that comes from knowing that someone might actually find the time to read this mulligan stew of rants, paeons, geek-outs, musings, pontification, navel-gazing, and intermittent loopiness.
As I see it, there are only two ways to write: As if no one's reading, and as if everyone is. Having done both, I can fairly say that the latter option is infinitely more rewarding, particularly when you have the privilege of knowing and/or interacting with some of the folks who--figuratively--stand over your shoulder every single day. It's an amazing feeling, and--selfishly--I don't want to give that up.
So what I'm thinking is to keep it honest by keeping to a regular schedule--a minimum of two days per week. I'm picking Tuesday, for tasters, because poor Tuesday seems to be the red-headed stepchild of the week. Plus, of course, Frivolous Friday. More than anything because I'm a sucker for "tradition," however spurious.
To circle back to the start, I want to again thank you, gentle reader, for having someone to write for, every night of the week, for well over a year. For me, at least, it's been quite the journey so far. And I would be honored to continue it with you, albeit on a somewhat different schedule.
To my gentle reader and honored guest in my little slice of the blogosphere:
It is times like these that make me wish I'd kept the receipts for my college English degree so that I could ask for a refund. Simply because UWEC did not teach me the vocabulary or grammar or style equal to the task of saying "thank you" for the inspiration that comes from knowing that someone might actually find the time to read this mulligan stew of rants, paeons, geek-outs, musings, pontification, navel-gazing, and intermittent loopiness.
As I see it, there are only two ways to write: As if no one's reading, and as if everyone is. Having done both, I can fairly say that the latter option is infinitely more rewarding, particularly when you have the privilege of knowing and/or interacting with some of the folks who--figuratively--stand over your shoulder every single day. It's an amazing feeling, and--selfishly--I don't want to give that up.
So what I'm thinking is to keep it honest by keeping to a regular schedule--a minimum of two days per week. I'm picking Tuesday, for tasters, because poor Tuesday seems to be the red-headed stepchild of the week. Plus, of course, Frivolous Friday. More than anything because I'm a sucker for "tradition," however spurious.
To circle back to the start, I want to again thank you, gentle reader, for having someone to write for, every night of the week, for well over a year. For me, at least, it's been quite the journey so far. And I would be honored to continue it with you, albeit on a somewhat different schedule.
Frivolous Friday, 12.17.2010: Shiny Bowl Blues
First, the backstory (which, incidentally, has bupkis to do with the usual fare around here). Our cat came to us as a stray. Despite five years of two--sometimes three--solid meals a day, he still acts like he doesn't know where his next meal's coming from.
A couple weeks ago, Dennis & I could hear the percussion his metal bowl makes as he drives it against the wall while polishing it to a mirror finish. I remarked to Dennis that if either of us had any musical talent, we could write a tune to that beat, maybe even roadhouse blues as if the cat had written it. The idea stuck with me, and, well, here you have it--written with my furry muse purring on my lap, no less...
- - - - -
Shiny Bowl Blues (by the Deputy Kibble-bringer)
I was strolling through the shady grass
On a sunny August day,
When a lady stopped to scratch my ears
And pretty soon led me astray.
She carried me off to her place:
I thought I was on a roll,
Never believing I'd be staring
Down into a shiny bowl.
Ka-thunk, ka-thunk, ka-thunk,
Goes my bowl against the wall.
I'm always hoping to scrape up more,
Though I know I ate it all.
In this life I could only win
By having nothing left to lose,
Meanwhile, I'll nap and I'll wash and then nap some more...
And sing me the shiny bowl blues.
Oh, I know that I'm a handsome guy:
Can't blame her for taking me in.
Five years on, I'm sleek and well-groomed,
Though maybe now not quite so trim.
I could admire this face all day,
From its ear-tips to kibble-hole,
But it looks so sad peering up at me
From inside a shiny bowl.
Ka-thunk, ka-thunk, ka-thunk,
Goes my bowl against the wall.
I'm always hoping to scrape up more,
Though I know I ate it all.
In this life I could only win
By having nothing left to lose,
Meanwhile, I'll nap and I'll wash and then nap some more...
And sing me the shiny bowl blues.
From my windows I can see
Rabbits frolicking on the grass,
And you know the mice are tastier
On the other side of the glass.
For the taste of Squirrel Al Fresco
To Basement Cat I'd pawn my soul.
But I can only stalk the critter
Who lives in my shiny bowl.
Ka-thunk, ka-thunk, ka-thunk,
Goes my bowl against the wall.
I'm always hoping to scrape up more,
Though I know I ate it all.
In this life I could only win
By having nothing left to lose,
Meanwhile, I'll nap and I'll wash and then nap some more...
And sing me the shiny bowl blues.
A couple weeks ago, Dennis & I could hear the percussion his metal bowl makes as he drives it against the wall while polishing it to a mirror finish. I remarked to Dennis that if either of us had any musical talent, we could write a tune to that beat, maybe even roadhouse blues as if the cat had written it. The idea stuck with me, and, well, here you have it--written with my furry muse purring on my lap, no less...
- - - - -
Shiny Bowl Blues (by the Deputy Kibble-bringer)
I was strolling through the shady grass
On a sunny August day,
When a lady stopped to scratch my ears
And pretty soon led me astray.
She carried me off to her place:
I thought I was on a roll,
Never believing I'd be staring
Down into a shiny bowl.
Ka-thunk, ka-thunk, ka-thunk,
Goes my bowl against the wall.
I'm always hoping to scrape up more,
Though I know I ate it all.
In this life I could only win
By having nothing left to lose,
Meanwhile, I'll nap and I'll wash and then nap some more...
And sing me the shiny bowl blues.
Oh, I know that I'm a handsome guy:
Can't blame her for taking me in.
Five years on, I'm sleek and well-groomed,
Though maybe now not quite so trim.
I could admire this face all day,
From its ear-tips to kibble-hole,
But it looks so sad peering up at me
From inside a shiny bowl.
Ka-thunk, ka-thunk, ka-thunk,
Goes my bowl against the wall.
I'm always hoping to scrape up more,
Though I know I ate it all.
In this life I could only win
By having nothing left to lose,
Meanwhile, I'll nap and I'll wash and then nap some more...
And sing me the shiny bowl blues.
From my windows I can see
Rabbits frolicking on the grass,
And you know the mice are tastier
On the other side of the glass.
For the taste of Squirrel Al Fresco
To Basement Cat I'd pawn my soul.
But I can only stalk the critter
Who lives in my shiny bowl.
Ka-thunk, ka-thunk, ka-thunk,
Goes my bowl against the wall.
I'm always hoping to scrape up more,
Though I know I ate it all.
In this life I could only win
By having nothing left to lose,
Meanwhile, I'll nap and I'll wash and then nap some more...
And sing me the shiny bowl blues.
Thursday, December 16, 2010
Rewarding our way to ruin?
If you've read any of Daniel Pink's work (specifically that dealing with intrinsic vs. extrinsic motivation), you won't be surprised by the fact that earlier today he tweeted a link to the Washington Post article, "Why tomorrow's Wall Street leaders don't like bonuses."
The gist of the piece is that employee--i.e. fund manager--frustration stemmed from their employers issuing bonus checks in lieu of performance reviews and feedback. On the surface, such frustration would seem non-sensical: After all, who doesn't like big, fat checks and who doesn't dread review time (particularly when filling out your self-assessment form is as long and agonizingly introspective as writing a Russian novel)?
But, looking beyond the superficial, a check doesn't really tell you anything--other than you're not fired, particularly when you work in a firm where discussing compensation can land you out on the curb. So there's no sense of performance, simply by virtue of the lack of comparison. And if the formula for computing bonuses isn't clear, there's no benchmark by which to measure oneself. Which in turns leads almost inevitably to suspicions of favoritism, gaming the system, etc.
But what I think is missing from the commentary is simply the bare-bones reality that investment firms have nothing to offer their clients except human judgment. Their sole job is to take in money and turn it into more money with reasonably gratifying regularity. Some of this function could be offloaded to computer algorithms, but that's precisely the kind of thing that becomes a commodity in a very short time. Which brings things right back to hiring the best people and making them even better as the only viable market differentiator.
In other words, if you work in Wall Street and you aren't investing in other companies, your only other value-add is to invest in those who are bringing in the cash. Profit-sharing is one thing; annual bonuses are a cop-out for real development--even when they don't encourage short-sighted and/or sub-ethical behavior. To me, the wonder is not so much that the house of cards came down in 2008, but that anyone is able to build it that high in the first place.
The gist of the piece is that employee--i.e. fund manager--frustration stemmed from their employers issuing bonus checks in lieu of performance reviews and feedback. On the surface, such frustration would seem non-sensical: After all, who doesn't like big, fat checks and who doesn't dread review time (particularly when filling out your self-assessment form is as long and agonizingly introspective as writing a Russian novel)?
But, looking beyond the superficial, a check doesn't really tell you anything--other than you're not fired, particularly when you work in a firm where discussing compensation can land you out on the curb. So there's no sense of performance, simply by virtue of the lack of comparison. And if the formula for computing bonuses isn't clear, there's no benchmark by which to measure oneself. Which in turns leads almost inevitably to suspicions of favoritism, gaming the system, etc.
But what I think is missing from the commentary is simply the bare-bones reality that investment firms have nothing to offer their clients except human judgment. Their sole job is to take in money and turn it into more money with reasonably gratifying regularity. Some of this function could be offloaded to computer algorithms, but that's precisely the kind of thing that becomes a commodity in a very short time. Which brings things right back to hiring the best people and making them even better as the only viable market differentiator.
In other words, if you work in Wall Street and you aren't investing in other companies, your only other value-add is to invest in those who are bringing in the cash. Profit-sharing is one thing; annual bonuses are a cop-out for real development--even when they don't encourage short-sighted and/or sub-ethical behavior. To me, the wonder is not so much that the house of cards came down in 2008, but that anyone is able to build it that high in the first place.
Finding virtue in vice (belated Wednesday post)
For the record, I have a perfectly valid excuse for delivering yesterday's blog post today: I spent last evening gambling--at first with other people's chips, then with my own. I seemed to do well enough both ways, but given that it was at an office party, it's not like I'll be cleaning out Vegas anytime soon.
For awhile, I almost had myself convinced that blackjack--gradually upping my bids, splitting, and even doubling down--was really an exercise in innoculating myself against risk and loss in the entrepreneurial sense. So by the time I "cashed out," I was feeling just a teensy bit smug about my aptitude. 'Course, alternating between Reisling and something called "Apothic Red" might have had a little something to do with that. (In case it matters, I didn't drive myself home.)
After more sober consideration back in the workaday world, there is the unescapeable reality that--even with odds favoring the house--blackjack's rules and statistical underpinnings can't hold the proverbial candle to the complexities and unknowns of the real world. But the good news, to me at least, is that managing risk--by which I mean not freaking out when a bet goes bust--seems to be a learnable skill.
For awhile, I almost had myself convinced that blackjack--gradually upping my bids, splitting, and even doubling down--was really an exercise in innoculating myself against risk and loss in the entrepreneurial sense. So by the time I "cashed out," I was feeling just a teensy bit smug about my aptitude. 'Course, alternating between Reisling and something called "Apothic Red" might have had a little something to do with that. (In case it matters, I didn't drive myself home.)
After more sober consideration back in the workaday world, there is the unescapeable reality that--even with odds favoring the house--blackjack's rules and statistical underpinnings can't hold the proverbial candle to the complexities and unknowns of the real world. But the good news, to me at least, is that managing risk--by which I mean not freaking out when a bet goes bust--seems to be a learnable skill.
Tuesday, December 14, 2010
Crying wolf
Most of my workday was spent setting up my already-customized new workstation. That's actually an improvement over the nearly two-day process it used to be. (Our resident Sys. Admin. at least tailors the software montage to our jobs, rather than merely handing off whatever McImage is cut by corporate I/T.) Much of the time saved comes from the fact that SysAdmin just hooks our soon-to-be-former workstation up to the network and maps a drive to it on the new workstation. That allows for what I call the "one-step-schlep." (In the old days--a.k.a. 2007--we had to drag our data to a network share and hope we remembered everything the first time.)
I'm not complaining, but I couldn't help but notice how, no matter what kind of files my mouse hauled from the Windows XP to the Windows 7 installation, the latter went into over-protective parent mode. As in, Oh-I-don't-know-honey-are-you-sure-you-feel-comfortable-doing-this-how-much-do-you-really-know-about-that-file-I-mean-you-don't-even-know-anything-about-its-parent-folder-and-that-extension-could-just-be-all-an-act-and-yes-I-know-it's-your-hard-drive-and-all-but-I-just-don't-want-to-see-you-with-a-virus-when-a-little-caution-now-could-prevent-that.
Yeeesh.
The bottom line is, there is zero--on second thought, let's make that negative--credibility in such "warnings." At that point, it's not even security kabuki as practiced by the DHS/TSA. Rather, it rolls on the same level as the ravings of a tin-foil-suited nutjob living in a bomb shelter insulated with bulging Dinty Moore cans. And, given that my firm paid a premium for the soi-dissant "Enterprise" version of that operating system, you'd better believe I think we have the right to expect better than that.
Fortunately for what I was trying to accomplish, overriding the hand-wringing freakout was a matter of a simple--albeit time-wasting--click. But the bottom line is that paranoia and fear-mongering do not make us secure. That goes for our desktops just as much as airport rigamarole. Sadly, real life doesn't have the same happy ending as the fairy tale: Those who cry "Wolf!" are too often rewarded with power and money, rather than removed from the organizational gene-pool.
I'm not complaining, but I couldn't help but notice how, no matter what kind of files my mouse hauled from the Windows XP to the Windows 7 installation, the latter went into over-protective parent mode. As in, Oh-I-don't-know-honey-are-you-sure-you-feel-comfortable-doing-this-how-much-do-you-really-know-about-that-file-I-mean-you-don't-even-know-anything-about-its-parent-folder-and-that-extension-could-just-be-all-an-act-and-yes-I-know-it's-your-hard-drive-and-all-but-I-just-don't-want-to-see-you-with-a-virus-when-a-little-caution-now-could-prevent-that.
Yeeesh.
The bottom line is, there is zero--on second thought, let's make that negative--credibility in such "warnings." At that point, it's not even security kabuki as practiced by the DHS/TSA. Rather, it rolls on the same level as the ravings of a tin-foil-suited nutjob living in a bomb shelter insulated with bulging Dinty Moore cans. And, given that my firm paid a premium for the soi-dissant "Enterprise" version of that operating system, you'd better believe I think we have the right to expect better than that.
Fortunately for what I was trying to accomplish, overriding the hand-wringing freakout was a matter of a simple--albeit time-wasting--click. But the bottom line is that paranoia and fear-mongering do not make us secure. That goes for our desktops just as much as airport rigamarole. Sadly, real life doesn't have the same happy ending as the fairy tale: Those who cry "Wolf!" are too often rewarded with power and money, rather than removed from the organizational gene-pool.
Monday, December 13, 2010
Self-flattery
(To be filed under "You know you're a geek when...")
While camping out by the cellphone waiting for AAA and/or the towing company to call, my dominant thought--apart from worrying about power outages back at the homestead--was "What software are they using? There's gotta be a way to make this more efficient!"
Sigh. At least I managed to stop myself from armchair enterprise software architecture design. This time. That's progress, I guess. Another sigh.
You're only as good as your affiliates (belated Sunday post)
The backstory is that Dennis and I were in the Twin Cities when "Snowmageddon"--particularly, the bad visibility--pitched us into the downy embrace of Snelling Avenue's snow-filled median sometime around noon-thirty on Saturday. Then again, that's what AAA memberships, and even El Cheapo prepaid cellphones like mine live for. That, and we knew there was a motel just a bit up the road anyway. By the time the classic "Minnesota Nice" couple in the yellow SUV offered to drop us off, we already had the call in for the tow truck and a room booked.
Problem was, the 2.5 hour wait that AAA indicated, turned into something like 29 hours. (Naifish me, I'd done the whole "responsible motorist" schtick and left the flashers on when we bailed on poor little Tercel. Whoops.) Later in the afternoon, AAA called me back with the heads-up that the original towing company's trucks were all stuck, and that my call had been put in the queue with a second company, who would call me before attempting to rescue my little green one. A bit after dinnertime, the backup company called to inform me that they were pulling all their trucks off the roads and that I should start afresh with AAA on the morrow.
Which I did. And we waited. All things considers, it was a productive enough day: Dennis made a serious dent writing the final for his class; I did the majority of my Christmas shopping. One of our two very dearest friends was able to meet us for lunch. And, despite the fact that the car was finally winched from its snowy bed at around 5:30 Sunday, the conditions on I-90 pretty much mandated another night in Roseville. At one point, I'd been on the phone, nagging AAA for at least an approximate ETA on the service for which a decade's worth of dues have paid, and--as a side note--was told that the towin companies were "starting to get frustrated"--presumably with the strains on their capacity.
The last of the afore-mentioned small mercies was that, between us, the storm and I had managed to bury the car so thoroughly (and conveniently out of the way) that pulling it out wasn't exactly a top priority for the Roseville, MN constabulary. ("Oh, boy..." quoth the nice tow driver when he caught a glimpse of how his next 20 minutes would be spent.) I think I've previously mentioned that if my gentle reader wants living proof that the Powers That Be watch over fools, s/he need look no further than me. This is one of the best cases in point.
But the far more salient point, IMO, is the degree to which the mantras of "lean" organizations and the economy of "shared" goods and services alleged to be on our horizon are built on partnership, rather than ownership. If the days when Ford Motor Corporation owned the land on which grazed the sheep that provided the wool for the upholstery of its vehicles are indeed as quaint a vision as the towers of Camelot, then the only things remaining to be optimized (if not, in fact monopolized) are information and relationships. At the time of writing, neither lends itself to iron-fisted control.
From a consumer's standpoint, this is more than likely a good thing. Vertical monopolies might provide lower prices in the short run, but when companies depend upon each other, not only for materials and services, but also for reputation, it introduces a set of checks and balances that monopolies/oligopolies can't offer.
Problem was, the 2.5 hour wait that AAA indicated, turned into something like 29 hours. (Naifish me, I'd done the whole "responsible motorist" schtick and left the flashers on when we bailed on poor little Tercel. Whoops.) Later in the afternoon, AAA called me back with the heads-up that the original towing company's trucks were all stuck, and that my call had been put in the queue with a second company, who would call me before attempting to rescue my little green one. A bit after dinnertime, the backup company called to inform me that they were pulling all their trucks off the roads and that I should start afresh with AAA on the morrow.
Which I did. And we waited. All things considers, it was a productive enough day: Dennis made a serious dent writing the final for his class; I did the majority of my Christmas shopping. One of our two very dearest friends was able to meet us for lunch. And, despite the fact that the car was finally winched from its snowy bed at around 5:30 Sunday, the conditions on I-90 pretty much mandated another night in Roseville. At one point, I'd been on the phone, nagging AAA for at least an approximate ETA on the service for which a decade's worth of dues have paid, and--as a side note--was told that the towin companies were "starting to get frustrated"--presumably with the strains on their capacity.
The last of the afore-mentioned small mercies was that, between us, the storm and I had managed to bury the car so thoroughly (and conveniently out of the way) that pulling it out wasn't exactly a top priority for the Roseville, MN constabulary. ("Oh, boy..." quoth the nice tow driver when he caught a glimpse of how his next 20 minutes would be spent.) I think I've previously mentioned that if my gentle reader wants living proof that the Powers That Be watch over fools, s/he need look no further than me. This is one of the best cases in point.
But the far more salient point, IMO, is the degree to which the mantras of "lean" organizations and the economy of "shared" goods and services alleged to be on our horizon are built on partnership, rather than ownership. If the days when Ford Motor Corporation owned the land on which grazed the sheep that provided the wool for the upholstery of its vehicles are indeed as quaint a vision as the towers of Camelot, then the only things remaining to be optimized (if not, in fact monopolized) are information and relationships. At the time of writing, neither lends itself to iron-fisted control.
From a consumer's standpoint, this is more than likely a good thing. Vertical monopolies might provide lower prices in the short run, but when companies depend upon each other, not only for materials and services, but also for reputation, it introduces a set of checks and balances that monopolies/oligopolies can't offer.
Saturday, December 11, 2010
My inner adolescent pays it forward
As a teen with a curfew and much put upon--or so I thought--by the expectation of playing by "adult" rules when my actual decision-making abilities were so curtailed, I probably more than once fantasized about smacking the next person who reminded me that I had control over my reaction to things. As I saw it then, I was only giving what I got.
My attitude's gone through a few different adjustments since then, though I still do not willingly suffer fools who mouth platitudes. But it occurs to me now that any business that provides goods and/or services in a consumer may well, thanks to the internet--particularly YouTube, Twitter and the like--find itself in much the same position. Governments, too, as we are again seeing as the ripples caused by Wikileaks continue to widen.
My inner fifteen year old is pleased, actually. But, then, we share a certain taste for karmic schadenfreude. [insert evil grin]
My attitude's gone through a few different adjustments since then, though I still do not willingly suffer fools who mouth platitudes. But it occurs to me now that any business that provides goods and/or services in a consumer may well, thanks to the internet--particularly YouTube, Twitter and the like--find itself in much the same position. Governments, too, as we are again seeing as the ripples caused by Wikileaks continue to widen.
My inner fifteen year old is pleased, actually. But, then, we share a certain taste for karmic schadenfreude. [insert evil grin]
Thursday, December 9, 2010
No Friday post
Just thought I'd let my gentle reader know ahead of time that tomorrow evening is already spoken-for. Regularly-scheduled frivolity will resume on the 18th. Cheers and have a good tomorrow, all!
When the Sibyl huffs too many volcanic fumes *
It's the 23rd Century. Earth, emboldened by the success of its contacts with "alien" regimes and cultures, decides to venture too close to the space of a more elusive (but definitely to-be-reckoned with) culture. One of its "alien" consultants, a cynical (yet often Quixotic) old hand from a fading empire comments, "Ahhhh, I see that you have managed to combine arrogance and stupidity: How efficient of you."
And so I--quite appropriately, mind you!--raise my glass to Londo Mollari, future Emperor of the Centauri Republic in the Babylon 5 universe for summing up precisely how I feel about Oracle's conduct in the Java Community Process. Or perhaps not quite. I would add "hypocrisy" to "arrogance and stupidity" and make it a hat-trick...or the trifecta of #FAIL.
But the larger point is Oracle cannot possibly have the programmers necessary to sustain its Java middleware efforts and support its flagship database products. Neither can its enemy-of-my-enemy "friends" like IBM. Thus, there's a certain care and feeding necessary for the developers who maintain the amenities that make the language attractive:
- Coding software (a.k.a. Integrated Development Environments, or IDEs) such as NetBeans, Eclipse (no connection to vampires, werewolves or sulky-looking jailbait!), and BlueJ
- Testing software, mostly meaning JUnit
- Build software, mostly meaning Ant
- Web application servers, such as Tomcat, Jetty and JBoss
- Databases (e.g. Derby) and database connectors (e.g. JDBC for Derby, MySQL, etc.)
- Etc.
- Yadayadayadayada
- And so forth
In short, a whole lot of programmers devote uncounted hours of free time to what can quite accurately be described as an ecosystem built around that language. And, frankly, I simply cannot wrap my brain around the short-sightedness of Oracle's attitude. Granted, the Apache Foundation is not the only large faction in the open source world, but it draws one heck of a lot of water. Which--to extend the ecosystem analogy--makes Oracle's belligerent attitude tantamount to clear-cutting, mountaintop removal, strip-mining, ghost-netting, shark-finning, or any other particularly nasty bit of corporate hubris you can name--up to and including Deepwater Horizon.
All of which makes me incredibly sad, because Java has been my favorite language for a decade. Why? Because it Just Makes Sense. Period. Unlike the disjointed, steaming messes that are Objective-C and ActionScript--which don't provide functionality so much as they splatter them across what Apple and Adobe fondly imagine to be APIs (Apple being by far the worse culprit). Moreover, Java is a language can power huge, data-backed websites as well as desktop and even cellphone applications.
Fifteen years is a lot of legacy for any language--and the tools that grow up around it. But in the long run, the internet is a primordial soup for new programming languages and platforms. There's no going back to Borland's heyday. Microsoft gets away with charging for its toolset because of the integration aspect, and for all I know that may be part of what Oracle has in mind.
Technically, as the buyers of Sun's assets, they legally can do what they please with them, including perpetuating the non-cooperation they deplored Back In The Day. But one thing they'd better not do is be surprised when one of the open source "forks" of the language does to them what Firefox did to Internet Explorer.
- - - - - -
* The prophesies of the original Oracle of ancient Greece were, by tradition, inspired by inhaling the fumes from a volcanic vent, over which the temple at Delphi was situated.
Wednesday, December 8, 2010
Solving a non-existent problem
Wikipedia is one of the Facebook groups I follow, which means that my feed contains the occasional url to a hand-picked article. Today's was nerdy enough (in the sense of both history and science) that I clicked the "Share" link. Before FB would copy it to my wall (and friends' feeds), however, it insisted on making me jump through the extra hoop of a captcha.
I thought that kind of non-sensical, actually. It's not like that's going to show up on Google's radar. And it's also not a platform that lends itself to link-spamming like the farce that is Twitter search results or their "Top Tweets" feature. Moreover, anyone who calls me "friend" has very handy access to the means to surgically remove that link or block me entirely. Which is more than I can say for squelching the "targeted" advertising that so often manages to miss the broad side of every single barn in Farmville. (Although, in fairness, I may have trained the algorithms to stop feeding me political ads...and the slime index is registering a bit lower than normal lately.)
Granted, I suck badly enough at the user interface design of software, so I claim to know much about it. But what I do know is that a feature that makes the user think, "Wait...what? Seriously???" is probably sub-optimal. Just sayin'.
I thought that kind of non-sensical, actually. It's not like that's going to show up on Google's radar. And it's also not a platform that lends itself to link-spamming like the farce that is Twitter search results or their "Top Tweets" feature. Moreover, anyone who calls me "friend" has very handy access to the means to surgically remove that link or block me entirely. Which is more than I can say for squelching the "targeted" advertising that so often manages to miss the broad side of every single barn in Farmville. (Although, in fairness, I may have trained the algorithms to stop feeding me political ads...and the slime index is registering a bit lower than normal lately.)
Granted, I suck badly enough at the user interface design of software, so I claim to know much about it. But what I do know is that a feature that makes the user think, "Wait...what? Seriously???" is probably sub-optimal. Just sayin'.
Tuesday, December 7, 2010
I'm onto your nefarious plan, Mr. Jobs!
Around lunchtime, my pod-mate dragged my attention out of The Zone and pointed it at the blown capacitor smell originating from somewhere on our side of the building. I'd had my headphones earlier, and thus missed the ominous "Pop!" that preceded the scent of fried electronics.
I don't think I'm projecting my opinions when I say that our doughty Sys. Admin. did not seem at all thrilled at the prospect of getting it up and running again. (The snarky comment about parts being "encased in arty aluminum" might have been the tip-off--y'think?) But the iPad developers need it, so its days as a boat anchor have been postponed.
If I didn't know better, I'd swear that Apple's whole iPlatform was merely an elaborate plot to boost Mac sales...
I don't think I'm projecting my opinions when I say that our doughty Sys. Admin. did not seem at all thrilled at the prospect of getting it up and running again. (The snarky comment about parts being "encased in arty aluminum" might have been the tip-off--y'think?) But the iPad developers need it, so its days as a boat anchor have been postponed.
If I didn't know better, I'd swear that Apple's whole iPlatform was merely an elaborate plot to boost Mac sales...
Monday, December 6, 2010
Rebooting the Android strategy/tactics
I thought that Google's decision to take a lower-key approach with the Nexus S Android phone was interesting in its potential to under-promise and over-deliver. Not enough to drive your faithful blogger over to T-Mobile, of course--their "bundling" of voice, text & data is the lame joke it was when I crunched the numbers months ago and decided to stay with pre-paid. In the meantime, I'm holding out for better luck with the next incarnation.
At least Google seems to have learned from their very public spill, and that's encouraging. But the real question (to my mind, anyway), is how much a more Googly-flavored Android phone can push consumers to push their carriers to open up their offerings to less "customized" (a.k.a. "locked down") handsets.
Personally, I'm leaning toward a pessimistic view, given how willfully ignorant most Americans seem to be about the true cost of anything that involves monthly payments. Then again, cool is cool--and that's the game just now.
At least Google seems to have learned from their very public spill, and that's encouraging. But the real question (to my mind, anyway), is how much a more Googly-flavored Android phone can push consumers to push their carriers to open up their offerings to less "customized" (a.k.a. "locked down") handsets.
Personally, I'm leaning toward a pessimistic view, given how willfully ignorant most Americans seem to be about the true cost of anything that involves monthly payments. Then again, cool is cool--and that's the game just now.
Sunday, December 5, 2010
Will close enough be good enough?
The theater where Dennis & I spent part of Date Night is advertising live broadcasts of events such as operas and ballets. I thought that was an interesting niche idea in the "where else ya gonna get that?" sense. The exclusivity of such a showing runs side-by-side with a limitation of choice (i.e. see it then or not at all) that makes up the mind one way or another. (Anecdotal case in point: Of the movies I've seen in theater, the one I've most often attended is only offered--in this area, anyway--at my UWEC, and then only once a year at midnight.)
But for all the exclusivity, tuning in "live" to something happening at Bayreuth, The Hollywood Bowl, La Fenice, Royal Albert Hall, Radio City Music Hall, etc. from the comfort of your local cineplex is still not the same as being there. I mean, granted, it's not like anyone would be silly enough to do Tony and Tina's Wedding that way, and theater-in-the-round would be a suboptimal experience at best.
But the question boils down to whether "close enough" is "good enough." When Dennis & I finally had the means to venture over to the UK, seeing a Shakespeare play at The Globe was--surprise!--non-negotiable. The experience was pretty amazing facsimile, all in all: Paying good money to be crammed onto wooden benches, using the knees of the patron behind you as a backrest, occassionally feeling a September drizzle blow in from the open part of the roof. Never mind that the underpinnings of the 17th century original lay under an apartment complex a few blocks off: It was the best to be had.
Which will probably also be true sentiment of the arts-lover who can't swing a trip to the actual production's venue. But whether the approximation will be good enough is another question. I think that, as the gap continues to close between our immediate world and that which can be brought to us via technology, that question will become more and more complex...and interesting.
But for all the exclusivity, tuning in "live" to something happening at Bayreuth, The Hollywood Bowl, La Fenice, Royal Albert Hall, Radio City Music Hall, etc. from the comfort of your local cineplex is still not the same as being there. I mean, granted, it's not like anyone would be silly enough to do Tony and Tina's Wedding that way, and theater-in-the-round would be a suboptimal experience at best.
But the question boils down to whether "close enough" is "good enough." When Dennis & I finally had the means to venture over to the UK, seeing a Shakespeare play at The Globe was--surprise!--non-negotiable. The experience was pretty amazing facsimile, all in all: Paying good money to be crammed onto wooden benches, using the knees of the patron behind you as a backrest, occassionally feeling a September drizzle blow in from the open part of the roof. Never mind that the underpinnings of the 17th century original lay under an apartment complex a few blocks off: It was the best to be had.
Which will probably also be true sentiment of the arts-lover who can't swing a trip to the actual production's venue. But whether the approximation will be good enough is another question. I think that, as the gap continues to close between our immediate world and that which can be brought to us via technology, that question will become more and more complex...and interesting.
The screens who stare at geeks
I was working something out in my head the other day, but must've been too lost in that, because my pod-mate said, "That staring contest you were having with your screen? The screen won." "Hey now," protested I in mock-outrage, "I'm only outnumbered two to one: Give me a little credit!"
But he has a point: When you stare at a screen, it stares back. Contemplation is all well and good, but (for me, at least) breakthroughs rarely happen without tweaking, rearranging, experimentally breaking what's on the screen, sometimes even walking away. Anything but continue to stare at a screen that--screensaver and hibernation mode withstanding--doesn't blink.
But he has a point: When you stare at a screen, it stares back. Contemplation is all well and good, but (for me, at least) breakthroughs rarely happen without tweaking, rearranging, experimentally breaking what's on the screen, sometimes even walking away. Anything but continue to stare at a screen that--screensaver and hibernation mode withstanding--doesn't blink.
Friday, December 3, 2010
Frivolous Friday, 12.03.2010: Book review
A week or so ago, I finished Daniel Ariely's Predictably Irrational. It is easily the best read I've had since snarfing Cognitive Surplus in August. Partly because they both fly in the face of conventional wisdom that says that human beings live and work to optimize their take from the world--locking out others if necessary.
But while Shirky's book is useful for understanding how to foster innate motivation and generosity in people, Arielly's work tackles the route to happiness from a different cardinal direction. He does this by breaking down the effects (both good and bad) of "free," the power of comparisons--real and illusionary--in decision-making, the pull of sunk costs (i.e. "ownership"), the conflation of price and value, etc. It's not long before the illustrations of how we fritter (or gamble) away our time, money and opportunities becomes downright dismaying. And, although the honesty is commendable, it's more dismaying still when the anecdotes Arielly uses are from his own experience--at a time when he, intellectually, should have known better. (The fact that many experiments were carried out on unsuspecting MIT students, who are supposed to be pretty sharp, only rubs salt into the already-stinging pride...)
But ignorance is bliss, it also comes with a high price tag. When the folks on our lovely jewel of a planet come to their senses and elect me Supreme Benevolent Dictator for Life, this will be mandatory high school curriculum, which I don't say about much, except for memorizing the formula for computing compound interest. And knowing how to use apostrophes (for those languages that have them). And understanding logical fallacies. Oh, and not making stuff up about history or the constitution of your country, darnitalready!
Anyhoo, since my ascension to absolute power seems to be slow in coming, I'll only say that I don't have enough thumbs to give this book the props it deserves. Go--pester the library for it if they don't already have it. Trust me.
Thursday, December 2, 2010
Never unnecessarily flatten the adoption curve
Yes, I'm afraid I'm dinging Microsoft again for the ASP "Classic" -> ASP.NET thing again. To their credit, when ASP.NET version 1 was first released, Microsoft tried to nudge developers past the pain of upgrading by providing a free migration tool. Which was smart. But that tool won't do me much good, seeing how the language is up to version 4.0. So I spent a bit of time today looking for the 2010 edition of that tool. At first I thought that perhaps my Google-fu was not strong today. Now I'm pretty sure that's not the case. (Although--and I didn't think of this until just now--MS is pretty notorious for changing names of things. I'll take another crack at it tomorrow.)
Yet if I'm proven wrong, I still think that the point largely stands. See, it's not the 1.0 crowd you need to worry about migrating so much as the 2.0 and 1.0 crowd. Reason being, 1.0 is wired more adventurously. Everyone else is waiting to see whether the pioneers survive their first winter (or two) and--more importantly, whether the risk paid off. During the wait, legacy code will continue to pile up, and the new language will undergo even more changes that can make converting even more painful.
Unlike learning curves (which ideally should be shallow for most of their length), adoption curves should be steep: If elapsed time is the X-axis and number of adopters is the Y-axis, it's more profitable to front-load that curve with a high number and worry about the stragglers later. In a disruptive, innovative industries, this is the pipe dream of entrepreneurs and venture capitalists. This is the sort of thing that creates industry standards--without knock-down-drag-out trench wars like that of VHS and BetaMax.
And, in my opinion--not necessarily 100% objective, mind you--Microsoft blew it. Whoever made the decision not to migrate the migration tool to the next few iterations of ASP.NET deserves a bonking on the noggin with a copy of Crossing the Chasm. A decision which may have more than a little to do with the fact that Microsofts web server now supports the open source PHP programming language. Only think how unthinkable that would have been to the incarnation of Microsoft that released .NET 1.0! For all I know, I could be making a classic post hoc, ergo propter hoc error here, but boy-oh-boy is it a tempting inference to make.
Yet if I'm proven wrong, I still think that the point largely stands. See, it's not the 1.0 crowd you need to worry about migrating so much as the 2.0 and 1.0 crowd. Reason being, 1.0 is wired more adventurously. Everyone else is waiting to see whether the pioneers survive their first winter (or two) and--more importantly, whether the risk paid off. During the wait, legacy code will continue to pile up, and the new language will undergo even more changes that can make converting even more painful.
Unlike learning curves (which ideally should be shallow for most of their length), adoption curves should be steep: If elapsed time is the X-axis and number of adopters is the Y-axis, it's more profitable to front-load that curve with a high number and worry about the stragglers later. In a disruptive, innovative industries, this is the pipe dream of entrepreneurs and venture capitalists. This is the sort of thing that creates industry standards--without knock-down-drag-out trench wars like that of VHS and BetaMax.
And, in my opinion--not necessarily 100% objective, mind you--Microsoft blew it. Whoever made the decision not to migrate the migration tool to the next few iterations of ASP.NET deserves a bonking on the noggin with a copy of Crossing the Chasm. A decision which may have more than a little to do with the fact that Microsofts web server now supports the open source PHP programming language. Only think how unthinkable that would have been to the incarnation of Microsoft that released .NET 1.0! For all I know, I could be making a classic post hoc, ergo propter hoc error here, but boy-oh-boy is it a tempting inference to make.
Wednesday, December 1, 2010
A good "warning sign"
Originally, I'd had reasons for using Mercurial (as a secondary option) for source control that didn't much resemble the usual reasons. (For the non-developer, "source control" is software that lets you save different versions of the same files. If you're familiar with how Microsoft Word stores revisions, it's sort of like that.) First, I just wanted to kick its tires and then drag-race it in an empty parking lot. Second, it made keeping two different branches of the same web application in synch almost laughably easy. And, finally, I didn't have to ask permission, rely on someone else to set up repositories and branches and logins and yadayadayada.
The second "branch" of the afore-mentioned web app. has been frozen in carbonite for a couple weeks now. But on the off chance we need to thaw and resuscitate it, I've kept the Mercurial repository of the working "branch" up to date. But it was only today that I realized that I'd been consciously committing code as standalone "snapshots" of specific changes...and (figuratively) kicked myself for not adding the corresponding issue-tracker ID number to the comments for those commits.
Which, I think, indicates that I may have a new go-to version control software package. Assuming, naturally, that the evil minions of Brute-force Standardization don't force the project into rival package Subversion at gun-point. That's always a danger, of course. ;-) But I think it speaks well of Mercurial how natural it feels for the workflow. And, considering that I interact with it via the command-line, that's saying something.
The second "branch" of the afore-mentioned web app. has been frozen in carbonite for a couple weeks now. But on the off chance we need to thaw and resuscitate it, I've kept the Mercurial repository of the working "branch" up to date. But it was only today that I realized that I'd been consciously committing code as standalone "snapshots" of specific changes...and (figuratively) kicked myself for not adding the corresponding issue-tracker ID number to the comments for those commits.
Which, I think, indicates that I may have a new go-to version control software package. Assuming, naturally, that the evil minions of Brute-force Standardization don't force the project into rival package Subversion at gun-point. That's always a danger, of course. ;-) But I think it speaks well of Mercurial how natural it feels for the workflow. And, considering that I interact with it via the command-line, that's saying something.
Subscribe to:
Posts (Atom)