On Innovation and How I Wrote SharePoint

After my somewhat public denunciation of SharePoint and prediction about its imminent demise, I’ve had quite a number of talks with people about my passion for SharePoint. Why am I (or was I) so intrigued with SharePoint and what has changed now?

It’s simple really. I wrote it.

You’re probably bright enough that you understand that there’s a longer story behind that, but that’s not really the point of this post. I’m telling you because you need to understand where I come from when I talk about how the innovation in SharePoint has died.

Let me start at the beginning.

You Wrote SharePoint? Yeah, Right!

Well, I didn’t write SharePoint as such; the fine people at Microsoft did that.  What I did write, along with a good friend and brilliant developer named Vegard Berget, was a publishing system called NB2 Publish, that did much of what SharePoint does today.

NB2 Publish was a platform for turning data into content of various types (like… types of content or… content types). It had some pretty amazing features that I still haven’t seen in a lot of modern publishing platforms. For example, the platform supported automatic image optimization so that when you uploaded an image from any format (TIF, PCX, TGA, BMP, GIF, whatever) the platform would automatically convert the image to the optimal format. Of course, automatic resizing and stuff like that was included.

NB2 Publish also supported multi-publishing. What that means is that when you decided to publish something (and there were workflows to do so) you could publish the content to any number of different channels. For example, if you want to launch a new product, you need to produce PDF flyers, update a product database, create a new entry in a carousel, send out emails to your mailing list and so on. All of that is based off the same information, so NB2 Publish allowed you to accomplish all those things in a single operation. If I recall correctly, we even supported faxing at the time.

To support all these different types of publishing, there was also a cool dynamic input system that auto-generated forms for input based on what the various channels needed. For example, if you needed your PDF flyer to have a larger product image, you’d simply update the template used to generate the PDF, and Publish would automatically update the input form and give you a file upload box. It would then make that file available across every channel.

You know, like custom field types work in SharePoint. If they did.

Except NB2 Publish was more awesome because it took the reverse approach to the dynamic typing problem in SharePoint. Rather than depending on the user maintaining a correct list of field names and then telling the target that “here’s the information available, if you’re missing something, tough luck”, NB2 Publish would instead ask “What information is required to accomplish this task” and ask the user to provide that. No risk of field corruption; if you screwed up, the user would simply be asked for the additional data rather than the whole system crashing or you having to rewrite your entire database just because you hadn’t planned for that one feature the user requested.

The NB2 part? Well, that was mainly a development framework in which we had built our own scripting language (which we later found out was actually Lisp, or at least a related language). Heck, in later versions, we even had remote support, somewhat similar to web services, so you could call into the publish engine from any programming language that could send text over the wire.

We even had remote scripting support and that didn’t mean what you think it means. Imagine if you can write a program that sends off parts of itself to be executed on another server. Multi-threading would never be the same. Now, every computer connected to the internet, and being able to run NB2, would be one massive computer to which you could send instructions for execution and get results back.

– How many cores did you say you had?

– I don’t know, how many computers are there on the internet?

All in all, it was a pretty awesome product. Sure, it wasn’t nearly as fast and the code base was… Let’s call it interesting for lack of a better word. It lacked a lot of the bells and whistles, but we knew how to do amazing things with the platform and the framework.

And, here’s the kicker: We wrote this in 2000. Yup, years before SharePoint saw the light of day and even before .NET made remote web services a reality, we had all that. We had safe and stable dynamic languages that was so easy to use we trained our secretary to build templates for customers (she was smart, but maybe not computer smart). We had content types, list and document repositories, automatic PDF creation, email alerts, custom field types, workflows… The lot. Plus more.

Now, you’ve never heard about NB2 or NB2 Publish (unless you worked for or were a customer of the company whose name is now tattooed on my left arm) and you’re probably not going to believe any of this. That’s fine, I’m not here to convince you of anything, but if you’re capable of either reading Norwegian or can use Google Translate, you can read a lot more information about NB2 and NB2 Publish at web.archive.org’s repository of NB2.net.

Note: You may also, with some sleuthing, realize we also wrote Google Analytics in 2001. It was called Stics and I’m not giving you more hints.

You’ve never heard of any of this because at the time, we were a very small software shop. In fact, with a few and very valuable exceptions, Vegard and I were the only developers there. That leads me to why I was passionate about SharePoint.

Innovation is Such a Lonely Word

You see, the company, or companies, that owned NB2 and NB2 Publish eventually went bankrupt. They died out. That was largely because Vegard and I tried to take over everything and be both business people, sales people, support people, marketing people, developers, administrators, janitors, secretaries, and whatever else we needed done.

I don’t even have the code still. Benny Samuelsen at ISPHuset, who purchased the remains of the last company may have a copy somewhere, but I don’t.

When I saw SharePoint 2007, however, I saw some of the same features or at least the same ideas implemented by a huge company. The ideas were there if the execution wasn’t quite the same. Perhaps then, Microsoft could pick up where our dreams and products had failed, and I could just ride the 9:30 innovation express from Redmond to bliss.

So, I started doing SharePoint because it was innovative. It had the right ideas.  It was awesome.

SharePoint still is awesome, but the big, big problem is that it is exactly as awesome as it was in 2007. Not more awesome, not less; just as much. That’s because there hasn’t really been any innovation on the platform. The things that sparked my interest in 2007 haven’t changed. They haven’t been driven forward.

Note that I’m saying “the platform” here. I don’t care about SharePoint the product. That’s boring, predictable, and stale, and that includes Office365.

That’s a bit sad because there’s so much stuff that can be done with SharePoint still to make it even more awesome. That had nothing to do with putting more bells, whistles, and colors on it. It has to fundamentally change the way organizations think about data.

SharePoint 2007 blew everyone’s mind. Behind the scenes, everyone who could tie their own shoelaces saw the potential. I still get erotically aroused when I think about content types. The disconnect between SharePoint the engine and the UI is brilliant. That’s when Microsoft laid the foundation of SharePoint’s success.

Yeah, there’s a disconnect between SharePoint the engine and the UI. In 2007. You know, what’s now being hailed as “the most awesome thing since sliced bread” and “newer than an infant with birth goo on it”. It has been there since 2007. You just haven’t seen it, likely because you’ve been too busy crucifying those that do see it.

Then, in SharePoint 2010, Microsoft fixed some of the issues and created a more polished product. It wasn’t very innovative but it was more stable, except in the parts that were completely new and most of the SharePoint Server crap. SharePoint 2010 was really a version 2 of SharePoint 2007. It wasn’t a new product; it was just a much improved version of the same product.

But in SharePoint 2013, there’s nothing. It’s not better in any way. It’s far worse. It’s less stable, it runs slower, requires far more hardware even with that lower performance, and there’s nothing, absolutely nothing new. There are a few new apps on top of SharePoint, but in SharePoint itself, innovation has just stopped.

You see, the bones that get thrown to the community isn’t innovation; it’s marketing. The world has thought of all of this before. I know, because I did it myself, and I just plainly assume that means a lot of other people have done so too.

Imagine, when two kids in a small rural town in backwards Norway could create NB2 Publish, doing pretty much everything SharePoint does and more in two years, what Microsoft could create if they were truly innovative. There wouldn’t be a competitor to SharePoint ever. Microsoft would be decades ahead.

Instead, they suck the motivation out of the community and hope that you all bite and get distracted like the puppies Redmond wants you to be. Then, they use your distraction to suck as much money out of their customers as possible. And they lose the race to have great platforms.

Microsoft has one more chance to be great again with SharePoint 2016. If they fail, and you can start realizing they are when you see buzzwords like Social Enterprise Cloud and other terms from the BS Bingo, then some kid in a rural town somewhere in Scandinavia will launch the next thing that just obliterates SharePoint.

And you know… You’ll still be a SharePoint professional at that time and go down with it.

Thanks for reading,


Found this article valuable? Want to show your appreciation? Here are some options:

a) Click on the banners anywhere on the site to visit my blog's sponsors. They are all hand-picked and are selected based on providing great products and services to the SharePoint community.

b) Donate Bitcoins! I love Bitcoins, and you can donate if you'd like by clicking the button below.

c) Spread the word! Below, you should find links to sharing this article on your favorite social media sites. I'm an attention junkie, so sharing is caring in my book!

Pin It

Published by

Bjørn Furuknap

I previously did SharePoint. These days, I try new things to see where I can find the passion. If you have great ideas, cool projects, or is in general an awesome person, get in touch and we might find out together.

2 thoughts on “On Innovation and How I Wrote SharePoint”

  1. I belive SharePoint developers will survive if SharePoint indeed does go down. People are agile and surprisingly good at aquiring new skillsets (most anyways).

    I say, stay on the ride as long as you have fun and jump another when you feel you should. No drama at all. However if .NET goes down I might have a issue on my hand unless there is still demand for perl or pascal people 😉 or I can safe it out with JavaScript which seems to still be alive and kicking.

    1. I don’t doubt the SharePoint pros will survive, especially those that came or come into SharePoint with proper skills and not just whatever they must to invoice their clients. If SharePoint died, however, it would be very sad, although a stint of Perl would be nice again. It’s like PHP but with teeth.

Leave a Reply

Your email address will not be published.