That video alone pretty much says it all. It isn’t about the word processor, or the device, it’s just about writing what you want when you want and how you want. The old legacy mindset of an installed word processor is a bit feeble these days. Especially considering the integrity of Google Docs vs. Microsoft Word. Don’t even get me started on how flimsy Excel is. The old installed application sweet of several hundred Megabytes just doesn’t hold up for an fast paced, quickly adaptive, thought leader style business. Microsoft said it best in the old wars between WordPerfect and Word, even though WordPerfect (which I think version 9 or 11 or something is STILL more feature rich than Word) had tons of more features, Microsoft stated frequently that 80-90% of users never used those features.
Now we’re in a situation were 80-90% of people don’t use the features in Word, and it costs a lot of cash versus the free offering from Google Docs. Funny how the tides turn to throw Microsoft’s won words back at the company.
Some may be screaming at this point, “nobody is going to dump Word & the Office Suite”. Again, the same thing was said about WordPerfect in the late 90’s. Does anyone still use it? Maybe 1-2% of the market?
Other people may also argue, “but all of the programmable extensible… [fill in some form of extending Office here] …stuff for Office makes it immensely valuable!” Maybe, but it is a small subset of users that actually use addons to their Microsoft Office Suite. In addition, most developers don’t want to touch Office addons at all, they’d rather the suite languish than to develop to the jumbled chaos that is the Microsoft Office Suite Addons and such.
But I digress, one might say, “you’re just biased and don’t like the Microsoft Office Suite”… and I’d say you got me there! I’m guilty. Over the years Microsoft has made billions of dollars on this suite. By proxy they’ve then dumped billions of dollars into software development and other things. However, people really shouldn’t be spending vast sums of money on something that should – and will – become a commodity software product over the next 1-5 years. As Enterprises realize they can easily provide word processor, spreadsheet, and presentation software for small percentages of what Microsoft does the transitions should continue to occur.
Microsoft even seems convinced of this and started making the move with Office 365 + SaaS based Office provision on Windows Live. I don’t wish the company ill will of any sort, so hopefully they’ll pull out of their software nose dive with the SaaS offering.
I’m a user of the various web sites that Microsoft releases on a daily basis. I work with, for, and around Microsoft web sites to complete my daily work in software development. However, the way the domains, sub-domains, and other web related properties are organized is often difficult to remember, use, and generally frustrating on many levels. I know there are no hard rules for domains, sub-domains, etc, but there are some ideals and guidelines behind the usage of such things. Life for the technical community would be much easier if you guys actually followed these ideals and guidelines. Let me provide a prime example of a service I have to use regularly.
BPOS (and I’m not defining what BPOS is, because this is part of the issue…)
Before even using it, I’ll start by searching for it. To provide what a new user of the system may see if they’re trying to sign up or such. If I navigate to a search engine, I’ll use Bing for this particular example, and try to find out about Microsoft BPOS Services I get the following results.
Bing Results for "Microsoft BPOS" (Click the image for a full size rendering)
These are good results, so no problem yet. Now with some basic intuitive analysis of the results I have the following obvious Microsoft Properties to check out. At least, I hope that I do.
Microsoft BPOS Site Property #1 (Click the image for a full size rendering)
There are some glaring issues with the page itself, but first take note of that URI. That’s a nasty URI for the main root page to begin with. It ends with *.aspx, and there is a sub path which an Internet power user wouldn’t be able to understand let alone a novice or standard business user. Let’s go through the red arrows real quick. I’ll hit on each arrow in order from top to bottom.
Ok, before continuing with the domain & sub-domain issue, let me step into another concern here. There are the two choices for a Free Trial or Buy Now. These two options are not that bad, but look below a big $10 sign, only $10 dollars!? NO. It’s $50 dollars not $10. In the small print, the third red arrow, it states you will need to order a minimum of 5 users, which equates to $50 dollars. I think somebody at Microsoft should clean this up a bit, at first glance it is misleading.
I know this isn’t a sub-domain or domain naming issue, as I started with, but I just want to point this out as it is a problem for reputation. So my first critique tip is…
Critique Tip #1 – Clean up the selling point on the page and don’t be misleading.
Fourth arrow is a pet peeve of mine. Again, not to the domain and sub-domain issue yet, but I want to tackle these because they’re frustrating. For some reason Microsoft expects everyone to scroll way down their pages to find out news about the product. In addition, as the last arrow points out, it is also assumed that everyone always understands all of Microsoft’s Acronym Soup. No, we don’t Microsoft, you’re making these up. So please actually write some regular, intelligible titles for products or use some of those awesome secret names as product names. People would LIKE IT if you did. I want you guys to succeed with some of these services too, and writing headlines like this, in a news section that is at the bottom of the page, and not easily accessible and up front isn’t doing you guys any favors. I’m trying to help out here.
Critique Tip #2 – Give us the news higher on the page, where it is easy to find, and write the articles for people that may not work for Microsoft itself.
The next link is I suppose another page related to BPOS from Microsoft. http://microsoftbpos.net/ is navigated to and I find this.
A BPOS Company?
Nope, this is NOT a Microsoft property. But being there are so many Microsoft Properties with no rhyme or reason to the domain and sub domain usage, this seemed like a legitimate Microsoft Site. It isn’t Microsoft’s fault that this link is a little misleading, but if one is looking for a company to handle this confusion for them, this may be a great company. Otherwise, I’m moving on to the next link.
Business Productivity Online Standard Suite (BPOSS??)
Yup, we’re good. But it is confusing isn’t it. What exactly is BPOSS anyway? I thought I searched for BPOS? Is this BPOS? Maybe just another S on the end? Anyway, I digress.
No intuitive use of the domains going on here. Two completely autonomous and separate domains being used for the same business within Microsoft. Not cool, Microsoft you are driving down the WRONG way on the road with this. Even if there is differences between this and the other BPOS site, it isn’t immediately apparent and they come back in the same search results. So if they are different, SEO #fail.
Again, there are standard UX no no’s at work here too. News is at the bottom in a little right hand corner box. The same sales point is being made, $10 per user, which isn’t inherent to the real base cost, and those same two buttons are there to simply lead users into purchasing without realizing what they’re getting. Last, the page is too long. We don’t need to scroll down so far and there does NOT need to be a big huge Bing search at the top. This is the type of activity I’d expect from Black Hat SEO Hacks trying to get higher SEO ranking illegally, NOT from Microsoft.
This site, I have to admit, seems better. Tabs at the top, no pointless Bing search at the top, and actual topic points of concern in the center of the page. Whoever this group is, design the other pages. Better yet, get rid of the other pages and go with this design. This isn’t the best page, but it’s 10x better than the others.
Tip #4 – Use this site as a reference for creating a single BPOS site with appropriate navigation, section on the page, move the news up to the forefront, and get the site re-published.
That’s it for this critique. Microsoft representatives, management, and others please take heed. I’m honestly trying to write an entertaining yet constructively critical entry here as a sort of open letter, it may seem I’m attacking, but from outside (or inside) Microsoft it is difficult to get things like this fixed.
I hope this helps. 😉 Cheers to a good solution!
A Frequent Business User and Customer,
Adron @ Composite Code
PS: I’ll be following this open letter tomorrow with a letter providing props for some awesome sites, UX, and general offerings that Microsoft has put together. So I didn’t just write this to hate on Micrsoft, I’m just frustrated intently by their blatant bad usage around domains, sub-domains, etc.
So stay tuned, I’ve got props coming instead of all this grumbling. Cheers!
Over the last few weeks I’ve seen a few comments regarding rework. One of those comments was Julie Booth’s (@uxsuccess) comment on Twitter regarding rework,
“Do not fear rework!!”
That kicked me off with a response of,
“Do not fear rework!! /via @uxsuccess so true, plz plz don’t cower before rework!!! :). Listen to @uxsuccess!“
Then just recently I stumbled onto a book I’ve been meaning to read called Rework. This book is written by the crew at 37signals. This company is best known for SaaS Offerings Basecamp, Highrise, Campfire, and Backpack. All of them created with high quality, solid UX (User eXperience), probably great code quality, maintainability, and the list of goodness goes on. In addition, the other thing that 37signals is widely known for is their efforts around Ruby on Rails (created by DHH@dhh).
Rework is a fundamental requirement to actually getting an elegant solution. It might seem chaotic or disconnected at first, but it quickly becomes a vastly superior way of doing things instead of the “Do it once, do it right the first time” nonsense. Things need to change, doing things right the first time is almost impossible anyway. That is why you practice playing guitar before becoming a virtuoso, you learn to hammer before becoming a carpenter, you sketch and draw before becoming an architect, and the list goes on.
Don’t expect perfection, expect creation. That’s what I’d say. If you can’t tell, I agree with the Ruby on Rails mindset, with a lot of what DHH/@dhh writes, and I especially respect what 37signals has accomplished and the revolutionary business ideas in the book Rework.
These types of ideas – simple rework and the open minded approach to rework – makes a business faster, more agile, and responsive to their customers’ needs. These ideas, these mentalities are what have created great companies in the past and will build great companies in the future. The companies that suffer the traditional approaches and mindsets are at significant risk of being eliminated from the market altogether.
There are many others out there also, that push these types of ideas and mentalities around rework, refactoring, and agile practices. If you haven’t checked out who 37signals is, the book Rework, or Ruby on Rails you should stop whatever you’re doing and find out about this company and its products. Especially find out how their products were built with business agility in mind, with a strong dose of Agile ideals. With that I bid adieu for the day. Happy coding, and don’t fear the rework.
Ok, in 1989 my family bought a computer. A Tandy 1000RL. This thing had 512Kb of RAM, an 8 Mhz Processor and a 20 MB Hard Drive. I was stoked! I was going to be able to play F-15 Strike Eagle II and Silent Hunter II from Microprose! We got this baby home and unpacked her, fired it up and I went to loading my games. Two 3.5” floppies for Silent Hunter II and one for F-15 Strike Eagle II.
I went to installing F-15 Strike Eagle II first. The installation went great and I immediately tried to launch the game. Then it happened. Mind you, I knew NOTHING about the hardware of computers at the time. I had developed one GW-BASIC Application with only GOTO statements because I didn’t even know what looping or logic structures were. Here I was about to get one of the worse error messages a gamer could get, “Not enough system memory.”
[Rant Starts]
What the… ?!?!?!!?!
I had no idea what to do. What kind of nonsense was this I thought. I have 512 Kb of memory and this game takes 512 Kb of memory. Well, years later, after being burned out on attempting to fix this (there was no Internet or Google to ask an answer to) I finally found out it was reallocation that needed to be made via a DOS bat file. So around 1992 I actually got it to load. Oddly enough though, it crashed a lot because of memory issues.
A few years later I realized that the memory issues were caused by preinstalled software from the manufacturer, Tandy Computers. Strike 1.
Forward to the mid 90s
The family bought a new family computer from some appliance store. It was a 100Mhz DX4 Processor, with 16 MB of RAM. I could play games, write Pascal, and even send e-mail and browse the web with Netscape (oh wait, was it Mosaic then?). This system was nice. But it dragged slower and slower over a period of months. The memory got more and more laggardly because it was almost all used up by the time the machine booted. Games, had become difficult to load with all sorts of bat files and special load options.
Why? All because of the stupid pre-installed software. Strike 2.
Forward Again to the late 90s
Alright, I shopped and shopped for my next computer. A Pentium 133Mhz with 32 MB of Memory, which I quickly upgraded to 128 MB of Memory. I forget exactly the size of the hard drive. I think it was a 2.5 Gb hard drive. Again, the system came loaded with all sorts of crap preinstalled software. This time though I was having none of this. I was a PC Tech, software guru, and was even starting to program and do network support! There was no way I was going to put up with this nonsense.
I reinstalled the operating system ridding myself of all the preinstalled hell that one usually endures. I went almost a year before reloading the system again! Usually reloads needed to be done every 3-6 months with the preinstalled software, but with a clean install I had gained new freedoms, new productivity!
Fast Forward to today. 2010
Over a decade later. HP, Dell, and a few other manufacturers rule the heap, Gateway 2000 being long gone history to Gateway, which almost seems long gone. However with over a decade of time, manufacturers still load all sorts of preinstalled nonsense on their machines. As if to help people use their computers less efficiently and have them become more frustrated. The insanity continues! Manufacturers just STOP doing this! Nobody needs this crap on the machine!
Some of the biggest culprits are Enterprise Laptops and Desktops. Such as those from HP, Dell, or Lenovo. They load software, that almost every IT Department then must completely remove, get a good install that works appropriately in the environment, and then create an image and put that on every new machine that comes through the door.
In essence, Computer manufacturers are wasting the IT Department’s time, wasting consumers time, and over longer periods just slowly creating ill will as users figure out that so many problems come solely from preinstalled software.
Sure, I understand that some of the ID10T errors and issues are simply resolved by installing some software before the system is sent to a user, but at least give us the option up front and clearly. So manufacturers, if you get your act straightened out – THANKS! If not, I’ve got words I’m not going to print… so just get it straightened out and we’ll all be thankful.
[/Rant End]
Signed – The Productive Computer Users of the World 🙂
Ok, I have run into the anti-TDD arguments on and off over the years. Generally it comes from two primary sources. The person who doesn’t want to do TDD no matter what, nor test, nor learn anything about the latest and greatest tech, they simply want left in their corner of the universe to code whatever they are coding until they drop dead. Then there is the other individual who is a decent developer, but just has honest hesitations about the style.
The developer who has honest hesitations I can understand, can talk to, and can usually at least get a “Well, that sounds reasonable, but I’m still not sure” response. Which is much better than the alternative of disregarding TDD outright. The hope, is that this individual can at least try out TDD and see if it would work for them.
Even with the more open minded developer it is still difficult to put TDD into practice. Why? That’s simple, TDD is hard and forces a developer to step back into the basics and really think the problem through first. Most developers (at least currently, maybe it’ll change) have a very “just attack the problem with code” type of response. Often the way to break down problems is taught in computer science 101 level classes, but after that is often lost in all the cramming for math, algorithms, and other such material. But the core fundamental idea of thinking the problem through clearly still needs to be broached. TDD puts that idea forefront in the process by making a developer write the test to verify the problem statement first.
With all this stated, there are a few myths that I’d like to bust. These myths are often what cause the first person to cringe away cowardly in their corner of the universe, and causes these hesitations in the second more open minded developer. After busting these myths I’d hope more of the open minded developers can use the power and thinking that TDD encourages. As for the first corner cringing coder, they’re a dying breed and I wouldn’t bet on their recovery.
The Myths
MYTH: But I can’t test every single thing that is written, so TDD just isn’t for me. The reality is, you can’t test every single thing and you shouldn’t. You should stick to the logic, business process, and other parts of the code. Don’t worry about the configuration, individual database nodes, or other arbitrary or configuration based bits. The idea is to make you think through the problem spaces and architecture needed to work through those problem spaces. So TDD is still something you should try, but don’t try to test every single line of code. Focus first just getting through the logical, flowing, business related bits of the code you are writing with tests first. This will get you appropriately experienced with TDD.
MYTH: You can’t test against boundaries, that becomes an integration test, so why even mock/stub/fake if I’m not testing the real framework/parts/features? Again, why worry about testing parts that you know or are not responsible for? Don’t test the integration parts. There is a reason QA exists, and defining and testing boundaries is what QA does great. But you still need to test and confirm that your code works against those. Mocking or stubbing against that gives you the confidence that your code logic will work against these integration points and also provides you a basis in which to work off of. If you write the tests first, you also know you’ve thought through these integration points to a fairly thorough level.
Do you have anymore myths that should be burst? Please feel free to toss a myth or two to burst in the comments, I’d love to hear others input on the matter.
You must be logged in to post a comment.