June 13, 2012
Watching Niel Hartvig's CodeGarden keynote speech:
-- Biz Layer... needs to go away... Ben laughs!!!
-- Too complicated...
This is just a quick reaction to the announcement that v5 development is now dead. Instead, Umbraco HQ is now porting some cool (working and less complex) features from v5 to v4.
The premise of v5 was to essentially move to a new architecture, MVC. This new version came to light when Microsoft .NET started supporting MVC. Although Umbraco was quick to make the switch, almost everyone in the ASP.NET world did the same. The only difference is that the others did not change architecture. They only supported the new architecture to allow for new technologies, like Razor. This allowed those others to continue to work the "old" way but remain up-to-date with new techniques.
Umbraco changed their architecture so much that to say there's NO upgrade path was somewhat irresponsible. They, instead, proclaimed that we should rewrite our code if you want to use v5. But the problem was v4 was not going anywhere anymore except for some patch releases but not in terms of improving it. So, where does that leave me...learn MVC or be left behind!!! It may be that Umbraco v4's codebase is 6 years old, but that doesn't mean that my site is older than a month.
When Jupiter (v5) was announced, one of the main reasons to move to the new architecture was the retirement of XSLT support. There are several great reasons to abandon it, but there are also flawed reasons. For instance, "modern" web sites are not hierarchical." To me, matching how a Website is structured to how you implement an application's data layer like Umbraco should not be made. Web designers can come up with tons of ways to structure a site, but that's on the visual and usability sense and not storage. I think Hive is great but how does that hinder us from representing our Website into XML. Don't we still use the tree-based content panel to edit our content? A tree... hmmm... hierarchical... hmmm... XML! Anyway, that doesn't mean that's how the site visitor actually navigates the site, it's just how we have things organized.
The fault that Umbraco had with v5 is that they changed architecture instead of supporting it. It seems to me that it became more indulgent instead of being concerned with its customer base. It is, afterall, open-source where sometimes it becomes more of a pet project rather than something that's practical and usable. We know there are great minds behind Umbraco and I don't blame them for seeking to keep Umbraco development progressive, but there comes a time when, according to Spiderman's Uncle Ben, that "with great power comes great responsibility." That responsibility is to the user base who adopted and evangelized the product. The intent is admirable but the execution was flawed.
There had been great products in the market that were built by very intelligent people, but it doesn't mean that they were going to work once it's in the hands of the public. There are things that should remain academic but should be paid attention to because of all the things we learn from them. But one should not jump to the conclusion that if it works in our heads, it works with everyone else. Or, is the idea of Umbraco v5 just too much ahead of its time? Consider Einstein's "great blunder" when he abandoned the idea of "cosmological constant" which we're now considering may explain "dark matter." It was too advanced until we knew more. So, maybe when developers are more familiar with MVC and supporting technologies, then we can adopt it easier and understand Umbraco v5's concepts. What may be complex to us now, may not be with some additional knowledge. But, until then, let's keep v4 and improve it. You can call the next version Umbraco 2012 or 2013 if you don't want to skip v5. And maybe have a different track for "Umbraco MVC" and proclaim it as a separate product.
v5 was aptly codenamed Jupiter: a gas giant made of complex technologies that no one can live on (or keep up with in case of its users). Well, not yet at least.
comments powered by