XBOX 360

On my way home from work Friday, I stopped by a local game store had a few 360 consoles in stock.  This just a short time after it was announced that shipments would be stepping up for the console. So, I bought myself a premium console and headed over to the Microsoft store and bought Kameo.  I then headed home with a giddy little grin on my face.  On the way home, I stopped at yet another game store and bought Ghost Recon and Fight Night. 

When I got home, I started feverishly hooking the console up.  I realized quickly that I didn’t have enough power outlets at my entertainment center to plug in the 360 so I started running around the house looking for a power strip to plug all of my other devices into (the 360 should not be plugged into a surge protector).  Since we  JUST moved to the Northwest  all of our stuff is still mostly packed in boxes. I had paper and cardboard flying everywhere while looking for this strip! At last: I found one!  “I’ll clean up the mess later,” I thought as I rushed back into the living room to finish the setup.
I turned the console on and changed the television to channel 3 and then 4 — an obvious habit I had from the last console I owned so many years ago (Nintendo — nope, not 64, not DS — just plain old Nintendo).  I finally got everything set up right and then I saw it — the Xbox 360 console — right there on my TV.  I could curl up to this thing at night for warmth — I’m sure of it.

I’ve already been playing so much longer than I ever expected.  I’ve already got a list of friends hooked up in my console and have already played a few rounds (and lost many) of Fight Night.  I love this game and I can already tell that I need to apply some time management skills to keep me productive.  If you haven’t played Fight Night yet, let me explain.  This game lets you build your own fighter. You can control his stats, his clothes, his skills and even his look.  That’s right, when you build your fighter, you can control every aspect of his looks — cheek shape / size, skull shape/size, jaw shape/size, eye color/socket size, eye brows, facial hair, and more.  You can then add tattoos to the boxer’s back, arms, and chest.  The amount of customization is unreal.  You can then start fighting and training your boxer up the ranks, all the while fighting great boxers like Ali, Frazier, Leonard, and more.  As you are fighting, the level of control is amazing and the detail in the graphics is fantastic.  I can lean back, block with one arm, two or even duck and cover. The conrol is 100% up to me — no preset motions that limit your ability to create your own fighting style. Jab left then Haymaker right.  Jab high right, jab low and left, jab low left, uppercut right, parry, counter haymaker!  It’s indescribable!  I’m addicted already:  not good yet, but addicted!

I then picked up Ghost Recon and tried playing that.  It’s really amazing how cool this game is, but honestly — it’s a lot harder for me to play this than anything else.  To explain, I’ve been a PC gamer for a while. I’ve played PC-based FPSes (First Person Shooters) since .. well Wolfenstein 3D.  I then moved on to games like Doom (1 and 3), Enemy Territory, Quake (1, 2, 3 4), Call of Duty, and Half Life. I’ve played them as single player. I’ve played them as multiplayer. I played in clans. I created trick jump videos and even got bored and started doing trick jump videos backwards.  Yes — I’m no stranger to FPS gaming. But playing on a console is so much more… contrived.. harder.  In my opinion, the keyboard and mouse are the best controllers for an FPS. None-the-less, the game play itself is awesome.  I also like that being shot actually hurts the character — and being shot in the right spot — even with one shot is fatal.  This is contrary to a lot of older games that I played that just took your ‘health’ down with gun shots to the chest and head.  In any case, once I’ve mastered Fight Night, I’m definitely going to give this game another shot with a controller.  Note to XBOX 360 team — allow mouse and keyboard controller input for games! 

Kameo was … different. I’m not used to playing games like this, and I honestly didn’t put much time into it. The game is very cool looking. Kameo can change shape into a rolling spikey looking creature that can spin at high velocity toward monsters. She can also transform into a plant-like creature that is great at sneaking up on things. She can take the shape of a blue ape-like creature that can bash monsters and stick them to his back and use those monsters as weapons. More shapes are available later. It’s very… umm… interesting. Kameo herself can fly short little hops over obstacles.  This game appeals to my some but for me, I think I’ll stick to the other two for now.

The games themselves aren’t the only thing that are cool.  I can connect my XBOX to my PC’s in the house and use MP3’s I have stored there as well as pictures and movies.  The only thing I wish is that I could continue playing those MP3s while I played Fight Night. I prefer my music to EA sports selection!
This post was much longer than expected. But I couldn’t help but share my enthusiasm about this machine.  For those that have stuck around a bit, I have some thoughts: If you buy one of these systems, consider buying the core system. You’ll save $100 that you can spend on a 20GB  hard drive and a pair of headphones that feel good for you.  The ones included in the premium system aren’t that great and are cheaply made, IMHO.  Once again, I could just be spoiled from my previous online gaming headphones I use. Also, consider buying the wireless ethernet adapter, and some recharge kits for your controler(s).  All of this will cost a bit more, but will make your gaming experience better, IMO.  That’s all for now. Happy gaming!

Microsoft Learning is Hiring-inquire within

I just received a request to ask around for anyone who might be interested in a position with Microsoft Learning. The job description is below. If you are interested, please use my contact form to ask how to apply.





Would you like to be a key driver in Microsoft’s brand new certification program that enables individuals to differentiate themselves as well as directly impact technology success? The Microsoft Learning Certification group is building an innovative certification program and we need a creative, results-oriented program manager to help drive planning of this important new certification program. You’ll work in partnership with the product manager and with key stakeholders in the Microsoft product group to define the right portfolio of certification exams and assessments. From there you’ll work with the development teams to ensure the products are delivered within program time constraints.


As a long time industry leader, Microsoft’s certification program drives deep customer capability and lifelong loyalty for Microsoft, solid return on investment for our customers and partners, and career opportunities for millions of individuals around the world. But we’re never satisfied. Could you drive worldwide relevance and innovation excellence by envisioning new ways of teaching, training and certifying people? Do you have what it takes to transform the largest and most-respected IT certification program in the world? If so then we have the opportunity for you to excel at Microsoft Learning.


The successful candidate will be extremely inventive and be able to manage multiple concurrent projects. We’re looking for someone with a passion for skills acquisition and validation. Excellent oral and written communication, organizational, and arbitration skills are required. Deep understanding of the information worker audience is highly desired. Everyone on our team is extremely excited about the project, and the program manager will need to channel that excitement into unique and compelling program that ships on time.


Specific requirements include:



  • A minimum of 3-5 years of related experience or an equivalent combination of training and experience required

  • Sound problem resolution, judgment, negotiating/prioritization and decision making skills

  • BS/BA from an accredited university in Computer Science, MIS, Business or a related field

  • Good oral and solid written communications skills

  • Able to drive resolution to complex problems in a cross-group environment utilizing solid interpersonal skills

  • Solid familiarity with MS applications such as Word, Excel, Visio, etc.



This posting is provided “AS IS” with no warranties, and confers no rights.

New Blog

I’ve started a second blog at http://blogs.msdn.com/tobint/ in light of my employment at MS. The second blog will be targetted toward IIS and my work at Microsoft. I will continue to post technical content about personal projects here if the scope falls outside of work context. If this starts to get too confusing, I may make additional changes down the road.

i-Pod – Microsoft Style

As an outsider to Microsoft, I’ve often said that one of the downfalls of the company was their ability to complicate the simplest idea. I was, apparently, not the only one to think so. This video at iFilm.com provides a little insite into someone elses feelings of Microsoft. As I fly out to Seattle next week, I’m hoping that I can prevent myself from getting entangled in over-engineering and complexity.

Statement by Google CFO causes stock market stumble

It’s amazing what happens when the CFO of a company with an already over-inflated stock price makes a small statement like — “clearly our growth rates are slowing. You can see that each and every quarter”. While he was only stating what should have been plainly obvious by the quarterly financial reports, his statement was taken hard by an already volatile stock market. Google’s stock dropped by nearly 9%this morning and the DOW dropped and the down dropped by an entire percentage point. It’s amazing how much the stock market reacts to small statements like this. Take for instance, Rackable systems. They develop energy efficient, cool-running, equipment that will save companies more money than you can shake a stick at. This stock, by all analyst accounts is a win-win for everyone. Its one flaw today was that it had Google as one of many large customers. Take a look at what happened mid day at the announcement.

rackable

Luckily, the bulls saw this as a buying opportunity and drove the price back up. However, it just goes to show you how much a small statement by a powerful person can affect the economy in a single instant.

SynchronizationAttribute snake-oil

I have now been asked twice why you wouldn’t just use the [Synchronization] attribute when you want to make a class thread-safe. I figured I’d share what little information I have on this topic to you since I happen to have an answer. (as opposed to “the” answer which I never have).


As the saying goes, “There is no such thing as a free lunch.” I never really understood this saying as a kid. I grew up in a poor neighborhood and got “free lunches” all the time. Being financially challenged, I used to laugh and say “well, this is free”. As I’ve gotten older, and much more financially stable, I realize that my tax dollars are paying for the lunches for other kids in other neighborhood — apparently they are eating very well.


The same holds true for this special attribute. If you may think you are getting thread-safty for free, I have some snake-oil to sell you. There are several problems with the SynchronizationAttribute. Take a look at the required signature for use of the synchronization attribute:


[Synchronization]
public class SuperSensativeClass :
System.Runtime.Remoting.Contexts.ContextBoundObject
{
// Implementation here
}


First, the attribute requires that you inherit from ContextBoundObject — wasting your single-inheritance chain. If you wanted it in your object your most primitive object in the inheritance chain would have to derive from this class, and then what if you didn’t want some other child classes to be context bound?


Second, suppose your class has several methods which don’t have thread-sensative data. What happens there? The CLR will still lock those methods since it has no idea what is thread-volatile and what isn’t. This can severely hamper performance.


If you are looking at thread-safety, you are likely trying to optimize the perceived performance of your application using multi-threading. The SynchronizationAttribute can actually have the exact opposite effect. Long story short, learn to use the synchronization primatives of System.Threading.

Lessons in backups

OK, so I’ve re-learned the importance of not only backing up, but verifying backups. The other day, I decided to upgrade my blog software to CommunityServer 2.0. I apparently messed something up and before you know it, I had deleted my CS 2.0 database. While I had backups from a week ago (sufficient to restore back to my last blog post for sure), I had never verified the backups. Let’s just say the time to test your backups is not after a failure in which you need to use them.


Luckily, I had a backup device that most people don’t think of when they consider their options — Google Cache. I was able to easily use google cache to reassemble my blog posts as well as the comments. If some of you have noticed that my blog has been posting a large amount of posts in the past few days, its because I had to repost everything on my blog. Its a big pain in the butt and now I have to do some work to update google with my new articles, but at least I could recover it. Now before any Microsofties yell at me, I did try to use MSN Search cache first, but wasn’t able to find everything — one again proving that Google still has the edge in this market.


Suffice to say that this should be a lesson to all of you, and should serve as a refresher course for myself, that simply doing a backup isn’t sufficient — verification of that backup is essential to a good disaster recovery plan.

Why Google dominates their market

There is often a great deal of speculation into why Google dominates the ad revenue market. Today, I developed my own theories on this. For the longest time, I’ve used Google as a home page. Since I’m heading to the mecca of Windows development, I decided to make the switch to Microsoft’s home search page. So there I was trying to find a home page equivilent to google.com. What I found was a bit revealing. Who is competing with Google, you might ask. Two main competitors are Yahoo and Microsoft.


You can call Microsoft a competitor, but you can’t go to www.microsoft.com and find a simplified search page like www.google.com. In fact, Microsoft’s main business is software for their platform, not software for the web-based masses let alone searching. So I went to MSN.com and found myself presented with a portal site. The main business of MSN is portal first. I see a search bar at the top, but the rest of the page is busy with stock quotes, news, advertising and more. If I’m at work, and this is my home page, I’m going to become distracted. This isn’t at all like the simple search page of google.com. In fact, to find something even close to google.com, I have to type in http://search.msn.com . The URL says it all: Searching is a subset of what MSN does and therefor it’s a subdomain of msn.com.


I did a quick check at yahoo.com and found, well, another portal site. I go to yahoo.com on occasion, but never really put two and two together. Yahoo’s main business is also to be a portal first. The page is busy — very busy. Theres links to their other services yahoo offers as well as different types of search links. Below that is some advertising, some suggested searches, traffic/weather, and more. To get a page that is even close to the same as google.com, I have to type in http://search.yahoo.com . Again, we find the telling URL that just screams — we are portal first and “searching” is a subset of what we do.


These two examples tell me exactly why google succeeded and continues to dominate. They don’t have any real competitors. Google has pseudo competition — people who offer similar services. The important factor is where these companies put their emphasis. Sure, google offers maps, email, IM, IE toolbars, RSS readers and more — but you will not find them on the main page of google.com by default. Google has made searching a priority and the structure of their home page tells you that. I can personalize the google.com home page too but by default it is what people think it should be — a simple search page!

IIS may be Microsoft’s most important product

I’ve been asked a couple of times why I accepted a position working with IIS 7. Someone even quipped that I took it because it was the only job that Microsoft offered me. Quite honestly, if I had my druthers, I would still love to join this team. Obviously, some people can’t understand the importance of this product. This post will serve as the formal answer to the inquiries about my upcoming role.


I believe in my heart that IIS could possibly be the most important product in Microsoft’s arsenal today. If you blindly accept this hypothesis, you need not read any further. However, if the need to provide some supporting evidence to my assertion haunts your dreams, go ahead and finish reading this post before you lay your head on the pillow tonight.


In the book, Freakonomics by Steven Levitt and Stephen Dubner, the authors overtly opine that information is one of the most powerful tools in today’s age. One example given by the duo is that of the ruin of the Ku Klux Klan after WWII. Once the war was over, the “Klan” had started to regain their footing. Stetson Kennedy infiltrated the group and exposed all of their secrets to a popular radio program at the time — Superman. This turned the upsurge in Klan membership on its ugly hooded ear. The book demonstrates time and time again that sunlight is, indeed, the greatest disinfectant.


The proliferation of data in the “information age” is one of my favorite bi-products, or perhaps, the purpose of my very career field. Software applications seek to provide information in a concise form that makes sense to data consumers. Websites such as realtor.com and edmunds.com provide data that prevents the lay-folk from being ripped off in the same or purchase of a home or car, respectively. Sites such as encarta.com and wikipedia.com provide us with reasonable and free research — and in the case of the later, people actually volunteer their time to build on that knowledge. I have to admit that I am addicted to information. In an instant, I can be searching for stock quotes, searching for health information, getting the latest news headlines, or just reading blogs at any given moment. I can access information on my smart phone, my tablet pc, my notebooks or any number of desktop machines at home. There are even refridgerators with web browsers in them now!


Yes, information is important. But getting information out there in an efficient, reliable, and secure way is the key. I have watched IIS grow from a simple application-level server that leaked memory like crazy and provided a million security vulnerabilities while provided basic database/index server query capabilities (HTX/IDC and IDA/IDQ), to a mixture of kernel-mode listeners and intricate inter-process operations that serve up millions of pages of dynamic information and object requests in a secure environment as though it was bored to tears. The information this product serves up, for the most part, is pure gold and it already does it so well. IIS is, indeed, improving with each and every release.


Some may say the success of IIS is why they question my joining the team. “What else could you possibly do with that product”. While I’m not going to be a developer for IIS 7, I do cherish the opportunity to leave my ideas at the desk of those that can at least consider just what I think can be improved. Depending on what survey you read, Microsoft’s market share of the web server space has plenty of room for improvement. In fact, since the .COM bust, it appears that IIS 7 has been losing its market share. But obviously, market share isn’t everything: “What does it profit a man if he gain the whole world but lose his soul?” So what else is there? How about increased security and anti-fraud mechanisms? Dissemination of information is only as good as the information being purveyed. Sure IE 7 is going to take up some of the slack here. But couldn’t IIS 7 also provide some of this capability as well? Couldn’t it help protect against spoof sites? Perhaps a combination of IE 7 and IIS 7 would help scuttle the whole phishing business all together.


As I stated in my previous post, I have a million ideas, and at times, I’m overwhelmed with what to do with them. I’m hoping to pour some of this emotion into a product, and I cannot see a better product to be a part of — in whatever capacity I can be of use.


I hope this satisfies some of your curiosity. Thanks for listening.

Tobin.Swallow( Pills.Red );

Doing a google search for “red pill” and microsoft today yielded 55,700 hits. That same search on MSN search yields 14,433. This term, and other variations, are often used on blogs when someone takes a job at Microsoft. I would be naive to think that all of those hits are new employee announcements, but with these sort of numbers, I might have to buy some stock in a red-pill-manufacturing pharmaceutical company. This particular post will increase the count on those searches by 1 and will be counted among the many search hits that ARE about taking a Microsoft job.


Its my pleasure to announce that I will be packing up and moving to the Redmond, WA area to take a position with Microsoft sometime at the beginning of March. The exact date hasn’t been chosen yet but the offer has been made and accepted.


As many of you know, I’ve been running my own business. Things are great. I’m finishing up a contract with IPSwitch in February. I’ve been talking with Mark Dunn about doing some developer training for his company. I have more contracts being offered to me and really, the business is doing fantasitc. So why drop it to go be an employee again? The ideas are too numerous to list but I’ll try to give you the highlights.


First off, my entire career has been built around Microsoft. I started coding on an ATARI-800XL in Microsoft BASIC when I was in 5th grade. I’ve used Microsoft development technologies almost exclusively in my life. To be a part of the worlds largest and most successful software company is a great opportunity.


Second, I have ideas — a LOT of ideas. Anyone that has known me for any length of time knows that I am constantly coming up with ideas only to see someone else implement them months or years later. Being a one-man shop makes it very difficult to see those ideas through. Being at Microsoft, I will be able to have that satisfaction of giving my feedback to a company that can debate these ideas, improve/revamp them, and implement them if I’m lucky enough. I know this will happen because Microsoft Learning has consistently listened to and implemented advice that I’ve given on the developer certification exams.


Third, I LOVE soda.


Fourth, the team I met was fantastic. I have always wanted to work among the best and the brightest. While I don’t really fit that category, I’ll likely be mistaken for being smart just for working there. Its not just the folks working at Microsoft either. A recent census bureau survey showed that Seattle was the most-educated city in the US — with a majority (51.3%) of the population holding bachelor’s degrees!


Fifth, the area is absolutely beautiful and inspiring. In Charlotte, when a developer buys land to build houses, they completely strip the trees on the entire lay of the land, and start plopping down houses. If you get a chance, go check out Virtual Earth and pan around with the “birds eye view“. You’ll see that there are trees everywhere — making it a very attractive area. On top of that, you add boating in the sound, hiking in the mountains, and one of the best downtown areas in the country. There’s a lot to do and see.


Lastly, the benefits are great. Ask any employee what they think about the benifits at Microsoft and they will tell you that they are beyond comparison. I make a great living working for myself, and no company can beat this as a non-partner/full time employee. That said, Microsoft’s total package of compensation w/benefits is pretty competitive to other full time positions.

Overall, I can’t wait to get started. I’m looking forward to diving in torso first. Look out Redmond — here I come!