At first I was very excited to move from Sitefinity 3.7 to 4.0 but… After going through the migration process using the less than exceptional codeplex migration project I started to realize this was not a fully baked product. The migration process feels like a complete afterthought, case and point the blog posts post dates are not migrated correctly (the real issue is with there api for the blog, follow-up post to follow). All 3.7 sitefinity images do not work, could be a hassle for sites with large number of pages with sitefinity images on them.
I feel like Sitefinity team has forgotten about their current customers. Like many current Sitefinity customers there is a fair amount of custom coded widgets and navigation that were created in 3.7 because it was just so easy to extend. In 4.0 nothing works because 4.0 is a new version 1 product.
Where did they go wrong?
First off they need more custom code examples. This was fantastic in 3.7, all the Sitefinity team had to do is look at what guidance already existed for 3.7 and create it for 4.0.
The left out what I consider foundational functionality such as having pages be defined as links to another page either internally or externally. Another biggie is not shipping a Lists module, this is a basic construct that humans have used since caveman days and there is even a computer language based on this (lisp). So why have cavemen figured out how important lists are but the Sitefinity team was quick to dismiss it from there 4.0 initial delivery, there is a big lesson learned here that I hope they take the opportunity to realize.
This is for the Sitefinity team
A product is more than what's gets shipped. The guidance, sales, marketing, branding, customer support, etc. are all part of successfully shipping a product. In short this product was shipped 3-6 months too early and I’m sure your customer service team is paying the price for it now.