Archives
-
Follow-up: The Girl Next Door (aka Laptop for Nat)
Okay, second non-tech follow-up as I get caught up here in Real World 1.0 stuff. Last month I wrote a post called The Girl Next Door, about a 7 year old girl named Natalie. She was diagnosed with brain Cancer and the last year has been an uphill struggle for family, finally coming out on top with Nat back at home and going to school now.
The post was about finding a way to get the Nat a laptop. With the Cancer, her motor skills have been somewhat diminished and taking notes in school was a chore (along with everything else she deals with). Looking to give a 7 year old a break I turned to the Internet for some help. That help was absolutely outstanding. Literally hundreds of people emailed, donated, and came to the forefront to step up for our friends next door.
Laptop Anyone?
The goal was simply to get Nat a laptop she could use for school work. I was aiming for someone’s used laptop that they didn’t need anymore but instead my good friend Dave Woods up in Edmonton (and his company Solidhouse) stepped up the plate and delivered a grand slam providing Nat with a brand new Dell Studio 15 Laptop (complete with her selection of colour, Emerald Green, which apparently is the new pink).
In addition while I did post the blog entry looking for a laptop, the first note I got from Paul Jackson over at Love the Dot was a request to throw up a PayPal link for donations (selfishly so he could donate some money towards the laptop and family). I did that and the donations poured in. All tolled, we were able to hand over a cheque for $2100 CDN to the family which will help with medical expenses (shame on you PayPal and your 3% gouge fee, but we paid that ourselves and rounded the amount up).
BTW, Paul wrote a really touching post on his own blog called The Blogger Next Door about the situation. Thanks again for the global kindness that the Internet has. Who says the world is a bad place when there are people like you out there that are willing to help a stranger?
Taming the Dragon
Not to be outdone, I got an awesome email message from Kristin Wylie, the Product Marketing Manager from Dragon Naturally Speaking:
One of your readers forwarded your blog posting to our CEO, who sent the request to me. We would be happy to donate a copy of Dragon NaturallySpeaking Professional for your neighbour's daughter. Dragon can be kind of a "memory hog," so I'd like to be sure that the laptop you select meets the minimum system requirements for the software. I saw that one of your readers is willing to donate an "extra" copy of Dragon, and this is very generous. However, older copies of Dragon do not support the Vista 64-bit operating system which is likely to ship on the laptop that you select. For this you will need our latest version, which just began shipping last week. Let me know your mailing address, and I'll send along a copy of Dragon, along with a user workbook that her parents can review with her.
Brilliant! The copy of Dragon arrived and once we got the laptop, we packaged things together. I entered a bit of a panic mode though as it was Sunday night and we planned on giving the laptop to Nat for her birthday (which was coming up on Tuesday, what a coinky-dink!). I slid the Dragon DVD into the new Vista based laptop and watched in horror as it wouldn’t install. The laptop had been ordered with a whopping 4GB of RAM (nice!) and the 64-bit version of Vista. Unfortunately for me, the Dragon DVD only supported a 32-bit install. Of course, I didn’t actually *fully* read Kristins email where she said “For this you will need our latest version, which just began shipping last week”.
Trudging off into that series of tubes, I got frustrated and found more sadness. I found this post that came out and said “So I’m truly sorry to report Dragon Naturally Speaking will not install on Vista 64”. This didn’t give me a warm and fuzzy. Did I have enough time to re-image the laptop, put on the 32-bit version of Windows (losing access to at least 1GB of RAM) and try to get things done by Tuesday? Reading through the comments on the blogs didn’t make me much happier. Another post here had comments about a maintenance release coming out in “2-3 months” (with the blog post date of March 1st). Most of the comments were pretty slighted towards “Dragon sucks” and there was even a petition created with almost 500 signatures to get a 64-bit version out to customers who felt jilted.
The light at the end of the tunnel came with a comment and a link to the download. I checked it and sure enough, it had been released only a few weeks previously. Silly rabbit. Should have read the note from Kristin in the first place and just visited the website. I downloaded this update (1.3GB, basically a replacement for the shipped DVD, don’t understand that but whatever) and installed the software. No problemo. Whew.
The Package
The laptop arrived by way of courier. It’s a light sucker, using Centrino 2 technology so it’s small but powerful. Perfect for the 7 year old in your life. Outfitted with 4GB of RAM and Vista Home Ultimate Edition x64 it kicks the llamas butt on performance.
The Dragon Software comes with it’s own headset so we didn’t have to rush out to Uncle Bob’s 24 Hour Computer Emporium that night. That was a relief.
For security measures, we had Big Bear guard the laptop and software for the night before delivery. I think he just enjoyed snuggling up with a laptop at night. I know I do. BTW, no stuffed animals were harmed in the opening of the packages.
Happy Birthday
The big day arrives and Nat busts into the box, not really knowing what’s inside.
Success! She’s taken back and surprised when we tell her “It’s YOURS, not a rental” and that she’ll be able to keep it. Forever.
The Dragon Lady
Dragon Naturally Speaking is a tool that will help Nat and her school work. As I mentioned, the Cancer has caused some breakdown in her physical abilities so holding a pencil or even typing is taxing. Dragon will allow her to speak into the computer using the provided headset and translate that into Word documents, email, and browser navigation commands. Dragon has come a long way since I looked it years ago and it seems to be right up there as the industry leader.
Of course Dragon might need to change their marketing campaign after seeing this pic.
Thanks
So this story ends well. Nat has a great resource for her schoolwork, the family was able to offset some of the medical expenses, and their corner of the world is a brighter place as a result. Thanks again for the great support! Thanks to everyone who donated to the family directly, thanks to all of the offers for laptops and software, thanks to Solidhouse and Dragon for their generous donations and thanks to everyone out there reading this who spent a few minutes to help out a stranger.
-
Follow-up: Small Person, Big Life
A couple of weeks ago I posted about Madeline Spohr and her awesome, happy, life. We rallied around and others were picking up the torch to carry on Maddies name in support of the March of Dimes. I did the same with a small token of my appreciation for your support to help the Spohr family by donating a copy of MSDN Premium Subscription with Team Suite to a random donation (every $10 donation got you a chance to win).
Sorry for the lapse in follow-up but I did pick a winner on April 20th. In fact, two of them. The response was overwhelming and while I don’t know the final total (the number keeps growing) there’s been thousands of dollars donated to help the Spohr family out and over $50,000 donated to the March of Dimes in Maddies honour. That totally rocks! Again, I am so totally beside myself by the power of the Internet and the humanity and generosity of peoples. Strangers even. Strange people too.
Like I said, I decided to kick in not one, but two copies of the MSDN Subscription so the winning entries were drawn and the two recipients are Ray Houston, and Dave Burke. Both cool geeks in their own right.
The winners were chosen using a tool located at the random.org site. Random.org provides services to generate (fairly) random numbers via atmospheric noise using a discrete uniform distribution method. A good explanation of how random numbers work are on the site here.
On the home page there’s a form where you enter a min and max number, then click Generate. It comes up with a random number in the range you provided. As I was picking two entries, I didn’t want to enter the form twice. While it is “random” there’s that possibility it could come up with the same number.
If you visit the Integer page, you can enter the number of random numbers you want the site to generate for you. I also decided to put a little bit of a Maddie spin on it (thank goodness for Advanced Options!). If you click on the Advanced Options there’s a new set of choices that open up. In the Randomization Section you can choose the randomization method. I selected option 2, to use a pregenerated randomization from a specific date. For the date I chose Maddie’s birthday, 11/11/07. Seems fitting that she gets to choose the winners.
Thanks to everyone who donated to what I consider a very worthy cause. I really appreciate your support and just wanted to help out Mike and Heather.
If you’re really looking to pick up your spirits these days, check out Heather’s speech here (or below) at the March of Dimes walk a few days ago in Los Angeles (via YouTube). Trust me, you won’t be closing your browser dry eyed after watching this.
Thank you!
-
Using The Loopback Adapter and SharePoint
Just a little tip as I've recieved a lot of emails and questions about SharePoint development recently. Most SharePoint development is going to take place in a virtual machine (unless you're running Server 2008 as your desktop, which isn't hard. Check out win2008workstation.com for some great tips on this). A lot of people simply run their virtual machine natively, using the VM client. This is okay but it requires you to be logged into the machine (usually as an administrator) and you have to contend with multiple accounts (and keeping track of what account you're using), IE issues, etc. Add to the fact you want to say check out your site with Firefox or do some debugging with Fiddler and you're installing and loading up the server image with additional software (so your VM image grows and grows and grows, much like a developers belly).
Just say NO to doing this. Everything you need (other than local development with Visual Studio, although that can be accomplished too) can be done from your host OS desktop. It's really easy. You just need to add and configure the Microsoft Loopback Adapter on each machine and give it an IP address. The loopback adapter is just a dummy driver, no hardware needed, that simulates a network adapter. It's a great tool for testing in a virtual network environment where network access isn't available and really you don't want to be exposing your VMs to the Internet unless absolutely necessary (maybe for monthly image updates, but even then I try to do this locally).
Here's how to configure your network for SharePoint development:
Server
On the server (Server 2003), you'll add the loopback adapter as new hardware.
-
Go to Control Panel -> Add Hardware
-
Click Next on the first page of the Add Hardware Wizard
-
The system will search for new hardware. Select "Yes, I have already connected the hardware" from the options and click Next
-
Scroll to the end of the hardware list and select "Add a new hardware device" and click Next
-
On the next page select "Install the hardware that I manually select from a list" and click Next
-
Select "Network adapters" from the list of hardware types and click Next
-
Under the Manufacturer list select "Microsoft" and under Network Adapter select "Microsoft Loopback Adapter" and click Next
-
Click Next to install the hardware
Once the loopback adapter is installed we want to configure it with a static IP address. For Domain Controllers you have to use a static IP and it's a good thing so we know where machines are and can easily access them by name from our clients.
Under the Control Panel -> Network Connections you'll see a new network adapter (usually called "Local Area Connection").
-
Right click on it and select Properties.
-
From the Properties dialog under the General tab select Internet Protocol (TCP/IP) and click Properties.
-
Change the General settings to "Use the following IP address" from "Obtain an IP address dynamically"
-
Enter a fixed number using 10.* or 192.*. I generally use 10.* for my virtual networks so they don't collide with my desktop and automatic ones. 10.50.50.1 is a good choice. Make note of this number for later.
-
Enter 255.255.255.0 for the subnet mask
-
Leave the gateway blank (as this machine is the gateway)
-
I use 127.0.0.1 for the Preferred DNS server listed on this dialog. This means the server doesn't try to go out to the network to resolve any names which is good for development.
-
Click OK to close the dialog.
Client
With the server setup we need to configure the client. On the client OS follow the same steps as the server configuration above.
-
Go to Control Panel -> Add Hardware
- Click Next on the first page of the Add Hardware Wizard
-
The system will search for new hardware. Select "Yes, I have already connected the hardware" from the options and click Next
-
Scroll to the end of the hardware list and select "Add a new hardware device" and click Next
-
On the next page select "Install the hardware that I manually select from a list" and click Next
-
Select "Network adapters" from the list of hardware types and click Next
-
Under the Manufacturer list select "Microsoft" and under Network Adapter select "Microsoft Loopback Adapter" and click Next
-
Click Next to install the hardware
Once the adapter is installed reconfigure it like above but give it a client IP that's in the same subnet as your server you setup above.
-
Under the Control Panel -> Network Connections select the new Loopback Adapter.
-
Right click on it and select Properties.
-
From the Properties dialog under the General tab select Internet Protocol (TCP/IP) and click Properties.
-
Change the General settings to "Use the following IP address" from "Obtain an IP address dynamically"
-
Enter a fixed IP in the same subnet as your server. In our example, the server is at 10.50.50.1 so make the client 10.50.50.100 (use 100 as the starting IP for any client machine).
-
Enter 255.255.255.0 for the subnet mask
-
Enter 10.50.50.1 for the gateway.
-
Leave the DNS entries blank.
-
Click OK to close the dialog.
Finally on either client you'll want to create a named alias to your server in your local hosts file. This makes for accessing the server by name rather than IP and lets you use host headers on your server (something you'll want to do when you setup things like My Sites, it's preferred to use host headers over server names as you can setup multiple sites on the same server).
To update your hosts file:
-
Navigate to your Windows directory (usually C:\Windows)
-
Go into the system32\drivers\etc folder
-
Edit a file called HOSTS
-
Add an entry at the end with 10.50.50.1 as the IP address (press TAB) then enter your server name (in my example, litwaredemo)
-
Save the file
Virtual Machine
Finally, once the loopback adapter is installed on your host OS you can reconfigure your virtual machine to use it. This can be done while the machine is running. Go into the settings (on Virtual PC it's the Settings button or Action -> Settings menu when the VM is highlighted) and select Networking. From there pick the Microsoft Loopback Adapter for the adapter.
To do a test, try to ping the server from the client. Open a command prompt and type:
ping 10.50.50.1
(substituting the IP address you used in step #4 in the second part of the server setup above).
You should get a response. If not, go back and check the server and client to make sure all your IPs and subnet masks are set correctly and that the server shows connectivity.
Once that's setup, open up whatever browser you want from your desktop and browse to your server name (in this example, http://litewaredemo) and go nuts. Also if you need to perform some maintenance on the system, get into Central Admin, or whatever just use the Remote Desktop client from your host OS. It's actually much faster than using the native client and you can allow it to access local resources (like a downloads directory) so again, you don't have to clutter up your VM with downloaded files and applications you don't need.
If you create multiple sites on your VM to try out different features, layouts, etc. just create a new website and give it a host header (dev1, MyMotherTheCar, AReallyLongServerNameThatWouldBeHardToTypeInEachTime, whatever). Add this entry to your local HOSTS file on your client and fire up your browser. Easy sleazy.
Enjoy!
-
-
2010 The Year We Make Contact (or the next name of SharePoint)
It's official now, the next version of SharePoint that we've been babbling about (well, not that much babbling since we're not allowed to babble, but you get the idea) is now officially called "SharePoint Server 2010". Sounds like the title of the next Arthur C. Clarke novel.
The official press pass can be found here. It's April 15 and I was hoping it was the first but no dice.
There has been a long history of "confusion" of products. Microsoft Office SharePoint Server (MOSS) vs Windows SharePoint Services (WSS). Many people would mix and match names when posting messages to forums so every variation you could think of came up including:
- Microsoft SharePoint Services
- SharePoint Office
- Microsoft Office SharePoint Services
- Office SharePoint Server Services
- and the list goes on...
Add to that the various "version" numbers like 2.0, 3.0, 2007, 2003. Well, frankly I see Mike Walsh having a coronary over this. Oh well. Let the name calling begin...
-
Small Person, Big Life
Having a kid is hard. Not the changing diapers, walking around at 2am trying to get them back to sleep, convincing them broccoli is good for them part of it. When you have a kid your perspective changes. And when you hear about things happening to other parents’ children, it really hits home.
This last week has been a crazy one here at Nerd Central. On Wednesday Jenn called me at work to ask if we could re-host someone’s site, a blogger who’s daughter passed away, suddenly. Little Maddie was only 17 months old. And that’s part of why this really got to me. My Vista is 23 months old. I’m looking forward to all the things she has yet to experience in life. To have that taken away? Well. I don’t know how I’d deal with that.
The kicker (and why Jenn had to call me) was, the family’s webhost shut them down for excessive traffic caused by the outpouring of condolences for the loss of their only child. (I’ll give you all the gory details on that part of it in a follow-up post. Let me tell you now – it’ll make you angry when you hear about it).
The blog-o-sphere has been a buzz for the past week with literally thousands of bloggers, celebrities, and kind people giving their time, money, and love for the Spohr family and their loss of their little angel who was suddenly taken from them.
The mommy-blog world is a freakin’ powerful machine as they have been the driving force behind raising an mind-boggling $30,000 for the March of Dimes in honor of Maddie as well as money for Heather and Mike Sporh to help them cover funeral and other expenses over the next little while.
Joy Unexpected and Insta-Mom came up with a great idea to help raise funds for the family. They’re offering items up for raffle (a Nikon camera and a Nintendo DSi respectively), but instead of buying tickets, you get an entry for each $10 donation you make.
Rather than sitting back and just admiring their creativity, I’d thought I’d put up my own offering (with a geek spin on things of course).
So here’s my nerd version of this donation drive. For every $10 you donate (at the PayPal link below) your donation will get you a chance to win a MSDN Premium Subscription with Team Suite. The subscription is for 1 year from when you activate it and includes all Microsoft operating systems (for test and development) and copies of Team Suite and other great developer tool. The entire package is a great bundle for software developers and has a retail value of $10,939.00 USD. Others MVPs in the past have used their subscriptions as a giveaway or auction to raise money (for example Jamie Cansdale posted a similar thing for raising money for building a pump in Africa so I see this as the same thing). Remember, every $10 donation gets you essentially a virtual raffle ticket for the MSDN Subscription.
So to be completely clear on the steps you can take:
- Click on the PayPal donation link below
- Enter your information and make a donation of at least $10
- Forward the PayPal confirmation email to me (or alternately send me an email with your confirmation number and donation amount). My email address is emailme@bilsimser.com.
- Wait
- Optionally - Lather, Rinse, Repeat
I’ll randomly pick a name next week using a random number generated from random.org and announce the winner on this blog on April 20th. Entries will be accepted up to 12:00 AM Sunday, April 19th. You have one week to get your donations in and get a chance to win this package.
A Bit of a Disclaimer
A word about this post as I suspect I might get some kind of fallout on this as there were similar comments on other blogs about ulterior motives and intentions. I’m just one guy with a few geek friends who read this blog. True, this blog is generally aimed at technical content so this post, like the support call I put out for Nat last month, is a bit of a diversion. It’s only human though. I believe in the power of positive vibes and that the strength of many is outweighed by the few. Personally one person donating their hard earned dollars to another person is a feat of human kindness. A thousand people doing the same is something akin to a miracle.
Do I get a “kickback” for this? No. If anyone is making money, it’s PayPal with their 3% hit they take for administration fees. I wish they would step up and make up the difference to waive those fees for this sort of thing (We did with the donations for Nat). Yes, I do have Google ads sitting on the sidebar on this blog but in reality I get about $100 every 3 or 4 months from it. It’s nothing to pay the bills and doesn’t have me drinking umbrella covered drinks by the poolside and driving Ferraris to the corner store.
This is about donating your dollars that you might spend on a Starbucks in a day to what you feel is a worthy cause. Nothing more. Nothing less. The “prize” I’m offering up isn’t necessarily incentive but it’s something I hope will make someone out there extra happy. The donation alone is the kind of thing to be proud of, not the software package you might get by doing it. In any case, I believe in this cause and would like you to donate which is what this post is about. My apologies if you feel wamboozled into being beat upside the head with emotional posts like this.
It’s not my intent to turn my blog into something that asks you for money every time you visit. But in this case, as in Nat’s, I just don’t feel I can sit back and not act. If you donate other places, or don't have the means at this time, please don’t feel obligated. But if you are able to, I would ask you to consider this as a very worthwhile cause.
-
Alone in the Dark with Microsoft Desktop Virtualization
I don’t often get too bitchy with the mother ship, but I have to say that I’m highly disappointed with Microsoft and it’s desktop virtualization strategy. In fact, they really have forced us SharePoint developers to go down very few paths, and most roads lead to VMWare.
As a SharePoint developer one of the things you have to contend with is your development environment. As SharePoint only runs on a server (we won’t get into the unsupported Bamboo work around to get it running on Vista) it does make development a bit of a challenge. After all, as a web developer you just install IIS and off you go. With Visual Studio 2005 and above, the web server was built-in for you so you didn’t even have to install IIS. For SharePoint it’s a whole ‘nuther story. The minimum setup you need to hit the ground running with SharePoint is Windows 2003 Server (although 2008 installs much faster and is quicker to get setup) and a copy of SharePoint. For development and demos you *can* install it with the built-in Windows database, but you’re going to need to install Visual Studio anyways so you might as well have it sit on top of SQL Express at least. If you plan on doing any Reporting Services integration then you might as well install SQL Server Developer Edition with Reporting Services instead. In other words, to get a fairly decent rig up and running (minus any multi-server configurations) you’ll need about 30gb and a day or so to install and configure everything.
So to get any traction enter virtualization. The ability to start up your server (sometimes from a saved state) and start developing. Microsoft currently offers up 3 tools to do this (pretty much all free, although Hyper-V requires Server 2008). Virtual PC, Virtual Server, and Hyper-V. Any of which has it’s advantages and disadvantages but we won’t get into a compare and contrast post here. This is about where do we go from here? I fully blame Microsoft for this. I can’t spin it any other way. They went full-on with Hyper-V but left desktop users in the dust.
Virtual PC was acquired from Connectix and turned it into a pretty good alternative to VMWare’s workstation offering at the time. Grant you, VMWare has been up to date on things pumping out newer versions with better and better features while Virtual PC, well… It really hasn’t changed from the 2004 release and that release didn’t really change all that much from the 5.0 version from Connectix. Sure, new guests were added and I’m sure they’ve made some performance improvements internally (did they? I have no evidence to say either way).
There you are, trying to figure out what options you have. Virtual PC 2007 is IMHO all but abandonware. The last service pack added Vista and Server 2008 guest OSes but in reality, the product is dead and I see no future for it. The team has moved onto the Hyper-V group and the product may as well be dropped as it has no future (feel free to chime in here guys and prove me wrong). Looking at Ben Armstrong’s Virtual PC Blog, the last year or so of entries are all about Hyper-V with a few entries about getting some obscure game running on Virtual PC. As for Virtual Server, that’s even more so abandoned than Virtual PC (again, “R2 Service Pack 1” was released but all it did was add new guest OSes to the mix). The product still carries the “2005” branding and there’s no Virtual Server 2009 or 2010 anywhere to be seen (correction, ask a softie and they might say “Oh you mean Hyper-V!”).
For those that are thinking about running Hyper-V that’s a fair option but think first. This is a server product so running Server 2008 on a laptop (because it gets really expensive in freight and pretty heavy to lug around desktops to conferences) isn’t really an option. Call foul if you will and hey, I ran Server 2008 on my last laptop using the most excellent resource win2008workstation.com but guys, this is a server OS and having it as your primary OS on a laptop isn’t a long term solution (there’s so many workarounds to try to get “normal” desktop applications running on it, and don’t even try to do mobile app development). As for Hyper-V on Server 2008 on a laptop, it’s possible but a) your system BIOS needs to support it and b) you need enough horsepower to get Hyper-V running as well as the OS and 2GB really isn’t going to cut it. Again, machines are becoming more and more powerful but I really don’t want to haul around a machine that takes down the Eastern Canadian Power Grid every time I fire it up. Support (for those that do tend to like to have it) is probably going to be hard if not impossible on a laptop running Server 2008 and Hyper-V. I just don’t think Microsoft has marketed this combination nor is going to give you much assistance when you call PSS with a problem and describe your setup. I could be wrong but I think there’s a reason why we have server class machines and workstation based operating systems. Live on the edge, but when it comes to my daily bread, I don’t like to take big chances that haul me into long downtimes rebuilding a server (even a virtual one).
So where exactly does that leave the desktop developer that needs a server OS (aka SharePoint, although I’m sure there might be others). Hello VMWare! Yup, Microsoft has conveniently driven us right into your arms. Don’t think so? I don’t see a x64 guest option anytime in the future for the aging Virtual PC or Virtual Server and with the next version of SharePoint being x64 only, where do you turn if you need to be portable. VMWare already supports x64 guest operating systems. You following me Virtual Guy?
Let’s go over the options for portable server-type development then:
- Stick with Virtual PC 2007 SP1 but you’re basically screwed if you want to do SharePoint 14 development with it.
- Stick with Virtual Server R2 SP1 but get screwed for the same reason as #1
- Run Server 2008 on your laptop and enable Hyper-V (assuming your hardware supports it and you don’t need certain programs)
- Run VMWare Workstation right now and keep running it for years to come.
Yeah, so many choices huh? Thanks Microsoft.
Am I wrong? Please beat me down in the comments.
-
How do you know she’s a witch?
She looks like one! So begins one of my favourite skits in movie history, the witch scene from Monty Python and Holy Grail. The gist of it is: If she weighs the same as a duck then she’s made of wood and therefore… A witch! And what do we do with witches? We teach them Agile!
What do witch hunts have to do with software development? Plenty.
How do you know you’re really “doing Agile” or following Scrum practices in your project? How do you know if you’re doing the right thing or not? How do you know when it’s done? How do you measure success? Why is the sky blue?
All of these questions come up when things start going sideways in the Agile sense, and you fall into the Scrummerfall way of doing things. Practicing traditional Waterfall management techniques but calling it Scrum. Tasks are assigned to people rather than claimed by owners. Customers are non-existent and uncommitted. And the team really doesn’t know what they’re delivering or why, they just keep doing stuff to stay busy because the PM tells them to.
Brad Wilson describes Scrummerfall as the way to ensure failure at a much faster rate than you had with Waterfall alone. There are some clear signs you’re on a slippery slope and if you see them, you should grab hold of something (preferably a pair of coconuts) and find yourself a swallow (African or European – your choice).
Three key things that you can bank on in Scrum:
- The practice regularly delivers business value
- The team is frequently aligned with the business requirements
- The business drives the project based on their needs and values
There are other elements of Scrum here but I like to highlight these ones as they’re not bogged down in techno-babble terms that nobody understands.
Delivering Business Value in a Predictable Way
A sure sign of Scrummerfall is having a schedule that follows some mythical Gantt chart or Waterfall-ish schedule that’s about delivering “phases” or “stages” of the product. Waterfall PMs will plaster these on the wall, attach them in monthly reports, and bring them to sprint reviews to show the customer “how well we’re doing”. How well you’re doing in an Agile project is measured by the business value you deliver and that can only be determined by your customer, not IT. Regular sprints of fixed lengths creates that predictability that is often missing in Waterfall projects where milestones keep slipping because of uncertainty with features that were estimated and planned months previously. If your team demonstrates value-added features at the end of your sprint and the business is on board to move to the next one, then you’re doing something right. And you’ll be hopefully able to more accurately predict the level of effort next time around.
The Business Requirement Alignment Shuffle
Requirements and business users change their minds. Especially after seeing results. It’s human nature. How many times have you brought that “perfect” tapestry home only to have your wife say “No, now that I see it on our castle wall it’s just not right. I want a shrubbery”. System solutions are the same thing and that’s fine. After a sprint ends, the business has every right; nay the privilege; to say what’s in or out next sprint. And heck they may even introduce brand new features as they see the system take hold and start dreaming up new stuff. This is *not* scope creep. It’s manageable expectations that are agreed upon by everyone once they understand the depth of the requirement.
The Scrummerfall bing-bong alarm will go off if you’re in your 3rd day of the sprint and the PM starts picking and choosing from “other items” in the product backlog, substituting them in because of impediments. Avoid this at all costs. Features are not interchangeable like Lego. Even stories with the same number of points doesn’t mean it’s the same size. In situations where you’re not using story points or any kind of measurement system of feature/story size you’re in Scrummerfall land and cannot, under any circumstances, play the shell game with yet-to-be-determined-features.
Business Driven
In Scrum, the business drives the project by prioritization and commitment in order to help the entire team achieve some business value (which down the road should equate to some ROI). In Scrummerfall, the business just says “you pick what you need to do, propeller-heads, we really don’t care and will do our thing, you do yours”. A customer who’s not committed to the process but demands the project succeeds is an impediment. I think the biggest success factors in any Agile project is a fluid customer involvement. If you’re not engaging your customer, for whatever reason, then correcting that is Step #1 to success. IT cannot make business decisions. I’ve been on projects where we did, against my advice but forced by the PM, and when the client finally crawled out of whatever rock they were under, they took one look at the assumptions we made and blew 2 weeks worth of a teams work out of the water. Again, the powers that be, who only read Scrummerfall monthly reports, will chalk this up to Agile failure and blame Scrum.
Engage the customer. They may not always be right, but, like any engagement, it’s a courtship and a democracy, not a dictatorship. There may need to be some hand holding at first and you might have to wade into the pool with them step by step, but it’s for the greater of the entire team and success of the project to do so. Or you could take the Scrummerfall approach and just push them off the cliff hoping they know how to swim (and maybe tossing them a life preserver if you’re really feeling generous).
Peter Schuh has a great article here on 7 simple steps to go Agile without going extreme. It’s more geared for the nerds and developers, but there’s a great tip in a section called “Identify and collaborate with your customer”. That’s what this is all about.
Know the Signs
Knowing is half the battle and if you sense you’re on the slippage towards Scrummerfall (or are already knee deep in it) it’s time to sink or swim. Step back and get everyone involved to help identify what’s not working. If need be, stop the project and regroup. It might be to get some level of understanding in the requirements (or even the problem that you’re trying to solve) or get resources on track or whatever. PMs and other manager-types around the world are saying “Warning, warning, danger Will Robinson. We can’t afford to stop this project”. Frankly, you can’t afford *not* to stop it for a few days or a week at most. The entire team won’t be running flat out during this time but when things get back on track, the team should be better off. Don’t let this technological terror manage you and keep driving down the road with nobody at the wheel just to satisfy some planned delivery date. While you can screw around for the next few months/years on the project (and hey, some firms have all the fun because of unlimited funds) there’s little value in just doing stuff to keep busy.
Adoption is a two way street and sometimes you’re going to face killer bunnies and sorcerers named Tim. It’s not pretty sometimes but Agile is about adaptability. Humans adapt well to their environment so should projects adapt well to theirs. If you’re setting out to change the world in one fell swoop, stop kidding yourself and be a little more pragmatic. If however you’re looking for a few small wins to move inches closer to an Agile approach to project delivery, it’s an attainable result given some realistic goals. Know your audience and your environment and play nice with the other kids.
Waterfall is still valid today. Document, design, test, are all still there in every project. Practicing Scrummers (is that a word?) just do it in a different sequence.
A bit of a side tangent. When I’m mentoring people on development, specifically refactoring, we do the refactoring manually and by the book. It’s painful in this day and age but it’s done for a reason, to help understand the meaning behind the refactoring and what each step of say an extract method is doing (and more importantly, why). After that, we can pull out the copy of ReSharper and accomplish the same refactorings with 1 or 2 keystrokes. I see Scrum the same way. Implement it by the book at least the first few times. Get into it, understand it and prove that it works. *Then* tweak it and massage it to better fit into your organization and how things may have been done in the past, perhaps grafting PMO processes, reports, and budget tracking into it.
I don’t believe for a second that any organization out there can say “We’re doing Scrum everyone, pack up your PMI certifications and get rid of those silly monthly reports, we’re *Agile* now!” and drop everything. Even after learning and practicing it, they come to an understanding of what works and what doesn’t. If the team is geographically divided (with some members in different time zones for example) it’s impractical to have 8:30 AM stand-ups every day with everyone. Adjust to what makes sense to everyone.
Agile is about adaptation and it can adjust itself quite well because it doesn’t follow strict rigorous policies that need to be approved by a committee and signed off by 15 heads of state before it can be followed. The Scrum approach is much like a morning brunch in a Dim Sum restaurant. You pick and choose what you like and ignore the chicken feet, no matter how appealing they may look like.
It’s about what works for the team and the team has to discover that with practice and experience. If you only implement one or two practices (say daily stand-ups and a product/sprint backlog) and they work for you not against you, then good for you! You’ve taken your first step. However it needs a fighting chance to start. Wedging Scrum (or any Agile practice) in where it doesn’t belong is a bad practice in anyone’s books and not the fault of the process but the person trying to force it in. Don’t blame Scrum for bad choices you make.
At the end of the day, whatever methodology, practice, or process you follow it needs to be backed by the new-but-old methodology, Common Sense. Agile is a powerful tool but not a religion. Scrum can be tailored for your needs, but you need to be able to identify those needs first before trying to apply any practice against them. Again, Common Sense reigns supreme here. There is no end-all methodology that will save any project from the depths of Hell. It’s the ability to identify, use, and adapt pieces of Agile that will help you to the end goal.
-
BlackBerry App Store, $200 do not pass go, do not upload application.
I work on a BlackBerry app called DopeWars. It’s a silly little app and isn’t going to make me a world of money (it’s free and open source) but it’s fun and my diversion into the BlackBerry/Java world (as painful as the development environment is there, you think SharePoint is tough?). I keep on planning to write more apps but that unfinished project stack keeps getting bigger and bigger and something's gotta give.
So I was all excited when it was announced that BlackBerry would follow in the steps of Apple and their highly successful App Store and offer a BlackBerry App World. Microsoft has done it with the XNA Creators Club and the business model seems like a good deal. Apple gets a cut of the retail price of your app but provides you with exposure and infrastructure. Frankly, the Apple people have it nailed. By sheer attrition, you can put a crap app out there for $2 bucks but with 100,000 people looking at it, you’re bound to make back the time it took you to slap it together. There’s a lot of crap out there and the crap pile just keeps on getting higher.
In any case, they mentioned you could sell or give away your app on the BlackBerry app store. So here I had an open source app that was pretty popular and it would be nice to get some more exposure. Why not?
Remember, this is coming from a guy who’s cheap like no other when it comes to handing out cash to guys that don’t need it. I don’t mind Apple or Microsoft gouging me for a percentage of my profits. They provide me with a service and in exchange I believe they get what is coming to them. I call it the George Lucas attitude to software development. George didn’t ask for a heck of a lot of money for Star Wars, he just asked for all rights to merchandising and let the film company in on a percentage of the profits. Future stars like Mark Hamill, Carrie Fisher, and Harrison Ford were given royalty cuts in the profits. And frankly that made them a boatload of money.
So I’m no George Lucas, but I do feel that letting the big guy take a chunk in order to let the little guy survive is key. Indie developers are just that. Indie. Like independent recording artists, they don’t have a heck of a lot of cash to toss around for “studio time” so it’s done as a barter system. I’m quite happy to exchange a small percentage of profits with Apple for 10,000,000 users even remotely considering my app or being exposed to it. And here I thought RIM would be the same.
Apparently not.
As I waded through the myriad of agreements and checkboxes, I reached the elusive Step 3 of 4 for filling out the vendor application. No problem I thought. I’ve done this a million times before with Apple, Microsoft and others. Then I hit the wall. The cash grab. The money pit.
RIM wants $200 (USD) as an “administration fee” to complete registration. Yup. No $200, no passing go, no uploading free application to app store. Thank you, come again.
WTF?
RIM is a Canadian company and here they are asking for US dollarinos. First insult.
You’re paying $200 for the “privilege” of submitting only 10 applications. Oh yeah, and that doesn’t actually mean you’ll get it approved. If it gets rejected (this is the good part) it “will be counted against your ten application submissions”. Second insult. Apparently RIM is the gatekeeper for apps and, like the Claw they decide who will go and who will stay. And it’ll only cost you $20 to find out.
The final insult. The kicker. To upgrade an application it counts as a new submission against your 10. Yeah, that’s right kids. I create 2 or 3 versions of my application and submit it (assuming it gets accepted, no word on what the standard for acceptance/rejection is) and I’ve gobbled up 1/3 of my original 10 applications and essentially blown $60. Sure, you want to submit more than 10 versions or applications? No problem, we’ll kindly take your $200 again. Got rejected? Awwww. We’ll let you submit it again. It’ll only cost you $20 a shot.
Frankly, this is the nerd equivalent of crack cocaine, but without the benefits.
Okay, at the end of the day it’s your choice. I’m sure a lot of you are reading this thinking “What a jerk, don’t pay it then and stop bitching”. Don’t shoot me. I’m just the messenger and putting it out there for others that might think this new way of delivering apps is for them. Needless to say I’m passing on BlackBerry app store as far as being a vendor. I’m quite happy with my silly little app living up on SourceForge and the 10 users seeing it.
Buyer beware, Caveat Emptor, and all that good stuff. Feel free to hand your coins over to RIM if you want, just understand that IMHO RIM’s BlackBerry version of App Store isn’t for indie developers. YMMV.
-
MVP Award and the April Fool
Here We Go Again
Well, it’s that time again. For some MVPs (including myself) we’re on the April 1st cycle (also known as the fools cycle). It’s where every year on April 1st we anxiously await to see if Santa Gates will put us on the naughty list for one more year.
Yeah, yeah.
- Bill Gates is no longer in the picture and it’s Ray Ozzie
- Mr. Gates was never involved in the MVP Program (except maybe as some geeky cheerleader just once)
- We don’t anxiously await to see if we’re getting re-awarded
- There is no naughty list
(maybe the last one isn’t completely untrue and if there’s a MS naughty list, I’m probably one it)
In any case, the award cycle for April MVPs is here as I’m sure you’ve seen from your fellow bloggers around the world. For some unknown reason, the powers that be in the collective decided that yes, Virginia, there is another year for this SharePoint Guy. I was re-awarded for SharePoint Server (at least I think it was for that, like all my email from @microsoft.com I haven’t really read it in detail). Another year of being the SharePoint MVP dude in Calgary, another year of Microsoft propaganda, another year of crappy t-shirts and non-functioning swag. Yahoo.
April Fools Day Post
My previous post, if you haven’t clued in yet, was of course an April Fools joke. Some years I think I’m pretty successful (ask me about that one over beers some time) and other years not so much. This year was probably one of the more involved posts but was met with a meh attitude. Whatever. It’s one day out of the year that I go off like a raving idiot and make mindless blather try to sound interesting. Feel free to unsubscribe to this feed for that one day if it really peeves you off.
I did want to highlight some elements of todays joke post in case you missed the pathetic attempts at humour cleverly disguised as computer nerd in-jokes:
- “This is very much like the highly successful Windows ME version”. This should have probably clued you into the joke. Windows ME is anything but highly successful. Really. It was in all the papers.
- “the Vendetta team sought out open source projects”. While MSFT does actually look at open source projects and is a strong proponent in supporting it I doubt we’ll ever see open source components like Drupal as part of the core system. (although I do firmly believe MSFT *should* buy up Paint.NET and make it the MS Paint replacement. You following me Microsoft guy?)
- “Windows 7 really was just a test bed”. As much as I can’t figure out Microsoft Marketing any more than you can, Windows 7 really is the next version of Windows and yup, that’s what it’s called. And really, give it a looksee. It’s actually one of the most stable and functional beta’s I’ve seen in a long time.
- “the name Vendetta was chosen with this new logo”. This is a fun logo my wife created by combining the Microsoft “M” with the V for Vendetta “V” and some graphic of a globe she stole from an unnamed website.
- “the SharePoint File System (SPFS)”. Well, I just *had* to work SharePoint into the deal and what better way than with a file system. It’s crazy but hey, this is the guy who prefers to present at Tech Ed with no pants remember?
- “Microsoft sought to revamp Bob for modern times”. I really still like Bob and actually do fire him up in a VM from time to time to laugh. It was a silly joke and I wish I was a fly on the wall during the marketing pitch for this guy. And hey, bringing IKEA in just made it all feel like a twisted David Fincher movie.
- “Clippy has returned and is just as helpful as he always was”. I think I would physically pound my keyboard back when you couldn’t turn Clippy off and he suggested ways for me to improve my documents. ARGH! Graphic courtesy of Jenn and inspired by that satanic little doll we all love to hate.
- Azure meets AIR. Not something that will happen in a million years (pretty much willing to bet money on this) as they’re competitors and AIR is direct competition with SilverLight and ClickOnce and all that .NET goodness. Once we had the Azure/AIR going it was a natural progression to the A/A “twelve step program”.
- “TIB BIOS is also the chosen platform for the Department of Defence and is installed on all D.O.D. hardware (through a subcontract with Cyberdyne Systems) and their new, yet unnamed system, which is to come online fully by April 19, 2011.”. Terminator fans will recognize this as Cyberdyne systems was the firm that “disovered” the Terminator hardware and created the basis for Skynet. Which went online in Terminator 3 on April 19, 2011. Don’t worry, your Microsoft toaster won’t be taking over your house in 2 years.
Anyways, it was fun and the day is passed. Move along folks. Nothing to see here.
-
Windows Vista Rebranding
I’m pleased and proud to announce a project I’ve been working on at Microsoft for the past 6 months. It’s the rebranding of Vista. Why a rebranding? Basically the powers that be decided that based on negative reaction and poor adoption of the Windows Vista operating system and the enthusiasm with Windows 7 it was the best use of resources to rebrand Vista into something new. A better version of Vista that is out there but not something completely different. This is very much like the highly successful Windows ME version which was essentially a rebranding of Windows 95.
So here I’m presenting the new version of Windows Vista called Windows Vendetta.
Why Vendetta? First off, it keeps the “V” letter which was highly important for the marketing group and maintained the same product placement in software catalogues that used alphabetical sorting. Second, it represented a voice against the oppressive nature of Apples latest operating systems and market share gain and a return to a more component based approach to software development and delivery.
Borrow Not Re-invent
Taking a cue from the recent release of Google Chrome, the Vendetta team sought out open source projects and tools in order to deliver key elements of their operating system upgrade. This includes:
- Drupal. While the system is built on top of the web platform, Drupal offers a content management system that far exceeds anything Microsoft has done. A PHP implementation of SharePoint was created and plugged into Drupal (see the SharePoint File System below) as well additional plug-ins were created for Wordpress to interact with the SharePoint storage system.
- webERP was chosen to manage Multilanguage features and provide a built-in finance system for end users. Coupled with CardSpace it provides a secure financial wallet for doing online transactions with any major financial firm (this sub-system is not available in the Ultimate Gamer Edition)
- VooDoo cIRCle is being used to manage some elements of the new help system (see below) and provide automated assistance to users
- MindRaider has replaced OneNote for taking personal notes. It also integrates with the file system to provide journaling capabilities.
- Notepad++ is being used for *all* text editing. A special edition of Notepad++ will be included in Vendetta with Microsoft Word .doc and .docx read, create, and save capabilities
- Paint.NET was acquired and turned in the Premier Image Editing subsystem for Vendetta. It also serves as a rendering engine for all games and graphical applications.
Where does Windows 7 Fit in?
So you might be wondering where Windows 7 fits it? Windows 7 really was just a test bed, a way for Microsoft engineers to try out some ideas to see how the public would react. Windows 7 was really the Pilot program for Microsoft Vendetta. Windows 7 was never meant to be released as a real product and was simply a highly popularized marketing test. After all, who would ever call an operating system “Windows 7”. Microsoft has long abandoned numbers or years to represent names in their products. In addition there was controversy over the 7 nomenclature as it didn’t necessarily represent the 7th release of the operating system. To lessen the confusion, the name Vendetta was chosen with this new logo:
The logo represents Microsoft’s efforts to regain their global footing in the wake of Apples recent significant gains in the desktop market and to make Microsoft stand out in the community. The logo represents a collaborative effort between designers in 127 countries and 18 continents. Reports put the cost of the design of the logo near the $30 million dollar mark (including $2 million dollars that was used up the first few weeks on a pub crawl in Stockholm).
Features of Windows Vendetta
Ray Ozzie, the head of the project sums up Windows Vendetta best with this quote:
“The nature of work is fundamentally changing for today's information workers. We've moved from an era of personal productivity to one of joint productivity. From tightly coupled systems and organizations, to loosely-coupled interconnections between people, business processes and work groups.”
Vendetta has been specifically designed and built to move towards this vision of the future and does it utilizing the following features.
The SharePoint File System (SPFS)
This brings in my participation in the program. I’m not an operating system guy (much) but I am a SharePoint dude. Microsoft approached me with the idea that the new Vendetta operating system would be completely built on top of and presented through SharePoint. In addition, the team re-vitalized the old WinFS model (another marketing test) and positioned it to use a new logical addressing system via URIs. This becomes the SharePoint File System (SPFS) and highly preferment as it’s optimized and built on top of SQL Server 2008 using an embedded version of the control processor.
The SPFS provides a way for users to access files rather than directories but URIs (URLs) so your local file system would be accessed (assuming your machine name is called Wolverine, I name mine all for Marvel Super Heroes) as http://wolverine. Gone are drive letters as everything is virtual and logical (much like the UNIX operating system). My Documents is simply http://YourMachineName/MyDocuments. To run Microsoft Word for example you would navigate to http://YourMachineName/Office/Word.exe
This makes for easy discoverability of software (a navigation page is provided to find all your content, much like the current Windows Explorer but web based). In addition as everything is logical, you can use host headers for creating aliases to programs. If you don’t like the location of Word.exe just create a host header to access it via http://MyMachineName/Word (or whatever name you want to give it) and it’ll just work.
User Interface Rebranding
Microsoft Bob was a user interface experiment introduced in 1995 in order to be helpful to novice computer users. With more and more new users coming on-board, Microsoft sought to revamp Bob for modern times. Original users found Bob to be too cartoon like so Microsoft, in consultation with designers from the IKEA furniture company, came up with a new design for the user interface. Using elements of what was successful with Bob but integrating IKEA like “simplicity” and “innovative” approaches creates a unified interface that everyone can work with.
Here’s the default Microsoft Vendetta Office Worker Edition theme:
As you can see, everything is accessed via “real-world” objects. Just like getting up and going to the printer, you select the printer and drag and drop the printout to your desk or the email area to send it to someone. Similarly, you can simply drag a document from the Word area to the Fax area to send off a paper copy to someone. New programs added to SharePoint show up in default locations (based on a new Installer API) but can be customized by users after installation.
The interface is simple to use and easy to understand. Other “themes” will be available in the various Vendetta editions including Extreme Housewife Edition, Blue Collar Worker Edition, Overpriced Consultant Edition, and Ultimate Gamer Edition shown below:
The Return of Clippy
After much of hype around the “Death of Clippy” he’s back, and with a vengeance. Clippy has returned and is just as helpful as he always was (I’ve never turned him off).
Microsoft has “upgraded” him and he’s now called “Chuckie” and implemented as a Silverlight component that is on every page you visit in your operating system (via the SharePoint publishing model). By default he’s turned off but can be enabled whenever he’s needed. An isolated process (eliza.exe) runs in the background managing the users frustration levels and another process (chuckie.exe) runs in order to to “pop” him up whenever the user is in trouble or needs help (as determined by the eliza worker process).
Here’s Chuckie in action in a recent user error. The user was trying to access a restricted website on the Internet and entered the wrong username/password combination.
Azure Meets AIR
Azure is a buzzword these days and rightly so. Azure is a service platform created by Microsoft for delivering new applications run from the cloud and provide cloud-based capabilities to existing applications. For Vendetta, Microsoft negotiated with Adobe and their AIR technology. AIR provides a framework for building Rich Internet Applications that run outside the browser on multiple operating systems.
In the case of Vendetta, AIR will be used to offer up the operating system itself to any hardware capable machine that can respond to it (see TIB BIOS enabled machines below). Using the Azure cloud as a home for the new operating system and AIR as a delivery mechanism means users are “always connected, always online”. No need to find an Internet hot-spot anymore as Azure will deliver operating system updates to a SharePoint Staging Document Library via AIR. Event handlers on the Document Library will deploy the updates to your system as needed with no downtime or reboots.
The A/A Program
Microsoft recently introduced a program called Fix it. This provides automated solutions to common problems.
With the availability of Azure and AIR, Vendetta is moving forward with this program to create a Twelve-step program called A/A. A/A is a fellowship of men and women who share their experience, strength, and hope with each other through the Microsoft Knowledge Base to recover from system errors.
From the official literature, the new updates to the Microsoft Fix It Solutions Center for Vendetta say:
“You’re only twelve steps away from the fix to any problem”
TIB BIOS
As the final part of the Azure/AIR partnership, Microsoft acquired TIB BIOS Corp. last year as part of the deployment plan for Vendetta. TIB has a technique to deliver, using something similar to slip stream technology currently used in deploying service packs, the operating system bits to your PC. TIB works in a similar fashion as live streaming video companies do (like NetFlix) in delivering bits.
The Vendetta bits are sent down from the cloud via Azure and delivered to the computer (using a special embedded version of AIR). Within 10 seconds of receiving the first bits, TIB starts assembling the rest of the operating system as it boots. By the time the BIOS boots and the system has you logging in, enough of the operating system has been delivered to be functional. After that, bits are streamed down via Azure and AIR in the background. Priority is given for apps that are used frequently and the highest priority is given for apps that are produced “on-demand”. The core of Vendetta was culled from parts of the BEOS operating system for this feature, with every object being it’s own thread.
The result is an operating system that can be installed in minutes and delivered to any hardware enabled TIB BIOS machine. TIB is planning to ship embedded versions of it’s BIOS for the iPhone, iTouch, BlackBerry and limited GM 2010 Model Vehicles. TIB BIOS is also the chosen platform for the Department of Defence and is installed on all D.O.D. hardware (through a subcontract with Cyberdyne Systems) and their new, yet unnamed system, which is to come online fully by April 19, 2011.
Availability
The price point for Microsoft Vendetta has yet to be announced but will be competitive with Apple’s OS X so it’s expected to be around $120 USD. All editions offer the same features, just different ways of approaching the same problem with unique user experiences. The price will not be different for each edition, but users may be asked for credit card information after startup in order to activate the SharePoint File System. This is primarily to prevent piracy but also offers “extra bonuses” for end user. Activation fees will range based on location, employment status, and the number of Macs you have in your home.
An open beta will be coming soon. In the immortal words of the Duke Nukem Forever team, it’ll be done when it done. So there’s no set date right now but its coming. Stay tuned for more information on public previews and your chance to get in on this historic change to the most deployed desktop operating system out there!