Sunday, January 29, 2006

SpaceRocks! v0.91


Closer and Closer

Today, I got the game setup tweaked, so you get a bunch of random asteroids to fight, instead of just one or two. The game is also keeping score now, and when you die, you get a message showing your final score.

There are a few major tasks remaining:

  • Get the screen wrapping working
  • Make asteroids regenerate, so you get to kill more than 10
  • Finish the textures for the rest of the asteroids

Hopefully, I'll get more time to work on the game this week, and can put v1 out there to download.

Saturday, January 28, 2006

Game Update


The game is getting closer!

I got the collision detection implemented, and a rudimentary scoring system. If the player dies, the game is over, and displays your score. Basically, all I have to do now is to tweak the gameplay settings, so the game has the right difficulty, and start creating new asteroids when the player blows up the existing ones. It would be nice to get some graphic effects and some sound, too.

Definitely making progress. Thanks to Brian for asking about the game, and reviving my interest yesterday.

Wednesday, January 25, 2006

House wrap up

Well, we survived.

Several people have suggested that we sue Idiot, to try to get the closing costs back. We are not going to do so. Neither of us ever wants to see Idiot again. I don't think I can keep my cool if I ever see her again.

We absolutely LOVE our new home. Neither of us has ever felt so at home in a place.

If what they say is true, that whatever doesn't kill you makes you stronger, then Courtney and I are probably two of the strongest people in the world.

Idiot better stay out of my path, though.

Courtney and I would like to acknowledge a couple of people. First, the title agency. If you ever need to sell a house, please consider Sunshine Title Agency. They are amazing.

Second, Pulte Mortgage. The processor and agent there did everything in their power to take care of us.

Third, Pulte Homes. The closing coordinator was amazing. She worked with us until well after closing, several times. Nicole was her name. We LOVE her.

Fourth, Mike & Mindy. They took care of Mikayla for us for a week, while we were homeless. They are amazing, and we cannot thank them enough for their support.

House Hell, Day 3

The day starts out grimly. Courtney and I begin tag-teaming Idiot's phone at like 8am. Courtney is calling from work, and continuing to research other ways of getting in touch with Idiot.

Nothing is working. Around 10 am, I get fed up. I grab my gun, and head over to Idiot's house to confront her and find out what the hell they are up to. I knock on the door, and surprisingly, get an answer. I half expected the drug dealer to come out swinging or shooting. I was on edge a bit, ready to drill him if he did. I am shocked to hear Idiot's voice, asking who it is. I answer, and am even more shocked to hear Idiot say she will get dressed and open up.

I talk to Idiot for quite a while, about 30 minutes, convincing her that her mortgage broker wasn't totally screwing her. That was the best sales job I have ever done. I think Idiot even believed me.

It's now noonish on the third day of hell. She tells me she will get her son ready, and call me in an hour, to go and sign the papers. I head back to our old house, and sit on the floor, with my phone in my hand, and wait for the hour to go by. About 1:15 or so, I get a call from Idiot. Everything's good, right?

Not even close. The stupid freaking whore is calling me to tell me that her husband (the drug dealer) heard that no buyer ever pays closing costs. Furthermore, they aren't going to close unless we pay all of their closing costs. Her husband is upset because they offered our asking price, and didn't haggle enough. Never mind that I called her back, and had her lower the offer by $2,000, to account for a carpet allowance we were offering (I know it was stupid, but I wanted to have a calm, easy closing). Never mind that we had knocked their closing costs down by $3,000 already. Even the title company dropped some fees.

I start screaming, and tell her to go to hell. We are going to sue her for violating the contract, yada yada yada, then hang up.

I call Courtney, and head over to her office to talk to her. While there, I talk to Mike, Courtney's dad. He points out that the Idiot is asking for $4500, and our house has already appreciated by $25,000; not to mention the $9300 deposit we put down on the new place. That sentence was like a lightbulb going off in my head. I totally bent over, and got ready at that point.

I talk to idiot again, and tell her we will pay another $1800 towards her closing costs. The title agency agrees to pass along information that might lead a person to believe that the lender would only allow us to pay a certain amount of closing costs. But, I say, the deal is only valid that day. We have to sign before the end of the day, or she can shove a pole up her rear.

I offer title agency lady $100 to stay late and get us closed. Then, I call the Pulte title agency and offer $200 if they will stay late to close us on the new house. The catch is that if we don't close on the Pulte home that day, Thursday, we can't close until the next Tuesday. That would mean another four days in the hotel, and not having a home for Mikayla's first Christmas and first birthday. This is not acceptable to me, or to Courtney. The $300 is way worth it. Pulte says no problemo. The title agency chick says she will stay late, but only within reason.

It's now almost 5 pm. We were supposed to hear from Idiot around 3 pm. I am starting to think that she is bailing again. I get a call from the title agency chick at 5:10 or so. My first thought is 'oh crap, she is giving up'. Title agency lady tells me the drug dealer just left her office, after signing the papers. He didn't bring money, but he claims she is on her way, with the cash.

I literally ran inside Courtney's office to get her. I drag her out, and we speed to the title agency. I get there before Idiot. 5 minutes later, I call her, she's about 10 minutes away. She shows up, we sit down and sign (not saying a word). She gives up the cash and signs, and walks out.

I give title agency lady the hundred, and we head for Pulte. The Pulte closing takes like 15 minutes.

It's now 7 pm or so. We are finally DONE! We head to Courtney's parents house to get the UHaul with our belongings, and I muster the troops to help. Only Jeremy is available, but he meets us at the new pad. By 9:45, we are on the way back to UHaul to drop off the truck. By 10:12, we are back home, in our new house, both of us feeling like we have dropped a huge, 5 ton load off of our shoulders.

House Hell, Day 2

So, on day 2, we have all agreed to meet at the title agency at noon to sign our papers and get on with our lives. Courtney and I are now pretty happy that Pulte needed to delay the closing, and everything looks good. What's two nights in a hotel to get our dream house, right?

Yeah, right. The buyer shows up at 12:30ish. We sit down at the closing table, and start signing stuff. The buyer seems like a complete idiot, who hasn't read anything about the mortgage industry, or how home purchasing works. First off, she reads EVERY word of the closing papers. Since the woman seems like such an idiotic ass, the title agency chick starts going really slowly, and explaining every part of the documentation.

Of course, that brings up a whole nother set of problems. Apparently, this woman is completely stupid about mortgages, and never asked questions of her mortgage broker, who is equally stupid. Or incredibly smart, depending on your point of view. She screwed the buyer both ways to Sunday. That idiot signed a mortgage agreement for an adjustable rate mortgage. The first mortgage was fixed for 2 years, with a 2 year prepayment penalty, and then the rate started doing flips every quarter. I think it could go up like .5% four times a year, to a max rate of like 200% or something like that. If you can believe it, the second mortgage was even scarier. Her second, a $45,000 or so loan, is a balloon mortgage. At 15 years, idiot has a $20,000 single payment.

When the idiot sees this mortgage package, she starts crying and blubbering.

Then, we get to the HUD-1. It shows ~$8,100 in closing costs to the buyer. Her mortgage broker immediately starts talking about how the title agency made a mistake, because by her calculations, the closing costs should only be ~$5800.

We finally show how the broker idiot made a mistake with her addition (subtracting the seller's closing costs twice). Then, Courtney and I split the $2300 with the broker. So, we have the idiot back to the amount of money she was prepared to spend.

At this point, we have been in the closing office for three hours. The idiot only has $5000, and it's in CASH. She plans to use her debit card for the rest. How freaking stupid do you have to be to think that a title agency is going to accept debit cards? And what kind of person carries $5000 in cash? I can only think of one kind: drug dealer.

So, idiot says her bank is right around the corner, and she's going to go get the other $700, and a cashier's check, and she'll be right back. While she is gone, she is going to find her husband, who has to sign some paperwork. Of course, he is balking about signing any paperwork (drug dealer much?). We had already signed everything we needed to, so we head out. The title agency is going to call us when the idiot gets back, so we can go pick up our check.

We get a call at 5 or so, from the title agency. Everything must be ready, right? Not even. The title agency is calling to find out where the buyer is, since she didn't show up. I start calling her on her cell phone. Courtney starts researching (working her mojo), trying to find out where the idiot lives and get a home number. She can't find anything. She can't find ANY records of idiot's husband at all. Drug dealer much?

Idiot has her phone turned off. I leave several messages, trying to find out what is going on.

We keep calling every five minutes or so, until after 9pm.

Monday, January 23, 2006

Windows Live Favorites

Windows Live Favorites. Now my favorite MS tool. I was thinking of writing something similar to manage and save my favorites from both Firefox and IE. I'm not sure how well this tool works with Firefox, since I dumped the fox for IE 7 beta 1. This service is great, and it's super cool that someone finally realized we need this. One of the most frustrating things about changing jobs or computers is losing favorites. No matter how hard I try to remember to transfer them, they don't get transferred correctly. Now, I have an online storage solution, free from MS.

I don't see myself using this on a daily basis, but since you can import from and export to IE with just one click, I can totally see this as a way to maintain my list of favorites, in an organized fashion.

Sunday, January 08, 2006

Intermission

We interrupt this house hell broadcast to bring you breaking news on the work front.

Courtney is leaving her job. She got a demotion last week, and was told to report to the girl who she hired and trained, and who reported to her for two years. This was the final straw in a list of huge straws. They have been jerking her around since she started.

To make up for this negativity, I got a promotion to Lead Developer this week. The two kind of cancel out, even though Courtney is really stressed out about her job.

So, if you know of anyone looking for an entry level marketing freak, or a senior administrative staff member, or an event coordinator, let us know. You can email me at cullen_waters AT hotmail DOT com.

House day 2

Courtney and I got to the closing office at about 9:05 for our 9 am closing. We called the office to let them know we would be a little late. The title company tells us that the buyer's lender is holding things up a little.

At about 9:30, I call the buyer to find out where she is, since she's 30 minutes late. She informs me that no one told her about a meeting that morning. Funny, because I clearly remember telling her that we were set to go at 9am on the 20th.

The title company tells me that the buyer's lender won't be closing that day. They missed the cutoff for wire transfers that day, so it would have to be the next day. We set it up for noon the next day, Wednesday.

Courtney went back to work, and I headed back to the hotel to do some work.

Friday, January 06, 2006

House, Day 1

The day is Monday, December 19th. We are scheduled to close on our old house the 20th, at 9am, and close on the new place at 12pm. At noon, I leave work, and head to the old house, with Broderick in tow. We go and pick up the huge, 26-foot UHaul truck.

Broderick and I get busy loading up the truck. After we have about half the house loaded, I get a call from the Pulte closing coordinator, Nicole. She tells me there is a problem with the VA certification on the new house, and it will be Thursday before we can close. I am upset. I think, "Well, at least the problem is relatively minor". I tell Pulte that it isn't fair of them to only give us 22 hours notice that our closing is being moved. They agree to pay for two nights of hotel and two days of UHaul rental. Everything is fine again.

Broderick and I get just about everything loaded, and then Jeremy comes by, after purchasing his brand new truck, and helps with the remainder. We get done at like 10 pm.

Courtney comes over after that, and we drive the UHaul over to her parents' house, and park it in their driveway until Thursday. Then we head to the hotel to settle in (and to sneak Gizzie into the room). Mikayla is staying at her Grannie's until we get into the new house (thanks again, Mike & Mindy).

Not too bad of a day, and I am sleeping the righteous sleep of the exhausted. After all, we did load everything we own into a truck in less than 10 hours. The only other irritation was the noisy cat, who woke us up like 20 times that night. We'll forgive him, though, since he didn't have any choice about staying in the hotel, and didn't even understand why we were in such a funny place.

Wednesday, January 04, 2006

Intro to House Hell

Courtney and I just finished selling our old house, and moving into the new construction we bought. The process was not smooth, and I'm going to provide everyone with a breakdown of what happened during the sale of our old home, and purchase of the new house. Hopefully this series of posts will be cathartic, and help me get past the anger that I am feeling. I have never been more angry towards another human being than I have been for the last couple of weeks. I'll try to keep the hatred to a minimum in the posts, but you'll just have to forgive me if I blow it some.

Wednesday, December 21, 2005

MS Update

So, I haven't heard anything from Microsoft about my phone screen/interview. I'm guessing that isn't positive. Since I didn't really go through a MSFT recruiter, I don't have anyone to contact for feedback about the call. I guess I just have to wait until someone from there calls me, or accept that I won't get feedback.

It's interesting (to me) how I got the phone screen. Here's the unlikely chain of events: I read a blog called JobsBlog, written by a few people in the MS recruiting department. The woman who primarily posts there went to MS because her husband got a job there. I have contacted her a couple of times about Seattle life, and tips on convincing Courtney to move.

I read another blog, which is about aftermarket developer tools that MS creates.

When I read about this new team they were forming, to create dev tools, I contacted the lady in the recruiting department, and asked her who I should contact to get on this team. It just so happens that her husband is a PM on the team.

So, she forwarded my resume over to her husband, and he talked to the dev side, and I got a phone call from them.

Unlikely chain of events, right?

Friday, December 16, 2005

Game update

Been a while, right? So, now, the game is nearing v1. I only have a few major tasks to accomplish before the game is playable.

  • Make bullets and asteroids and ships hit things, instead of flowing through.

  • Make asteroids blow up.

  • Make the game generate more asteroids.

  • Make items wrap around the screen when they go off (so, you go off the right side, and come on the left).



Sounds like a lot, but the tasks are relatively simple. I would attach a screenshot, but the screen shot code stopped working for some reason, and I can't debug it right now.

Microsoft Report

Well, race fans, you can all calm down. I had my technical screen with Microsoft, and I don't think it went well enough to get me a job. I haven't heard anything from the DDCPX team, but I had to say 'I don't know' a lot during the call. That can't be a good thing. Well, it is and it isn't. It's good that I am willing to admit my lack of knowledge, rather than trying to BS my way in, but not good, because I should have more knowledge.

As to the actual questions asked, they were a different class of questions than I expected, based on technical screens with other companies. None of the questions dealt with the things I do on a daily basis; they were geared more towards the internals of the .Net framework. I guess that is to be expected, though, since the other companies I interviewed with (before getting my job at FNDS) were using the framework, and MS is building the framework.

Here are a couple of the questions (if you'd like to post a comment with your answers, I'll tell you if they differ from the answers I got during the call):

  • Types

    • Explain the difference between value and reference types.

    • What is boxing? What is unboxing?


  • Memory Management

    • What is the garbage collector?

    • How does generational garbage collection work?



  • Algorithm
    • There is a conveyor belt, with a camera positioned above it. Every time a piece of fruit passes under the camera, a picture is taken. The picture is pre-processed, and is converted into an array of booleans, with true everywhere there is fruit in the picture, and false everywhere there is background in the picture. Design an algorithm which, given the array of bools, can determine if the fruit is a banana or an orange. These are the only two fruits that will be on the belt.


Saturday, December 10, 2005

Can you believe it?

I finally have a phone interview with Microsoft! After four years of applying, I got an interview by going through a couple of blogs. This totally rocks! Tuesday at 8pm, don't call the house, I'll be on the phone.

The call is with a member of a really excellent team. The team is the DDCPX (Developer Division Customer Product Experience) team. They build aftermarket add-ons for developer division products. These are the same tools and products that I use every day. Right now, they are working on a fairly substantial add on for Visual Studio 2005. I can't wait for this call. I am SO stoked.

I'll let you all know how it goes.

Thursday, December 01, 2005

SOLD!!!

We sold the house! And, we got our asking price!

I was really starting to get worried, since our new house has to close in 19 days.

Bonus: We are selling the place to a really nice family, just getting started on the path to home ownership. That makes me happier.

Saturday, November 19, 2005

Pictures of the house













Listening to: Bring It On - Insane Clown Posse - Big Money Hustlas OST (03:55)

Friday, November 18, 2005

You won't believe this story

We are sitting on the couch watching "Reba" on WB. One of the women was talking to an OnStar-type guy, and he was talking about all the times they had shared. He mentioned something that reminded me of the funniest story in my life. He was talking about the time that the girl on TV locked herself in the trunk.

Sounds funny, right? Someone locking themselves in the trunk. That could never happen. Not in real life.

Except for that one time. So, imagine this scenario: you're an operator. Not a 911 operator, but a AAA operator. You get a call. Some kookie lady is on the phone, but you're having a hard time understanding her. It sounds like she's in an elevator or something.

"What's that you say, ma'am? You locked your trunk?" I know what you're thinking; just unlock it, right? I mean, trunks lock when you close them. You just open it again. No biggie. "Do you have a trunk release inside the car? Use that. What? You can't get to it? Why not?"

"OH, you're IN the trunk? Well, I certainly think this qualifies as an emergency, we'll get someone out there in the next 10 minutes."

Bet you can't guess who the kook in the trunk is, can you?

Oh yeah, you guessed it. It was my dear wife, Courtney. She was going to the bank, and managed to lock herself in her own trunk. No one pushed her; or forced her into the trunk at gunpoint. She just fell in. Who falls in their own trunk? And lets the trunk close on them?

So, AAA guy comes, and lets her out of the trunk of the car. The funny part is that she had a Neon, and had two LARGE speakers in the trunk. There wasn't enough room in that trunk for a suitcase; no idea how she fit in the trunk. It would take me an hour to fold myself into the thing.

But wait, there's more! When I heard the story, I just had one question for Courtney. Why didn't you use the glow-in-the-dark EMERGENCY HANDLE? The big green thing that, when you pull on it, releases the trunk hatch. The thing that is inside the trunk in case you somehow manage to get locked into your trunk. Like anyone would do that, right?

Well, anyone except Courtney.

I can't tell you how much I laugh every time I think about that story. I just wanted to share it with everyone. Hope you liked it.
Listening to: Bring It On - Insane Clown Posse - Big Money Hustlas OST (03:55)

Tuesday, November 15, 2005

Krypton Toolkit released

The Krypton Toolkit, a set of UI controls for Visual Studio 2005 and .Net 2.0 Windows Forms devlopment, has been released. Get your free copy at http://www.componentfactory.com/downloads.php.

The components let you build Office 2003-like UIs, and are built by a company with a great reputation.

Did I mention that these components are free for commercial use?

Monday, November 14, 2005

House for sale

Our house is for sale. The house is in the Argyle Forest area of Jacksonville.

3 bedroom, 2 bath, with a 2-car garage. 1,744 square feet. Large master bedroom, amazingly huge master bath, with a garden tub. Walk in closet in the master suite. Cathedral ceilings throughout. Large kitchen overlooking family room, formal living and dining rooms. Tiled kitchen, with breakfast nook. Large screened-in lanai, with a great view of the waterfront back yard. We are asking $170,000.

Contact me if you are interested. Cullen_Waters AT hotmail DOT com.

Listening to: Bring It On - Insane Clown Posse - Big Money Hustlas OST (03:55)

Monday, October 31, 2005

Big advances on the game

I made large strides in the game today. Now, I have a ship that shows up on the screen (with transparency), as well as asteroids. To get the game a little more interesting, I set up basic keyboard interaction (using keypress events). This is limiting, because you can only send one message at a time, so hitting two keys (like rotate left and thrust) has only one key's effects.

I created a little extra line, too, to show the ship's current velocity vector. I almost have the physics for the game complete. The ship can thrust and rotate. The asteroids can be set with a given velocity, and they keep that. The only additional physics concept I want to model for v1 is friction; objects will slowly decelerate, with the idea being that they are being affected by space dust or super small asteroid chunks or something.

I started working on the bullet class, because I want to shoot stuff. I guess first I should get collision detection set up for the ship and asteroids, though.

I also got more cool tools for Visual Studio that relate to Test Driven Dev installed. I can now see my code coverage, and run tests from within Visual Studio. Both of these are huge advances. The code coverage will help me design better unit tests. The ability to run tests from within the IDE will greatly increase my productivity.

I also messed with the inheritance chain now. The chain for the player's ship now looks like this:
PlayerShip->Ship->SpaceRockObject->BasicSprite. Getting deep, isn't it?