Cyber Security Predictions for 2017

2016 was a big year in the annals of Cyber Security, and 2017 promises to eclipse it.

Creating an Enterprise Data Strategy

An introduction to the process of developing comprehensive strategies for enterprise data manangement and exploitation.

A Framework for Evolutionary Artificial Thought

Let’s start at the beginning – what does this or any such “Framework” buy us?

The Innovation Dilemma

What things actually promote or discourage innovation? We'll examine a few in this post...

Digitial Transformation, Defined

Digitial Transformation is a hot topic in IT and big money maker for consultants - but what does it really mean?.

Showing posts with label CMS. Show all posts
Showing posts with label CMS. Show all posts

Wednesday, June 19, 2013

Joomla versus Wordpress

Deploying and maintaining websites used to be quite the ordeal, especially if you had content intensive requirements or clients who wanted to be able to update key design features such as navigation on a regular basis. While approaches for how to manage that process improved from the early 90’s through to early 2000’s there was still a great deal of manual coordination and update required. Changes in scripts deployed inline needed to be adjusted in every page deployed. Also, sometimes the pages design rendering was inconsistent from one section of a site to another - this too required polishing to get just right. The addition of CSS (cascading style sheets) and external scripts helped but pre-CMS website development was still a significant challenge – and this was for sites with relatively simple expectations for application or database support.

Old Timey Web development has a strange connection to Married with Children - there may be a similar link between Mobile development and Modern Family...

In the late 1990s and early 2000’s, SharePoint and a whole slew of commercial portal products hit the market, targeted primarily at enterprise users. These types of products offered the chance to build sites without quite so much manual design, but the products soon became fairly specialized in their support for integration with larger back-end systems. That specialization and the cost involved with this class of system made them unappealing or unrealistic for the majority of website developers. At the same time all of this was occurring, the web development community had amassed an ever greater array of applications that could be plugged into site development. Many of these apps at first were built using CGI and later PHP became the standard (although many languages have been used including .net). By 2005, there were several groups that had effectively combined a number of these apps into coherent platforms – those platforms shared the same core characteristics:
  1. Holistic control panel interfaces (not unlike those used by web hosting providers).
  2. Content management features – this was focused around page publication and abstraction of content development from page deployment.
  3. Style blocks – the ability to segment off panels or blocks to position specific content or application features.
  4. Application support – development of core code and APIs for interaction.
  5. Shared data structure – single instance DB to support platform and all applications.
Perhaps most importantly, this new breed of Web Content Management Systems (WCMS) became community-based and open source. This had two immediate and powerful effects:
  • First, it made these platforms universally available to all and any web developers for any purpose they could imagine.
  • It ensured a growing set of application plugins designed to run on that platform would be available. For anyone who had worked with the more expensive portal software or even SharePoint, this difference is striking. The lack of a community to tends to translate into limited capability and an overall high cost of ownership as most added features end up being custom coded.
So, what is a WCMS anyway? At first glance the title seems a bit inaccurate – in 95% of the cases – a WCMS is not used as a Content Management System. A WCMS is more like a web publishing platform that happens to support CMS features (to facilitate content development and deployment). Not too long ago there was another class of software that was referred to as Web Publishing – it dealt primarily with management of complex magazine like sites (software such as Interspire). Most of those packages have come and gone and now the definition of what constitutes "Web Publishing" has more or less merged with social media (Twitter and Blogs are considered web publishing as well yet management of these is in the Cloud at the host, and less complex).

For our purposes though, Web Publishing within the WCMS involves very comprehensive features (some might say almost limitless) for design control and application extension. So, for all intents and purposes, the platforms have become ubiquitous for web development – supporting just about any Use Case that you can think of – everything from a simple site, to a community forum, to a magazine or an online store. You can do all that and more, and in a fraction of the time it previously required.

Value Proposition of the WCMS

Why is all of that important? Well, adoption of a WCMS translates into the following value proposition for most web developers:
  1. These platforms support rapid prototyping – getting the site up and running actually becomes easier than the style-sheet work – although with the superstructure up – it becomes feasible to highlight many more design options simultaneously.  
  2. Using these platforms allows smaller shops or teams to handle more simultaneous work (in most cases).
  3. Using a WCMS allows for plug and play application features (and potentially this could extend to all application features of a site). Custom configuration may still be required but the level of effort is an order of magnitude smaller. 
  4. Setting up training and maintenance processes for any sites developed using these platforms can be consolidated to one effort (e.g. the first manual and training class you prepare becomes the template for all others with relatively little rework required).
  5. The mobile strategy and main site can be planned and rolled out in tandem. 
Now, that we've talked ourselves into a WCMS, what next? Well, the obvious next question is which one ought to be used. There are quite a few WCMSs out there, but the vast majority of all users have adopted one of four (open source) tools right now:
  • WordPress (most popular)
  • Joomla (second most popular)
  • Drupal (probably third)
  • DotNetNuke (in the running).
So, we've already narrowed down the options based on the first criteria, popularity. Popularity is important when considering open source software for the reasons we mentioned previously:
  1. It implies a more dynamic community which means the software will keep getting better and more comprehensive.
  2. It also implies that we will have an ever growing pool of new (plugins or extension) apps to choose from.  
For the purposes of this article, we’re going to make the first round selection based entirely on that criteria and now the choice is narrowed to the top two; Joomla versus WordPress.

WordPress – This WCMS began life as blog platform in 2003. The first CMS features were deployed across two releases in 2005 and by 2008 WordPress had shifted from being primarily blog focused to be a full-featured CMS. One of the key differences between WordPress and Joomla historically had been that many of the WordPress blogs / sites began life within WordPress's hosting environment (what we’d now call the Cloud). WordPress is used in 60 million websites (although a good percentage of those are purely blogs with little functionality used – more or less equivalent to blogger.com).

An example of a Joomla-based solution (circa 2011)
Joomla – Joomla began life as a commercial product called Mambo in 2000. Shortly, thereafter an open source version of Mambo was released and eventually the Mambo project forked into other projects including Joomla which launched in 2005. Mambo / Joomla was built to be a CMS from day 1. There have been approximately 30 million downloads of Joomla since 2005.

Both platforms support very large feature sets, although evaluation just on the competing lists doesn't tell the whole story – in other words, they both look equally impressive on paper. Before we can rate them however we’ll need to add our remaining criteria; those are:

  • Ease of Administration – this is generally typified by the admin console but can extend to other features or considerations.
  • Design Flexibility – This relates more to what is possible from a design perspective.
  • Design Ease of Use – This relates more to how hard is it to conduct those designs.
  • Content Management – Each CMS has its own idiosyncrasies.
  • Application Functionality (extensibility) and integration of that within the platform – Sometimes the same apps developed for WordPress and Joomla behave differently in either platform. Also, there are some apps you can find for one but not on the other.

So, given that popularity is already factored out, we could assign a 20% weight to each of the criteria listed above and we might rate each area from 1 to 5 (1 lowest, 5 highest). Here’s our score card:

Category
Joomla
WordPress
Ease of Administration
5
3
Design Flexibility
4
4
Design Ease of Use
5
3
Content Management
4
2
Application Functionality
4
3
Totals
22 (of 25) 88%
15 (of 25) 60%


There are those who might say ratings are determined in part by which tool you used first. In our case this doesn't apply, as over the past 15 years we've worked with more than a dozen different CMS and portal products and hundreds of similar scripts that were eventually pulled together to build these types of WCMS platforms. For us, the true measurement is how long does it take to build using one platform versus another and then how much of that is due to the platform itself (as opposed to unique requirements). For those of us in who work in IT and have had to evaluate dozens or even hundreds of different tools over our careers; we’re able to develop a certain level of objectivity when contrasting technology.

So what do these ratings really mean; here are some associated observations:

  • In the most important metric, time to develop / complete / deploy a site on Joomla on average took 25% or less time than WordPress.
  • The WordPress multiple blog (Network feature) is still not quite ready for prime time.
  • WordPress was built first for blogs and it shows, the design metaphor is little clunky and the widget (design blocks) can take on a life of their own – making design much more time consuming than it should be.
  • You’re more likely to run into application / widget compatibility issues on WordPress.
  • WordPress does though seem to be getting some apps that aren't being made available on Joomla, some of these are more focused towards the enterprise which is a serious long-term issue for Joomla (if it is to remain competitive).
  • In Joomla, management of page (CMS) taxonomy is definitely more complicated than WordPress, however this is a relatively small part of the overall web development effort and isn't too hard to get used to.
  • Both WCMSs have suffered major security flaws in the past, this will likely continue to be the case (but isn't nearly as complex as dealing with the Microsoft stack and SharePoint).
  • One of the biggest issues we ran into with WordPress was the embedded editing capability (and errors associated with it). The editors (which can be added as extensions to the administration consoles) seem to perform better on Joomla – this is a big deal from a content management standpoint.
  • Overall, we found it harder to achieve some of the core design functionality in WordPress than in Joomla (everything from placement of blocks to the ability to run content sliders etc.)
  • The application update notifications in WordPress are nifty, but don’t completely make up for other failings (in getting them to work properly for example).
  • The WordPress blog moderation console is pretty cool and shows where WordPress really excels. However, for many web Use Cases, this is unnecessary.

Bottom line – in the WordPress v. Joomla battle, Joomla wins in most categories (in situations where an organization hasn't already invested a lot of time in one or the other). How long this will remain the case is hard to tell, but based on our review it would probably require several major architectural changes in the core WordPress platform to complete the shift in its evolution from blog platform to WCMS.



Copyright 2013, Stephen Lahanas

Friday, December 7, 2012

Coming up on Technovation Talks...

This is preview of the posts and presentations you'll be seeing on the Technovation Talks Blog over the next month:

  • An Introduction to IT Architecture
  • How to create Conceptual Data Models
  • Using Joomla as an Enterprise CMS solution
  • The Top 10 IT breakthroughs of 2012
  • Evaluating the Adobe Creative Cloud and MS Office 365 
  • Top 5 challenges in Project Architecture
  • IT Predictions for 2013
  • Principles of Natural Intelligence
  • 5 Ways to monetize massively online multi-player games
  • How to set up a Cyber Security Consortium part 2
  • Mastering Requirements Management for the Enterprise
  • Understanding Quantum Networks
  • Introducing a Data Reference Model for Cyber Security
  • How to use the UML Domain Model
  • Integrating Mobile and Web Applications 
  • Crowd-sourcing and Virtual Collaboration - Problem Solving for the next 100 years
  • The state of the Semantic Web
  • An assessment of DMBOK 2.0
  • How to Set up a Big Data Practice
  • Estimating IT Projects - the Top 5 Skills
  • Exploiting new features of HTML 5 for Web and Mobile Development
  • The Personal Learning Environment
  • Understanding Forecourt, POS and Electronic Payment Solutions
  • Using Intelligent Healthcare to improve Patient Outcomes 
  • Exploring the Windows 8 Interface




Copyright 2012  - Technovation Talks, Semantech Inc

Monday, November 12, 2012

Defining Virtual Collaboration

I had an interesting conversation this week with a colleague regarding the relative lack of success with many current Knowledge Management Platforms / Systems. One of the first and most obvious problems is that there isn’t clear a set of expectations as to what constitutes Knowledge Management in contrast with Content Management and Virtual Collaboration. Add to this a blending of case and/or workflow management capabilities into the picture and it becomes perhaps even more confusing to determine just what type of a solution one needs or may be using. The end users find this confusing as well, which is why many of these systems are underutilized and the alleged ROI associated with them is never actually realized.

There are a couple of common threads across these types of solutions that tend to be shared. Most of these systems expect or depend on some sort of collaboration capability and most of them recognize that unstructured data is legitimate and in fact vital to the day to day routine of end users these days. So you will find similar features across these solution categories but radically different expectations for their use. Getting back to the conversation, after discussing several areas of confusion and reasons why these solutions weren’t working as anticipated it occurred to me that the issue might be resolved by semantics, on several levels.

First, the nature of vendor marketing tends to push solutions towards obvious differentiated pitches and descriptions. The spectrum of available software solutions is in fact an Ontology (or a set of Ontologies depending on how you view it). Many organizations have attempted to lend more credibility to these through neutral (3rd party) interpretations of typical IT capabilities. Many of you may be familiar with these, they include ITIL and predetermined reference models built within various Enterprise Architecture frameworks such as FEAF (an SRM in many ways ends up mirroring ITIL and software vendor categories / groupings or terminology). So, there exists the possibility that there may be improvements made in the way that software solutions are defined, described and arranged. This actually becomes more vital given the trend  towards SOA which implies more interoperability and discovery capabilities – as software features become ‘atomically’ separable and universally available, the manner in which we manage the naming conventions becomes critical.




Virtual Collaboration doesn't just happen, it requires an approach in order to fully exploit its potential

The second consideration that involves semantics relates to achieving a better understanding of the processes that are served by these various software or service solutions. This is more important perhaps than it sounds – how exactly does one determine if an enterprise requires a KM system, a Collaboration system, a CMS or WCMS system and an LMS or some combination or hybrid of them? You’d assume that there’d be some sort of internal research that would have clearly mapped organization expectations and processes to the precise mix of solution capability that needs to be acquired. This however is seldom how such things happen. Often, the choices made are based upon the idiosyncratic preferences of individual decision makers or the corporate expectations that specific technology innovations or trends must be adopted in order to avoid falling behind (although what that means is often never fully explained or quantified).

All of which got me to thinking about the nature of one of those common threads, Collaboration. What exactly does this mean? Is collaboration a daily expectation or is it an extraordinary circumstance needed to address unusual issues? Or has available technology changed the nature of what collaboration is and could be within most organizations? I soon recognized through my own line of introspective queries that I was viewing Collaboration in a one-dimensional context, and that I wasn’t the only one doing so. What I realized was that there were a variety of collaborative processes at work in most organizations and that they were all in the process of evolving as a result of the technologies being introduced in most environments. So, I decided to take a stab at trying to classify them and begin providing a foundation for mapping them to solution Ontologies (both at the macro/software or service and micro/feature level).

The two major categories of Virtual Collaboration are Active & Passive. Within each of these there exist various temporal options – most notably ’Synchronous’ and ‘Synchronous.’ There are expectations regarding how groups of collaborating end users are managed or not; ‘Laissez Faire’ and ‘Deterministic.’ There are also a number of other elements that can be added to this Ontology, including Workflow Expectations.” Many of us who have worked in situations where we’ve had to evaluate industry solutions using complex criteria and testing can appreciate the value that an industry-wide ontology might provide. Defining these categories and characteristics can help provide the necessary guidance to determine what solutions might be required to facilitate them.

Types of Collaboration Processes
•    Active (participation in the larger entity expected main benefit extends from individual to group)
•    Passive (participation welcomed, not expected, main benefit extends from group to individual)
•    Hybrid

Temporal Collaborative States
•    Asynchronous
•    Synchronous
•    Hybrid

Group Management Styles
•    Laissez Faire
•    Deterministic
•    Alternating

Workflow Expectations
•    Routine (daily)
•    Highly Coordinated (reporting chain, active oversight)
•    Exceptional (Tiger Team)



Copyright 2012  - Technovation Talks, Semantech Inc.