23 December 2006

fashionable defeatism

"fashionable defeatism" is a term coined by Robert Atkinson of the Progressive Policy Institute to describe the tendency of leaders to slow the rate of congestion (at least in the context i care about) rather than fix the problem. i've been reading The Road More Traveled by Ted Balaker and Sam Staley, mailed to me from the Reason Foundation (i'm just that important). the main theme of the book is how US leadership has fallen asleep at the wheel and fallen prey to neo-hippie ideology regarding congestion on our highways.

unfortunately, many countries are ahead of us in solving similar issues (including France!) by involving the private sector, often by guaranteeing long-term concessions for tolls. australia, england, germany, france, etc are solving problems using innovation and targeted incentives rather than taxation and stubborn adherence to outdated philosophies. the result is that all the money is avoiding our coffers.

my "neo-hippie" snipe regards mostly the idea that we should seek to abandon our cars and live in harmony with light rail and walking. the poster child is almost always the NYC subway. i've ridden the subway and it's nice. but i don't commute around NYC and i certainly don't commute between two suburbs when a radial rail system is fo' shizzle. NYC also boasts about 50 000 people per square mile, way more than enough to warrant a large investment in a rail system. light rail won't work for most places and will end up being subsidized to the tune of millions in order to serve a decliningly small percentage of commuter traffic.

convenience matters, too. a woman at my office was in a van pool that would ultimately deliver her to the front door of our building in about 90 minutes. now she drives to work in 30 to 45 minutes and has time (here i paraphrase) to sleep late and still enjoy a relaxing morning with her husband. i haven't asked, but i'm sure she'd agree that rail wonks can eat it. with a fork.

22 December 2006

public school systems suck bad

a 5-year-old is suspended for "sexual harassment." is it even possible that a child that young knows what sex is?

During the 2005-06 school year, 28 kindergarten students in Maryland were suspended for sex offenses, including sexual assault, sexual harassment and sexual activity, according to state data. Fifteen of those suspensions were for sexual harassment.

During the 2005-06 school year, one Washington County prekindergarten student was suspended from school, and 12 of the county's kindergartners were suspended for various offenses, according to state data.

i have zero tolerance for zero tolerance programs. it's no wonder i know so many people who either home-school or wish they could.

21 December 2006

and i thought the NC use tax was BS

West Virginia has begun to levy taxes against some businesses outside of its boundaries. i'm fairly certain there's a sentence or two in the constitution about that one. the sixteenth amendment was indeed a slippery slope. there's a history lesson in there for us someplace.

19 December 2006

privatization or privation?

seems almost a million squatters may be evicted from their shanty town in Manila as the land they've been occupying since the '50s is being "privatized." a miniscule amount of relocation monies are planned--enough for only 300 families.

resharper

Mike Roberts makes a good spiel for the use of Resharper and i agree 100% that you should at least evaluate it; however, there are a couple of issues that annoy me, though not enough to make me stop using this wonderful tool. there is no Inline Method refactoring and i was told that there are no plans to put it in. i believe there is an API for writing one's own refactorings, so i may try my luck. moving classes between projects is a royal pain, as is renaming a project. i guess the number of I/O steps involved makes it difficult, but i would really like to have a tool make these things easier for me since i do it often enough. it also doesn't handle reverting the same changes well at all. it takes some manual re-jiggering and multiple reverts to make it happen. all-in-all, Resharper is a must have.

16 December 2006

semantic relativism

DC is once again trying to define its own version of the Bill of Rights. the idea that the preamble to the second amendment indicates a state interest in bearing arms is a common theme in modern socialist america.
A well regulated militia, being necessary to the security of a free state, the right of the people to keep and bear arms, shall not be infringed.
i would argue that the focus of interpretation should rest on the statement of recognized right: "the right of the people...." The first and fourth amendments, fundamental to modern individual rights, use the exact same words. i haven't met a single person who would disagree that they guarantee individual rights.
Congress shall make no law respecting an establishment of religion, or prohibiting the free exercise thereof; or abridging the freedom of speech, or of the press; or the right of the people peaceably to assemble, and to petition the government for a redress of grievances.
The right of the people to be secure in their persons, houses, papers, and effects, against unreasonable searches and seizures, shall not be violated, and no warrants shall issue, but upon probable cause, supported by oath or affirmation, and particularly describing the place to be searched, and the persons or things to be seized.
a government entity simply deciding that we should no longer own armaments does not negate the right. a more appropriate course of action is to seek to amend the constitution. i find it incredibly troubling that our government is seeking a Hobbesian monopoly on force. people seem to be ignorant of their own country's history when they sit silently by.

15 December 2006

refactoring drift

Martin Fowler! laments the semantic shift of the term "refactoring," distinguishing between it and "restructuring." from a jargonistic perspective, i suppose he's spot-on; however, as a bit of a language dork, i also realize that english is an extremely liquid language. meaning and usage tend to change, sometimes rapidly and dramatically. much like "agile," the sense of "refactoring" will change as the term gains wider use. so i guess refactoring may someday be a vicitim of its own success.

11 December 2006

outsourcing

Kevin Barnes wrote an interesting post about his experience with outsourcing. (he moved to India a while back.) being in IT, i am always under threat of seeing the axe if i can't provide, or seem to provide, greater value per dollar. what i can't fight as well are perception and political forces.

Like politicians, most CIOs and CTOs need to be seen to be doing the right thing. Right now that’s outsourcing. A lot of companies saved a lot by moving operations overseas and the late-comers are under pressure because of that. Unfortunately, the landscape today is dramatically different than it was only a few years ago and cost-effectiveness is notoriously hard to measure (with no one wanting to own up to having wasted money) so this pressure to cost-cut through outsourcing is likely to continue unabated in the mid-term.

[T]he shear number of projects that are in their early stages virtually guarantees that demand will continue to rise. Decisions to move projects take years to implement, and many are already underway. The people running these projects are strongly incented to make them succeed, or failing that make them appear to succeed. They also don’t like to admit they’ve made a mistake, so my expectation is that we’ll keep hearing how much people are saving for quite some time. What we won’t hear is how slowly projects are getting completed and how poor quality has become.

(emphasis added)

every last person i know closer to outsourced projects than their directors has seen the drop in quality, reported numerous issues, and been told to make it work. honestly, i think it's understandable to have VPs ship work elsewhere given the quality of some projects i've seen; however, this rush has created a false market in software jobs in India that draws too many unqualified people to this line of work. i've met my fair share of talented developers from India, but just like here, too many should really be doing something else.

06 December 2006

design smells

Dave "W." Smith identifies what should be obvious smells of design debt. the best item is "puzzling tests," those pesky breaking tests that have nothing to do with the code you're working on at the moment. that's something to tackle early in a project before your team starts spending hours per day re-running long-running tests because too many break when altering some code.

02 December 2006

psapp

i found a hilarious review of psapp's "tiger, my friend" on itunes that i felt i should share.
If you had a Very Special Episode of The Muppet Babies with Special Guest 5-year-old Norah Jones wherein they recorded their very own album using only a rubber duck, a toy ukulele, knee slaps and a broken Speak-N-Spell while shut up in the nursery on a rainy Saturday afternoon, the result would sound something like this.
i wish everyone could write reviews this well rather than "omigod, this is like sooo coooool!!!"

30 November 2006

elderly woman killed by cops

an old lady was killed by a police raid gone sour. once again, i'll point you to the botched raid map so you'll see this isn't an isolated incident, but is a consequence of relying on overly forceful measures.
The warrant was known as a no-knock, giving the police the authority to burst through the door without warning in order to prevent the destruction of drugs.
is nabbing drugs reason enough to kill someone, guilty or not?

fight global warming by building more roads

there apparently is a somewhat proven technology for combating smog. all one needs to do is build more roads. it might also work even better by reducing the amount of stop-and-go traffic that causes even more pollution.

27 November 2006

circuit city eats best buy for lunch, leaves room for dessert

many of you may know (or rightly suspect) that i hold grudges for extended periods against specific corporations known to suck. best buy is probably at the top of my list because of its terrible customer service and return policies. i usually take my business to circuit city just because i can't think of another place to buy stuff, but this time i was quite happy for it.

i bought me a brand-spanking-new mouse, all wireless and stuff with lots of buttons that make my screen jump. i chose this mouse because of the mail-in rebate (that i usu despise) that put its price below that of the wired version (that i prefer). i finished paying only to realize the rebate had expired. the nice lady at the register, Rita, gave me the discount at the register: no mail-in required. so simple, yet so not gonna happen at best buy.

supreme court sleeps while rome burns

scotus has refused to hear a case against religious descrimination by the state of maine. eight families are eligible for voucher monies but for the fact they chose to send their children to religious schools. the government's job, whether federal, state, or local, is to remain neutral to religion, not to oppose it. after the fiasco of the Kelo case, i can't say i'm surprised by this nonsense.

25 November 2006

regulatory monopolies are bad... mmkay

when a government assumes full regulatory authority over a certain market, perhaps in a sincere attempt to improve health or fight corporate fraud, it frequently, and sometimes necessarily, creates a policy monoculture that prevents the flourishing of ideas in favor of political expediency. central planning has proven itself time and again to be unresponsive to technological change, scientific fact, and reality.

as the FDA decides what "organic" means for us, we lose sight of what we may actually consider organic, yielding the decision to the "organic" farming industry since they are the players with the cash and therefore influence. this is one scenario in which i would prefer to have distinct certifying authorities that might conform to my higher standards of organic.

when the EPA decides for us the "acceptable" level of specific chemicals in our drinking water, we have only ourselves to blame for putting our fate in the hands of corrupting political influences. companies like Union Carbide or Du Pont ultimately decide what is legal for themselves through the purchase of influence and the drafting of legislation. i do not to want to ingest any arsenic.

people who think free markets necessarily benefit corporations at the expense of the people suffer from a profound lack of vision, prefering to hand power over to the powerful. it is full time to re-sieze our natural rights and responsibilities.

there is no spoon.

23 November 2006

free market health care in India

by way of Jason Yip's blog, i found an article about an Indian doctor who has been helping the poor in India for little or no money, but still manages to turn a profit.

Since opening day in 1976, Aravind has given sight to more than 1 million people in India. Dr. V. may not run a business, but it's important to note that Aravind's surgeons are so productive that the hospital has a gross margin of 40%, despite the fact that 70% of the patients pay nothing or close to nothing, and that the hospital does not depend on donations. Dr. V. has done it by constantly cutting costs, increasing efficiency, and building his market.

It costs Aravind about $10 to conduct a cataract operation. It costs hospitals in the United States about $1,650 to perform the same operation. Aravind keeps costs minimal by putting two or more patients in an operating room at the same time. Hospitals in the United States don't allow more than one patient at a time in a surgery, but Aravind hasn't experienced any problems with infections. Aravind's doctors have created equipment that allows a surgeon to perform one 10- to 20-minute operation, then swivel around to work on the next patient -- who is already in the room, prepped, ready, and waiting. Post-op patients are wheeled out, and new patients are wheeled in.

makes one wonder why we need as many regulations as we have. perhaps it's the means of providing health care in this country that has led us to ignore costs so easily. where is the incentive to drive down costs?

22 November 2006

javascript StringBuilder

i've seen way too many cases of developers using string concatenation in javascript, especially directly on the innerHTML property of some DOM node. here's a javascript StringBuilder that should give you the same sort of boost you might find in java or c#.

function StringBuilder() {
this._strings = [];
this.append = function(s) { this._strings.push(s); };
this.toString = function() { return this._strings.join(''); };
}
it uses the built-in speed of the join and push methods and avoids the constant re-allocation of memory. i'm betting it's faster, too.

pass the Dutch on the left hand side

leave it to the Dutch to advance liberty in mind-blowing leaps. if it works, i think there will be positive proof that fewer rules actually make for a better society. it also leaves law-makers free to concentrate on things that actually matter.

frizzled leek haystack

went with wife to the Monet exhibit Monday night, finishing with a meal in the museum eatery that featured a frizzled leek haystack. all said, Monet is one the all-time greats. frizzled leek haystacks i could give or take.

Jiggermetrics

the metrics gathered with a large confirmation bias (or act of gathering same) used to justify an outcome.

19 November 2006

mourning Milton Friedman

rock star economist and good joe, Milton Friedman, has passed this past week. his genius won him a nobel back in '76 for his work in monetary theory. Friedman will best be remembered by Cato and like groups not just for his insistance that the role of government in controlling the economy should be severely restricted, but for his staunch libertarian views about the limits of government in general. his latest schtick, with his wife, Rose, has been about the advancement of school choice in the US.

18 November 2006

good triumphs 42-39


woot.

i suck at golf

yesterday i played my first game of golf in many years. turns out i suck more now than i did then. i also appear to have the golf equivalent of a wooden tennis racket when compared to the other fellows, who were all swinging a titanium suitcase at the end of a stick. i managed to hit five or six decent shots in a best-ball style tournament, only one of which was a tee shot.

the important thing is that my team won. even with a lead anchor around its neck. maybe i am now motivated to learn myself how to play better.

17 November 2006

Crum Trail

named after the intrepid pioneer, Mr. Trail, who mastered this pattern in Swing apps, the Crum Trail is essentially a global rendezvous point for segments of an application to share data. the Trail may consist of "context" objects, hashmaps, more "context" objects, and more hashmaps.

props to Chris'O, who no doubt will want me to refine my definition.

The Free Lunch Project

mockery has hit a new high with the Free Lunch Project, which seeks to mirror the Free State Project by finding and re-locating 20,000 like-minded free-lunchers. probably the best nugget is the subtitle: "Dependence in Our Lifetime."

swedish pop

not since ABBA.

i've been finding a slew of good music, including some of my now-favorite bands at Labrador: [ingenting], Sambassadeur, Acid House Kings, Club 8. check out some of their free mp3s.

14 November 2006

Pattern Tourette's

The "architect" sitting next to you throws out pattern names and technologies in order to squash your puny intellect. Or maybe just hopefully make himself sound less like an eejit.

symptoms
  • Fowler
  • facade!
  • um... decorator!
  • DATA CLOUD, beyotch!

why your kids are dumb

"As Math Scores Lag, a New Push for the Basics," brought to you by the NY Times, spins a yarn about the central planning group that gave us fuzzy math back in the day so our kids could feel good about themselves rather than be smart. this same group is now reversing itself, realizing that stupid kids is stupid.
Many parents and teachers remain committed to the goals of reform math, having children understand what they are doing rather than simply memorizing and parroting answers.
i'm not sure how switching to fuzzy math is supposed to accomplish anything different if the kids have the same teachers. seems to me it's the teacher's job to marry students with techniques appropriate to each as an individual. i am a product of public shooling, start to finish; my teachers were wonderful and managed to make me a super-genius without resorting to education fads.

mmmm... free coffee

The American Spectator has an article that links two of my favorite themes: school choice and coffee. The author attempts a five-minute lesson in economics and market forces as related to $4 lattes and central planning.

13 November 2006

Lysis

Wikipedia defines lysis as "the death of a cell by bursting, often by viral or osmotic mechanisms that compromise the integrity of the cellular membrane." In [my] patternspeak, Lysis is the bursting of a class such that all of its responsibilities lie external to the class, though the class retains its data.

symptoms
  • Domain classes resemble C structs or data clumps
  • Behaviors of domain entities are expressed in other classes, generally Controllers or Managers

Alien Abduction

aka Function Bucket with Cheese

When a class has all of its innards exposed as public methods, but requires those methods be called in a specific order such that correct behavior is exhibited, we call it Alien Abduction, from the idea that some external intelligence seeks to understand an entity's function by probing and exciting muscles.

symptoms
  • all or most methods on a class are made public in order to test the class (if you're lucky)
  • multiple constructors are available, depending on the intended use of the class
  • there is an implicit required order to method invocations, though the order is not expressed clearly
  • public methods are available that make no use of the state of the object

12 November 2006

school choice as liberal policy

democrats have long been beholden to teachers unions and other special interests that rate a louder voice in education policy than parents or other citizens. that may be about to change. cato quotes NY governor-elect, Eliot Spitzer,
I do not think that the prospect of change in [education] is enhanced by the abandonment of pluralism and choice as liberal ideas and liberal values. If that happens it will present immense problems for a person such as myself who was deeply involved in this issue long before it was either conservative or liberal. And if it prevails only as a conservative cause, it will have been a great failure of American liberalism not to have seen the essentially liberal nature of this pluralist proposition.
i can imagine democrats now taking up for school choice as a rhetorical means of promoting equality of opportunity, if not as a pragmatic solution to crappy education policy. education tax credits offer a tasty way out of blustery deadlock. perhaps my kids will grow up in a nation ignorant of newspeak.

ruby-units

one of my [many] peeves in scientific programming is a lack of units in calculations. recentlyish, i was subjected to a database that was supposed to provide molar concentration. rather, the data was expressed in mg/L, which, as any schmoe knows, is no good without molar mass. of course, that data was not present.

so why do people tend to leave out units when performing calculations? i guess it's easiest to deal in double-precision numbers than units. it's a sad state indeed. enter ruby-units. i don't do much of anything with Ruby, but i dig the idea of this library. i'm thinking i may try my hand at writing or porting this baby to jæva/.NET.

thanks, Alan.

the beauty and future of electric cars


i've been following with great interest Tesla Motors' advances with their electric sports car, which borrows heavily from the Lotus Elise. i'm hopeful their business plans work out well, and i can only assume they will, given the current energy climate.

i've been discussing the benefits of electric cars with hybrid owners, some of whom don't necessarily agree with my estimation of the superiority of the fully-electric car. my thinking stems partially from my knowledge and experience in software development, that has taught me that loose coupling is a good thing. keep in mind that the only means of inputting energy into a hybrid system is through the gas tank. as the doods at Tesla so correctly point out: "A world of 100% hybrids is still 100% addicted to oil."

by providing a means of decoupling energy consumption from energy generation, we can more effectively control environmental concerns. for example, electricity generated by a coal-fired power plant, while still polluting, is less of an environmental burden per kWh than your run-of-the-mill hybrid engine. but we can also more easily handle the pollution of a plant than we can thousands or millions of vehicles. it is green generation that we want to distribute. a plug-in hybrid would be a great intermediate step, if i could ever find one.

if we can focus on a greener future that harnesses more efficient versions of existing technologies (coal, solar, wind, geothermal) or even fusion--or as yet unknown techonolgies--one can see that burning carbon needn't be so universal. solar cells on every rooftop in the nation will not make us any less dependent on foreign oil unless we move away from oil-burning transportation.

so anyway, the Tesla plan is to start at the top of the automotive foodchain to gank dollars for creating ever-cheaper cars in order to bring electric vehicles to the masses. i can't wait until i can vote with my dollar.

11 November 2006

Turkish Prison

aka Tower of Babble

Turkish Prison describes an application that is poorly written, but has been made "easier" to maintain by the use of Hungarian notation and "standard" abbreviations. some authors prefer "meaningful" prefixes rather than classes that can isolate functionality. their work creates a prison of horrid code that constrains enhancements and fixes.

symptoms
  • variables have fossilized prefixes that convey no meaning other than type
  • variables are declared far from where they are used, making method extraction more difficult
  • end-line comments attempt to explain the meaning of variables rather than appropriate names
  • the author of the code was unaware that alphabets have "vowels"

new charming album released

charming have released their long-awaited album, Turn Down the Lights, available from sakistore.net and (soon) itunes. if you dig smiths-influenced pop, you'll dig charming. one can check out sample tunes at their download site.

inaugural post

rather than say something clever or profound, i thought i would simply indicate my presence. for those of you who may have followed me from my previous host, i will probably attempt to import everything from the old site once Google has finished that functionality.

as ever, if you have a good idea or name for an anti-pattern, please let me know. the more all of us can mock inept practices, the more likely we can effect change.