A Platform's People Must Be As Pliable As Its Tech
Join the DZone community and get the full member experience.Join For Free
I haven't blogged for a while because this blog is still hosted on a server that hasn't received payment since my payment subscription ended over a month ago, and I don't want to just set up the same old blog software on the new host I've already arranged.
So remember a while back I mentioned I'd move this blog to Orchard?
It's not that I haven't gotten around to setting up Orchard yet. It's that I am having a huge amount of difficulty embracing it. Besides the fact that it has an incredibly steep learning curve--and then still v1.x level capability once the knowledge plateaus--there is something critically wrong with Orchard that I'm still getting past, and that is the size and attitude of its current community.
A good blogging platform--CMS, whatever you want to call it--will be "hackable" to conform to the proprietary needs of its user. On the technical side, Orchard is perfect for this because it is "just an ASP.NET MVC application", and they tout it as such, up until they actually see ASP.NET MVC developers tackling and hacking it. And yes I can take Orchard's source code and hack at it to meet whatever requirements I have. Personally, I think that this is the only real-world scenario for Orchard anyway simply because it's still v1.x and is still painfully lacking in feature detail.
But its community so far consists of a very small handful of people, and several of them are paid--whether directly or indirectly--by Microsoft. So there has proven to be a very large wedge between those who actually know the platform inside and out and those who, like me, are trying to learn the platform--very few who know the platform well from a development standpoint but are just end users, because Orchard is still so new--and the wedge between these two groups is not just one of knowledge but also of culture and attitude. Those who are maintaining Orchard are insistent that people stay in the box that Orchard constructs. This is so completely not the attitude of a typical open source software developer. Most OSS developers see breaking out of a prebuilt box--especially when the box is still a 1.x "greenfield" project--as a huge and wonderful challenge worth conquering. "Going rogue" with the platform is something that is often embraced by a platform because it highlights the pliability of the platform or else reveals opportunities for improvement.
And I would play my part in seeing this "box breakout" opportunity to be a challenge worth conquering, but every time I sit down to continue to learn the platform and understand its limitations and possibly some seam points I might introduce, I have to ask myself, What's the payoff besides getting my site set up the way I want it? Because I'll admit, my biggest motivation to delve into Orchard is to be an expert in Orchard and to be a useful participating member of its community, so this is not just an investment in the technology but in the community.
So then I ask myself, is the community worth investing in? It is if I'm willing to be the only rogue participant trying to figure out how to break out of the originally intended design and just use the parts of it that I want to use but still ultimately have my own ASP.NET MVC site with an Orchard back-end in certain places. But I'm not willing to be the only rogue. So that leaves me looking like an a-hole calling these guys a-holes, because they freak out at the notion of using Orchard in a way for which it was not originally intended. (They're not a-holes, by the way, and neither am I, I'm just saying it looks something like me being an a-hole calling them a-holes because tensions rise and a lot of bickering occurs when they can't get past overall intentions and strategy while I'm trying to address a specific technical scenario.)
So perhaps Orchard is not what I want to use, I'm still unsure, and believe me I have pondered just writing my own blog engine (again), but let me be clear: it is not because the Orchard technology isn't a good fit for me, rather it is because the people aren't a good fit for me. They are delivering a product that they think should be used as-is with their own proprietary methods of extending and tweaking (rather than ASP.NET MVC methods of extending and tweaking which again ASP.NET tweaks are in my opinion completely appropriate) and they don't want to help people twist it around and see their hard work made "ugly" or for that matter "insufficient". It's only human to be protective of your investment and its public image, but it's just not a realistic attitude to have when you're still a young 1.x platform less than a year old that still needs to build up a strong community and documentation is still lacking.
Meanwhile, the more I look at WordPress the more I like it. Its core technology isn't much for an ASP.NET developer to look at, but everything else about WordPress is really growing on me, I'm tempted to call it "wonderful". I could sit here and talk about WordPress's wonderfulness for some time but the reality is that everyone who would read this tech blog already knows all about WordPress and if not then just go create a basic WordPress blog yourself, it's free.
In fact, I was working on setting up another site for a friend this week and I used WordPress to do it, and after weeks of frustrations with Orchard and its bland 1.x workflow I must confess that I really just about lost it when I worked in WordPress, it is really just such a nice experience. Granted, the site is actually just a plain-vanilla WordPress.com site (not a Wordpress.org full deployment) so it's not like I had a lot of customizations I could do here that I wasn't able to do or figure out in Orchard, so much as the beautiful experience of working with WordPress itself and the rich configurability of WordPress made the disappointment of WP's limited customization flexibility all just wash away.
I can't see myself becoming a PHP programmer consultant touting WordPress, I've had a couple false starts, but the notion has been on the table for nearly a year now, and after trying (albeit not very hard) to work with Orchard I don't think I can get around it.
The best part about WordPress is that it can run in .NET using Phalanger. And I'm seriously considering toying with the idea of abandoning Orchard for WordPress-on-Phalanger-on-.NET. "Eww" to you can very well be "Oooo!" to someone else.
Published at DZone with permission of Jon Davis, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.