Jan15

My Experience with the Presidential Inauguration Committee

Let me preface this post simply by saying that I hate to complain (though some people say you'd never know it). In general, I don't like to call people out, and in this case especially I don't want to undercut my own enthusiasm for the upcoming events or downplay the very positive work being done by the PIC under what must be some very difficult circumstances.
 
Some people will say "Hey, what are you whining about? You get to go to DC and do stuff most of us don't, so STFU already." Okay, sure. Point taken. But, I'm still going to offer up my account of how things are operating and my opinion about how it could be better. It probably will not do any good and might even hurt somebody's feelings. I don't really need a good reason to speak my mind, do I?
 
On Sunday night, I got the e-mail that started me down my path to a near annurism - the official PIC invitation to the Inaugural Ball. Just cough up a pile of money and you can go. Of course, the fact that WPIW caught on and blogged about it and it was also anounced on the PIC web site took a little of the feel-special out of it, but hey it's the thought that counts, right?
 
Honestly I'm flattered they even thought to let me know. Given a shot like this, I had to act on it. I might never care enough about a candidate for POTUS to get invited again. Besides, I am pretty sure I am out of the running for tickets to the parade and swearing-in, so this will be my one shot to do something kind of unique.
 
So, Monday monring I filled out my donation/request. Unlike what I am used to with e-commerce web sites, there was no [immediate] confirmation e-mail, just a vague message that I would get an e-mail at some point later on. So I waited. How long was I supposed to wait?
 
On Tuesday the AmEx showed so signs of activity. Tuesday afternoon I called the PIC; delays in processing they said, maybe. Or maybe the system ate my request and I would be shut out. Lots of other people were calling the PIC too. They promised someone would call me back that day. No call. No surprise on my part.
 
I couldn't wait forever, so I went and bought my tux, and rented one for Eric, just in case everything went well. The ladies sadly were not having any luck finding dresses; they are still shopping today. Now, I was really commited, so I hoped and prayed the log jam over at the PIC would resolve itself eventually.
 
Wednesday, I called again, and got the same story basically. Later that day, I went and looked at AmEx statement again and now saw that they had actually taken my ticket money the night before. It's sometimes weird how such things don't always show up on their web site right away. Okay, relief. On the train ride home that night, I finally get my official e-mail telling me to pick up my tickets at the Convention Center on Friday morning.
 
Update 1/16: I learned today in line that most people received an initial confirmation e-mail about ten minutes after they donated, which I didn't get. One lady in line made two seperate donations, and got the two initial notices, but only one e-mail like the one I received Wednesday. It sounds like something is seriously wrong with their outgoing mail server if it is dropping mail into a black hole.
 
Now, maybe I'm expecting too much, but isn't this the 21st century; don't most people expect a web site that takes your money to do it realtively quickly and give you a yes-or-no style answer about whether your order was palced? So that exposure to the PIC's e-commerce capabilities was not very pleasant, but at least it ended well. Also, although the folks I talked to on the phone weren't really able to provide any maeaningful information, at least they were friendly.
 
If that had been the whole of it, I think overall my opinion of the PIC would've been overall very favorable. But, there is this one other thing that changed my mind.
 
For many weeks, the PIC has been hyping up the events including a free concert for the kids. I had hoped to send Sarah to it on Monday night, so we could be free to attend the Yes We Can Party sans kidlets. She's a big Jonas Bros. and Hannah Montana fan, but what 11 year old girl isn't? Well, it looks today like that can't happen. The PIC has some strange definition of the words "free public event" which actually mean "we gave 1,000 tickets to some people we really like and told them to do as they pleased with them. The rest of you are out of luck."
 
Now, don't get me wrong. I support giving the tickets mainly to kids of military families and members of youth groups in the area. After all, these are underprivileged kids and kids who have sacrificed a lot for this country. But, the way the PIC communicated about this event gave the impression they want to eat their cake and have it too. Either an event is open to the public, or you get to pick who can go to it, not both.
 
Also, please do you think maybe you could have said that this was a concert intended for only that audience *before* I told my daughter about it, and before I wasted my time trying to figure out how she could get to go??? There are lot's of other things to do in DC, better ways to spend my time than researching a dead end, and I am guessing that proper communication could have reduced some of the PIC's call volume.
 
Even the Post's Inauguration Watch had to do a little finger wag about their use of the word "public" in this case, when they wrote "Inauguration Watch would argue that that's not exactly making the tickets available to the general public because they're not available to everyone, but rather the selected groups." So obviously I am not alone in feeling this is a little disingenuous.
 
Now, I'd already told Sarah not to be crushed if there was no way to get tickets, so I don't think she'll be upset. [Update: Good girl. Her response to being told this news was "okey dokey artichokey."] So that aspect of worrying that my daughter would be dissappointed didn't really play into it, but I feel for the other parents of tweenies in the greater Potomac area.
 
I just find this kind of thing frustrating, because there seems to be a developing character for this year's PIC. They are not particularly forthcoming with facts and details, even about things that should've been easy to plan in advance. This is true despite the fact that they are ostensibly trying to both be and host events that are very open and accessible. That contriadiction is jarring, especially compared to Obama's campaign. They seem to want the appearance of an open celebration that is neither actually particularly open, nor particularly responsive.
 
What I have seen of the handling of details for the whistle-stop tour though Baltimore just seems to reinforce this idea. I get that security concerns and overwhelming demand are probably causing a lot of this, but I think you'd get fewer confused or angry calls about an event if you just came out and told everyone in advance that you were not giving any tickets out - even if you don't explicitly tell them who you're giving them to.
 
I imagine that Obama is probably deeply commited to the transition and to getting down to the business of saving our collective bacon. To him, the PIC and the celebration are probably a distraction - even if a necessary one. I totally support that. Hopefully, all his best people from the campaign are likely off to more important things than throwing a party. But this is one thing that I have come to believe about the PIC. They do not really represent President Obama very well. I could not be more glad that in just a few days time, their mission will be over, and as an organization they will simply dissappear.
Published: Jan-15-09 | 0  Comment | 0  Link to this post

Dec01

My Annual Review: Revisiting the Idea of the "Job I Love"

Some time back, I wrote this little gem as a musing about what kind of job I would enjoy.
 
At the time, I had a job that wasn't particularly thrilling. Here were a few of my reasons for daydreaming.
 
  • Stagnant pay: In spite of positive reviews and even awards, I'd received no raise for two years. In fact, I observed a general trend towards stinginess, particularly towards those who demanded the best compensation up front. To me this begs the question, if you are competitive about acquiring talent, wouldn't it be prudent to be as-or-more competitve to keep it.
  • Abusive management: I had seriosly considered giving some of the people I worked for copies of The No Asshole Rule for Christmas. (Work Matters, Bob Sutton's blog is also a good read.) In my line of work you have bosses back at the company and at the client; there were no shortage of jerks embedded in both places.
  • Few (if any) prospects for promotion: With plenty of competitors, relocation out of the question, and my path blocked by immediate superiors, realism demanded that I did not delude myself into thinking I could move forward by moving up.
  • Allies leaving the company: when those most willing to defend or make a place for you are finding better opportunities elsewhere, it's time to pack your chute.
If you start to see signs of any of these things, take my advice and do whatever it takes to find yourself another gig quick.
 
Looking back, it was almost as if my bosses were reading my blog, because only a few days after I made that post, I was shown the door. I have heard stories of such occurrances.
 
I was lucky. Despite a very strong desire to be loyal to the company, I had never fully come to trust in them to do the same for me. After alternately witnessing and being on the wrong end of a number of instances of office "unpleasantness", I had resolved to stay on my assignment only throught the 1st of March and had prepared myself for the market, so by the time I was dismissed I already ahd everything in place to find a new job.
 
And so I returned to the world of independent contracting from wence I had come two years prior. I can't be bitter at my former masters. For one thing, losing my job was the best thing financially that could've happened to me. Also, as it turns out I think I am better suited for the life of an independent consultant.
 
So, as I come up on one year from that time, I want to take a look back at what my goals were, and make some observations about where my work life has met them and where it has fallen short.
  1. A+: Work mainly with SharePoint
  2. A: Don't work (directly) for the "Evil" Empire
  3. B: Variety in work
  4. B-: Limited practical and social impact of assignemnt changes
  5. C: See lasting changes (transformation) from my work
  6. B-: Focused mostly on the new and "yes you can" and less on the existing and "why you can't"
  7. A: Autonomous commute
  8. A+: Show me the money
  9. D: Leadership, example to others
  10. B: Fewer conflicts with others
These letter grades are relative to last year; so "A" means I made a major improvement, "C" means little has changed, and a "D" means that my attempts were fristrated. (It wasn't in the original list, but I threw in #10 "just because".)
 
I'd say overall, the changes have been good. Perhaps I'm best sutied to working independently after all. I'll be making my resume a standing part of the web site, so no need to repost a link here. Anyway, here's the drill down - more for myself than in case anybody cares.
  1. MISSION ACCOMPLISHED I want to work with SharePoint most or all the time, because it's really cool!
    Well, the demand for SharePoint has seen to that better than anything. There's been such explosive growth in this product line that it's just insane. I never did spend much more than a week on the bench lat winter, and even during the wall street meltdown in September/October I was only seriously looking for work for a few weeks. (My biggest error was in taking a much needed inter-gig vacation in late August.)

    Having my own consulting firm means being able to make a choice to turn down any assignments that don't make good use of the skills I have. That anyone at my old job ever for a moment thought it was a good idea to assign me any work that didn't include SharePoint proved to be completely short-sighted; in doing so, they had sacrificed both long term profitability and my marketability.

  2. MISSION ACCOMPLISHED But, I don't want to work for Microsoft.
    It's easier than you'd think, but I did get a call about a couple of jobs from one of their people in Reston.

  3. DOING BETTER I like working on lots of little short-term projects. Veriety in work and in solving different problems for different types of users is exciting. For that reason, I could probably spend my whole life building nifty web parts and showing people how to use them.
    Well, being an independent contractor does lend itself to changing tasks and roles at least as well as working full time for a consulting firm does. I would prefer to have things mixed up a bit more while on a single project. DHS had so much variety it was almost a problem. Here at IMF it's less so, but I suspect that as I grow into the role that will change somewhat.
  4. MODEST IMPROVEMENT But, I hate having to think about my commute [or the people I have to work with] changing whenever the project ends.
    I still hate this aspect of changing jobs, but there have been some improvements. I've had some mixed success. I did form some lasting friendships while I was at Constellation, and I try to keep in touch with people that I enjoyed working with. I've had trouble keeping in touch with some of my old colleagues - John, Erin, I am lookin' at you - lol. Joining a local user's group helped too, but I haven't been to a meeting in quite a few months now. One good thing is that my current gig is only a few blocks from my previous one, so I can get together with pals from the old gig every now and then.

    As for the commute changing, it was for the better. These days, I have more control of the locations where I work. Though there were moments when I worried that finances would force me to take an assignment that would make commuting a challenge, fortunately things worked out differently.
  5. STILL ABOUT THE SAME I truly enjoy using technology to help transform a business. Getting only little wins is really frustrating, so buy-in from the top is very important to me. If that means part of my job is to fight for that support, then so be it. Unlike many people, I find debate invigorating.
    In many ways, SharePoint lends itself to "little wins", so I see a lot of those. Transformations can be hard to fight for and take a while to happen. I think the trick is to keep the little wins lined up so they keep coming. Give a day or two each week to doing the little things that impress the people who are easily impressed, and use the remainder to take on the big challenges.

    I am very fortunate that here at the Fund, the CIO is a big advocate for SharePoint, so maybe I will get to see some of that awesomeness soon.

  6. MODEST IMPROVEMENT I like doing work on proof of concept and design. Finding out what can be done is fun. Finding out that you *could*, except that you *can't* because there either a) aren't the skills, b) aren't the resources, or c) isn't the time is no fun at all. So, a place where there is a real investment in technology (as opposed to band aid solutions) is a real plus. (Update: Add "lack of political will" to that above list of frustrations.)
    So what else is new? Many companies large enough to truly leverage SharePoint run into the problems of bureaucracy, process, and political willpower. The ones that are small enough to be agile run into the time-skills-resources roadblock. Part of the challenge of working with SharePoint is finding a way in spite of this conundrum, so I am learning to accept this.

    I still prefer development over software maintenance, so I am making the use of TFS and wiki for documentation at part of my mission here. I want other people to take over my stuff so it does not weight me down later.

  7. MISSION ACCOMPLISHED I would like to either have a very short commute to downtown Baltimore, or else a reasonable train ride to Washington DC that I can do myself. I am tired of relying on my wife for transportation. I wouldn't mind working in my boxers either, but I need an excuse to get out of the house once in a while, and some things are better done face to face.
    I spent about twleve weeks of the year working in my boxers. I also did a short term part-time gig that was mostly telecommuting - though it tried like hell to become full time or worse. Later, I took an eight week unpaid vacation and sat around the house.

    As for the commute, all my other work has been either very local to my house or in Washington DC. Only a few visits to Booz Allen in McClean, VA in the early part of the year were outside that spec - and although they were quite a haul, they didn't undermine my autonomy. These days, my wife only gives me a lift to the train station, and I'd love to find a way to save her from that.
  8. MISSION ACCOMPLISHED I'd like a job title where the median base salary is in the neighborhood of $150,000/yr. Software Engineering Director looks nice, though frankly I have never seen anybody hiring for that one. They always use terms like Developer, Analyst, or Architect. Sorry, but the pennies don't spend like they used to, and wages don't seem to be going up to meet inflation. I guess I could accept a lower salary for the right perks, but the money is pretty important.
    I won't go into specifics, but I am making much better money as an independent contractor. Even with the two month gap in employment this fall, I am well set this year. The net compensation is about double what I used to make as a salaried employee. Although, one thing I really need to be mindful of is the taxes.

    This is important though, and I can't stress this part enough. I would not be able to pull this off if my wife were not working. Her job provides the health insurance, taking that worry off my plate. Also, even though her salary covers virtually nothing beyond the mortgage and day care, it provided the much needed butress which allowed me to go through extended unemployment without sinking irrecoverably into debt. Given enough time to amass some savings and shop for benefits, I could possibly take care of both of these issues on my own, but this year it was an indespensible aid.
  9. NOT QUITE WHERE I WANT TO BE Funnily enough, I like managing technical people, and I am good at it too. That's an aspect of work that I miss when being stood up as a lone gunman in consutling gigs. You rarely if ever have the authority to direct a team. Well, at least sometimes you can act as the trusted advisor; that can be nice.
    I have to be honest, this is the one thing that hasn't been everything I'd like from a job. Being realistic, that's probably a good thing, since this year has been full of challenges that would've made taking a stronger leadership role difficult. I did get some technical leadership responsibilities at DHS. Due to the practicality of working with govies it wasn't what I was originally promised, but what it morphed into was acceptable. There is a good chance that some leadership duties will emerge here at the Fund, but it's too soon yet and hard to predict at this point. There is some of this in running my own business, but I need to find a way to profitability beyond my own hours if I want it to have any measurable role in my daily life.
  10. DOING BETTER Work in an environment that is less hostile and/or stressful. Have fewer conflicts with others and resolve them more amicably when they occur.
    Life as an independet is absolute not conflict free. For starters, I had one client who got to be over $12,000 in arrears early in the year when I needed the money most, and he practically begged for conflict. I mean how many times was I supposed to accept "it's in the mail" as an excuse, anyway? Another client tried to bully me into working more hours than we'd previously agreed on - honestly more than I could handle while trying to run and grow the business. Finally, the security clearance process at DHS will just wreck your sanity - especially if like me you are prone to explaining things in detail and have a lot of petty baggage to disclose.

    That said, I will take all this in trade for one abusive boss, or one client who thinks it's funny to tell his developers to go wash his car. There is a different power dynamic at play when a business is your own and you are (at least on paper) supposed to be independent. For one thing, it is much easier emotionally to stand up for yourself.
Published: Dec-01-08 | 0  Comment | 0  Link to this post

Jan30

Not So Super Tuesday

For as long as I can remember Maryland has been a Super Tuesday state, meaning that we vote in the Democratic primary along with the majority of other states like California and New York.
 
So you can imagine my surprise on reading this:
 
Saturday's record breaking Democratic voter turnout in South Carolina sets the stage for an exciting primary here in Maryland on February 12th
 
Whaaaa!? So when did this happen and do our voters even know?
 
I'm politically active and consider myself to usually be pretty well informed. All the primary maps (CNN etc) have been showing us as among the Super Tuesday states. At least that was true a few weeks ago - I am pretty sure about it, since i was showing the maps to my kids and explaining the whole complicated thing to them.
 
Frankly, after several elections that were already tied up by momentum long before Super Tuesday, I am very dissappointed in our state's Democratic Party leaders that allowed us to fall out of step with the rest of the nation.
 
Did they have some reason that justifies this? I'd like to know.
 
Now, it's very likely that there will be some kind of clear trend emerging on February 5th, and our vote will matter much less than it would've if we voted with the other states.
 
I guess we'll miss out on delicious cake yet again. <sigh>
 
Update: Well, that didn't turn out at all like I thought it would. Instead of a clear leader emerging on Super Tuesday, we got something like a draw, which made the so-called Potomac Primary an actually relevant contest. For once, our Maryland votes counted for something and were noticed. Barack Obama even came to the Baltimore Arena. Sarah and I had a great time going door to door to get the word out about the event. Who knew? But, it is pretty impressive the way my point of view on the date change was turned around 180 degrees.
Published: Jan-30-08 | 0  Comment | 0  Link to this post

Jan28

Laaaayyy-m! (State of Duh Union)

Man, I sure do miss the days when we used to gather around the cathode ray tube to see good ol' Dubbya pontificate to us about the state of our great nation!
 
That was back when we used to raise a pint [or shot] every time he said the word Terror or mis-pronounced Nukular. We'd have the whole thing catered with delicious yellow cake. It was a hoot!
 
These days, his speeches are just so damn boring and frankly depressing that I can't even muster up a living room full of friends to watch the SoTU, even with free beer and liquor. What's the world coming to?
 
Well... at least this is the last one he'll ever do.
Published: Jan-28-08 | 1  Comment | 0  Link to this post

Jan05

Soft Skills for Dummies? As If! LOL

So, as I explained in my earlier post, I took the exam this morning to certify for TS for MOSS (SharePoint) configuration. Aside from the test dragging a whole bunch of skeletons out of my closet, it also left me feeling just a bit spunky. So, I guess I can't resist the urge to stick my middle finger up at somebody right now. Here’s something that came pouring out after I got all the self-immolation out of the way.

--fold--

If you have skills - if you are truly brilliant - people will find a way to try and put you in your place. There is some truth to the expression that “the nail that sticks up gets hammered down”. A lifetime of punishment for doing well has changed my behavior over time; it has made me learn not to shine too brightly. The Dao says that you should never forget the value of worthlessness - the gnarly tree by the side of the road does not get cut down for firewood. There’s some truth to that as well.

When you leave college, or after high school if you don’t go to college, hopefully you will be lucky enough to get a job doing what you like. After all, you're going to do it for half your waking life, so you'd better like it. But, something I remember from school is that there’s no short supply of people in the world for whom what they truly enjoy is putting other people down - or rather, establishing themselves in a group that is superior to others.

These people need to find jobs they like too, and while I don't think that every manager is one of these people, I’ve done some off the cuff counting of the ones I consider to be good managers vs. the ones that are not so good. I think it is fair to say that the career of management is at the very least an attractive option to these sorts of people. Once established on that track, they have learned to emphasize the areas of their personality in which they are strong and call them "soft skills", while they also downplay the role of "hard skills", perhaps sometimes almost without realizing that this is what they are doing.

What are hard skills, anyway? I suppose they’re the skills that actually let you get something measurable accomplished, whereas soft skills are soft because - like the soft sciences - they are as much or more fluff than quantitative or empirical and verifiable fact. If I were feeling more generous I might admit that at least the actual results of employing soft skills are more difficult (or impossible) to measure, but their use can produce real results.

So, what do I want to say by this? Am I saying these skills don't exist? Hardly! In fact, I myself have been in management positions at different levels, so I know that there are skills you can learn and that some people are indeed more socially adroit than others. But is there a certification exam for working with people? Is there a bar exam that you need to pass to prove that you are not someone who will poison the work environment at your company? No, not that I know of - the PMP certification teaches hard management skills, not social skills - just as an MBA teaches you tools and rules for running a business. But, an MBA can’t make you fun at parties all by itself – quite the opposite I would think!

To the best of my knowledge, there’s no finishing school for businesspeople. Maybe there should be. If there were, then many people who are too quick to point to a skilled developer and loudly comment about his "lack of soft skills" would have washed out long ago and become something a little easier to handle like being a hand sanitizer, salad bar spray barrier, or tire patch-n-repair kit.

After thinking about it for some time, I have come to believe that much of the discourse about soft skills that we take for granted as part of our working life is actually a myth. In fact, the truth is that we all have soft skills. We go home and have to practice conflict resolution with our families. We all develop different techniques for time management that work for us – however badly that may be. Many sports nuts would have a hard time fitting in at an anime convention - and being outnumbered might not feel too comfortable about it. I’ve seen very powerful people who were universally disliked by literally everyone at their company, but who didn’t even know it (though I believe they may have suspected it strongly). I’ve also seen executive managers in high levels jobs slink around as if they had been labeled “most likely to wear a pocket protector” because they were ostracized by their peers. Anyone kicked in the teeth long enough will begin to behave in ways that show they expect it, and the opposite it also true. Give a lowly developer a private office and they will start to behave more like they are 'in charge' as a result.

It is true that this is nothing more than my opinion, but I believe the myth of soft skills is a construction generated by the people who were the “cool kids” in high school, created for the purpose of indefinitely perpetuating their position in the social hierarchy. It has theory X written all over it. It has its roots in the same insidious class based elitism that causes us to say things like, "ain't isn't a word." even though you probably can't find a native English speaker alive who can't tell you what it means (and it's even in the dictionary!). There are real coping skills that people learn for dealing with each other, but to put up an imaginary straw man called "soft skills" and attach to it all your preconceived notions that nerds are socially inept is worse than wrong; it's pure and simple bigotry, and people who do it ought to be ashamed of themselves.

To be truly effective, any evaluation of soft skills would have to be based on measurable facts, and even psychologists and sociologists will tell you that generating this kind of verifiable and repeatable data [ethically] in human beings is challenging. Despite this, they do find interesting way to shed light on human behavior, and management science does sometimes find ways to translate this into the business world.

But, business itself could do much more. If we honestly expected the same quality of performance from people who had working with people as one of their primary job responsibilities, as we do from people who perform technically, then I don’t think it would be unreasonable to require from them the same kind of objective certification of their "soft skills" as is required for IT, medicine, law, accounting, or the building trades.

Perhaps such a test would be too costly in terms of time and "actors" to be feasible for new employee screening. Without being emotionally realistic, it would be incredibly easy to just fake it. But, at the very least I think we could all (technical and non-technical alike) benefit from some simulation exercises and training. Just as an example, I would like to see a salesperson or recruiter placed in the position of having to work overtime for several weeks straight, and then measure their social skills as their project is slated to be cancelled prematurely and they’re forced into the position of defending their investment in time. Or maybe they could be periodically graded on the way they deliver constructive criticism to employees who require negative feedback. I had some other ideas too, but they were starting to take on the characteristics of the Stanford and Milgrim experiments, so I’ll just stop. Again, ethics, challenging stuff.

Truly thinking about it now, I guess it's very complex and would require a lot of thought, but one thing I do know is that there aren't nearly enough people devoting resources into this area of testing or training as there should be. To say it is an order of magnitude less than the scrutiny given to IT skills would be a gross understatement, and it is only fair that somebody's feet should be held to the fire to make it happen.

Since that will probably never happen, maybe instead I’ll just write a science fiction novel about what it would be like if we did.

Published: Jan-05-08 | 0  Comment | 0  Link to this post

Jan05

And Speaking of Shoehorns

Just wanted to take a few minutes to bang out the post I meant to write last night, but was too tired after my caucus watching expidition.
 
My wife and I have this ongoing discussion that has been taking shape over several months, about this concept we call Little Sister.
 
The term is an overt reference to the orwellian term Big Borther, meant to symbolize the all watching eye of the government. Actually, the best way to describe it is that it is BBs counterpoint - the all watching eye of, well, everybody.
 
Little Sister is enabled by the cell phone camera. It waits for us to have our Macaca moment, then tells the whole words about it. Thus, we are assured through repeated examples of the failures of others that our own transgressions will be met with the swift dispassionate justice of the collective.
 
As an example, the other day I received an e-mail from a friend at work. It contained a video of a man crossing the street, wearing headphones. Then an SUV runs the light, and the resulting crash causes it to tumble inexorably towards the man, who is still blithely unaware of his impending doom. I can be sure of only three things: I will never knowingly run a red light, I will never cross the street wearing headphones, and there are many other people for whom seeing this clip will have a similar effect.
 
So it this how we acheive societal elevation? Is it a devolution into a world where the world privacy has no real meaning? Or, will we all become so used to the ubiquity of cameras that we simply learn to forgive one another of all but the most aggregious transgressions?
 
What do you think will come of this?
 
Update: Kudos to Cory Doctorow, who is quickly becoming my favorite author, for putting a eerily-similar-and-yet-completely-different spin on this timeless idea with his novel Little Brother. Amazing work as always! My wife, 11 year old son, and I all absolutely loved it.
Published: Jan-05-08 | 0  Comment | 0  Link to this post

Jan02

Hey Slackers! Back to Work!

Myself included. :-)
 
So much for all the blogging I was going to catch up on over the holiday.
 
I'm not big on new year's resolutions, but I do think this is a great opportunity to clean house, so to speak. So, as part of the changes I am trying to make, I've decided to try blogging a little differently. Instead of sitting on a large post and waiting until it is fully baked before I publish it, I'm going to try breaking up some of my lengthier stuff into bits that I can chew on more easily. I'll be taking a little time each night to work on posts, and with luck I hope to get in the habit of posting something new every day if I can help it.
 
So, for today, I have two topics I'll discuss. Well, actually they're really more like rants. Take them for what they are worth, which is to say, not much.
 
The Death of the Household Phone
If anyone at the phone company would like to know why companies like Vonage are just killing them, or why many people are just abandoning the concept of a home phone altogether in favor of their cell, they needn't think very hard.
 
Have you ever seriously compared the features that you get on a cell phone or VOIP phone to the ones that come with a typical land-line phone and regular phone service? Well, for some stupid reason, I have. And what came out of it is my list of things I wish my household phone could do.
 
If my land line could do everything I wanted it to:
  • I could upload ringtones into my land line phone, using MP3s or WAVs that I happen to have on hand on my computer network, just like my cell phone does.
  • I could assign different rings for different contacts, and not only that, but different groups of contacts, like Friends, or Telemarketer Scumbag.
  • My phone would have something like a community based RBL for telemarketers, so they could never interrupt my dinner again.
  • I could tell my phone that I don't want certain types of people calling me at all at certain times, but that other people can call me any time.
  • My phone would hear the volume in the room and ring appropriately - and in a way that does not give me a heart attack.
  • It would show a picture of the caller on each handset. Extra points if my phone can make this happen on the taskbar of my PC too, or on my TV set.
  • My phone would mute my television and pause my DVD player automatically if I answer it a certain way while I'm watching TV. Extra point to pause my XBox 360 or PS3 - as if.
  • My phone would have an attractive female receiptionist (think GladOS from Portal) that could ask certain callers to identify themselves, and encourage others to leave a message - or not to ever call back.
  • My phone would send voice messages to email as sound and text. (Vonage actually does this now.)
  • I would not have to export the phonebook from one handset to all the other handsets every time I enter a new number into it.
  • I could access settings of my phone via a built in web application that I could expose to the Internet and access from work if I so dare. OMG, this would let me type in my phonebook contacts with a real keyboard.
  • Better yet, my phone would be compatible with Mocirosoft Outlook, YIM/AIM, and other PIM software.
  • My phone would tell companies that spoof caller ID to "f*** off and die."
  • My phone would politely remind political campaigns that they have already called me three times this week, that I have no more money to donate, and could they please call back again after about a month or two.
  • My phone's robotic receptionist would ask the caller which person in the house they want to speak to, so that I don't find myself getting up to answer the phone, only to hand it over to someone else who could've damn well gotten up to get the call themselves.
  • If I needed it to, my phone could interoperate with any of my cell phones, but not necessarily require me to purchase it from that particular mobile carrier.
I am sure there are probably some more good ideas out there. I'll try to open this site up for comments soon so anyone interested can share.
 
A Cautionary Warning
I'd also like to remind each and every person out there that you can never be too paranoid, because there really are people out there that you'd never expect are watching you.
 
Usually, they're people who are very close to you already, who you'd think can just come over and talk to you directly if they want something from you. It might be a coworker, a friend, a not-such-a-good-friend-anymore, a former or current significant other, or a former or current employer.
 
We like to think that we can have one life at home and another life professionally. We like to think that people who have our professional respect are above digging through our cyber-trash. We like to think that the Internet isn't really a big deal, and that these are problems that only rich people and celebrities should have to worry about.
 
We can't really afford to think that way anymore.
 
I'd like to give some examples. Over the years, I've seen and heard horror stories about violations of privacy that occur over the Internet, and I'm amazed at how easy it is for people to commit breaches of ethical and moral conduct online that they wouldn't even consider in physical space. But, today I can't.
 
I can't, because at least one such person as I am describing is reading this right now. Mind you, that's not counting the Google bots - who are always watching. But I can say this much, and I want all of you out there on the inter-Tubes to remember this. It's important.
 
When you visit a web site, it exists somewhere in physical space. That server might be in some rack down in Reston - or it might be in somebody's basement, hall closet, or bedroom. With most commercial sites, you can reasonably assume the former, but with blogs (like this one) and other amateur sites this is not so clear.
 
Obviously, opening up any system to the Internet comes with risks, just as there are benefits. Owning a house comes with risks too. And some houses are riskier than others, depending on where you live and who your neighbors are. I happen to own a house in a neighborhood of Baltimore that's in transition, so I know a lot about that. One can't argue that just because a person lives in a dicey part of town that they don't have a right to feel safe in their home.
 
Sometimes, people forget to lock their doors. But, unless you're either a friend of the family or a thief, you probably wouldn't even consider trying the doorknob to find out. This fact of human nature has saved my forgetful and lazy ass many times.
 
If someone forces your door open, they are a burglar and nobody questions that fact. But, they're still a burglar if they slip in quietly while you're in the other room not paying attention and grab something. So, why then are there so many people who convince themselves this is okay as long as it's done over a pair of wires?
 
I recently had a gang of ten year olds vandalize my garage and steal a wallet full of games from my side porch. My porch has a broken door that can't be locked, and my ten year old son left the games there because he'd been playing them when the other boys started harrassing him with the doorbell at the other door. Later, they spraypainted the garage out of anger because we called the police in hopes we could make them stop running across our roof.
 
We're looking at thousands of dollars to replace what they stole and repair what they ruined. The emotional damange of not being able to defend your home from a pack of ten year olds is much more devastasting.
 
[By the way, I can take out 27 five year olds, according to http://www.howmanyfiveyearoldscouldyoutakeinafight.com/, and now you know why.]
 
Sure, we were kinda dumb to leave the spraypaint in a cabinet outside. Heck, nobody even remembered it had ever been there. Also, it was thoughtless of Eric to panic and leave the CD wallet unguarded. Does that make the act less wrong? Would a law abiding person say we were "asking for it" or that we "handed it to them"? I don't know, maybe some people say that; they'd ought to know better than let me hear it.
 
So my point in talking about this is to serve as a reminder that if you are using somebody's web site, you are a guest on their property. If you are using it in a reasonable way (or, if posted, in a way that is consistent with the terms of service) then you've been invited to do so. However, this does not mean that, like a vampire, once invited in you are free to cross the threshold and do as you please - draining the life from all those inside. If you behave in a way that is unwanted by the owner of that site, then you are trespassing.
 
This is true even if the owner never actually discovers your undesired activity, just as you can tresspass in someone's backyard and never get caught for it. As it happens, for this site, you'd be trasspassing both figuratively on the net and literally. I keep my blog server in my house.
 
Hypothetically, maybe you think you aren't doing anything wrong, because you haven't been intentionally trying to circumvent the security measures of the site. Maybe, like OJ Simpson, you think you are just dispensing justice by undoing something you believe was done to you. I'd prefer to think that such a person is just careless and hasn't thought things through very thoroughly.
 
But I know something about the character of these things. More often than not, first a person decides to hate you, then they find a way to act on it. If that's paranoia, then frankly it's a perfectly sane reaction to a crazy world.
 
If you're a blogger or webmaster and you think my comments sound too hysterical, then you're just setting yourself up for something similar to visit you later - because it will happen. I know it can be very hard, because we all slap these sites together with the frigile bits of what's left of our spare time after work and family have torn it to peices. Nevertheless, you are better off being paranoid ahead of time then you are reacting to a situation later - whether it's a virus, a worm, a spam-bot, or a person.
 
At least that way you are choosing when you will give it the time and attention it will eventually demand of you anyway. Trust me, the worms are bad enough and they can take on all the ugliness of a personal attack. When a person is doing something you don't want, it's on a different level.
 
So, next time I feel like it, I'll offer some practical advice - after I put some distance between myself and these events, both cyber and real.
 
For now I'll just say, "Hey you goddarn kids! Get the hell off my cyber lawn!" :->
Published: Jan-02-08 | 0  Comment | 0  Link to this post

Nov05

OMG W[o]TF CAML!? Choice Field Pet Peeve

Actually I had a different pet peeve today, but I'll blog that later. There'll be some code - and ice cream for those of you who get here while there's some left.
 
Okay, SharePoint can awesome, but sometimes it can also be pretty damned stupid. Here is a classic example of that dichotomy.
 
This is the documentation for a CHOICES / CHOICE element collection in CAML, from the MSDN version of the WSS 3.0 SDK.
 
CHOICES Element (List)

Used to define several choices within a field for a drop-down list.

...

CHOICE Element (List)

Used to define a choice within a Choice field.

<CHOICES>
  <CHOICE
    Value = "Text">
  </CHOICE>
  <CHOICE
    Value = "Text">
  </CHOICE>
  ...
</CHOICES>

Now, reading that, you might be led to believe that you could create a CHOICES collection like this to have SharePoint use value codes on the back-end of its DropDownList's options tag in HTML.

<CHOICES>
  <CHOICE Value="MD">Maryland</CHOICE>
  <CHOICE Value="DE">Delaware</CHOICE>
  <CHOICE Value="VA">Virginia</CHOICE>
  <CHOICE Value="PA">Pennsylvania</CHOICE>
</CHOICES>

Well, you would be WRONG! Wrong, as in "You get NOTHING! Good day sir!" wrong. In fact, as nearly as I can tell, the Value attrbiute of this element is less than useless. It's not invalid if you use it - sometimes. (Actually, sometimes it causes validation errors and sometimes it doesn't) It [usually] doesn't break anything; it just doesn't do anything, and the documentation leads you to believe that it should, which I think has the potential to cause a huge waste of time.

So, a big WoTF (wag of the finger) to Microsoft, for fragging this one up royally. And, I guess with that comment, I shouldn't expect to be getting that MVP nomination I've always wanted any time soon, huh? Oh well!

Update
I dug into this problem a little deeper. At first, I believed that you could provide a multi-column style value-text pair in the CHOICE element text, similar to what you'd find in a ModStat field type. However, this turned out to be a pipe dream.

  <CHOICE>MD;#Maryland</CHOICE>

As far as I can tell so far, what is actually going on is that the XSD schema for WSS is actually not consistent with the online documentation. See the following from wss.xsd:

  <xs:complexType name="CHOICEDEFINITIONS" mixed="true">
    <xs:sequence>
      <xs:element name="CHOICE" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>

Well, it's no wonder when I try to use the Value attribute in my custom content types and other features, I get nasty XML validation messages from Visual Studio telling me that the Value attribute is no valid in the CHOICE element, because it's not.

I don't recommend you try this on a production box, but what I did was to patch wss.xsd as follows.

<!-- BEGIN CHANGE BY TCARPE 11/1/2007 -->
  <xs:complexType name="CHOICEDEFINITIONS" mixed="true">
    <xs:sequence>
      <xs:element name="CHOICE" type="CHOICEDEFINITION" minOccurs="0" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="CHOICEDEFINITION">
    <xs:simpleContent>
      <xs:extension base="xs:string">
        <xs:attribute name="Value" type="xs:string" use="optional" />
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
<!-- END CHANGE BY TCARPE 11/1/2007 -->

That made Visual Studio and the VSeWSS behave themselves, but it's not clear to me yet if it will actually have any effect on the behavior of the Choice field and its DropDownList. In theory it should, since I see CAML in the RenderTemplate for CHOICE that retreives the Value attribute - if it exists.

From FLDTYPES.xml:

<HTML><![CDATA[<SCRIPT>fld = new ChoiceField(frm,]]></HTML> <ScriptQuote><Property Select="Name"/></ScriptQuote><HTML>,</HTML> <ScriptQuote><Property Select="DisplayName"/></ScriptQuote> <HTML>,</HTML> <ScriptQuote><Column/></ScriptQuote> <HTML>); fld.format = "</HTML>     <Property Select="Format"/>  <HTML>"; </HTML> <Switch> <Expr><Property Select="FillInChoice"/></Expr> <Case Value="TRUE">fld.fFillInChoice = true;</Case> </Switch> <ForEach Select="CHOICES/CHOICE"> <HTML>fld.AddChoice(</HTML> <ScriptQuote><Property Select="."/></ScriptQuote> <HTML>, </HTML> <ScriptQuote><Property Select="Value"/></ScriptQuote> <HTML>);</HTML> </ForEach> <Switch> <Expr><Property Select="Required"/></Expr> <Case Value="TRUE">fld.fRequired = true;</Case> </Switch> <HTML><![CDATA[fld.IMEMode="]]></HTML>      <Switch>       <Expr><Property Select="Type"/></Expr>       <Case Value="Lookup"><HTML><![CDATA[inactive]]></HTML></Case>       <Case Value="DateTime"><HTML><![CDATA[inactive]]></HTML></Case>       <Case Value="GridChoice"><HTML><![CDATA[inactive]]></HTML></Case>       <Case Value="Calculated"><HTML><![CDATA[inactive]]></HTML></Case>       <Case Value="Currency"><HTML><![CDATA[inactive]]></HTML></Case>       <Case Value="Number"><HTML><![CDATA[inactive]]></HTML></Case>       <Case Value="User"><HTML><![CDATA[inactive]]></HTML></Case>       <Case Value="Boolean"><HTML><![CDATA[inactive]]></HTML></Case>       <Default><Property Select="IMEMode" HTMLEncode="TRUE"/></Default>     </Switch>     <HTML><![CDATA[";]]></HTML> <HTML><![CDATA[fld.BuildUI();</SCRIPT>]]></HTML>

Clearly, somebody over there at MS was expecting this attribute to be declared - at least sometimes. I really have to wonder how this fell through the cracks, and if I'll be doing more harm than good with this particular tweak.

So, I just gave it a try to see what happens. Sadly, there is no joy in mudville today. Mighty SharePoint has struck out. Using this:

    <CHOICES>
  <CHOICE Value="C">Client</CHOICE>
  <CHOICE Value="P">Partner</CHOICE>
  <CHOICE Value="S">Staff / Professional</CHOICE>
  <CHOICE Value="V">Vendor</CHOICE>
  <CHOICE Value="O">Other</CHOICE>
    </CHOICES>

SharePoint gives me:

     <option selected="selected" value="Client">Client</option>
     <option value="Partner">Partner</option>
     <option value="Staff / Professional">Staff / Professional</option>
     <option value="Vendor">Vendor</option>
     <option value="Other">Other</option>

I give up! I don't think anything short of creating a custom field type is going to solve this problem.

The remifications of this "bug" are actually far reaching and profound. For example, let's suppose you have a custom field (or site column) with custom properties defined, and you want to assign a value from a CHOICES collection to a property of an enumerable type in your own class derived from SPFIeld. If the Value attribute were working as claimed, you could assign it the string equivalent of each value of the enumeration, then use a simple call to Enum.Parse() to do the conversion. Instead, you are left with the ugly choice of writing custom parsers. (Choose your posion: property attributes in the enum, or a hard coded switch-case statement.) And, you'll have to write one for each choice property you want to create in this way. This increases the overall amount of time spent doing code and maintainance, which is the opposite of why we use SharePoint in the first place.

For now, I guess the only thing I can really take away from this experience, other than frustration, is an affirmation of one of the great truisms of software engineering as coined by the irrerent Fred Brooks, "Documentation lies."

Published: Nov-05-07 | 0  Comment | 0  Link to this post

Jun14

Things that Suck!

Here is the list of things that are pissing me off this week:
  1. People who won't hang with you becuase you are married, or because you have kids, or because you're too old, or whatever superficial shorthand passes for an excuse for their own shallowness.
  2. People who measure the "progress" we are making in Iraq by counting the number of buildings that are being blown up.
  3. People who come to me with problems that they could've fixed on their own if only they had tried. (You know who you are, and yes I do it too.)
  4. Coming into work and finding that I am wholly unable to focus on what I need to do today.
  5. Coming into work and finding that I am wholly unwilloing to focus on what I need to do today.
  6. The third beer.
  7. That twisted burning feeling I get in my gut when I am no longer asleep, but when I am not yet conscious enough to force myself out of bed and face the day.
  8. A character drawing when I forget to do the anatomical proportions before I start to sketch in the details, so the character ends up with unusually long arms or a disproportionately short torso.
  9. Web browsers that crash while you are typing a lengthy rant into a form, so you lose everything.
  10. People who tell you that #9 would not happen if you just typed everything into Word first.
  11. Going to see someone in person for something that could easily be said (and ignored?) in email.
  12. The first three notes of the first System of a Down song I put on my headphones; the rest are awesome!

That'll do. :-) How cathartic!!

Published: Jun-14-07 | 0  Comment | 0  Link to this post

`