Saturday, February 24, 2007

February DevCares Recap


February DevCares is history (at least in Columbus) and aside from a few technical glitches, I think things went well. My topic was new features in Vista and making application compatible with UAC. Jeff's topic was developing Gadgets and using Vistas RSS platform in .NET.


Aside from a few minor technical issues (it was kind of hard for Jeff to present RSS with a wonky Internet connection) things went very well. Drew gave me some good advice, and next time I'm not going to rely so much on my notes. I was too worried about trying to stay in-sync with the slides and I should have just talked to the group.


It was a relatively quiet group, but they asked some good questions, so they were definitely paying attention. Hopefully I was able to provide some value to their future Vista development AND demonstrate that those Apple commercials slamming Vista are totally full of crap!


I enjoyed Jeff's presentation, and especially in light of the network issues though he did a great job.


The content from both presentations will be up on the DevCares website soon. If you just can't wait, feel free to email me and I'll pass them along. Well, not Jeff's, you'll have to email him…


Next month's topic is "Extending Word, Excel and InfoPath 2007" and "Building Workflow Applications on SharePoint 2007" and you can register at the DevCares website. And no, I don't know who's speaking yet, but I'm sure it will be great!


I would like to thank Drew Robbins and Microsoft for the opportunity. I really enjoyed it!


Now, some pictures (courtesy of Arnulfo Wing)








Monday, February 19, 2007

I will be speaking at the February DevCares event in Columbus

This Friday, Febuary 23rd, I will be presenting "Windows Vista for Developers" as part of Microsoft's DevCares event. It will be at the Babbage Simmel office in downtown Columbus.

I will be talking about some new things in Vista that developers can start taking advantage of now. I will demonstrate how to make your applications compatible with UAC, and if there's time how to use the new search functionality built into Vista. Jeff Blankenburg will be presenting on Sidebar Gadgets and Vista's built in RSS components.

You can register at http://www.devcares.com

Tuesday, February 13, 2007

Old Man Winter wins this round…

One "failing" of getting your news and current event information almost exclusively from the Inter-tubes is that reliable and up to date local weather and traffic is kind of hard to come by in a consistent, reliable manner. OK, I should say that up to date local weather and reliable and up to date local weather and traffic information FOR COLUMBUS OHIO is kind of hard to come by in a consistent, reliable manner. This caused me to find myself in the unenviable position of being unprepared for the "White Death" that befell the city while I slept.

I guess it's not all bad, I'm working from home today, and the lack of distractions has allowed me to get more done by 10:00 than I might otherwise get accomplished by lunch.

By the way, if I ever leave computers to become a mafia hit man, or a line backer, I want my nick name to be "The White Death." Yeah, that'll work.

And let me be clear my nick name is NOT "White Death." It is "THE White Death" and I expect to be addressed properly. For example;

The wrong way: "Hey White Death, would you like to come over this afternoon for pie and coffee?"

The correct way: "Hey The White Death, would you like to come over this afternoon for pie and coffee?"

Yes. Yes I would.

Saturday, February 10, 2007

Kinda like a mail-order bride. But you know, for Geeks.

I am in a very happy and excited mood. Yesterday I ordered a brand new, sorta top of the line Dell Insprion E1705 laptop! Based on my mother's experience ordering from Dell, I fully expect it to be here before the end of next week.

Here are the drool-worthy specs:

  • 2.00 GHz Core Duo 2
  • 2 GB Ram
  • 17 inch UltraSharp TrueLife screen (Jeff Blankenburg advised me to pop for the TrueLife upgrade. So if it's not worth it I'm, blaming him!)
  • Vista Ultimate Edition (Why go half-way?)
  • 256MB ATI Radeon X 1400 Hyper Memory (And if you are going to run Vista, what's the point in not using Aero?)
  • 802.11g wireless network card (I didn't see popping for "N.")
  • 9 cell battery (Hopefully I won't hear calls of "The laptop, the laptop, the laptop is on fire!")
  • 160 GB hard drive (I wanted 200GB, but I was on a bit of a budget and I think Dell's HD prices are a little on the high side.)
  • Bluetooth (small upgrade, but worth it.)
  • 2 Year Warranty (Only two years. Hey, love is fleeting and I'm known for being fickle on occasion.)

I didn't get a case. Again, I think Dell charges a lot for a little in the case department. Besides, I've already found several nicer cases on-line that are either the same price or less. So there!

On tip, I priced this on-line, but called the order in. By portraying myself as being somewhat hesitant on the phone, I got an immediate $250 discount!

As for how much? Tsk tsk. I chose not to sully this discussion with talk of money, let us speak only of AMORE.

Monday, January 22, 2007

Fear and Loathing in Software Development

CodeMash was a great conference. There were a lot of opportunities to learn and grow. But some things I heard from more than one person there is a bit of a "dark side."

No one can deny that there has been a lot of churn in the world of .NET and development in general lately. You've got the .NET 3.0 framework, offerings from Microsoft like Service Factory, persistence layers like nHibernate and tools that change the way we develop as a team like Team Foundation Server. You also have things that effect all platforms like SOA, Web Standards and Section 508 compliance. Add to all this LINQ which will be out before the end of the year and whatever Microsoft unveils at this years PDC and it's a lot to get your mind around.

But, when I hear my contemporaries say things like:
  • "Well, I'm not that interested in LINQ. Sure, it sounds good, but it's probably too complicated and who knows how long Microsoft is going to support it."

  • "Sure, Windows Work Flow sounds good, but no one here knows it and I probably can't find anyone to hire who does. I probably wont use it."

  • "Yeah, I know we should use CSS for things like styling and layouts, but it looks too hard and I don't feel like learning it."

  • "Smart Client would fix a lot of our issues, but it looks too hard to learn."

  • "Sure, Service Factory presents all the best practices of web services, but it just seems like a lot of work, so I'm going to just continue to shove everything into one project and not care about scalability or re-usability."

  • "I know Section 508 is the law, but it sounds really complicated. I'll just cross my fingers and hope the Feds never take a good look at my website."

  • "I bet I would learn a lot at that conference, but I'm not making up two billable days to go!"
it tends to be a little depressing. Especially when you note that the common theme is "This is too hard and I don't feel like putting forth the effort. Why can't just do things the way I've always done them?"

The bottom line is this; technology is an engine. You are either on board helping to lead the way and define the way things are going to be or you are behind it, watching it and your carreer get further and further ahead of you until you can't see it anymore.

It's up to you; the tools and information are out there. Use them or don't. But don't bitch when the train leaves you at the station.

Please note, the above quotes are not ment to single anyone out. I've heard them ALL in one fashion or another from a lot of different people on a lot of different occasions.

Sunday, January 21, 2007

Codemash roundup: LINQ is the word.

Well, it's the Sunday after CodeMash, and I've had a chance to collect my thoughts about the event.

In short, it was a terrific event, and I am really looking forward to CodeMash '08. Aside from the technical content (which I'll cover below) it was a great opportunity to meet up with some people I hadn't seen in a long time and catch up, and to meet some new people in the industry. It was interesting to see what not only fellow ".NET-ers" were doing, but to also check out what's going on in the Java and Ruby camps. I even attended a Java session myself! More on that in a bit.

Given that it was the first conference that these guys had done, I thought everything went INCREDIBLY smoothly. I was drafted into working the registration desk for a few hours on Thursday, and the very small number of people asking questions about what was going on was a testament to that.

The facility was nice, although it wasn't hard to see that this was the first "big" event they had hosted. The water park looked fun, but I chose not to indulge for a couple of reasons. It was very nice and convenient to have the lodging and the conference in one facility; no running to catch shuttles, no standing in the rain/snow/heat/whatever and if you didn't want to cart your swag around all day you could just stash it in your room between sessions.

OK, now on to the technical.

As mentioned, I did attend a "Java" talk. Todd Kaufman gave a presentation on Spring. I attended because I know Todd and have seen him present and wanted to throw some support his way. I also know that there is a .NET version that I've heard some interesting things about, so I wanted to check it out. To be honest, some of the Java specific stuff kinda threw me, but I was able to follow along. I'm planning to install Spring and give it a shot.

I also enjoyed Neal Fords keynote on the first morning. It gave me a lot to think about. The fact is, people are already using DSL's and don't even know it. Do you use Service Factory? You are using a DSL.

Some other high points where Kieth Elders Smart Client presentation (I only caught the first half, I understand the second half had mixed reviews) and Drew Robbins presentation on Vista Sidebar Gadgets.

Kieth had some good points about advocating for Smart Client systems and it's something I'm definitely going to offer by way of suggestion to my clients. Some might be open to this. Some, mostly the ones who have drunk the "Web 2.0" Kool-Aid might not, but it never hurts to try. Being and admitted "object-snob" I was a little concerned to see him using datasets. Not because I think he shouldn't have used them in the context that he did, but because I've noticed that a lot of developers want to use them for EVERYTHING. I'm trying to break the cycle of dataset madness, and I was mostly worried that a response to my efforts would be "Well, Kieth Elder uses datasets."

Drew gave a really interesting kind of "see spot run" overview of Vista gadgets. I can see these being particularly useful in an Enterprise environment. The "big thing" now is dashboards and Enterprise Platforms. But, most people don't want to necessarily have their dashboard open all day, especially if it isn't their primary work surface. I see gadgets being useful by allowing a small-footprint, non-intrusive way for people to monitor important information about their organization without impacting how they do their day-to-day work. Right now not enough of my clients are using Vista, but it's definitely something worth keeping in the tool-box for later.

I was planning on attending Josh Holmes presentation on SOA, but he told me that he would be here (in Columbus) next week to present it at the next CNUG users group, so I guess I have to wait a week.

The "big" thing of CodeMash, at least for me and I imagine the rest of the ".NET-ers" was Scott Guthrie speaking, mostly about LINQ.

To be short, I think LINQ is going to be the "next big thing" in the world of .NET. .NET 3.0 (WCF, WF, WPF(/E)) are all great technologies, and represent big leaps in and of themselves. But they don't approach what LINQ is going to do.

I'm not going to go into explaining what LINQ is. If you are reading this and you don't know you either

  • Aren't in technology and don't care

  • You are in technology and don't care enough



What I can tell is you what LINQ is to me. LINQ is the bridge between the idea of data persistence and domain objects. Datasets continue to be used for a lot of database access, and I personally don't like it. Datasets are inefficient. Datasets are heavy. As a developer, I prefer to think in terms of things like customers, accounts, orders, addresses, etc. and not in terms of a field in a representation of a table in a representation of a database. Most importantly, unless you have a bunch of business logic in your database (and why you would put it there is beyond me) datasets don't force you to do any business level validation before saving your data. LINQ is also an easy way for me to find the data I need easily in large collections. LINQ is going to change the way people think about data and data persistence. It's going to be out (officially) later this year and I can't wait!

And finally, the coolest thing about CodeMash was that I was one of several people who were invited to have lunch with Scott Guthrie on Friday. (Thanks Drew!) It was quite an honor, and I think a lot of the .NET people were a little "star-stuck." Alexey definitely had a bit of a "boy-crush" going. But who can blame him. The lunch was great and there was a lot of thought provoking discussion. It was an honor to be invited to attend.

I almost forgot one last thing! A final highlight (or, lowlight depending on your point of view) was the Brian Prince/Josh Holmes head shaving. I guess I should explain for those who missed it; at the end of Neal Ford's keynote on the first day, Josh made a deal that he would shave his head at the closing if there were 500 blog posts about CodeMash. Brian Prince upped the ante by saying he would do it for 600. At the end of the closing, Technorati was fired to up to get a final count and.... Technorati was down. Yeah, kind of anti-climactic. But, Josh made a deal with the crowd that if we all went home and blogged about CodeMash, he would do it. Somehow Brian got roped into this too, and off the hair came. Amazingly, a cursory search of YouTube did not produce a video. Keep checking.

Good luck guys. I hope it grows back. It doesn't alway you know... :)

Friday, January 12, 2007

Lazy Loading in a SOA world.

As a "side effect" of my current project, I am helping my client build a SOA interface to another large system. This client has traditionally used datasets for most of their data access, and one of my goals is to get the harsh dataset monkey off their backs and wean them onto the smooth, mellow high of business domain objects. After all, all the really cool Enterprises are doing it! I'm also trying to champion the "One interface to rule them all" cause, so this (eventually) will be the ONE and ONLY way to get data from, or put data in this system.

In putting together a proof of concept, I came across a bit of a problem; my entity has several properties that return lists of items. Some of these lists can be quite large, so we want to lazy load them. For my example, I created a person, who had a list of four address (I’m just returning four hard-coded ones since I didn’t want to muck with the database for the proof of concept) which I wanted to lazy load. I wired everything up and it was working beautifully!

Except for one thing; I was getting eight addresses back.

Here’s the problem; when the web service was getting ready to send my person object back, it was serialized by the XML serializer. That serializer was looking at my address property, which caused a lazy load. So, my object was initially coming over the wire with all the lists populated. One the client side, the de-serialization was also calling the address property, which was again lazy loading the address right away. I had a check in the “get” to make sure the list was null before the loading occurred, so how BOTH lists got merged together is something I can only wildly speculate about at this point, but it was merely a side effect of a different problem, so I didn’t worry about it.

The solution was to find a way for the XML Serializer to ignore that property when it was sending it out.

The solution: the XMLIgnore attribute. Decorating my property with this attribute causes the serializer to skip it. It doesn’t get looked at during serialization, it’s ignored during de-serialization and my lazy load routine work beautifully.

And all was well in the kingdom of SOA (for now…)

Thursday, January 04, 2007

My New Project

Having just acquired a shiny new XBox 360, noting the release of XNA Game Studio Express, and being the curious little geek that I am, I have decided to try my hand at writing my first video game.

The Concept

Instead of trying to come up with my own game concept the first (maybe only) time out, I am "borrowing" a concept from someone else. The board game Ra. This is basically a game where you bid on tokens to amass points and crush your enemies in a most humiliating manner. I first played the game at Brian Anzalones house several years ago, and despite my less than .500 average enjoy it. From what I've seen, there is no other game available on XBox quite like this (sorry FPS fans, it's not an "action" game) This choice was also out of practiality; I've never written a game before, and didn't want my first attempt to be saddled with having to learn how to do animation, physics, collision detection, lighting and other stuff in involved in action games.

This is a nice, simple, civilized board game. Just my speed first time out.

The First Feature Set

Being a fan of agile development, I will be creating this game as a series of features to be deployed on an probably very irratic and unpredictable schedule. The goals for my first release are:

  • Target for the XBox 360 platform

  • All basic rules and scoring in place

  • Playable against others via XBox live
Once I get these things working, I'll look into developing an "AI" to facilitate single player games, but being my first game I want to start kinda small.

The first step is going to be setting of the XNA Game Studio on my home machine. It looks like I'll need to pay the $50.00 a month, but hey, knowledge is it's own reward, right....?

I'll be sure to blog about my progress. In the meantime, if you would like to be on my list of "beta testers," send me a comment and if I don't already have your XBox Live ID, be sure to include that.

Was this one of your New Years resolutions?

As most of the hits on this blog over the past few days have been on the “lose weight” pages and as the new year brings many people to resolve to lose weight, and as a means to that end many people will join a gym and in order to continue my promised series of articles on the subject, I bring you this next installment of my “lose weight” series.

This time, I’m going to discuss exercising. By means of a reminder, I will switch back and forth between exercise and food as the series goes on.

Why do I need to exercise?



A lot of people will try to lose weight by just dieting. This will only work in the short term. Please see my previous post as to why.

Some people (particularly women) will say they don’t want to lift weights because they don’t want to “get big.” You don’t have to get big from lifting weights; even toning will help to increase your health and your metabolism. And ladies don’t need to worry; without “additional help” (roids) you will not get big. Women simply don’t have the body chemistry to get big. You will get “ripped” but it will be more of a “swimmers body” than a “meat-head” body. Think Madonna, not Arnold.

Gear up!



If you’re just starting out, don’t spend a fortune on work-out gear. A comfortable shirt and pair of shorts should be fine. Women might want to invest in a good sports bra. Clothes should be comfortable and easy to move in, but not loose. Good socks are also a must. For just starting out, a good pair a cross training shoes are important. Make sure they fit! I’ll do another post on gym ware (where I “name names”) later. For now, don’t spend a ton of money.

As you’ll see below, monitoring your heart rate is important. A heart monitor may be a good investment. Get one with a chest strap; the ones that take your heart rate via the finger sensors are useless for working out. Polar makes some great ones that range from a simple model that will only tell you your heart rate to models that have built-in MP3 players and GPS systems.

Don’t bother with the “Nike+iPod” stuff. The only remotely pertinent information it gives you is distance run. In spite of the marketing fluff it can not give you accurate pulse rates or calories burned. Those figures just can’t be computed from a motion sensor in your shoe. If you really want to get the distance retrace your path in your car. If you want “super accurate” numbers, run on a track. Better yet, don’t worry; time and heart rate are more important than distance.

OK, so what do I do?



I work out six days a week. Three cardio days and three strength training days. Here is what I did when I was starting out. I’m not going to give you specific weights, rep counts or “Stair Master” levels. Those things aren’t important. What’s important is your heart rate. More on that later. For the most part, you should spend no more than an hour in the gym each day. But, it should be a good (not wasteful) hour.

Pre-workout



Regardless of what kind of work out you are doing, you need to warm up and stretch beforehand. Warming up should be about five to seven minutes. The goal is to not be sweaty or out of breath at the end of the warm up, just a little looser. If you’ve ever tried to run from a “cold start” you’ll know what I mean. It’s just to get the blood moving a bit.

From there, you should spend about ten minutes stretching. Again, this is to loosen up and ensure that you won’t pull any muscles or injure yourself. I will at some point write a more detailed post on stretching, but for now check this site out.

Cardio



I do cardio Monday, Wednesday and Friday. I do at least 30 minutes. I alternate between the Stair Master (the one that looks like a very short escalator; the other style is a waste of time), the cross trainer and running. If you have access to a pool, swimming is great. Biking is OK, but since you’re sitting your legs don’t support your body weight, and you’re not getting as good a work out as you could be. But anything is better than nothing.

When performing any cardio exercise, do not hang on the machine like you are clinging to it for life. It means you are going too fast. Lower the speed/intensity/whatever and do it with proper form. You will be a better work out and get results faster.

If you are under 220 lbs., running once a week is OK. If you are heavier than that you could run into problems with your legs. Try just walking on the treadmill with a steep incline. If you weight more that 220 and MUST run, try to only do it once every other week. If you start to feel sharp pain in your knees (before, during or after) stop immediately. If you run on a track, or outside or anywhere except a treadmill, be sure to switch directions every time you run. Your legs will thank you.

When doing cardio, you should try to reach and maintain your target heart rate. What is that? It’s the heart rate at which your body is working hard enough to burn fat. There are a couple different ways to figure out what yours is. The easiest way (although not super accurate) is to subtract your age from 220 (226 for the ladies). If you are already pretty fit, that 70% of that number. If you are “so-so” fit, take 65%. If you are a total couch potato, take 60% of it. That’s your target hear rate. If you want a more accurate measurement, and know how to correctly take your own pulse, this site has a calculator that is OK. If you want to be “hyper accurate” contact your gym. There are a couple of different tests they can administer to calculate this that range from cheap and quick to expense of drawn out. Don’t pay too much for this though, your target heart rate will change as you begin to get in shape. And don’t be a slave to this number. If you can do a little more, do it. If your below it but feel like you are about to die, than don’t push yourself. You’ll get there, just give it time.

Weight Training



Weight training does not mean you have to get “big.” It can be as simple as toning and strengthening your existing muscles. Everyone should do it.

The major muscle groups for weight training are;

  • The Chest (bench presses, push ups, flys)

  • The Shoulders (shoulder presses, lateral raises)

  • The Arms (curls, overhead extensions)

  • The Back (rows, reverse flys)

  • The Abdominals (crunches, planks, in and outs)

  • The Legs (lunges, squats, “super-legs”)


This page has a good explanation of most of these.

With the exception of the abs and legs, you do NOT need to work every group every time.

In general, I try to use dumbbells for all of these. You can use machines for some of them, but free weights help keep you honest, and make you work the “stabilizer” muscles which increase your overall strength. Additionally, I use dumbbells as opposed to barbells so that each arm has to work independently. This ensures that everything builds up symmetrically.

When lifting, go slow. Don’t jerk or swing the weights. Besides keeping you from injuring yourself, it will make sure that you are really working the muscle and not letting physics do all the work

Gym etiquette



It’s important to know how to behave in a gym. I’ll do another post on this, in more detail later. For now:

  • Do not drop your weights. If they are too heavy, move down.

  • Put your stuff away when you are done with it. This includes un-racking weight plates from any machine or bars you have used.

  • Don’t monopolize equipment. Let others work in during your break. If the other person was there before you, reset the weight pin to their weight for them, or help them move plates when switching.

  • Wipe off equipment when you are done. Even if there is no visible sweat do it anyway.

  • Socializing is OK, but not everyone is there to talk. Keep that in mind.

  • When socializing, keep conversations from getting too loud and keep the language “PG.”

  • Mind your surroundings and respect others personal space.

  • Don’t leave a mess!


That’s enough to get you started. I’ll post more in depth on some of the topics I’ve covered here later.

Good luck!

Monday, January 01, 2007

What were your plans for New Years Eve?


Maybe just hanging with your buddies?

Sunday, December 24, 2006

Las Vegas Travel Tip #1

Regardless of where you are coming from, if you arrive at the “C” or “D” gates at the McCarran airport in Las Vegas (these are the gates most major airlines use) it will take you at least one hour from the time you step off the plane till the time the first suitcase hits the baggage carousel. This will not be affected by weather, time of day or how busy the airport is. The best you can hope for is one hour.

After five years of this, I feel safe elevating this from theory to proven law.

The reason for this is that the airlines do not handle their own baggage at McCarran; there is one company that does the baggage for all airlines. And they are union. Need I say more?

My advice is that if you are just coming in for a weekend or so, try to pack all you will need into a carry one (keeping in mind the limited size and number of carry-ons allowed) and skip baggage claim altogether. If this is not an option come back later. If you are arriving in the morning or afternoon, go grab breakfast/lunch or check into your hotel. If it’s night, come back in the morning. At some point, someone from the airline will take you stuff off the carousel and lock it up in the airlines baggage office. In my experience, no airline has had a problem with this as they realize there is a problem, but seem powerless (or too apathetic) to do anything about it.

I did complain about this at one point, and was told by the person in the baggage office that part of the problem is that the gates are one mile away, and the truck is only allowed to drive 15 miles an hour. I pointed out that by the logic, it should take four minutes to get from the plane to the baggage claim. Apparently my grasp of basic math was too much for her, so she just kind of wandered off with a confused look on her face. I didn’t point out that after the four minutes for transit that still leaves 56 minutes. I was worried that any more use of math skills would have caused me to be branded as a “witch” and I would have been burned at the stake by the frightened, ignorant villagers.

del.icio.us

Tuesday, December 05, 2006

Sweet! Now all I need is a cane and a big bottle of Vicoden!


As far as I'm concerned, the Wii has a "killer app."
Trauma Center is a game where you basically get to play God doctor. You use the Wii Remote to do things like handle a scalpel, defribluator and nurses backsides.

No word yet on if you'll be able to use your medical talents to perform un-natural experiments on your "patients" like attaching extra arms or giving them gills, but the game is reportedly so real that it comes with a malepractice lawsuit in the box.

I figure between this and the ability to use Google to diagnose patients, my mother will soon realize her dream of having a doctor in the family. And the Wii even had a golf game to boot; It's one stop shopping!


I'll be sure to let everybody know when I put out my shingle!


del.icio.us

Friday, December 01, 2006

Everyone do the CodeMash!

In an effort to use my "blogging powers" for good instead of evil, I come to you today to pimp CodeMash.

What is CodeMash? Well, if hadn't been so lazy and just clicked on the link you would know that...

CodeMash is a unique event that will educate developers on current practices, methodologies and technology trends in variety of platforms and development languages such as Java, .NET, Ruby and PHP. Held January 18-19, 2007 at the lush Kalahari resort in Sandusky, Ohio, attendees will be able to attend a world-class technical conference amid Ohio's largest indoor waterpark. So nobody will frown if you show up in shorts, sandals, and your loudest t-shirt. You might even win a prize for doing so.


Oh, to be in Sandusky in January.

Seriously though, the event is $99 ($149 if you screw around and miss the early-bird date), plus hotel and transport. When you consider the calibur of speaker appearing (Neal Ford, Scott Guthrie, Bruce Eckel, Jesus) it's a hell of a deal!

See you there!

Update: Jesus has backed out. Apparently there is a scheduling confilct as he was already commited to appearing in a piece of burnt toast in a trailer park in Alabama that week. Bummer.

Monday, November 27, 2006

What I Did On My Thanksgiving Vacation...

Like most people, I travel to see my family over the holidays. Seeing as my family lives on the other side of the country, and the departure of America West airlines from Columbus has left me with no direct flight options, and my steadfast refusal to pay $800 - $900 for one round trip coach ticket to Las Vegas, I spend a lot of time during the holiday season sitting in airports for several hours on end.


My Confession

I can’t sleep in airports. In part it’s because I am a bit paranoid of missing my flight when it is called, then having to scramble at the busiest travel time of the year to make other arraignments. I guess I’ve seen “Planes, Trains and Automobiles” too many times. Also, in spite of all the post-911 security measures, I don’t know that I feel secure enough to take a nap without someone “watching my back.” I’m too afraid that when I wake up, I’m going to pick up the wrong knapsack, then the drug dealers, terrorists and CIA will all be chasing me to retrieve it, not believing that I am just a guy who was in the wrong place at the wrong time. OK, I guess I’ve seen too many James Bond movies too.

So, to pass the time I always bring a few books with me. Over my abbreviated Thanksgiving vacation, I had a chance to read two:

Programming Atlas



This is the first (and from what I could find, only) book on Atlas. O’Reilly was touting the “Rough Cut” of this at Tech Ed., and this, I suppose, is the result. All in all, it’s an OK book. Since there have been at least two revs. of Atlas since it hit the presses, the details are a bit dated. A lot of the examples will not work now, and no updates have been posted to the books site. A lot of the underlying “fundamentals” of how Atlas works are there, but it doesn’t go deep enough make up for the lack of practical working examples. Examples are presented in a way that violate almost every “best-practice” in web development, which I understand may be a good idea for the sake of clarity in presenting an example, but never advises the reader where they are deviating from the way things should be done. Not good for “less seasoned” developers who tend to parrot what they read in a book as opposed to applying the knowledge to their own needs.
I also feel the books spends too much time on the JavaScript side of the equation, teaching you how to manipulate Atlas controls via JavaScript while only devoting only a few pages to update panels. Don’t get me wrong, the JavaScript stuff they show is cool, but the way they present the information does not make Atlas seem all that much easier or more useful than good ol’ client-side JavaScript. That’s especially true when you take into account that only 30 pages of an over 300 page book is dedicated to using Atlas with Web Services.
It’s got some cool sections about extending controls and writing Atlas controls on your own. It also had a chapter on using Microsoft’s “Virtual Earth” which made me appreciate how easy to use the Google Maps API really is. Granted, I’ve never actually used Virtual Earth, but if this book is any indication, I doubt I ever will. A chapter on Web Parts also seems kind of thrown together and not all that useful. All in all, you’re better off just sticking to the tutorials Microsoft offers on the Atlas website.

And yes, I know that the offical name is "ASP.NET AJAX." But I just got people used to the terms "AJAX" and "ATLAS" and understanding that they were not always interchangeable. It took weeks! So with certin people at least, I'm going to continue calling it Atlas for the time being. Besides it's easier to say "Atlas" than "ASP.NET AJAX."


HTML Utopia: Designing Without Tables Using CSS



Ahhhh…. Much better. Pretty much any web developer worth their salt has read “The Zeldman Book.” I almost referred to it as “The Orange Book” out of habit, but since the second edition is green I will need to work to break myself of that habit.
Anyway, I’m sure most of you have read it. While I enjoyed the book, and agreed with its premise, I was a little disappointed with a lack of practical “This is how you do it in the real word” type of content. This book does an excellent job of bridging the gap. It starts with an explanation of what web standards are (it even references A List Apart) and why you should use them. It does a great job of explaining the need of accessibility, and gives some pointers on how to achieve this. The “best-practices” of CSS are explained. From there, the book is chock-full of practical CSS knowledge from setting colors and fonts to creating various layouts all without tables. The last third of the book in a series of appendixes that among other goodies has a pretty extensive reference of CSS attributes. The authors do a good job of pointing out where different browsers implement the standard differently, but I notice that no reference was made to the Internet Explorer Bug in their discussion of the “Box Model.” That glaring omission aside, I found this to be one of the best CSS books I’ve ever read, and I wish I had found the first edition of this book a couple years ago.

Next…

So, with Thanksgiving gone, I’m getting my reading list for Christmas together. So far, the only thing on it is “The Security Development Lifecycle” by Michael Howard and Steve Lipner. I actually picked this up at Tech Ed, but due to more pressing matters, didn’t start reading it right away. Then I sort of… uh… forgot about it. Hey it happens! I “rediscovered” it during the move, and it is back on the list.

So, if anybody out there has any suggestions, let me know!

Wednesday, November 15, 2006

"Lose Wieght Now, Ask Me How" the Series

Well, people really seemed to like my “lose weight” post and have asked me for some more “detailed” information, which makes sense since the original post was so short. So, I’ll be posting a series of articles on how I lost the weight. You are free to follow along, but just remember that everyone is different, and what worked for me may not be best with you. You should check with a doctor when in doubt.

This is going to be a series of articles. I’m going to start with food. I’m going to cover exercise as well, but not today. I’m probably going to switch back and forth.

Forget what you think you know


When people want to lose weight, instinctively the first thing they try to do is eat less. They cut out in between meal snacks. They even sometimes try to cut out whole meals (like breakfast). That isn’t going to work. As I said in the previous post, your body uses food for energy and to replace dead cells and keep the body healthy. If you limit the amount of food you eat, or how often you eat it in a drastic manner, the body believes it’s starving and will fight back. You will have less energy and your body will start to cannibalize itself to survive, usually starting with the muscles. Which means you’ll lose weight, but not fat. You’ll also be sick and kind of gross looking.

What to Eat


Everything you eat is one of three things, all of which you need;

  • Protein – Meats, eggs, nuts, dairy, etc.

  • Fat – Just what it sounds like

  • Carbohydrates – Everything else.


Why


You need protein because it’s what your body is made of. Without it you will shrivel up and turn to dust! OK, maybe not. But, you will have heath issues since proteins are actually amino acids, which you need too do things you enjoy, like being alive.

You need fats because they are what you body uses to make hormones. They are also used to make healthy skin and hair. So without fat in your diet you will be a cranky person with dry cracked skin and bad hair. But that wont matter because you’ll also be dead. Turns out that there are fat soluble vitamins that you need that can only be absorbed in the presence of fat (more on vitamins later). There are good fats and bad fats. Again, I’ll expand on this later, but for now use canola for high-heat applications, olive oil for cold/no heat applications. Use butter (sparingly) instead of margarine and for now, no deep frying.

Carbohydrates are plant matter, and either come in the form of sugar (the plants energy source) or fiber (the plants structure). Fiber helps you not cry when you go to the bathroom. Nuff said, just eat it. Sugar is used to provide energy. Refined sugar, literally plant sugar that has been refined down to being super-concentrated, make things like table sugar, corn syrup and pretty much anything on an ingredient label that ends with “-ulose.” Refined sugar is bad because it promotes a heavy insulin response (more on why this is bad in a latter post). Natural sugars are found in things like fruit and fruit juices. Starch is sugar, but food generally considered “starchy” like potatoes and corn don’t have as much fiber that fruit does. “Starchier” sugars are also more concentrated than sugars from other plants, so moderation is key.

You do need both types of carbohydrates. The why is a little more complicated than why you need protein and fat, so I’ll save if for when I talk about how metabolism work. For now, try to eat at least two pieces of fruit a day and try to limit the amount of starchy foods. Try to limit foods high in sugar or starch to earlier in the day (I try not to have any after 3:00PM) Try to eat at least four servings of vegetables a day.

OK, I realize I didn’t give too much advice about what specifically to eat. So, without further explanation, here is a sample menu for me for one day:


  • 7:15ish AM (post workout) 2 eggs + 2 egg whites scrambled

  • 10:00 AM – One serving of fruit

  • 12:00 AM - Lunch. Today it was chicken fajitas minus the sour cream, pico de whatever or tortillas. Basically, just the “hot part.” Yes, some people think this is weird. No, I don’t care.

  • 2:00 PM – One serving of low-fat yogurt (plain)

  • 4:00 PM – One protein bar

  • 6:30ish PM – One large salad with olive oil and balsamic vinegar. One (lean) pork chop. One serving steamed broccoli.

  • 9:00is PM (bed time) – One protein shake


During the day, I drink about one gallon of water

By the way, “water” does not mean “diet soda.” It means water.

Friday, November 10, 2006

The Great Pumpkin Question...

Normally, I don't do requests. But Brian <Anzalone> recently suggested I do a post where I discuss the age old question; Street Fighter II vs. Mortal Kombat. But I thought that was a stupid idea, so instead I'm gonna talk about Windows applications vs. Web-based applications.

Definition of Terms
For those non-techies who are still reading, like my parents, Windows applications are applications that you install locally on your computer (your hard drive) and you can run without being connected to the Internet. These are applications like Microsoft Word and Microsoft Excel.

Web-based applications are applications that you used through a web browser. The most popular web application is Google, but others include Mapquest and things like on-line banking websites and bill-pay sites like Check Free.

Which One to Use In One Easy Step
A lot of people who don't develop applications on both sides of the argument think that there is only one answer to the question "Should I make this a Windows application, or a web-based application?" and they are right. But it's not the answer they think. The correct answer is "it depends."

Tale Of the Tape
Windows applications have some definite benefits of Web based applications. From a developer’s side, it can be easier to control the way a user interacts with the user interface in a Windows application. For Web Applications, you're sort of at the mercy of the interaction the user has with the browser. Things like the "Back" button, navigating directly to an address inside the application or simply shutting down the browser in the middle of an operation are all things that the developer and architect have to work around in the "Web World."

Since Windows application run entirely on the desktop and don't generally have to make a bunch of calls, or post backs, to the server, there is the (perception) of speed as well. Technologies like AJAX and ASP.NET AJAX (formerly Atlas) have all but eliminated this advantage however.

Traditionally, user interface design on Windows applications has always been easier; you just put a component on a Winform, set some properties and you're done! Web Applications have been a little more complicated than that; back in the "old days" you used to have to create tables and use those to format you user interface. The other issue had been that not all browsers rendered all controls the same way. Heck, some browsers didn't support certain controls at all! With the growing adoption of Web Standards and the growing use of CSS style sheets to take care of all formatting (leaving HTML to be the keeper of the content) this is another factor that is starting to swing towards Web Applications favor.

To change the whole look of a Web Application you simply change the style sheet. No so with Windows Applications; if you were smart you may have a user interface hierarchy, allowing you to make changes to a few base forms which will propagate through your application. If not, you were visiting EVERY window in your application and changing every control on that window.

“Client side” scripting and validation is one area where Windows applications may still have an upper hand. Javascript has come a long way, but it is still ugly and not a lot of fun to debug. ASP.NET AJAX shows some promise in alleviating this, but it still in it’s infancy in that regard. Windows applications don’t have this issue, your presentation layer is easily accessible, easily automated and easy to debug.
Deployment is a mixed bag. Web applications are easy to deploy. You just put the application on the web server of your choice, send your users a link (or if you’re really snazzy and on top of the whole “Enterprise Computing” thing, you’ll have a portal for the users with a link to your new application) No going to each users machine, installing local components, making sure they have all the prerequisites, installing the application and setting up the database configuration. Now multiply that times about 250. So, in a corporate environment, with a centralized server, Web is clearly the answer for deployment purposes.

For all of Windows deployment headaches though, it’s still easier to write an install package for a home user buying a shrink-wrapped product than have them set up a Web-based application on their computer. Most home users aren’t going to be savvy enough to know if they have IIS or Apache installed, let alone how to configure it.

What to Do, What to Do...
When I am working on an application and I have to make the decision about Windows vs. Web, I ask myself some questions:


  • Is this application going to be deployed in a corporate environment, or shrink-wrapped?
  • Where is my data going to live?
  • How often will the application need to be upgraded?
  • Who is going to support this application?
  • Does this application need to be Section 508 compliant (if you get ANY money from the Federal government, the answer is “yes.”)
  • What kind of machine is it going to be deployed to?
  • What kind of infrastructure am I going to be working with?
  • What kind of security issues am I going to have to deal with?
  • Is the user going to allow cookies and have Javascript turned on?
  • Who is the applications audience?
  • Is the “content” of the application going to be static?
  • What does the client want? (Remembering that the client is NOT always right, but they are always the client)

The way these questions get answered will generally lead you down the correct path. Yeah, some questions are more important than others, but it’s good to have as complete a picture of what’s going on as possible.

Regardless of which avenue you choose, good architecture is important. A lot of bad Web applications have been built by people who thought you could design them to be just like Windows applications. It’s apples and oranges, and each has unique challenges.

Wednesday, October 11, 2006

Lose weight now, ask me how.

For those of you who only know me from this blog, or have met me within the past two years, you may not know that about three years ago, I had a pretty severe weight problem. That may be putting it mildly. Today I weigh about 220 and have (according to a very unscientific guess from my doctor) about 12-15% body fat. Three years ago, I weighed... well, to be honest I don't really know. The scale at my gym, which was actually designed for commercial bakers, only went up to 450 pounds, and I topped it out when I started my weight loss program. I can tell you that my pants were 60" in the waist. That's five feet.

I am one of the lucky few; I am a person who has been heavy all of his adult life, who has managed to lose weight and become physically fit. Heck, I'm downright athletic!

Not to overplay this, but it has taken a bit of a commitment from me. I've sort of developed into a bit of a "gym rat" and I definitely am more conscious and careful about what (and how) I eat. Now, I'm not one of these guys who lives to work out. I'm not one of these "muscle-heads" who is obsessed with talking about his lats, gluts, pecs and/or delts. I am a bit of a food-snob (I've always been a picky eater), but I don't go around imposing my "food-beliefs" on others. Some people at work may dispute this, but I have always maintained that at lunch they are free to go where they want, I am free to go with them or decline.

The upside of this, and the reason for this post, is that because of my new-found health and my interest in working out and nutrition, a lot of people ask me for advice. I really don't mind sharing. Anybody who's asked me knows that I can, and do, talk at great length about these things when prompted. In fact, I tend to spout information so fast that I think some people are overwhelmed.

So, I decided to go ahead and write a post about this. That way anyone who is interested in my advice, but not interested in talking to me can benefit! :)

I am not a nutritional anthropologist (disclaimer)


I am not a trainer. I am not a nutritionist. I am just a guy who, with a lot of help, lost a lot of weight. I could not have done this without help from my trainer and my nutritionist. If it weren't for them I would still be eating nothing but lettuce and wondering what those bars with the round black things on the ends were for. So, no; I will not train you. Don't even ask. I am more than happy to refer you to a trainer if you like. Don't ask me to define a diet plan for you. I won’t do it. I have lost touch my nutritionist, but if you are really interested I can ask around and find a good nutritionist for you.

Step one: Don't get fat



The reason I am not on TV hawking sandwiches, or writing an "inspirational" book about my "ordeal" that will soon be a cable movie of the week is because, aside from the fact that no one has asked me, I am more than a little bit embarrassed that I got as fat as I did. I wasn't at the time, at the time I just didn't care. But now that I look back, I realize I wasted a lot of years of my life, and it sucks. The other reason is that I am fully conscious of the fact that I did it to myself. McDonalds didn't twist my arm. No one from Häagen-Dazs came to my house and held a gun to my head. I choose to eat that way. I choose not to be physically active. And I'm sorry if this rubs you the wrong way, but if you're overweight there's a good chance you did it to yourself too.

If this step didn’t go as planned, read on.

Food is your friend

The first thing I had to learn was how to eat to lose weight. Most people think that just cutting out in-between meal snacks and eating less is the way to go. It makes sense; less food, less fat. That’s only partially true;

Increasing your metabolism is really what all this food-management (don’t call it a diet!) and exercise amount to. They are ways to increase your metabolism so that you burn calories all the time. If you don’t eat enough, or often enough and the food you eat has dubious nutritional value, your body begins to think its starving. Your body, smart device that it is, is always looking for ways to preserve itself. If you really were starving, your body would conserve fat and ratchet down your available energy to conserve resources. To change this you need to:

Eat like a Hobbit. I eat six to seven meals a day. Breakfast, mid-morning snack, lunch, after-lunch snack, pre-dinner snack, dinner and bed-time snack. The idea is to keep the body burning food. This increases your metabolism.

Pay attention to what you eat. These are not huge Sopranos Sunday dinner type meals. They are just little thing I can eat leisurely in five to ten minutes. An apple. A yogurt. A protein bar. A small sandwich. I generally eat a little more at lunch, since I find the energy helps keep me going in the afternoon. I generally try to eat as much whole or organic food as possible. Frankly, I think the organic food tastes a little better. I try to keep carbs in general low and I try to keep out as many highly-processed carbs (sugar, white bread and pretty much any mass-produced “junk-food”) to an absolute minimum. Some fruit (especially earlier in the day), some dairy. Vegetables are always good since most have very few calories and are pretty filling, just don’t dunk them in butter or ranch dressing and absolutely don’t dip them in batter and deep-fry them! Protein is important since it’s what your body uses to build muscle (more on that later). Also, you have to have some fat. Your body needs fat. It uses fat to create skin cells, create hair cells and regulate you hormonal levels. This probably explains why so many of those people on low-fat diets are so moody. Vitamins A, D, E and K are all fat soluble, so if you don’t eat fat, your body’s ability to absorb them is limited. There are good fats and bad fats. Olive oil and canola are good. Using a little butter is OK. Using a whole stick a day is not. Margarine, besides tasting horrible, has trans-fats, which doctors say are “bad.”

Try to eat a lot of fish. Especially “fatty” fish like salmon and tuna. It has a lot of protein and the Omega-3 fats in fish are the “good” cholesterol. Chicken is a good source of protein as well. Beef is good, but does have a lot of [bad] fat, so I try not to have more than four or five servings a week. Same with pork. Buffalo, which is now available in most super markets it a good option. It tastes the same as beef, but has a lot less fat. But, you have to be careful. Less fat means that you have to watch how you cook it; it’s very easy to dry out if you’re not careful.

Now the fun part. I stick religiously to this food-management plan. However, as part of it, every fourth day I have a “cheat” or “off” day. This is when I can indulge. Generally, I have one cheat on this day. But, if I am finding that I have been plateauing for a while, I will have one day where I “cheat my ass off.” This usually “un-sticks” me and I start losing weight again. So, it’s not “I can never have cake and ice cream again.” It’s “I just can’t have cake and ice cream right now.” This has helped in a lot of way. Like I indicated, it has helped my body stay in the fat-loss phase and not plateau. It has also saved my sanity; I don’t think I could live in a world without ice cream.

You are going to have to work out

You can’t loose weight and get in shape by ONLY dieting or ONLY working out. You have to do both. It’s a binary system, and one with out the other is a waste of time.

My workout regimen is divided into two area; cardio and weight training. Again, it’s a binary system and you really need to do both. I work out six days a week, doing three days of each.

Before doing any exercise, I warm up for five minutes on the treadmill, and stretch for ten. I’ve found that this actually does help me perform better when it’s time to start my workout proper, so I almost never skip this step.

Cardio is important because it increases your lung capacity and your heart health. It increases your energy. It helps your body transmit oxygen to your muscles faster. It lowers your blood pressure. It increases your red blood cell count, which also helps the movement of oxygen through the body. It also burns a lot of calories quickly. I try to do at least 30 minutes, three times a week.

Running or jogging is a good cardio exercise, and the one I enjoy the most. Of all the cardio I do, this is one of the top calorie burners. You have to be careful with it, as the impact on your knees can cause on-going issues. Because of that I did not run until I was less than 220 pounds and I only run one day a week. I’ve tried running more than that (against my trainer’s advice) and my joints paid for it.

The stair mill is another exercise I try to do every week. I do it because it is a very intense workout with not a lot of “joint impact.” I dread it because it’s the longest 30 minutes of my life. It’s grueling. It’s boring. It will tire your legs out in ways I cannot describe with just words. But, like running, this burns a lot of calories. I’m also very happy when it’s FINALLY over, but that may just be the endorphins talking.

The other big cardio thing I do is the “cross trainer.” This is a lighter workout than running or using the stair mill, and has almost zero impact. You don’t burn as many calories. This is basically because no machine, or none that I’ve found anyway, are able to reliably keep a pace and resistance level that's not too hard and not too soft, but juuuust right. I usually do this in between running and stair milling days as a mini-break.

I do not like the elliptical. I’ve yet to find one of these that had a stride I feel comfortable with. I also do not like bikes. Unless your in a spinning class with Barbie the blonde 90 pound fitness-dominatrix yelling at you to “Go faster, you p***y!” it’s too hard for get a really intense workout. Since you can sit, your legs don’t have to support your weight, so you’re really not working a big enough muscle group.

Then there are weights. You have to lift weights, there’s really no way around it. The best thing you can do for long term weight loss, and metabolism boosting, is to develop some muscles. You don’t need to build big Ah-nold muscles, but you do need to tone and develop what you have. The fact is that cardio will burn calories while you are doing it. Increasing muscles mass, even just a little or at least toning and developing the muscle mass you already have will burn more calories throughout the day. The body needs to burn more calories to maintain the muscles, and it needs to burn them constantly. Hence the multiple small meals throughout the day.

You may say you don’t want to do weights. They are boring, they are hard. You may not want to get "big." True, sometimes that can be a little boring. If that’s the case, get a workout buddy. Or get an iPod. Or go to a gym that has a TV and watch that while you lift. If you are finding it too “hard” to lift, look at what you are doing. You are probably either using incorrect technique or too much weight. If you go to a “large corporate gym” there are usually trainers milling around (trying to drum up sales) who you can ask for a couple minutes of advice. If finances allow, you might even want to sign up with one for a few sessions to help learn the proper way to lift. But lifting is important, so don’t skip it.

So now the question is free weights or weight machines. Weight machines are generally easy to use, safe and will help you with your technique. The problem with machines is that if you are too tall, too short, too wide, have longer than average extremities or just plan don’t “fit” in the machine, it can be a little tough. Machines also don’t allow you to work the “stabilizing” muscles that free weights do (they are the muscles that make sure when you press you are controlling the weights). Also, over time your body can learn how to “cheat” the machine, meaning you can be lifting more and more, but your body has found a way to off-load some of the work, either to the wrong muscle group or to the machine itself via momentum and leverage. Machines also don’t give you a lot of flexibility.

Free weights are a little tougher to use. You have to have some idea what muscle group you want to work, and what type of exercise will do that. You have to know how to do that exercise correctly and safely. But, free weights give you a lot more flexibility in your work outs. They also require you to use those stabilizing muscles and reduce your bodies ability to “cheat” (assuming you are using correct technique) Muscles tend to develop faster with free weights, and if you want to “go big” using free weights generally allow you the option of lifting more weight than a machine (most upper body machines I’ve seen at the gym “top out” at some point).

I use mostly free weights. There are a few things that are still just plain easier with a machine, but not many that I have found.

A few final things about weights:

Work all your muscles groups. Don’t be “that guy” who just goes in and does nothing but bench presses or curls. Sure, his arms and chest may be strong, but he’s got a gut, and he’s wearing that weight lifting belt because his back is practically too weak to support his own body weight. The major muscles groups are legs, abdominals, chest, back, shoulders and arms. Work all of them. Even if you think you don’t have to, you should. I know a lot of people will say “Well, I just want to lose a few inches around my waist, so I’ll just do abdominal exercises.” The problem with that is that “spot-reducing” doesn’t work. To get energy, your body is going to burn fat. Fat is released through the blood, so the particular muscle group you are working doesn’t care where it comes from. The body, being very efficient, is going to use that fat that is easiest to liberate. This is always that fat that was stored last. The body also will try to keep the fat as close to your core as possible (again, making it easy to get to) so you will first notice fat loss in your hands and feet since this was the fat usually stored last. So, you can do all the crunches you want, the bottom line is that your waist will still be one of the last places you body takes the fat from.

It’s not a race. The object isn’t to lift as fast as you can. That’s not going to get you anywhere; it’s all physics doing the work at that point. Muscles development occurs by utilizing resistance over time. By going fast, you are reducing your time to almost zero. What is zero times any other number? Zero.

It’s important to eat after you work out (weights or cardio). You should try to eat something within an hour. This is because for the hour after you finish, your body will not release insulin in response to an increase in blood sugar. Insulin is one of the hormones that promote fat storage, so without it more energy goes directly into the muscles.


One final thing about exercise in general; know your limits. Just this past Friday a man died at my gym playing racquet ball. I didn’t know this guy personally, but I know that that whole group of guys was very competitive and would often push themselves beyond a healthy point. Last week was a worst-case scenario of what can happen when you overdo it. Don’t let it get that far. Don’t count on the gym staff to be able to do effective CPR, most are woefully under trained. Don’t count on your gym to have an Automated External Defribulator. Even those OSHA requires they have one, most don’t. Be careful and don’t over do it!

Well, that’s pretty much it. Again, I can’t say that this is going to work for you, but it worked for me. I can say that you have a better chance to lose weight by eating better and exercising than you do eating sandwiches or taking “herbal” diet pills. The key is to stick with it and don’t get discouraged. It may take a little while to start seeing results, but you will.

Good luck!

Thursday, October 05, 2006

Buying the Farm Cow House Part 3: Let there be FIBER!

So, the saga ends; I have purchased a house.

I finally selected on a nice 3 bed, 2 bath spec home in a nice quiet wooded area. This house has pretty much the same floor plan as the house in my last post on the subject, but has an extra family room and a much better laid out master bedroom/bathroom. So, I guess I got the cuter twin sister. :) Not only that, but since it’s a spec home, and the builder is anxious to unload it, I got what I would call a pretty good deal.

But I found out one of the best things about the house today. I called to make arraignments to have the phone service set up. I was a little discouraged to hear that I would not be able to keep my 1.5 Mbit DSL service in my new house. Since it was new construction and kind of out in “Gods country” I figured this was a risk I was running, and was resigning myself to the reality that I would have to get a cable modem. I don’t have anything really against cable modems, but I don’t buy my television programing through them, so I would have to pay a bit of a surcharge for just internet access. It’s also one more bill I have to deal with every month. Just a pain in the butt.

I was saved though. While I cannot get DSL, I do get FIBER!

Optics, that is. So, instead of 1.5 Mbits, I’m getting 6!

This owning a house thing just gets better and better. I’m half expecting to go into my basement one day and find a hidden entrance to Ben & Jerry's secret Ice-Cream Mine or something…

Tuesday, October 03, 2006

All of your Tent of Meeting are belong to us.




An entry from the journal of Ben-Dhar, 52nd level Bard/Magic User/Fighter/Monk/Ranger/Project Engineer and Lord of Westervillenhaus….

The cold wind ripping at our skin could only signal one thing; the arrival of the 60th level Project Manager and his Business Analyst hordes. Before I could react, he deployed his "Tent of Meeting" and was beginning the incantation of the dreaded “Mandatory Attendance” spell. My developer quickly produced a weathered scroll from his pack and began to read from the “Documents of User Requirements”, turning back the horrible attack. Before we could celebrate our victory, he quickly drew his “Staff of Working this Weekend” and leveled it squarely at us. I prepared for the worst...

Saturday, September 16, 2006

Buying a House Part 2: Electric Boogaloo

Actually, I should call this "You don't have to get dumped to feel the sting of rejection."

I made an offer on a house last week. My realtor and I spent quite a bit of time hammering out a number we felt was reasonable. We didn't expect them to accept, but we expected a reasonable counter-offer. The offer was about 6% below asking, and less than $2,000 below the appraised value according to the county auditor.

The counter offer came back; it was for the asking price, less $100.00. No, I didn't mis-type that, one HUNDRED dollars less than the asking price. Not even worth driving to the realtor's office to sign the paper work to make the offer, in my opinion!

My realtor called me and I thought about it (for about half a second) before I told her not to bother writing up another offer. The situation is that the husband has been transferred to Texas (he's there now) and the wife is there with two small children, a cat and a dog. The house has been on the market over four months. School just started, so no local family is going to be looking because they aren't going to be willing to pull their kids out of school now. The holidays are coming up, and my realtor tells me that it's very slow during this time of year. On top of that, it is very much a buyers market here right now.

So, I think I'm right to walk away, but like most relationships, I find myself thinking about what could have been. How nice it would be to kick-back on that deck after work. Then I find myself wondering what the house is doing now? Does the house ever think about me? Does it regret it's decision? Maybe the house and I could reconcile, but wouldn't I always be thinking in the back of my mind how the house cruelly cast me aside before and my do it again? Maybe the house is seeing other potential buyers? Maybe it's having these huge open houses, with any Tom, Dick and/or Harry walking through it, checking the closet space, measuring the bedrooms, examining it's fixtures...

Uh... Sorry...