A little while ago, I posted an article on whether SharePoint development will boom or not. My conclusion is that, yes, SharePoint development will boom. In fact, it will boom so loud that it may very well take the attention away from many other platforms for enterprise collaboration and web development.
Microsoft predicts that there will be more than 1 million SharePoint developers in the next couple of years, according to Steve Ballmer at the keynote to the SharePoint Conference in 2009. That is a staggering amount of people, but it does say something about Microsoft’s dedication and expectations.
So, the question becomes, should you start learning SharePoint development now? To answer that question, let me rephrase my response to a very similar question I received by email recently. The question was: “My company may not upgrade to SharePoint 2010 for another year or more. Should I still begin learning SharePoint development for 2010?”
The answer to this is, as often is the case, it depends. This time, it depends on your current skill set, your current job situation, and what you want to do 3-5 years from now.
Developer Skill Set
If you have absolutely no idea about what development is, then don’t start developing for SharePoint. SharePoint is not a programming language, and you want to get a grasp of basic development before you start working on a specific platform.
In short, you will need to learn at least these technologies:
- .NET development, preferably for .NET 3.5 or later
- Web Services
If you do not yet possess at least a cursory knowledge of these fields of development, then you should start elsewhere. If you already have those skills, however, you may be a good candidate for beginning SharePoint developer training.
Of course, if you are already are a SharePoint developer, then you may wonder whether to go with SharePoint 2010 now or remain on the SharePoint 2007 developer platform. This leads to the second factor in determining what you should do with your SharePoint development career.
If you are in a permanent and safe job where you primarily work with SharePoint 2007 and your organization plan to remain on that platform for the next year or so, then don’t rush learning SharePoint 2010. Currently, very few training resources are available, and you’ll spend an disproportionate amount of time finding information, testing code that may not work, and walking the difficult path of first explorer.
In addition, you will need to maintain your SharePoint 2007 knowledge. Oh, and you’ll be very annoyed working with SharePoint 2007 when you see how much improvement Microsoft has made for the new version.
However, at some point, SharePoint 2007 will be obsolete, especially when organizations see the improvements that SharePoint 2010 offers to the enterprise. At that point, your investment in staying ahead of the crowd will pay off in the form of job security and value as an employee. Of course, in troubled times, no employee is safe, but those who possess up-to-date skills and can convert those skills into value for the company have an ace up their sleeve when the axe comes down.
If your organization has no SharePoint strategy, but plan to implement one, then you definitely want to get in the game as soon as possible. In fact, stop reading and start learning right now. Scroll down to the end of this article and I’ll give you some places to start.
The same applies if you are an independent developer. If you work with multiple client organizations, one of those may suddenly decide to go with SharePoint 2010, and they will look to you if you are a SharePoint 2010 developer guru.
SharePoint Development Career
The most important question, however, is what you want to do. If you want to spend the next 3-5 years as a developer, then there are few most exciting platforms than SharePoint these days. If you are an aspiring developer, for example, then staking out your course towards SharePoint gives you a magnificent developer experience and a community that are envied by many a platform.
It’s also a fairly safe bet from an economical point of view. With a global need for one million SharePoint developers the next few years, being good at what you do means you will be in high demand for many years to come. Microsoft will continue flooding your potential clients or employees with the need to invest in SharePoint solution development, further increasing your job security.
SharePoint is a vast platform and you will likely never learn even close to the whole system in one version incarnation. That means that you can explore new features all the time and if you are, as me, driven by a desire to learn, that spells years of interesting discoveries.
The thing is, if you are fairly certain that you will not be working with SharePoint for another year or so, you may consider skipping the entire 2010 version. For example, if you have a year or two left of your college education or if your company has just implemented SharePoint 2007 and plans to stay on that platform for a year or two, then by the time you are ready to begin, people may already be waiting for SharePoint 2013, or whatever the next version is called.
SharePoint 2010 isn’t really a major upgrade from 2007. It runs on the same platform as SharePoint 2007, most, if not all code will continue to run more or less unmodified, and even most of the design features can relatively easily be upgraded to SharePoint 2010 without the need to rewrite every master page and CSS file from scratch.
by the time the next version ships, however, you can expect a major upgrade to the entire platform. We’ll likely see a new server OS by then, and at least ASP.NET 4.0 will have been on the market long enough for Microsoft to base SharePoint off that.
That means that the investment you do in a year or two may only have a life span of months or a couple of years before you need to consider a major overhaul to your skill set.
So, it may not be as clear cut as ‘got on board now’. You may actually choose to say ‘never’ instead, at least for the next few years.
SharePoint Development Training
This begs the question: What should you do to learn SharePoint development if you so choose?
Well, Microsoft and others offer a wide variety of training resources at their SharePoint developer center on MSDN. You’ll find videos, documentation, walkthroughs, and tons of other content. The only downside is that it takes a massive amount of time and it isn’t necessarily clear exactly what you should choose from their broad offering for your particular situation.
Then, there are paid developer classes. I recommend staying away from the certification-oriented courses, as these tend to focus more on getting an exam than learning real-life development. The Microsoft curriculum courses are usually designed at the same time as they are developing the product, and few if anyone has any real experience using the product in a broad selection of scenarios. Thus, go for the custom made developer training courses, especially from vendors who can document real-life experience.
Speaking of which, USP Journal will launch a new SharePoint training site in 2010. I cannot say much at this point, but if you want to learn more, you can sign up for the Understanding SharePoint training mailing list at http://www.understandingsharepoint.com/training.
However, the best way to learn SharePoint application development, or any topic really, is to develop a healthy passion for learning and then start exploring. You can find plenty of starting points, for example Volume 1, Issue 5 of Understanding SharePoint Journal, titled Beginning SharePoint Development, or one of the video courses offered by Microsoft.
p>With that healthy passion for learning, you will find that understanding SharePoint development becomes a lot easier.
And it’s huge fun!
Good luck, and let me know if you have any comments or questions.
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!