Jakew
Consulting, hacking, and motorcycles

Permanently unsubed – Adam Curry you suck

Wednesday, 12 September 2007 10:26 by jakew

 

Yesterday’s crap from Adam Curry (9/11) finally got me to kill another time waster. Is this guy really that stupid? Maybe all the weed he smokes has finally finished baking his brain or maybe he honestly believes 9/11 was an inside job.

I don’t have time for idiots. Adam go ***

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Getting things done

Tuesday, 11 September 2007 19:03 by jakew

Getting things done

I read David Allen’s “Getting Things Done” last year (or was it two years ago….). Overall the GTD approach to organization is a great way to go. He simplifies the process of keeping track of what needs to be done nicely so you can actually get things done. However, I just finished reading Timothy Ferris’s controversial “The 4-hour Workweek” which I’ve already mentioned once. The reason I’m mentioning it again is that it has given me pause with regard to GTD. Specifically, how much of the stuff in the various piles really needs to be done? Without going in to specifics about my list – much of it is actually noise. If I don’t do several of the things in my next actions piles nothing will happen. In fact by not doing them I create more time to focus on the things that will cause good things to happen for me and my family.

This isn’t a fault of GTD. It is my inability to prioritize things effectively that is at fault. If you happen to be a Covey fan then you would understand that I have been putting not important/urgent and not important/not urgent items in my next actions list. The only thing that goes there is important/not urgent stuff. Things like calls from my client to troubleshoot a biztalk problem still get handled but I don’t put them on my “to do” list. I just deal with the urgent/important stuff right there. Once it is taken care of I go back to work on the important/not urgent stuff.

The surprising thing about dealing with urgent/important stuff right on the spot is that you don’t actually get overwhelmed by it. I know people who seem to create a lot of drama around dealing with this type of stuff and seem to cause it to pile up. As I have begun tackling this stuff I’m finding that it is starting to go away. As the frequency of interruptions goes down the amount of time for important/not urgent stuff goes up.

The result – I’m getting a lot of stuff done a lot faster than I have in a long time. Yeah a few things occasionally fall through the cracks but I’m flexible enough to cope with that.

I’m not really sure what my point is here. I guess I’m trying to say that a few things without taking the time to organize:

1) Stuff that isn’t important doesn’t deserve your focus (motorcycle racing is important to me) things like reading forums and blogs most of the time is not important. If the blog has something I need then it is at that point in time. However, spending even ten minutes a day keeping up with news or Instapundit.com is a waste of my time. It doesn’t change things for me.

2) Deal with urgent important things on the spot. The phone ringing isn’t important (I drive my wife nuts with that – I almost never answer the home phone), neither is email (I’m down to checking three times a day). If you have a bug ticket open deal with it on the spot don’t defer it.

3) Spend as much time on the things that are important but not urgent (important is in the eye of the beholder). Reading up on Designers in .NET 2.0 is important to me, working on my products is important to me. Those things deserve as much time as you can allocate.

The reason I’ve drug 4HWW in to this is b/c what I’m saying is no different that what Mr. Ferris says. He just manages to piss people off better than I do. But it is also the same thing from David Alan and Covey (7 Habits & First things first).

If you haven’t read 4HWW read it for yourself before you let critics make up your mind for you. I don’t really want a 4 hour work week. But I’d like to have greater control over how my time is spent. At the very least the book should at least get you thinking about how you spend your time – the only thing you really have in this life.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Friggin XmlSerializer & XSDs

Sunday, 9 September 2007 12:12 by jakew

Sense I work with BizTalk most of the time I have to work with real XSDs that have actual namespaces. Which actually rocks because I don’t have to worry about name collisions too much. The down side though is when you need to serialize and deserialize an XML file that happens to contain one of your messages.

Typically I just write something like:

XmlSerializer serializer = new XmlSerializer(typeof(SnotRocket));

SnotRocket sr = (SnotRocket) serializer.Deserialize(reader);

For normal hand written XML this is fine, but if the message is following a real XSD it has a namespace and the serializer won’t be able to read it. The solution is to fix up the constructor:

XmlSerializer serializer = new XmlSerializer(typeof(SnotRocket), “http://Rhinoplasty”);

SnotRocket sr = (SnotRocket) serializer.Deserialize(reader);

And things get back to rockin. Why is this worth mentioning? Well, in order to do this you have to run the XSD through the XSD tool which generates the classes and stuff for you which tell XmlSerializer what to do. Why can’t XmlSerializer look at the attributes attached to the root object to get the root namespace? Oh, well.

Minor stuff, but to help me remember this little tid bit (I've hit my head on this often enough) I wrote this to share and help me remember for next time.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Too damn funny!

Saturday, 8 September 2007 08:40 by jakew

In my last blog post I used a few words that got moderated out.  I'm not sure if CS did it or Live Writer. 

 

Guess my software is trying to protect you from me and my foul mouth.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Life long to do list

Saturday, 8 September 2007 08:13 by jakew

I’ve seen a lot of people write blog posts and articles bitching about “4 Hour Work Week”. If one author can piss off that many people (not to mention those who don’t bother to say anything but are pissed off) then it might be worth reading. I bought a copy, B&N on sale for 30% off, figuring that if it was all crap at least I could use it to start fires in my fire place.

Overall what Mr. Ferriss has to say is stuff I’ve thought for a long time. The difference is he published a book about it claiming that he is actually doing it. I have never met the guy so I have no idea one way or the other. I know a few people who do similar things and baring evidence to the contrary I’m willing to believe him.

So why does this have so many people ticked off? Several things about the book are pushing buttons. Here is a brief list of what I think sets people off:

  1. The idea of a 4 hour work week is heresy here in the U.S. If you don’t work at least 60hours a week you’re a slacker and suck
  2. Out sourcing. Every programmer’s worst nightmare and this guy is telling you to do it too! ***.
  3. Start a business selling something. He gives a fair amount of details and makes it look really easy but there are risks involved. People don’t like risk and this charlatan is telling you to take risks! ***!
  4. Skip meetings, answer email 2 times day, say no? are you freaking insane! I have my crack berry for a reason. What a nut job.
  5. Telecommute? Get outside my cubicle? Now you know he is insane. Pure nutter.
  6. I don’t really have a 6, I just wanted to type *** again. ***!

Everything above can be chunked down to “what if I fail?”. What if I try to do something different and I fall flat on my face? What will happen? I have a family, a mortgage, and a dog that needs braces. What will become of all of this? I’m a responsible person and I have to take care of these things.

Yup. All true. You gots responsibilities. But seriously think about which are real responsibilities and which have just be foisted on you or been assumed without question. This is a big thing and people (ahem) spend years in therapy figuring some of this crap out [ed – you mean like spending 3 years studying NLP? Me- shut up ed.].

So what actually does happen if you try doing what Mr. Ferriss suggests? You ask your boss to allow you to telecommute. He might fire you on the spot and tell you your kids are ugly and your dog really does need braces. He might say sure just make sure your stuff gets done on time. Taking the worst case – what happens? You get another job. Its just a job. It isn’t a marriage, it isn’t love.

Actually, my marriage thing cracks me up. I know people more willing to break up their marriage than take a few risks to try and find happiness. That is insanity in my opinion.

Anyway, you find another job and go on with life. But the likely outcome is that you will find yourself having to setup a home office and figure out how to maintain or raise your productivity.

Work is a minor piece of this though. We hide in our jobs to avoid ourselves. We avoid ourselves because we won’t admit to ourselves what we really want. It isn’t to be rich, that is one of those things that gets foisted on us by other people. How many times have you heard people say “when I’m rich I’ll XYZ”? I know a lot of rich people. They never really get around to XYZ. Also, having crap won’t bring you happiness. I have a nice house. On most days I’d like to burn it down. All it does is tie me and my family down. Yeah, it’s a nice place to store our ***, but that is what it is – ***. Out of my physical possessions there are only a few that matter. The hard drive in my workstation because it has all of my photographs and stuff, my motorcycle and its gear and the camera. That’s it. No really, that is it. If I had those things and my family I’d be fine. Actually, the motorcycle and camera are replaceable and the HD needs to be burned to a few DVDs.

So here it is – if you set aside the fear of failure (you have failed in the past, you will fail in the future – but you will survive to fail again) what would you do with your life? Here are a few things I thought of this morning:

  • Live in an apartment in Tokyo Japan for 3 months
  • Live in an apartment in Hong Kong for 3 months
  • Live in an apartment in Singapore for 3 months
  • Live in an apartment in Paris for 3 months
  • Live in an apartment in London for 3 months
  • Spend a week racing my motorcycle on the Nurburgring
  • Do Levels 3 & 4 and a 2 day camp with California Superbike School
  • Qualify for the grid of an AMA Supersport race
  • Spend 3 days racing my bike at each of the major tracks in the world
  • Spend a week Scuba diving the Great Barrier Reef in Australia
  • Learn to surf
  • Learn to play guitar
  • Do an IronButt
  • Learn to fly a plane
  • Spend a month doing a motorcycle tour of the U.S. like A.B. is doing in “Feasting on Asphalt”
  • Spend two months doing a motorcycle tour of Ireland, the UK, and Europe
  • Sail a boat in the Caribbean for a month

I’m going to do that list and be done with it before I’m forty. What are you going to do?

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

The board of directors for GuerillaProgrammer

Thursday, 6 September 2007 10:00 by jakew

 

DSC07967

President of the board - keeps everybody else in line.

 

DSC07968

Director of product development - if it is chewy it ships!

 

DSC07969

Director of legal affairs - just don't mess with her.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Zune - no RSS?

Tuesday, 4 September 2007 08:54 by jakew

So far I really like my ZUNE.  Only real complaint - no RSS.  Seems a lot of people have the same complaint.  Thing is complaining only goes so far before it becomes whining.  I hate whining.  But I do it all the time.

Better to do something about it that sit around and whine.

Turns out the Zune play lists are just XML files and pretty simple ones at that.  I have Doppler setup to grab the couple of PodCasts that I like. It puts them in a directory.  The next step is to write a simple script that updates the Zune play list with the new downloads.  That will take maybe twenty lines of code.  Big deal.

The only real challenge is making a decision.  How do I know if I've played the podcast or not?  Do I simply wipe out the old stuff and put in the new stuff?  Very tempting.  However, I listen to the Russ Martin Show and often fall way behind (I'm still listening to Tuesday of last week).  Each day of RMS generates 6 to 7 files and about 3 hours of content.

Perhaps the simplest thing I can do is just append files to the end of the play list.  Then I use the Zune UI to delete the stuff I've already heard and the new stuff just moves up the stack.  Sort of a FIFO queue.

It really would be cool if MSFT would release an SDK for this thing.  I'd love to turn on the WI-FI so I can sync with my workstation without having to tether it first.  I can honestly careless about sharing music with other people.  If they have a Zune they'll have the same subscription.  Just go down load the bloody song and be done with it.  If the track is from the PodSafe network they can go bloody download it themselves and not have to deal with the 3x3 thing.

The big thing I want is access to the Zune DB.  I want to know what has been listened to.  Then I could automatically update the play list once a podcast has been listened to.

Maybe I should hack my own way in.  Not like they can change the format too much.  Its probably an MDB file anyway.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

UI Fun – updating tree controls and list boxes

Sunday, 2 September 2007 07:39 by jakew

I’m working on my own little product and I’m getting close to being done. Right now I need to make a UI for it. The UI uses a tree view and a fair number of list boxes. The problem that has been driving me nuts is that each time you update something my list boxes and tree view don’t really reflect the change. You have to switch to something else and come back in order to get it to reload. I hate that.

Calling all the Update, Redraw, and other methods on the controls is useless. They only trigger a WM_PAINT event and the control doesn’t think it needs to repaint so it doesn’t.

For instance: say you have a form with a tree control. In the tree control is a hierarchy that is three deep. The user can click on any of the nodes and change the label. Right now, in order for the user to see the update I have to sync back to the document (no biggie), and then reload the entire tree. Reloading the tree causes everything to close up. So if you have a few branches open, they won’t be anymore.

I hate UIs. Why can’t everybody just work in raw XML like Don Box intended?

Anyway, I finally drug my lazy butt to the workstation to figure out how this is supposed to be done. It isn’t actually that hard. The whole trick is to make a new item with all the stuff from the old, update it and use it to replace the old one. Simple!

The code looks something like:

treeview

(you can grab the project here)

I suspect the same technique will work with a listbox. I have no idea if this is the ‘best way’ but it is definitely a way that works. For me I just want to get this done so I can share it.

If you happen to know a better way and want to share it – give me a trackback.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

F a bunch o' iPod

Saturday, 1 September 2007 17:30 by jakew

I've had an iPod Nano sense last Christmas.  It was way better than my crusty old CreativeLabs Nomand, but in general for the past three months or so it has been pissing me off to an increasing degree.  Actually, the Nano wasn't so bad other than it crashes more often than Vista, iTunes is the real annoyance.  How about actually working right.  One of the main podcasts I listen to only comes as a WMA so if I want to listen to it on my Nano iTunes has to convert it.  It takes forever and a day (about twenty minutes for 6-7 files).  Why not play WMA directly?  Windows Media player will play mp4 files w/o conversion.

Next iTunes will forget how to minimize itself after it has been running awhile.  And overall the iTunes UI really isn't that great.  MediaPlayer is just as good if not better.  OH, and it will always minimize.

The result - we got a Zune to test out.  I've been thinking about getting one for a bit and my wife's birthday provided a perfect excuse (technically it is hers - her iPod was mistaken for a chew toy by our boxer).  So far I'm really please.  My entire library was automatically imported (iTunes stuff too), it found all of my videos and pictures.  It even pulled over all of the iTunes playlists which pleased me greatly.

Not everything is perfect though.  First you have to be an admin to install the software.  I run with limited privileges on my workstation for a number of reasons (protection, software testing, etc).  Normally I can install software by running "MakeMeAdmin", but in this case that did not work.  I had to log out and log back in as an Administrator.

Another small complaint is the total absence of an RSS reader.  I tried the iTunes RSS tool, but it never seemed to work the way I expected.  Probably user error, but I thought this was Apple....I always ended up going back to FeedBurner for my RSS feeds.  Had the Zune software had a built in RSS reader I would have given it a swing.  Guess this saves me some time sense I wont waste any time playing around with a feature I really don't need (podcasts just waste my time really).

My favorite feature with the Zune though is the ZunePass.  I'm pretty sure a few other sites offer the same all you can eat subscription model, but iTunes doesnt.  So this is nice.

I'm still in the process of getting things setup.  I'm interested in learning how to use the WiFi stuff and to see if it can be used for anything beyond talking to other Zune's.  Ideally, I'd like to be able to have it sync w/ my workstation without having to tether.

I also plan to look in to developing software for the Zune.  How open is it?  I've seen other application written to talk to the Zune, but can I get my own programs to run on the Zune?  To me that is where the cool stuff would happen.

 

Anyway, I'm a bit harsh on the iPod, I just don't think it really lives up to the hype.  but most hipster crap doesnt.  Vista, and iPhone are both great examples.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed