January 02, 2013
Happy New Year! It is time for resolutions and here are ten that I think Sitecore developers should consider for 2013. If you have your own Sitecore developer resolutions for 2013, please share them with us in the comments below.
1) Use Sitecore Rocks
For die-hard Sitecore developers, this is a must. Sitecore Rocks brings you powerful tools that are not available when using the Sitecore Shell, such as plug-ins, anti-packages, copy/paste capabilities, extensive search mechanisms, contextual hints (e.g. available placeholders), multi-installation view, and several others. A typical .NET developer should have this in his/her arsenal along with nUnit, Castle, etc. It really makes coding for Sitecore friendlier and faster.
2) Stay up-to-date with Sitecore technologies
Sitecore develops almost as fast as Microsoft can add to its .NET technologies. They even introduce their own techniques. Regularly check out the SDN and the Marketplace for new modules and code that you can try and adapt. Stay current on blogs (particularly those of Sitecore gurus and MVPs). Schedule time monthly with your supervisor to discuss best practices you've learned, challenges you faced, or trends you are identifying.
3) Try all the free modules
Similar to #2, you should know what Sitecore modules are available. Be careful as some modules can be tailored to a specific version of Sitecore. Remember these modules are free and support is not officially provided, but there are enough people in the Sitecore community to help you out. Even if the free modules do not suit your actual needs, they will give you ideas on how to code things since the source code is available for your own use (and your own risk).
4) Get to know Digital Marketing System
Sitecore's Digital Marketing System (DMS) is a marketer's dream, but to make it work best for your needs, it will require some customization. DMS introduces new concepts and techniques that are somewhat foreign to developers but familiar to marketers. Bridging this gap is key to knowing the APIs available. Sitecore CMS is a collaboration between designers and developers. DMS, on the other hand, introduces the dynamics between marketers and developers. DMS is still maturing and growing. With high demand on analytics and automation, DMS is a key factor in Sitecore's success.
5) Contribute to the Sitecore community
No matter your Sitecore expertise level, you will always have an audience in the Sitecore community. As I mentioned in #2, there is so much to learn about Sitecore in addition to just .NET. You can contribute to the community by writing blog posts, collaborating in the SDN forums, participating in online or in-person user groups, or even writing your own book. By the way, your contribution doesn't always have to focus on code, it can be editorial or even a direct functionality wishlist for Sitecore to consider. Sitecore believes in its developer ecosystem, and I'm definitely proud to be part of it.
6) Treat Sitecore like a platform, not just as a CMS
We all know how powerful Sitecore is, but it's time to expand our thinking that Sitecore is more than just a CMS (although it has stayed true to being one). As a developer, you should think of creative ways to fully realize your client's investment. If Sitecore can build applications on top of Sitecore, why can't you? You can treat it like a database, a workflow mechanism, a rules engine, or just as an admin tool. With the introduction of Big Data and Item Buckets, it's now possible to think Sitecore as a heavy-duty content repository. If you do see some performance degradation, let the community and Sitecore know about what you find. They like challenges.
7) Know your options for finding Sitecore items
I know that this is somewhat trivial, but really getting to know the various ways you can find the item or items that you need for your site is crucial to its performance. A new technique is introduced with almost every major release of Sitecore. It used to be just typical XPath and Sitecore queries. Then fast queries came into play. Now with Item Buckets, we have a different way to search for items. Knowing these techniques can also dictate how you architect your site, as well as how your Sitecore authors manage the site.
8) Use self-contained configuration files
This has been available for a while, and many seasoned Sitecore developers are aware of this, however if you don't, you should always use the technique that all the Sitecore modules use. All of the configuration files are separate from the main Web.config and other built-in configuration files. This allows you to easily move your site as well as for upgrade purposes. The Sitecore configuration mechanism allows you to insert settings or even replace them.
9) Think multi-site. All the time.
Along with #6, architecting your Sitecore instance to allow for multiple sites is key to it being extensible. Normally, your first project is to build a Web site. That's great, but what happens when you build the next one. Sitecore is meant to host several sites (license doesn't restrict you to URLs unlike other CMSs). So, if you don't build the first site with another site in mind, you will be looking to re-engineer and maybe even re-do the first site. Of course, doing this can make the first site harder (and maybe longer) to implement. So, make sure that this is necessary.
10) Ask questions
Finally, any developer's 2013 resolutions should include asking questions. If you've been working with Sitecore for a while or if just earned your certification, you will always encounter new challenges and best practices. Ask questions. Everyone in the Sitecore community loves challenges and are eager to help.
So to all of you Sitecore developers, we survived the apocalypse and now it's time to stick to our resolutions for 2013. Again, Happy New Year!
comments powered by