January 2005 - Posts
I'm the boss. Need the "info".
Seriously though, something that both me and a fellow web design friend of mine are both going through lately has us both kinda frustrated. Maybe it's just because I'm not asking the right questions or taking a bold enough (see 'dictator') approach to the project.
Anyway - how come people that aren't designers (web or any other variety) think they know better what looks good for a website? Even moreso than those that have spent years in the trenches battling Photoshop, CSS, pixels, and HTML. I mean...if I were going to take my car into the shop to have a new engine put in, I certainly wouldn't be telling the mechanics there I don't like the way they mounted the engine on the chassis or that it should sit higher or lower, etc. They're the expert and I'm paying for their services. I'd respect them being the authority and would do nothing beyond ask for a suggestion or tell them what I want the end result to be.
Let's take the analogy of building and designing a house. I might know how to hammer a nail into wood. Heck, I might even know how to put up drywall and install windows. But to tell an interior decorator that decorates homes for a living that I know better than they do what looks good and what doesn't...is not only pretentious but pretty ignorant, if you ask me.
But when it's a website, suddenly everyone and their brother is an expert and knows how things should be laid out, colored, and so on. *Sigh*...
Anybody figured out how to overcome this problem without losing their client or making them feel like you hold them in contempt for thinking they know best?
The past few days have been some pretty heavy thinking days for me. I can say with confidence that I'm at a point in my life where my opinions are not easily swayed and I have enough life experience to justify most of the conclusions I've come to. Writing (or typing) these thoughts down helps me reinforce them in my mind. Having said that, there is one uncertain and volatile thing that will probably always distract me; the future.
Why do I worry about the future? Will I be around for it? For quite a bit of it, yes. I'm only 24. (Hopefully I can convince you for a moment that I can be less naive than most my age.)
What is it about the future that keeps me worried? It's not because I feel the apocalypse is imminent or anything as catastrophic as that. What worries me most, by nature, is things that will have an affect on me personally (and my family). In this writing specifically, the industry I work in.
These things are the deterioration of the meritocratic ideals of opportunity I was so regularly fed as a youth. It's the overwhelming sense of entitlement that seems to pervade through my generation, only to strengthen its grip tighter on future generations. It's not .NET 2.0 or XAML development. I find holding onto the belief that if I educate myself and work hard I _will_ achieve something greater than mediocrity harder than ever to accept without skepticism. Sometimes I think that maybe at a subconscious level, I chose the career path of a developer because I perceived I could be part of a subculture free from the grasp of business aristocracy. In my heart, I am still one of the teenagers in the garage.
Yet, the further I venture out into this sea of 1's and 0's -- the easier it becomes to lose my ability to determine whether the meritocracy is mythical or not. More importantly, I am troubled by the feeling that we (developers) gave our chance to own the industry away in exchange for [take your pick] worthless stock options, broken promises, or bonuses never paid. Why do we work longer hours than almost anyone and allow the chances of winning the lottery turn us into coding slaves? Is meritocracy simply the carrot dangling in front of us, held by "the man" that we have so soon forgotten stole our ideas? And sure enough, the future generation of developers aren't able to see what's happening to our predecessors and prepare accordingly. They're too busy - dropping the soma that is the Ipod, the Xbox, and free, readily available internet porn - to notice.
This status quo of instant gratification has led to not only a false sense of entitlement but a lack of perspective, too. It's similar to believing we have the right not to be offended (political correctness) which also has grown wildly out of hand. Mahatma Gandhi once said, "If all Christians acted like Christ, the whole world would be Christian." Following that thought, I think if all developers had to rely on their own software, it would, eventually, be the most secure, high-performance, maintainable code they ever wrote.
Through these thoughts I've arrived at this one conclusion. The path you take and the results you achieve in your career (or your life depending on how widely you apply the principle) are not dependent upon the existence of meritocracy nor measured by the wealth or social status you attain. It's about being ready to take advantage of the window of opportunity opening for you. Maybe this is the Eagle Scout in me talking, but "Be Prepared" has never struck a chord with me like it does now. Increasing your knowledge and improving your skills is not your guarantee of success. It's your guarantee of being able to carpe diem when the time comes. While the means chosen to prepare will vary person to person, staying prepared should remain constant.
I find it unfortunate that many developers have come upon rough times in terms of employment. Very few were thinking of economic trouble during prosperous times, myself included. I think it says a lot about those still remaining, still wanting to create something, still wanting to get paid to be the teenager in the garage. For those of you that are still developing, unpaid -- may this writing be something you already knew.
Anyone that has worked in a corporate dev environment (of any size) knows there are usually lots of different personalities among development teams. Some burn incence in their cubicle while listening to Enya and buying a VW Bug online, Some come to work smelling of smoke and beer and claim that they carry visine around because they wear contacts. I'm sure you've run into your fair share of them, and I alluded to some in my last post on this. I guess you could say "I'm back" or that this is "Round Two" of these posts, whatever. Here are some more I've had the honor of working with in the past.
1. The Bill Brasky Developer
I apologize if you're reading this and you don't know about "Bill Brasky". If you don't, then I'd encourage you to go here, here, or here before continuing on. So, I would guess that we've all met a Bill Brasky at some point in our lives, whether he was a developer or not. The Bill Brasky Developer is really a special treat though. He's the guy that makes you think, "oh, crap, we HIRED that guy?" when he moves into the cubicle next to yours. So you try to make conversation with him just to be nice. You know, just to feel the guy out, find out what his interests are, etc. The first thing you find out though, is that he talks about himself as if he's BILL BRASKY!!.
He says things like, "Did I tell you about the time I was invited over to Bill Gates house for dinner? So there I was, eating dinner with Bill and I say to him, "I have this idea for using markup that's kinda like HTML, but I can name the tags whatever I want...I bet it would be pretty useful!"...and sure enough, a few months later Bill comes out talking about XML!"
The more people that are listening to him, the more elaborate his tales become, too. If you're able to gather at least 3 people around him, you might hear something like this: "Did I ever tell you about the time Michael Dell and Larry Ellison were out to get me? So, Larry was trying to sell me into slavery by chaining me to an old Oracle rackmount server and shipping it to Indonesia, and ol' Michael Dell had killed all my relatives and put out a bounty on my head of free lifetime Dell support - dead or alive! Luckily I was able to escape before I left the U.S. and went on to play 3rd base for the Yankees and win World Series MVP!"
2. The Arch-Enemy of Arch-itecture
This guy is really tough to work with because, he most likely holds a PhD in something like Vetrenarian Dentistry and thinks his intellectual prowess in one field of study entitles him to be held in the same regard for software development. I mean, after all he does know all about Soft.Dev. theory. Regardless of the fact that he doesn't have any practical experience, he was hired straight into the company above you and you now take orders from him. This guy isn't very good as disguising himself, either. He'll give away his identity by saying things like, "Why didn't you use the Memento patten for that object? It's such an obvious choice." or maybe "I think we could really increase performance if we used the text editor I built for my masters thesis on Data Warehousing".
He will not be satisfied until he has over-architected every aspect of the system. He uses words like the Architect in The Matrix, too. "Ergo", "Cataclismic", etc. He'll never answer an easy question with an easy answer. He'll try to speak in metaphors and parables like you are one of his students.
3. Nepotism Boy and his sidekick Passive-Agressive Man(ager)
These two are rarely found together in the same office (or maybe not so rare?) but, I've had the priviledge of working together with both at the same time. Ok, to start with, Nepotism Boy only got hired because his dad is a Director. On top of that, they picked you out as the guy to play mentor to this lazy frat boy. He also mistakenly thinks his ignorance and laziness are cute and endearing qualities that will win you over like they do his clueless "wimmens" (as he likes to refer to them). This of course, puts you betwen a rock and a hard place...or I guess that'd just be between two hard places. Anyway, you gotta be nice to the kid or chances are daddy will hear about it and you'll lose your job yet again. You can't play too nice though or this kid will bring your job down with him into developer purgatory. "Dad said I should try to become a DBA. Can you help me with that?" you'll hear him say.
Passive-Agressive Man(ager) is the manager that, for some reason, hates your guts but doesn't have what it takes to tell you straight up. So instead, you'll hear things from him/her like, "Hey, we were running some performance tests on the app that you wrote...and well...the results weren't so great....if you're not too busy would you be able to come in maybe...Saturday or Sunday and fix that for us?".
This person may or may not have the last name of Lumbergh.
Since my introverted nature as a nerd didn't compell me to post my results from taking this quiz that's been circulating through many of the blogs I read, I thought maybe I should make my own nerd quiz -- that better reflects what I consider makes me (and others) nerds. You'll also see that I have significantly reduced the complexity of how the scoring works.
- Do you still have little banner images on your blog about how you were at the '03 or '04 PDC or any other conference? (Bonus nerd points if you have more than one)
- Do you have any idea what the phrase "Linux Distro" means?
- Do you brag to friends about the current up-time of your web server?
- Have you ever attended a "Nerd" or "Blogger" dinner?
- Do you spend copious amounts of reading time inside an RSS aggregator application?
- Do pictures that amaze most people make "shopped" the first word out of your mouth?
- Do you have cable/dsl set up when you move into a new place before phone/electric/water/garbage and other utilities?
- Did you have a GMail account when they were selling on Ebay for more than $50?
- Are you Rory Blyth? (sorry Rory u were the first/biggest nerd that came to mind)
- Have you ever worn a SPOT watch?
- Is there a computer programming book within your reach from the chair you're sitting in?
- Do you have a wishlist on ThinkGeek?
- Have you already thought of some questions that belong on this quiz that aren't on here?
If you answered yes to even one of these questions, you are a HUGE FREAKING NERD.
To post your results of this test on your web page, simply copy and paste this into your HTML:
<h1 style="color:red;">I AM A HUGE FREAKING NERD</h1>
Most of the time, the articles mentioned in the .NET Insight newsletter that Fawcette sends out don't attract my attention much. Today's had a few articles on Master Pages in ASP.NET 2.0 so I decided to give them a look since I've been somewhat curious about how Master Pages are going to work.
After reading this the two articles though, I didn't get the feeling that Master Pages actually allow you to do anything you can't already do with ASP.NET if you know how to make your base class for your page inherit from a custom class rather than System.Web.UI.Page (although your custom class inherits from Page). We've had the PlaceHolder control in ASP.NET for a long time already, too (since v1.0?).
What it appears to me, is that Master Pages are simply a declarative way to do what we're already doing with ASP.NET page templates. We've got an @Master directive now, and <asp:contentplaceholder> controls. Neither of the articles I read though, did a very good job of explaining why you'd want to migrate your existing page template code to Master Pages. Is there a benefit of increased flexibility or something? I guess I'm missing the point so far.
...because I happened to have a full bladder at the time and I was laughing so hard.
Phil is back at it...and as the people in the McDonalds commercials say...."I'm lovin' it"
I looked all over the google, err..I mean the internet and also the google groups...err...I mean the newsgroups and still couldn't find the answer I was looking for so...figure I'll post it here and maybe someone that knows the answer will pick it up.
I'm doing an ASP.NET project in VS.NET 2003...and I'd like to be able to just double-click (or F7) on my global.asax file and have it load into the editor. I know I can remove the CodeBehind directive so that VS.NET can't make the connection but, I'd like to be able to view Global.asax even if the CodeBehind directive is in there.
Anybody know what I need to do to make that happen? When I hit F7 now, VS.NET just tells me there isn't an application associated with the .asax extension (even though Windows itself shows VS.NET as the editor for .asax files in Windows Explorer).