Posts in category 'rants'
ColdFusion Tip Of The Day - CFCs Are *Objects*
So I have the “pleasure” of working on a couple ColdFusion projects on the side. The thing about ColdFusion is it’s a lot like Perl: wonky syntax, often used by total amateurs, and can be horribly abused to do really bad things. And guess who primarily uses ColdFusion? Yeah… total amateurs.
As a beautiful example, let’s consider the CFC, or ColdFusion Component. This concept was added to ColdFusion in order to add modularity and object orientation to what was, frankly, a largely procedural programming mish-mash. And it does a pretty good job:
- It provides mechanisms for encapsulation.
- It encourages code reuse.
- It encourages documentation.
Well, assuming it wasn’t being used by amateurs. See, a CFC can, and should, be used like a real object. But let’s say you’re a dumbass who doesn’t understand object oriented programming. Well, in that case, you might do something really stupid, like use a CFC as just a container for a bunch of utility functions that are only loosely related. For example, you might do something stupid like:
<cfcomponent output = "false"> <cffunction name = "init" access = "public" returntype = "myType"> <cfreturn this> </cffunction> <cffunction name = "firstThing" access = "public"> <cfargument name = "Datasource" type = "string" required = "1" /> ... </cffunction> <cffunction name = "secondThing" access = "public"> <cfargument name = "Datasource" type = "string" required = "1" /> ... </cffunction> <cffunction name = "thirdThing" access = "public"> <cfargument name = "Datasource" type = "string" required = "1" /> ... </cffunction> </cfcomponent>
See, because this person is a moron, they don’t understand the concept of instance variables. A smart person would stuff the datasource into an instance variable, and populate it when the object is initialized. A complete moron would just pass the same parameters in over and over again because he or she is a god damned moron who shouldn’t be allowed near a computer, let alone permitted to program one.
deep breath
Bonus tip: Naming arguments to a function “table1”, “table2”, “table3”, etc, should resulting in the “developer” being dragged into the town square, tarred, and feathered.
To All You Drivers, From A Cyclist
My road cycling experience is what most would call fairly extensive. In my last summer before university, I found myself cycle commuting to work, a fairly long ride from a condo in the Dickensfield area to a school around 127th and the Yellowhead, where I worked as a teachers assisted for continuing education. On one particularly memorable day, I arrived completely drenched, from head to toe, having ridden through one of the most heavy, yet steady downpours I’ve ever experienced. And I did so riding on major roadways, such as 97th street. Ever since, I’ve taken to cycling as much as I can (save for days when I’m feeling particularly lazy… like today :), and even cycled through the winter during one memorable university year.
During this time, I’ve had a chance to observe all sorts of driver behaviour. For the most part, they ignore you. Some, when passing, perform complete lane changes to get around you. Others will speed past, the hair on the backs of my arms left prickling from the sensation of a near miss with a side mirror. I’ve had people patiently wait behind me during road chokepoints. Others have yelled and screamed. I even had one guy yell at me to “get the f— off the road”… he was driving in the opposite direction on the other side of the road. Go figure.
But, oddly, one of the things which annoys me most is the overly courteous driver. These folks are, like most drivers, confused about the role of cyclists on the road. To clarify, cyclists are vehicles. They should be treated as such. They are not pedestrians. So, with that said, consider the following:
This is a rough depiction of an intersection I have to navigate on my way home. I’m the little purple guy. Now, if I were a regular road vehicle, things would proceed as follows: I would yield, waiting for the blue car to turn and the red car to pass. I would then cross traffic and enter the far lane (well, technically, I would have to enter the near lane and switch, but… details details). But often, the blue car decides to be overly nice and wait for me to cross the street. But now I, as a cyclist, am left in a bind. If I do cross the street, there’s a chance the red car won’t see me, and I’ll get run over. If I don’t, the blue car sits waiting like a jackass. Typically, the way I deal with this is to wave the blue car through, which leads to all sorts of confusion.
Now, this is just a variation on a theme. Any time I find myself approaching a stop-sign-controlled intersection, particularly if there’s a major roadway, and an intersecting street with a pair of stop signs, this sort of thing can happen. So, for the love of god, drivers, don’t be nice! The cyclist knows what they’re doing! They are a vehicle, treat them as such, and let them decide what they want to do. Because, by being nice, you are, in effect, making the cyclist’s decision for them, but in the absence of key information (like, say, the presence of the red car in the diagram above).
Honeywell Wanted My Soul Today
So I just had the weirdest salesman/door-to-door guy bother me. This wasn’t the usual hard sell thing, as I first expected. Instead, what they wanted to do was place a sign on our property to advertise Honeywell (specifically, their home security products), and in exchange they would pay us. How could I possibly say no?? Well, you see, the problem is I’m already pissed enough at the sheer ubiquity of advertising, and the last thing I wanted was my house to turn into a glorified billboard. Not to mention the fact that I think home security systems are largely overrated (it’s not like it would take more than ten minutes to break one of our windows and steal a bunch of valuables) and are nothing more than a way for companies to cash in on fear.
So, unsurprisingly, I said “fuck that”… though in somewhat more polite language. But the best part was the guy’s reaction. “But… we’re gonna pay you.” he replied, as if the price of my soul, not to mention my values and dignity, were so easily purchased. He seemed genuinely puzzled, not to mention a little put off, that I didn’t want to become a Honeywell marketing tool.
Well, to Mr. Marketing guy and to Honeywell, I say it again: fuck that. I already have to constantly put up with advertisements. Everytime I browse the web, turn on the TV (after I’ve already paid for cable), or go to the theatre (with a ticket I already paid for), I’m bathed in advertisements and product spots. Why would I want to pollute my nice little neighbourhood with even more?