Wednesday, March 31, 2004

How to cope with life's negative emotions.

Vocabulary is a pwerful thing.  It makes a real difference what words you use to describe something, even with yourself.

When experincing "anger" over something that someone did or did not do (and this applies to professional and personal situations), ask yourself if it is really "anger" you are feeling.  Often, you'll find that your emotions have self-fueled themselves a little hotter than they really are.  Most of the time you can downgrade to "disappointed" rather than "angry".  Disappointment brings feelings of frustration and these, repeated over time, can boil over and become exagerated. 

If you are really angry, you need to act.  Someone has hurt or threatened you physically!  They have caused you danger or put you in harm's way.  If not, is it really anger?  Are you not sure? Then repeat the first paragraph.  Otherwise, read on...

Now that you've placed the emotion where it belongs, ask yourself why you are disappointed.  Disappointment is always a mismatch of expectations and results or experience.  Now you merely have to decide if you were appropriate with your expectations.  As Michael said, “If all else fails, lower your expectations.”   Having unrealistic expectations causes everyone stress.  If you have experienced the same frustrating situation over and over and not adjusted your expectations, who is to blame for your disappointment?  Einstein said, “Repeating the same behavior and expecting a different result is the definition of insanity” (or something like that). 

When someone truly drops the ball and doesn't reach a reasonable goal, deliverable or standard, you have every right to be disappointed.  Communicate that in a calm and proactive way.  The next time a similar situation comes up, be appropriate, expect better than last time but don't hope for a miracle.  Well, you can hope, as long as you understand that hope implie doubt.  Know that the same thing can happen again.  Be sure to communicate what you exepct up front!

What to do when expectations are disappointing in themselves?  That's when action is required.  If someone consistently repeats a very diappointing behavior and you have to keep lowering your expectation of them, it might be time to find someone else to count on. 

All the answers cannot be had by changing a word here and there.  Always being less aggressive will mean you are always less effective.  That's not good either.  Balance is the key. 

The bottom line is that we are all master of our own emotions.  Your emotions begin with you and end with you and directly effect only yourself.  If you can chose whether to feel mildly disserved or furiously miserable, why would you chose the latter?

As far as vocabulary goes, consider this if you don't believe a choice in word can make such a difference: Americans have hundreds of words for money but only one for love.  What seems to be the most important thing to americans in this day and age?  ...and why am I still at work, getting ready to go to a professional study group, when my wife and 11 month old son are at home practicing walking?  Not because I want to, but because money is very important in America.  (that doesn't mean I don't enjoy the group, just that a lot of life can be missed while you're trying to boost your corporate value...)

 

3/31/2004 11:14:46 PM (GMT Standard Time, UTC+00:00)  #    Comments [1]  |  Trackback
Friday, March 26, 2004

I have been trying to use VSS integration with VS.Net for well over a year.  It works great at home when I am by myself.  I can track changes and keep versions in history and can confidently change code knowing that I can roll back if I have to.  At work, however, when it is critically important, the integration has limitations that result in having to use VSS explorer outside of VSS.Net.

I have come to very few revolutionary conclusions.  I was hoping to get to a point where I could recommend a configuration for a large development team.  Unfortunately, I can only express that for those who wish to use it, VSS integration is tolerable.

First off, only bind what you will be editing.  If you aren't going to be changing a project that is part of a larger solution, get the files from source control and use them locally but don't bind them to the VSS location.  If you don't need the source code at all (for debugging or stepping through funtionality) simply get the binaries and use the compiled dll.  Its much easier and saves a lot of time when getting latest.

For a project that you do modify and require VSS functionality, here are some tips:

  • Project should remain writable.  It is a pain in the butt to have to check the project out to remove a component from the project or to add a test page.  When you need to make persistent project changes, check out the project file externally, make your changes, check it back in, then mark the file writable again.
  • In VS.Net, under tools --> options --> Source Control --> General:  check the box 'Allow checked in items to be edited'
  • Now you can chose “edit“ in the Source Control dialog in addition to check out, when you attempt to modify a file.  Very useful when you want to add a simple message or line of test code but do not want to persist that change
  • When you try to save the file, you can choose “save as“
  • right click on the file you want to save, choose properties, uncheck read only.
  • Save your edited file
  • When you get latest next time, over write your changes if you want to

 

Its cumbersome but marginally useful.  Its like a cup holder that doesn't really hold any cup well (my Acura) but is better than no cup holder at all (my Westfalia)

 

That's all I have for now, if I think of anything else, I'll let you know.

 

Programming | .Net | C#
3/26/2004 4:15:37 PM (GMT Standard Time, UTC+00:00)  #    Comments [0]  |  Trackback
Monday, March 22, 2004

I spent about 11 hours on my car stereo this past weekend.  I got two of four speakers installed!  I will do the other two next weekend. 

I could have paid someone to install my car audio but I wanted to make sure it was done right.  I had an amplifier installed at HiFi Buys about three years ago and they not only did an awful job, they fried my existing stereo.  They replaced it with an Alpine but took three days consisting of 16 hours to get it finished.  When they were done, my clock no longer lit up on the dash board and there was a huge crack in the plastic behind the fold-down rear seat.  You get what you pay for!

Whe I've finished the door speakers, I will replace the head unit.  That shouldn't take but an hour. 

Following that I will install two amplifiers.  Small, inexpensive ones, of course!  These will take several hours.  They require lots of wires be run.  It annoys me that car stereo equipment requires thicker wire than an arc welder but, according to all the newgroups and wire guage tables, it is really necessary.  When I have the amps in place, I will need to build a box for my sub and get that installed as well.  The box should take a day and the install only a minute and 5 seconds. 

From that point forward I will be smiling every time I have to drive somewhere, everytime traffic crawls to a stop, everytime the light turns red in front of me and every time the clock tells me it is time for my commute home. 

3/22/2004 9:01:44 PM (GMT Standard Time, UTC+00:00)  #    Comments [1]  |  Trackback

I thought having a baby would be the maturing factor in my late twenties life, making me unquestionably an adult.  I have to admit the reality is sobering.  A tiny person’s life is not only a result of your actions but also completely dependent on you.  However, I haven’t acted like such a kid, such a goofy, bumbling, silly person since I was as tall as my 11-month son!  So having children is as maturing as a rollercoaster ride at Six Flags. 

We just put a contract on a house!  Now I am a real adult.  I am going to enjoy all the benefits and responsibility of home-ownership.  It’s been a lot of fun so far!  I am very pleased to think that I own some lawn and a fence and a bunch of walls, not to mention the dishwasher, fridge, stove, garbage disposal, lighting fixtures, furnace, basement, sun room, porch, attic, cabinets and molding.  I have a mortgage, a second mortgage, homeowner’s insurance, a security system, pest-control, water, gas and electric hook-ups and all the systems that make it all work.  Talk about coming screeching into adulthood! 

My wife and I are tremendously excited to start investing in our property.  We already had that feeling of belonging and purpose and righteousness in our rental because we residing together.  It didn’t matter if it were an apartment, a hotel room or a van down by the river.  It was home.  Now we can paint the ceiling midnight blue if we want to without asking anyone’s permission.  It’s a small thing, really, but very librating. 

3/22/2004 8:51:09 PM (GMT Standard Time, UTC+00:00)  #    Comments [1]  |  Trackback
Wednesday, March 10, 2004

I have been trying to use VSS integration with VS.Net for well over a year.  It works great at home when I am by myself.  I can track changes and keep versions in history and can confidently change code knowing that I can roll back if I have to.  At work, however, when it is critically important, the integration has limitations that result in having to use VSS explorer outside of VSS.Net.

I have come to very few revolutionary conclusions.  I was hoping to get to a point where I could recommend a configuration for a large development team.  Unfortunately, I can only express that for those who wish to use it, VSS integration is tolerable.

First off, only bind what you will be editing.  If you aren't going to be changing a project that is part of a larger solution, get the files from source control and use them locally but don't bind them to the VSS location.  If you don't need the source code at all (for debugging or stepping through funtionality) simply get the binaries and use the compiled dll.  Its much easier and saves a lot of time when getting latest.

For a project that you do modify and require VSS functionality, here are some tips:

  • Project should remain writable.  It is a pain in the butt to have to check the project out to remove a component from the project or to add a test page.  When you need to make persistent project changes, check out the project file externally, make your changes, check it back in, then mark the file writable again.
  • In VS.Net, under tools --> options --> Source Control --> General:  check the box “Allow checked in items to be edited“
    now you can chose “edit“ in the Source Control dialog in addition to check out.  very useful when you want to add a simple message or line of test code but do not want to persist that change

That's all I have for now, if I think of anything else, I'll let you know.

 

Programming | .Net | C#
3/10/2004 4:30:35 PM (GMT Standard Time, UTC+00:00)  #    Comments [0]  |  Trackback
Tuesday, March 09, 2004

Stumbled across this blog specifically for gadgets.  Get your geek fix here

3/9/2004 3:49:27 PM (GMT Standard Time, UTC+00:00)  #    Comments [0]  |  Trackback
Tuesday, March 02, 2004

 

 

A few VW bus related parodies I've come up with... 

Xtreme Programming

 

Everything you need in the worst case scenario.

 

funny, but chilling!

Art
3/2/2004 9:07:48 PM (GMT Standard Time, UTC+00:00)  #    Comments [0]  |  Trackback

Clemens Vasars on Free Software, "It’s idiocy"

This is not a rebuttle, but a counter-point.  I wish to shed light on the bigger picture.

A friend of mine once said, "forget about trying to make it in music.  It's a fairy-tale.  There's no way a true artist can ever make it."  He is in a band these days.  He has rediscovered what it means to be a musician.  He may or may not have resurrected his dream of being a rock star.  He has, however, resurrected his love for music, his passion for performing, and his youthful optimism that something done for the love of doing it is worth doing.

"Forget the dream about stuff being free and stop advocating it. It’s idiocy. It’s bigotry. If you want to put your skills to work and you need to support a family, your work and work results can’t be free." from Clemens blog

BTW, his blog runs on DasBlog, which Clemens helped to create, and distributes as true "free, open-source software".  I want to personally thank the Newtelligence team for their contribution.  It's awesome.  It has given many developers the enabling technology to be chatty and say too much about everything in a very public way.  It also has helped evolve the internet.

Michael Earls said, "I couldn't agree more," on his DasBlog blog site. 

So what are they trying to get at?  I think they are trying to express the idea that profit has it's place.  calling Microsoft and proprietary software vendors evil might be fun, but it's silly.  Even so, don't forget that open-source has it's place.  It creates value that commercial software cannot because it is not driven by the mighty dollar. 

Free Software that rocks

Consider several tools we (my daytime employer) are just beginning to implement and one we have embraced fully. Wiki, NUnit and NAnt. These suites of free software provide a very robust set of features. They could easily be marketable and profitable products but have evolved along a different path, been more accessible to everyone, and benefited from cumulative community contributions. These are true open-source projects. Even Microsoft has learned from the collective work on NAnt and modeled MSBuild very closely to it. I'm sure MSBuild is going to have some pretty exceptional, .Net specific enhancements and will profit greatly from everyone's FREE contributions. I have learned to appreciate open-source passionately. I have learned a great deal from examining the source code for applications that are openly available. I use several open-source apps every day: RSS Bandit, NAnt, NUnit, DasBlog, Wiki. I use open standard consciously and without being aware of it.  Design patterns, UML, code examples.  None of these things were necessarily created for direct profit.  Perhaps along the path to solving some busniess need in the aim of generating revenue...   But these aretifacts are free.  It's not a black and white issue. You can contribute to open source at the same time that you develop for profit (or hourly wage, as it may be). I know of one developer who has contributed in very significant ways to open-source and community work groups, this guy named Michael Earls, yet he works for a corporate giant in the TelCom industry. mmm hmmm... You can contribute to your industry in a million ways. When you write articles, you contribute to the community. Companies profit from that work. Their emplyees read that article and take your hard-earned knowledge back with them and apply it, possibly in direct competition with you. Should you refrain from sharing knowledge? Perhaps there should be one person who will control all knowledge and decide what will be made public and who has aceess to which. Ok, one person is probably not appropriate. One group. Wait, we've been here before? Who gets the knowledge? How should that knowledge be shared?

Closed Mindedness and many shades of grey

Its like the single vs. married dichotomy. Does life as you know it end when your baby is born? Can you not have exhillarating fun when you're married? (Don't tell my wife, I have her convinced that we can still party and live life like we enjoy it). I work with a fellow whose favorite thing to tell me is that I am in denial. He insists that I will eventually give up and realize that my personal life is over, my dreams are dead and I will never be anything more than a dad until they all grow up and then I retire (and get ready to die). He loved to hear about my single days and all the things I was doing outside of work. When I married, I didn't move out to the burbs and subscribe to Comcast and Tivo. I stayed intown and live in the most cosmopolitan, stimulating part of Atlanta, the Virginia Highlands. I live there wth my wife and son and enjoy walking to shops and restaurants and every once in a while, I walk to a pub and throw a few back. I occassionally play an open mic and sometimes catch a live musical act. These are not the typical activties of the average married with children american. I will be the first to admit that I do not stay out until 4 a.m. and spend my saturdays sleeping off a hangover. I instead wake up at four to change tiny dude's shitty pants. Yes, there are differences but they are personal. Some of them are universal, some of them are not.

Free and/or Open

Open-source does not mean free. Free is freeware. Software can be both freeware and open-source but each term are addressing two different things. Open-source means you have contributed some knowledge in the form of software and offer for others to do the same. If someone wishes to use it in their business or in their commercial product, awesome, good luck! When you participate in open-source, you learn as you solve problems, as others solve problems and submit their solution and as you collaborate. It is a learning and sharing practice. It is very rewarding to participate. It is very rewarding to stumble upon some artifact of all this work and start digging.

Open Standards

Standards are best developed our in the free world. When I say free, of course, I mean lacking dictatorship by some profit-centric manager. If standards are created by companies, they tend to solve that company's needs ahead of the industry's needs. When developed by public contribution from industry pundits and leaders in the community, they tend to better represent everyone.

The Bottom Line

Oh but we must survive! "Fish gotta swim, birds gotta eat." So when you decide you want to build this great application, do you create it, release all your code and hope that someone thanks you with paypal? Hell no! You have to work for someone. You either work for a business or you work for yourself (which means you work for your clients, who may be a busniess, but that's just semantics). You create marketable product or solve business needs with software functionality. When you learn something really cool, that's when you get to make the world a better place. You can even write an applicaiton that solves a common need and let everyone use it. Like NAnt. Until MSBuild arrives, it is what is out there. And it rocks! And it is free. I would bet money that the creators of NAnt have been consulted, or at least approached, to assist with MSBuild. So open-source can turn profit.

The bottom line for me is this: Focus on your goals and objectives. Decide where you want to go and don't move your gaze until you've reached your destination. Do what you love and figure out how to get rich later. Don't let profit drive the train. You'll be a slave to the winds of change that way. Instead, drive ever-forward and you'll find you are making the biggest wind.

If you want a more practical way to say that: Take money out of the equation. Decide what you love to do. Then, figure out how to get someone to pay you to do that. (Michael Earls said something like that but I can't find the original post)

3/2/2004 6:53:43 PM (GMT Standard Time, UTC+00:00)  #    Comments [2]  |  Trackback
Monday, March 01, 2004

I may be a little premature on this recommendation but on first listen I love both of these albums!

The first you've probably heard of or at least heard a track or two if you listen to any (rock) radio - college or mainstream.

Damien Rice -“O”

I read about him some time ago and have recently heard a few cuts on college radio as well as commercial radio.  He sounds like a girl on some songs and no one ever mentioned his name after the song (or maybe I subconsciously disregarded it because I was expecting a girl's name).

The lyrics paint pictures in your mind while the stories make you think you've heard them before.  The melodies feel alot like home.

Rufus Wainwright - “Want One”

I heard this playing in a local record store.  I mistook it for RadioHead and went looking for the album I don't have.  I asked the clerk which RadioHead it was and he laughed and showed me Rufus' album.  This is a brilliant work!  His croaning voice is a near dead ringer for Thom York of RadioHead but with less driving edge but more refinement, possibly being more accessible to the general populous.  The development of the songs is apparent exceptional.  It is like a rock opera without being annoying, sort of Stix meat RadioHead....  If you know what I mean by that, go listen to some songs, or just buy the album. 

File Sharing - P2P

I'd like to point out that I kazaa'd Damien Rice prior to purchasing it.  I heard Wainwright playing at a local music store - Corner Compact Disc - http://www.cornercd.com.

I never would have purchased Rice's work if it weren't for Kazaa and I would not have heard of Rufus without the local music store that truly adds value as a music retailer.  So support this store and stores like it.  Pay the extra buck rather than Amazoning it (or get it for a few bucks less than the mall store) and alot for some time to listen to their listenting stations.  Some clerk in that store spent all day previewing new albums and picked one that they love.  No one tells them which ones to showcase and no one pays them to do it (like BlockButter and Tower).

So download some tunes.  When you find something you really like, buy it.  Two reasons:  the artist sees some of that return and can keep creating their art and the quality of a cd is truly better than MP3's and other compressed file formats.  It really is, you may not be able to tell on your crappy computer speakers or your stock car stereo, but the difference is there.  Something in the music is lost on an mp3, you can't always detect it, but your brain can...  and so can you soul...  because music is for your soul, after all.

 

 

3/1/2004 5:51:38 PM (GMT Standard Time, UTC+00:00)  #    Comments [0]  |  Trackback

Theme design by Jelle Druyts

Pick a theme: