Monday, 28 July 2008

Upgrade tool, part two

Some of you might read my post last week about the Sitecore upgrade strategy. In this respect, the tool for upgrading your web site to version 6 was released in an Alpha version.

This is already being tested by several developers, and so far responses have been positive. Ivan Shamarok has even blogged about it: http://sitecoregadgets.blogspot.com/2008/07/migrate-from-....

 

I decided to give it a try with my own little hobby project, which I would consider a fairly standard best practice web site, - with (multiple) data inheritance models and extensive use of standard values/masters. I also use a single proxy item.

As a twist, however, the site is a combination of editing/extranet site where the core and the public site would use the same security database. Another layer of complexity is that the user is allowed to edit their personal profile information. This, - I knew, would have to be addressed specifically (re-coded to Sitecore 6) as user objects would no longer reside in Sitecore, but in the .NET security database. According to documentation, this should be the only possible breaking change that requires recoding.

Before the conversion, I decided not to transfer Archive and Recycle Bin as both were empty, rendering these steps useless.

 

The database conversion took me 45 minutes; - even with such disturbance only a baby daughter playing on your lap can give you. In the data structure test I did after the conversion, I didn’t find a single conflict or issue. I was especially impressed that roles and users were moved so easily from the older structure to the new structure.

In the evening, I decided to address the issue of recoding the user profile editor. I grabbed the new user object which holds a property bag of all profile information (it wraps the .NET profile bag and simplifies read/write operations). I reckon recoding this took me less than half an hour to code and test (no baby on lap though).

 

Here’s my evaluation of the tool:

  1. So far, - It seems to work without flaws. During my conversion, I didn’t found any issues. Off course, this is an Alpha, and I would love to hear about others experiences with the upgrade tool.
  2. The process of upgrading your solution is around 10 steps. These steps all, except for two, seems mandatory, - and here comes my only “complaint” (I know this is being considered by the team): Why not create a single “go”-button that executes all steps? Optionally an “advanced” mode that switches into the current step-by-step mode (for those who have made significant customizations to the system). Anyways, - it’s a matter of saving 10-15 minutes.
  3. The documentation is very comprehensive: It explains each step that you go through, - in detail, with screen-shots. In addition, it explains what you should be aware of, - given your solution is highly customized, - and what you should do to solve it.

Wednesday, 23 July 2008

Sitecore upgrade strategy

Yeah, - I know it. We’re getting hammered by partners and by bloggers for not supplying an upgrade script that immediately allows you to upgrade your databases from Sitecore 5 to Sitecore 6.

Allow me to explain why: With the latest release of Sitecore 6, we have spent thousands of hours testing the system in order to ensure maximum quality and optimal experiences for our customers. Naturally this should also apply to everything else we do; for example marketing material, documentation, training… And upgrade frameworks!

A dedicated team, lead by Kim Hornung has been working several months to define a strategy for future product upgrades. This internal framework consists of several elements that should make upgrade as painless as possible.

 

CMS 6 database conversion tool

The Sitecore 6 database conversion tool will make it possible to upgrade your Sitecore 5.3.1 database and data structure to Sitecore 6. It even takes into regards the major changes that come with the removal of masters and the introduction of branches. Here’s an overview of what the tool does:

  1. Upgrades database schemas: Upgrades your SQL database schemas to the new format (indexes, new tables etc).
  2. Converts your user security to .NET security.
  3. Migrates and overrides your data structure model, e.g. converts masters into branches.
  4. Moves your data from old structure to the new database structure and converts media links into new dynamic link types.
  5. Runs the update package: Deletes obsolete data (for example, removes obsolete field types) and adds new data.

The update package is very interesting in this respect: While this new tool was primarily designed for upgrading minor versions (e.g. 5.3.1.15 to 5.3.1.16 or even 5.2. to 5.3), we also utilizes some of the features to remove obsolete items, fields from the recently upgraded database. In this Sitecore 6 update it basically means that it will clean up your upgraded Sitecore and updates your system templates.

 

Update package tools

The update package tools consist of an update package generator and an update installation wizard.

Update package generator

Some of you have might have noticed that it’s possible to serialize your item structure to text (files) in the latest Sitecore 6 edition. The update package generator differentiates two serialized structures and compiles it into a package of items, fields and field values that has been added, modified or deleted. In addition, it does the same to the physical files structures. It even differentiates on field level and contents level (was the old value the same as the new value?).

Update installation wizard

As explained, the update package consist of new items and deleted items, new, modified and deleted files, and a list of expected values. The installation wizard checks the expected values with the current value and either presents options to the user, or resolves potential conflicts (it is even designed to build new versions, but I’m not sure we’ll release this functionality in version 1).

This means that within the entire process of defining the Sitecore upgrade strategy, our team has built a tool that will make future minor upgrades very simple (hopefully :-)).  

340d94f00395f4df496714adefc20a01.jpg

 

Why the waiting time?

We had the choice of postponing the release of Sitecore 6, - and wait until the database conversion tool was ready. Alternatively, - and this was the approach we chose; release Sitecore 6 and let the database conversion tool follow immediately after the release.

 

Quality assurance means everything

Before we release this tool, we want to test the quality and stability, preferably on live environments. So far, I have seen this tool upgrade the Sitecore 5.3.1 starter kit (notice, we have build a brand new starter kit for Sitecore 6 that utilizes newer functions, but that’s beside the point). During the demo, it took us around 30 minutes to do a full, clean, fully functional upgrade from Sitecore 5.3.1 to Sitecore 6. It cleaned up the old field types, converted security… well everything!

The team is currently testing this with other web sites (as far as I know, even our own public web site). Hopefully, these tests fall out positively.

 

Good news, - alpha being released soon

Very soon, possible even this week, the upgrade team group will release an Alpha version of the CMS 6 DB conversion tool. It contains all the elements needed to do a 5.3.1 -> 6 update, but needs the polish that makes it into a full flying conversion tool (interface looks like something I could have designed, and the upgrade flow leads to a lot of unnecessary steps).

But this is the tool that took our Starter kit 5.3.1 to Sitecore 6 in just 30 minutes (bear in mind, it was done by someone who knew what each step meant; you guys should expect additional time to read the documentation).

Also expect, if your solution is not using only XSLT controls, that some recompilation of your project may be required. You should also expect to spend time optimizing your code and use correct methods instead of deprecated methods. Finally, if you have extended the existing security model, this must be rebuilt as Sitecore 6 is based on the .NET security model.

 

Other interesting topics and blogs

Friday, 18 July 2008

MWPC 2008, Sitecore 6, Marketing Material

Let me start by apologizing that I haven’t been Blogging for a while. It’s been very hectic the last 2 months: Sitecore has been ending our financial year (couldn’t hardly been better) which I have been deeply involved in. Off course this takes time, but at the same time, we have also been releasing our new Sitecore 6 edition.

 

I won’t say it’s probably the best edition we have ever released. I will rather say that I’m sure this is the most ground-breaking, stable edition we have ever released!

 

While these cool features immediately is not visible for the naked eye (it looks very much like the previous Sitecore), - a lot has changed. As our CEO likes to say: This time it’s not a revolution, it’s an evolution! And I have to agree:  Features has been refined into something that’s close to perfection: Editing directly from the page, but still storing data into an atomized storage. Designing the page from the editing interface, - but STILL separating content from presentation (one of the absolute strengths of Sitecore).  And much more: Sitecore press release. CMSWire - Sitecore 6 Walkthrough

And at the same time,I’m proud to say that it’s the most well-tested, analyzed, usability tested product we have passed to the market.

 

This time we also decided to have everything ready for the release, - which was immediately prior to Microsoft Worldwide Partner Conference: Marketing material, training material, licensing model etc. all had to be done before releasing the product. During summer you will also see additional material popping up such as technical marketing material, etc. First ratings has been absolutely positive.

 

Strongly supported by other analysts, such as Gartner group, this absolutly strenghtens Sitecores profile.

 

Here's a snippet of some of the new marketing material. Have a look at YouTube to get higher quality.

 

We participated on the Microsoft Worldwide Partner Conference 2008 again this year, - and again as gold sponsor, - this year with around 25 participants. Have a look at the album for MWPC.

a2008bb0d3998324ac5d6cb203bd8c47.jpg

Monday, 07 April 2008

Task Manager as Shared Source

I want to support the Shared Source initiative too, and have therefore decided to upload and share the Task Manager for Sitecore.

If you just want to use it in your Sitecore application, download it from the project room for the task manager application: http://trac.sitecore.net/TaskManager.

 

So, what can you use it for?

You can start the task manager directly from your task bar on your Sitecore desktop. It’ll show you all job processes of Sitecore (background processes), with their status. For example, try do a full publish, then close the publish dialog while it’s publishing (it’s a background process, meaning this will not cancel the publishing process). The task manager will show you the publishing status, - while you can continue working with other applications such as the content editor.

fdc5ac68c77a6cdb3ae3670fb4ca1912.jpg

It’s also possible to use it as a traditional performance monitor. Why is this cool? It’s cool, because you can start a task manager on an application outside your firewall, - without any other access than http requests.

b76406b5d383e1910268616813ddefd5.jpg

 

Help me here

I REALLY would like some to help me clean up in this installation. A few years ago, I built this application as a POC on the capabilities on Sheer UI, and have recently changed part of the architecture to support multiple users on the same process collection unit. But I have not cleaned up the source in any significant way.

Drop me a mail, ln at Sitecore.net, to join the Task Manager Project group.

Wednesday, 26 March 2008

New Zealand too!

Last week, Alistair from Australia did release a movie around his amazing Revolver module. Apparently, New Zealand doesn’t want to hold back on cool stuff either.

Have a look at James Fraser’s blog post about displaying multiple validation results in the Sitecore Content Manager.

I’m definitely going to put these two blogs on my watch list.

ANZ rules!

09:45 Posted in Sitecore | Permalink | Comments (0) | Email this | Tags: Sitecore, ANZ

Monday, 17 March 2008

Boing! I’m flabbergasted

I’ve always considered myself as a bit of a nerd. I guess this is something that comes with the territory when you can’t help code something like full-blown Task manager for Sitecore or can go into infinite happiness loop over long lost, newfound generics.

Well, I must now redefine myself:  I’m not a tech-freak. Not at all! What I’ve done in the past seems to pale in comparison to what Alistair from Australia decided to do.

 

I wrote a full-blown task manager for Sitecore in XAML/Ajax. Alistair has decided to set up the bar by writing a full working command prompt system, - ALSO using XAML/Ajax. But not just that, his commands are working directly on the Sitecore data structure allowing you to search, filter and manipulate items exactly the same way you would do it in your Windows command prompt.

ff2a832fd4f79220866a629f6a72f974.jpg

 

What’s this? Is it DOS? Is it PowerShell? No, it’s Revolver

Tuesday, 04 March 2008

Shared Source - revisited

As some of you might know, - my job in Sitecore has been slightly redefined. I’m now VP, Technical Marketing. Basically I will still be working hard on whatever I’ve done recently, but will slowly move into the more strategic and technical marketing direction.

This doesn’t mean you will start seeing less technical blog posts here. I will have to keep up my tech skills, - and perhaps it will be so even more. But it means that Sitecore will strengthen our profile in regards developers.

 

So, what have we been doing so far?

Xpress: First, - around 3 weeks ago, we launched Sitecore Xpress Personal Developer Edition. This product, - as most of you know is free for developers to use for their personal web site, - or if they want to build a personal web site for somebody else. You can find more information about the product here: http://xpress.sitecore.net. Go ahead, - download it and get a free full working Sitecore!

 

Shared Source revisited: Next, - yesterday, we launched the next step in building a strong developers community. The previously (free) shared source modules that were maintained by Sitecore only, has been converted into real shared source projects. This meant that everybody who wants to can contribute to existing modules, share code, build new projects, branch existing modules into a new direction etc. They can also build work groups, track changes or use any of the other tools Sitecore provide to get the community going. Jimmie Overby is our shared source coordinator, - and I’m sure you can get much more information from his blog http://sharesitecore.wordpress.com or from our “how to contribute” on Sitecore Developer Network: http://sdn.sitecore.net/Resources/Shared%20Source/Contrib....

This is great news, - and extra great because we also see other partners, and their commercial modules moving into same direction with sharing the source. http://mcore.wordpress.com/2008/02/26/6/.

 

Now, what other initiatives do we have?

MVP program: We still have the Most Valuable Professional program running (MVP). This program is built to recognize developers who adds a bit extra effort in either blogging, - or doing other cool technical achievements in regards to Sitecore. It’s a yearly award… I’ll make sure to publicize some information about the program soon on our developer network.

 

Crestone Beta: Finally we’re giving developers and Sitecore partners a chance to join the closed Sitecore Crestone Beta program. As only a limited number of beta testers will be allowed to participate, and they will need to be various profiles, not everybody will be selected for the program. But, - if you think this is something for you, - go to the Beta Program invitation page on our developer network, and fill out the application form: http://sdn.sitecore.net/crestone.aspx.

 

So, what’s in future?

Modules strategies: Along with the shared source modules, - we need to build a strong strategy for how developers can share modules, - or how partners can contribute to the Sitecore portfolio of products. Over the next 2-3 months I will spend some time focusing on this.

 

Developer Network, version 2: We also need to have a look at our developer network. It badly lacks features and cool search capabilities. Sounds simple? It’s not… We need to coordinate with the documentation team, - re-organizing the more than 5000 articles and pieces on SDN, - re-categorize them etc. Building the site is the easy part, - not so for the content. I think this will be something we’ll be working with over the next year. But it’s an ongoing process.

Thursday, 28 February 2008

Software as a Service – next generation

So, i’ve just gotten home from the EasyFair ICT/Internet EXPO held here in Denmark, - a fair where Sitecore was represented on a booth with one of our partners (Pentia). I wasn’t on the booth myself, but rather visiting other boots and to hear some of the exiting panel debates and other interesting stuff.

b2b255a1ef898e4d7da9c4b577546435.jpg
Jesper Lykkegaard, sales director, Pentia (left) and Thomas Kirk Albert, CEO, Pentia (right) engaged in a discussion with a customer (center).

 

I followed a lot interesting discussions and presentations, - and wont’ go into details on them except for a very cool presentation by PwC security.  They managed to hack the VoIP of a (fictive) company, through a scenario where the target didn’t have direct access to the internet, but only the Intranet (who were using the same SQL as the internet server in the DMZ). The intranet server was even behind yet another firewall. They used SQL injection on the public web server to upload files to the intranet, then vulnerability in WinZip to install the snoop the stream of the VoIP system…. Very cool, - and very scary.

 

Anyways, I too was invited to participate in a panel debate around SaaS with some very clever people. The topic was a series of questions, especially if the customers would want to use this technology and/or if the ISV’s would build software that will work with SaaS.

4db9013070f72f2615f39800f4648f36.jpg
SaaS panel participants (from left to right): Bjørn Skou Eilertsen, Microsoft CRM sales lead, Microsoft Danmark. Lars Fløe Nielsen, vice president, Strategic Alliances, Sitecore. Anders E. Trolle-Scultz, Sales Director, Crayon.  Klaus Æ. Mogensen,  Project manager, Copenhagen Institute for Futures Studies. Peter Suhr, Director, Gartner.

 

So what were the overall topics?

As a whole, we all agreed that Software as a Service is here to stay. Companies will want to use rented software in a higher and higher degree: SaaS will make it easier for small companies to use software which may be hard to maintain and run (e.g. they can rent MS CRM instead of purchasing it, installing it and run it). Even large companies will seek benefits, as parts of the organization, e.g. marketing, can rent features for a while (e.g. campaign software) without the need to clear this with the IT department. Naturally we also discussed that some applications have to be cleared with the IT department: Usually business critical systems. Here’s an example: An IT department may not object if the marketing department rents a small web site for campaign purposes (for example 2-3 months), while they most likely would object if the marketing department chose MS CRM instead of the Corporate SAP CRM as this will defragment the data, and render the synergies of a shared customer database obsolete.

 

However, we also discussed what could put a lid on companies desire to invest in SaaS: Security. For example, if a major SaaS (e.g. the CRM SalesForce) should be unfortunate to publicize one of their customers entire customer database, exposing this to the customers competitors. However, Anders E. Trolle-Scultz also came with an interesting observation… SaaS might be safer for most companies because the ISP and ISV would be focusing on security for that particular software, while the small company most likely would not have this kind of expertise.

 

I had a topic I wanted to discuss: I didn’t believe the question if the ISV’s are ready for SaaS should be asked, but rather a more broad question; will the ISV’s get ready with SaaS enabled software, and when they are, can they get the software hosted somewhere?

 

The fact is that almost no ISP’s are ready for SaaS. Naturally you can design a solution, then have an ISP host it, - but it requires much more than that. The hoster should deliver a framework which can automate processes for installation of the ISV software, - ordering software for the end customer etc.

 

Now, some ISP’s have actually purchased a SaaS framework, e.g. DK vendor Cohaesio, but I really don’t think this will kick off unless a SaaS framework and process description is ready. For example, can we all agree on one framework, then the ISP can install it, - and the ISV can code their applications up against it.

 

Fortunately, Microsoft has picked up on this challenge, - and started their SaaS incubation center as the only major vendor on the market. And hopefully, - at some point, they will supply a full SaaS framework the ISP can install on their servers, and a set of rules that the ISV must code their applications up against. Imagine a scenario that if so, the ISV’s can go to any ISP (who runs the framework) and deliver their software on a CD. Then the ISP can start offering the software within a day.

 

Another good note was made by Bjørn Skou Eilertsen from Microsoft. He believed (and I concur) that companies in future would use a combination of Software as a Service (that is rented and serviced software), along with Software + Services (the ability to have your application installed locally, then have the application use services online, e.g. MS Outlook having contact details updated automatically through a remote directory).

 

Abbreviations used in this article:

ISP: Internet Service Provider. A company specializing in hosting solutions.

ISV: Independent Software Vendor. A company that produces software.

SaaS: Software as a Service.

 

Related Articles:

SaaS incubation project

19:15 Posted in SaaS | Permalink | Comments (1) | Email this | Tags: SaaS, Sitecore

Tuesday, 05 February 2008

Blog post update

Hey everyone,

I've just updated the Blog post dictionary about Sitecore, external bloggers and internal. You'll see 6 addtions, - a few changes on RSS vs. ATOM (now all RSS), one removal.

I've also updated the Sitecore RSS pipeline on pipes.yahoo.com, meaning it now contains 32 RSS sources; all of those on my page. You can find the pipe here: http://pipes.yahoo.com/sitecore and if you like to subscribe to this pipe (instead of adding each of these on my page individually), use http://pipes.yahoo.com/pipes/pipe.run?_id=ZsFOz4a62xG9Py3....

08:10 Posted in Sitecore | Permalink | Comments (0) | Email this | Tags: Sitecore, RSS, Pipes

Saturday, 26 January 2008

Sitecore Xpress Personal Developer Edition

Huh? What’s that? Is this an entire new product from Sitecore?

That’s right! That’s what it is. And, - then not…

Sitecore Xpress Personal Developer Edition is a free product for you developers out there who want to build your personal web sites running on the exact same technology as the traditional Sitecore site: The same technology that serves web pages to more than 6000 web sites (1400 customers).

It is also the product for those developers who want to learn and experience some of the coolest web based AJAX driven technology on the market. Those who want to play in a fantastic .NET based environment, with full access to the Sitecore Developer Network.

So, when can you do this? Thursday, February 7, 2008 at 7:30 AM (Central European Time), the public web site of Sitecore Xpress will launch. And so will the availability for the product.

You may also register at the two similar webinars that day, which should match most of the globe working hours, to learn much more about the product and for what you may use it. Find the links to the webinars at the Xpress web site, Xpress.sitecore.net.

189426a5e778c594eb67a69cbd5996d1.jpg

09:45 Posted in Sitecore | Permalink | Comments (4) | Email this | Tags: Xpress, Sitecore, .NET, free

All the posts