Tag Archives: thoughts

Windows 8 editions announced–a few thoughts

Today, Brandon LeBlanc announced the upcoming Windows 8 editions. It’s an interesting read for multiple reasons.

First, the official name of Windows 8 remains Windows 8. This was expected, since after Windows Vista, Microsoft started using a (bit) more logical naming conventions for their server and workstation products. Servers follow a year-based naming model while workstations follow an incremental number. Does this mean that the upcoming Windows 8 Server will be named Windows Server 2013? Perhaps, even if Microsoft tries to avoid the bad karma of the number 13.

ARM ProcessorSo the editions will be Windows 8, Windows 8 Pro and Windows 8 RT. I’m not fully convinced that Windows 8 RT, which is intended for ARM-based devices such as slates and tabs, is a good moniker. It feels it was lifted from WinRT (or Windows Runtime), which is the new programming model for Metro-style apps on Windows 8. Correct me if I’m wrong but aren’t Windows 8 and Windows 8 Pro also platforms for Metro-style apps, hence WinRT applies to those editions as well? If you do a search on ‘ARM’ and ‘RT’, you’ll get several hits for real-time. Not a big issue but certainly something to confuse non-enthusiasts.

The chart that differentiates key features between the editions, a few features caught my attention. Microsoft Office is listed as a feature for only Windows 8 RT. It’s a bit confusing but apparently it means that Microsoft Office (along with Word, Excel, PowerPoint and OneNote – no Outlook) is preinstalled on any device that ships with Windows 8 RT. You can still install Office 2010 or Office “15” for Windows 8 and Windows 8 Pro.

Windows 8 RT also supports ISO/VHD mount. This is an interesting feature, considering that a powerful tablet/slate-device could then mount existing VHD-images, or even boot to a virtual machine.

Too bad that Bitlocker and Bitlocker to go are not available for Windows 8 or Windows 8 RT, just for the Pro edition. Is it because non-Pro-users do not need Bitlocker-based encryption, or that nobody uses it outside the corporate world?

What’s missing from the feature list is Windows To Go. It’s a feature that allows you to boot and run Windows from any USB-based mass storage devices, such as a USB stick. It’s a neat and highly useful feature, but probably still in 1.0-stage and was not listed separately in the announcement.

In retrospect it seems that Windows 8 Pro will be the default choice for anyone even remotely interested in configuring, administering or designing Windows 8-based workstations or networks. Windows 8 will be the off-the-shelf edition for market PC’s and people who don’t know any better. And Windows 8 RT is the natural choice for tablet devices that are ARM-based.

Windows 3.11Compared to Windows Vista’s 5 editions (Home Basic, Home Premium, Ultimate, Business, Enterprise) and Windows 7’s 6 editions (Starter, Home Basic, Home Premium, Professional, Enterprise, Ultimate) the choice to trim editions down to 3, is a welcomed changed.

Now I can finally remember all three of them! (I miss Windows 3.11 for Workgroups, it was a simpler life then)

On being busy

1986 Ferris Bueller's Day Off PinI took a day off today from my normal work – let’s call it my winter holiday. I decided not to make it all too official and didn’t configure OOF (which, by the way stands for Out-of-Facility rather than Out-of-Office) or send numerous emails to my clients and partners. Instead, I simply blocked the day from my calendar.

Now what? I’m so used to being busy it took me a few moments to realize that I need to plan something that will keep me busy for the day. Something that does not involve working with SharePoint.

I opted to go indoor climbing (since it’s too cold for rock climbing at this time of the year in Finland), get a back massage and spend the rest of the day on the couch reading fiction. I managed to do the first two, and ended up browsing Amazon.com and Imgur.com for a few hours. Still, it felt good.

My son explains life with this simple to-do list.Before ‘becoming my own boss’ I felt I was busy. I actually had to get to the office before 9 in the morning, and I had to leave the office before 6, so that I could do whatever I needed to do in my spare time. Reminiscing those days I still feel that – at the time – I was fairly busy, but not overly organized. I’m still not super organized but at least I keep track of things better with my super simplified GTD.

The difference in the old days was that I didn’t have the urgency of income. I could stroll down the office hallways, get a nice cup of coffee, stop by for a chat for half an hour, get back to my desk and read that interesting white paper – and still get paid equally well. The upside with this is that you can really immerse yourself in interesting stuff, and do deep-dives for several hours straight.

Being employed in a large corporation benefited me by not having to worry about money.

I only realized this years later. The utilization tracking, monthly review discussions with my manager(s), excel-based KPI’s – all designed to keep me feeling the urgency of my work. Don’t slack, do your work and all gauges will become green. Well, in all honesty, maybe all those fancy managerial tools and charts had real meanings too.

Urgent NewsThe difference in a smaller organization where money you charge today from your customers shows up in your payroll tomorrow, is huge. The sense of urgency is so present that you waste no time.

Get a cup of coffee? Sure, if it’s brewed already. Go for lunch? Why not, if it doesn’t take longer than 35 minutes. Optimize driving routes to save 10 minutes of your total commute? Absolutely. Read that interesting white paper, it’s only 200 pages? No time, better save as PDF and read it from my iPad in the evening, when I’m too tired to write emails or documents anymore.

So which is better?

I can’t really tell. Both have their upsides: I’d love to have even a day each month when I wouldn’t have to worry about schedules or if I have enough time to learn new and interesting technologies. Then again, I could do that any day of the week but the thought keeps nagging in my head, that if I spend 8 hours doing this, is it 8 hours deducted from my payroll?

As a SharePoint professional, should you work for small or big company?

SharePoint professionals, who are able to perform well as IT professionals, developers, technical project managers or designers have been in high demand for the past few years. Whether you are a seasoned professional or an aspiring one, you should carefully considering the different opportunities small and big companies provide.

The big difference

A big company gives you big opportunities. Not to everyone, but to those who excel, and to those who can survive in challenging situations. You might have the opportunity to work in a multimillion dollar engagement for a global brand. This means you are exposed to greater challenges, larger environments and larger budgets. You don’t need to worry about licenses as much as you’d normally do. Four or six WFE’s? Who cares, just put as many as you can justify for the time being. SAN? Sure. How much memory for Application servers? 16? 32? More? You might feel like a kid in a candy store.

With greater opportunities come greater obstacles. Last year, as part of a larger deployment, I was tasked to design and implement a fairly simple functionality between two SharePoint farms. Normally this would have been something I’d maybe spend 4 hours doing, and a few minutes documenting and that would be that. Fire and forget, it works – moving on.

But not this time. With all the stakeholders, numerous vendors, ISP’s, hosting providers, security managers and their managers looped into the discussion if what I was to do was reasonable and within corporate security standards, it actually took more than two months to finalize. Not full-time of course, but in the tens of hours eventually. Greater opportunity also means greater mass, and slower movements. Less agility. It’s more thorough but slower, and you can easily lose sight of your target – what was I supposed to do again?

A small company might be able to give you big opportunities, either as part of a larger company’s effort, or big in the sense that it’s huge for that particular small company. For a 10 man company doing a 50 day engagements is large. For a +10 000 person company, 50 days is just a bit too small to start with.

Working for a small company

I find satisfaction working for both arenas – big and small, tiny and gargantuan. The benefits of working for a small company are maybe too numerous to simply list here, so I’ll just outline the most rewarding and satisfying ones.

For starters, you get to do everything.

SupermanDeploy SharePoint with Powershell? Sure, consider it done. Design a new billing systems for in-house use? Good stuff, working on it. Go and buy a few new laptops, fiddle with the BIOS to see if we can use these as our training and conference presentation laptops. Check the comments the customer sent and fix the customization, and re-deploy when you have the time. Oh, and when you’re done, let’s go rock climbing, since nobody will miss us at 3 pm. Just kidding, a little.

Also, you know everyone and know they’ve got your back. If there’s that one guy (or girl) who seems to know everything, the awkwardness-level of contacting him or her is pretty low. Just fire off that Lync IM when you need assistance, help or confirmation for anything SharePoint related and that someone will make sure you get the correct information. They’ll not come back to you asking for a billing code for those 2 minutes you’ve chatted with them. You probably don’t even have billing codes unless it’s billable from the customer.

Meetings. Not needed. Bygone. Oh, maybe have one every year  or two. Preferably in a sunny location with some alcohol. It’s homebrew (not the alcohol but the event) but it works.

Sometimes it’s overwhelming. You need to know everything, and right this minute. This might leave you feeling lost, or uncharted – you don’t have three upper-level managers monitoring your performance and give you praise or constructive feedback (ahem..) for your actions. If you feel like that SharePoint Conference in November is really something you should be attending it’s up to you to plead a good reason why you should be the one attending, and not the other guy. It’s not like everybody can go or depending on economy, if anybody can go.

If you face a tough project, there’s not a huge team assisting you, or an offshore team of people in India or South Africa just waiting for your helpdesk ticket. No, you’re like the Bridget Jones of SharePoint – all by myself (and feeling fat). This is your grinding stone, where you make miracles happen and break through unfathomable obstacles. And you don’t get to tell anyone, since most of the time it’s work done for a customer and you are under NDA.

If a project fails, you don’t have a team to point your finger at. It was your job to make it happen and you failed. What are you going to do to fix it? Once again, you rise to the occasion and make more miracles happen. It feels great, kind of like the superman but without the spandex and cape. Although, it’s known some people are using the Microsoft Partner banderol as a cape. Not mentioning any names, to protect the innocent.

Working for a large company

Then there are the big corporations. The Accenture’s, the Cap Gemini’s and HP’s of the world. They don’t need to concentrate on just SharePoint. They probably concentrate on everything: Microsoft products, Oracle products, Open Source stuff – you name it.

DSC08925For starters, you get a fancy office. Not that small companies couldn’t have fancy offices but I mean, you get to work in a big building. There’s coffee available in the morning. Several cafeterias where you can get a decent – or sometimes great – breakfast. Someone at the lobby to guide visitors and guests. Tight security and probably free parking also.

I realize this is something that is not equivalent for all big companies but mostly you get great hardware to work with. Need a new laptop? Sure, you are up for a new one next year, just choose the best you can get. More displays? How many can you fit on your desk?

The days are so different. Many people do not arrive at the office with a healthy dose of hastiness, like in most small companies. They don’t need to worry whether or not customers are paying their bills, since they’ll get their salary regardless. There’s enough money in the bank for that. You’ll have more time to concentrate on new and exciting stuff. You might even have several days per month to use just for studying, internal trainings and conferences. It’s a long-term investment that the company is betting on you. Hopefully you’ll stay for a decade, generate utilization in the amounts of hundreds of thousands per year, and be happy. Everybody wins. It’s not that bad really, when you get used to it.

You’ll also have a lot of colleagues. With their combined knowledge you’d probably know everything worth knowing. There’s that one guy who only does identity management for SharePoint, so whenever you are faced with an obstacle with user profile synchronization, just call him.

The obvious downsides: Lots of managers. I mean, so many managers. Do you even know what that guy over there is really doing with his days? He comes to the office, does a lot of Excel and goes home before 4 pm, while you stay there until 8 pm to put out the fires. And he gets a bonus if you do your work well? That’s insane and utterly wrong! But, you might be able to get a promotion and be that guy, in a year or two so keep grinding.

"I ♥ Meetings" sloganMeetings. It might feel that all you are doing is meetings. First meeting at 8 am, next meeting at 10, a quick meeting over lunch, a few conference calls and a meeting in the afternoon. Also, a conference call with some folks from the US at 9 pm. It’s important stuff, so you have to be there. It’s not like we can function without you sitting on mute for 3 hours listening to something you have nothing to do with. Okay, that last one was maybe a bit harsh. But you’ll have enough time to clear your inbox while staying on mute.

Promotions and bonuses. Work well and get rewarded. Work poorly and get blindsided, or shown the door. Bonuses are always nice but they shouldn’t be the reason you are working where you are working. It’s a nice touch but in the end, does it really change how you approach your engagements? Probably not.

Finally, office politics. This actually applies to both small and large companies but large companies are exceedingly permeated with this. I highly admire the people who can show the finger to office politics and take the high ground. In the end, it’s the customer who we should be thinking about, not the internals.

So, which is better?

Good Against BadI hate to say this, since it’s so banal but: it depends. Do you prefer security over flexibility? Freedom over processes? Nice buildings over working in a tiny office? Do the titles matter on your business card?

A larger company probably provides more paths for career advancement. A small company cares more about cultivating you and expanding your knowledge. A larger company will have larger projects, a small company will have quicker projects.

Make sure you get experience working for both worlds. If you are swallowed by a large company for several years it might be too late to move on to a smaller company. You can always switch to a large company from a smaller one, albeit with some difficulties. In the end, what matters most is that the quality of your work is something you are proud of and could achieve in either kind of companies – small or big.

A few thoughts on TFS Express

Today, Brian Harry from Microsoft wrote about the soon to be released Visual Studio 11 beta, which includes Team Foundation Server 11 beta. I’m exceedingly happy to read about Team Foundation Server (TFS) Express, that will become a new offering in the Visual Studio family of products. And it’s going to be free!

The essentials

LEGO Indiana Jones in 2008It seems TFS Express will include most of the core functionality you can find today with TFS 2010. This includes source code control, work item tracking, build automation and similar functionality that forms the basis of what we today call Application Lifecycle Management, or ALM.

Why is a free version of TFS important, you might ask. There’s several reasons that I feel the Express version will do better than it’s fully featured big brother.

Because it’s going to be free of charge, more companies will adopt TFS

This will, in turn, introduce small web shops and 1 man+dog-type of developers to a common platform. Even if they only adopt the plain old source code control, it’s still better than sending zipped solution files via email. “Did you get the latest version? I think it’s this zip file” – no more of this, thank you.

Installation of TFS Express will be simple

I consider myself fairly fluent with Microsoft infrastructure, having been a system administrator and technical architect for most of my life. Still, setting up TFS so that it behaves correctly and is fault-tolerant is not a trivial task. Going the traditional Setup-Next-Next-Finish approach seems to work for many companies but it’s far from ideal. And if something breaks, nobody really knows how to fix it.

We’ll see during beta if TFS Express delivers on the promise of a simple installation. So far, it’s looking good.

 I can liberate my source code

41/52 : Ernesto "Che" GuevarraNo, I’m not going all Che Guevara on you, but considering the following scenario:

I’m providing customized functionality on top of SharePoint for a company. They mostly go with OOB features but require a few customizations and UI changes here and there. The usual stuff. When they go live, you kind of hope that you, or whoever inherits your code, will pick up the one-point-oh –package and grow and cultivate the codebase from there. They’d have monthly releases, perhaps they’d track change requests through work items and establish a solid versioning strategy.

But it so often fails with the fact that the customer does not feel like setting up TFS. The licensing issues is one of the reasons. It seems TFS is always too costly. The upcoming TFS Service on Azure will partially remedy this.

Then there’s the issue on who will manage the repository and monitor TFS health. TFS Express will have to face these same issues with corporate IT, but at least the naming convention (“oh, Express – probably something small and simple”) will  lessen the resistance.

If I can now justify to the customer, that by setting up TFS Express they will have a practically free and proven platform to store their project files, it’s going to be a no-brainer. Say fond farewells to lawyers specializing in escrow schemes. Oh, and the customer also gets single sign-on to access TFS Express.

If you don’t have it, we’ll bring it

Lego DarthTFS Express will also provide companies a solid strategy to always require TFS Express for a new engagement.

I’m seeing some larger ISV’s adding a requirement in their service offerings that TFS 2010 has to be deployed on customer site before they’ll start working. Most companies buying services from such ISV’s just go “huh?” and ask how much extra it will be if they buy a hosted TFS as part of the overall delivery project. They’ll eventually get for the low, low price of $1000/month for 2 team projects.

And then we end up using a hosted TFS in a different network, with authentication schemes dating back to 1990 and added bureaucracy even for the simplest of changes.

I’m hoping, and advising companies to set up TFS Express, if they don’t know any better. That way they’ll have their own procedures they can follow and still have freedom of choice to move somewhere else, if needed.

The downside, unfortunately, is that we’re most likely seeing lots of TFS Express installations, even if a project consists of only few lines of code.

TFS grows with developers, developers grow with TFS.

You can upgrade from TFS Express to TFS Server. Or just buy more CALs if you exceed the 5 user artificial limit Express will have.

I surely hope it will be a smooth process, remembering those nasty issues with SQL Express.

If you do mediocre work, do you end up being mediocre yourself?

Swiss Army KnifeI was reminded of what mediocre work is while performing a deep dive debugging session against a relatively large SharePoint implementation with thousands of line of custom code.

The issue was a diminutive problem in a custom control that rendered a pre-defined value based on a SPPropertyBag value. Typically, if this had been a small custom solution I would have simply changed the given property through Powershell to fix the issue at hand, and push the investigation to a later date – you know, because we were busy with something else. Like SharePoint professionals always tend to be.

I was shadowing a developer doing the keyboard-tapping while injecting remarks, thoughts and ideas on how to best proceed. We were pondering how to fix the issue at hand as quickly as possible while trying to learn a lesson that similar issues wouldn’t occur in the future?

We had two options.

First option, or the easy way out is to fix the problem at hand, update the work item (“Resolved”) and carry on with something more meaningful. 10 minutes, tops, and we can forget about the whole issue ever existed. Instant gratification.

Until it hits us again and we spend another 10 to 15 minutes fixing it elsewhere.

Or worse, someone else starts debugging the same issue, finds our old work item that simply states the issue has been resolved – and they need to spend an hour figuring out what was done to fix it the previous time. Worst, they decide to call up a meeting to discuss the matter, and we all spend the afternoon in a windowless meeting room with cold coffee and horrendous Powerpoint slides.

The better alternative:

Taking it back and going for the bronzeStop being mediocre, investigate the issue promptly and with a reasonable sense of haste. Do a full analysis of the root cause while simultaneously fixing the issue. And update the aforementioned work item to something more meaningful – include details on what was done to investigate the issue and how it was resolved. You might – and most probably will – learn something on the way too.

If I do mediocre work [because of whatever reason], do I end up being happy with doing insignificant work and not really performing to the best of my abilities?

We chose the better alternative.

I had originally intended to spend an hour investigating the issue. Being persistent on resolving the issue. We ended up spending a total of 4 hours troubleshooting  the issue: tracing through the custom libraries to see where the issue originated and what – if any – issues would arise if we simply updated one of the shared libraries in use.

Now, some might say that for two persons to spend a total of 8 hours is not the best way to spend your project’s budget for a rather tiny issue. While that thought was echoing in my mind throughout the debugging session I also knew, that since the issue was scattered throughout the custom libraries, it would just pop up again at a later date. And then we’d have to spend even more time troubleshooting and discussing what kind of patching is needed.

So do yourself and your customers a favor – stop being mediocre, and stop accepting mediocre work!