Category: Apax Blog

The Break Down of Popular CMS Website Platforms

It may seem easy to build a website based on what it looks like when you type in an address, but what’s going on behind the scenes can make a huge difference in which Content Management System (CMS) you choose to use to develop a website.


The three most common CMS tools at the time this post was written are WordPress, Joomla, and Drupal. All are cross-platform operating systems written in PHP and each has pros and cons. This article will explain the differences between them.

WordPress is a free and open source blogging tool that has a plug-in architecture and template system. WordPress is currently the most popular CMS tool.  As of August 2011 WordPress manages 22% of all new websites.

Joomla is a free and open source CMS publishing tool for the Internet. It includes features like page caching, RSS feeds, news flashes, blogs, and polls. Between 2007 and 2011 Joomla had been downloaded 23 million times and as of November last year has more than 8,600 free and commercial extensions available.

Drupal is a free and open source CMS that is used as a back-end system for at least 1.5% of all websites worldwide. Websites that use Drupal range from personal blogs to corporate, political and government sites. As of this month, more than 9,500 free community contributed add-ons are available that can customize the behavior and performance of sites run through Drupal.

This article will assess the pros and cons to each CMS tool…

Let’s start with set up.

WordPress definitely has the easiest set up / configuration and offers the lowest learning curve for web developers when paired with a user friendly development interface from gantry-framework.org. The only setting that WordPress requires is database information. It installs everything else for you and has all the basic site settings configured. The user can start customizing the website as well as posting on the blog portion of the website as soon as they sign up for an account.

Joomla is very similar to setting up WordPress but has options for more advanced settings. A novice may find the advance settings of Joomla confusing.

Drupal is the most difficult to set up because it requires a lot of third party modules to be installed for basic functionality of a website, and permissions to be configured. Many of the simple features that are offered by WordPress and Joomla are missing and a novice developer would have a very difficult time getting started.

User interface

WordPress has the easiest interface to use because it hides a lot of the more advanced features of a CMS so that novice users can easily understand the basics. The more advanced settings of Joomla offers a good mix of easy use and advanced features without being too confusing but would require a more advanced developer to fully understand how to optimize the features for content publishing. Drupal’s admin interface is more complicated and is best for advanced users or those who have had training for the interface. It automatically displays the most advanced settings, which can be confusing for novice users.

Plug-ins

Plugins allow for extra functionality that isn’t already included in the CMS tool. Plug-ins are usually free ware and open sourced so they can be modified or adapted to the user’s preferences.

Best News / Image Rotator Plugins that can easily be themed: Joomla

(See Awesome Inc  Site for Example – www.awesomeinc.org) Rockettheme.com provides a lot of free as well as paid extensions, which add great functionality to Joomla when displaying different types of content.

Best for Custom Content: Drupal provides functionality for having extra fields in custom content types, these content types can be used in several ways, image rotators, a way to display real estate property profiles, and much more.

Best for IT Managed Websites: Drupal

It is very easy to customize the core functionality to work exactly how the client wants. Unlike other CMS tools Drupal does not hide functionality from the user.

Best Built In Permissions: Joomla/Drupal

WordPress requires permissions plugins to be installed in order to edit permissions on users, content, etc. Joomla / Drupal have these permissions functions built in.

Worst Built in Permissions: WordPress

Joomla and WordPress have the easiest template to CMS conversion and are both currently supported by the Rockettheme.com’s gantry-framework, which allows developers to easily go from design template to CMS by using mostly CSS and limited HTML and PHP development.

For developers the easiest project transition is with Joomla and WordPress because if a company uses the Gantry-Framework the development process is standardized allowing for developers to take over a project without much time needed for knowledge transfer.

Drupal has the most configuration options because it doesn’t hold back any of the advanced features of the configuration of a website, allowing for optimal customizability. WordPress offers the least amount of customizable configuration options because it only shows the most necessary options for running a basic site.  Joomla has a mid amount configuration options.

For multi-site installs WordPress and Drupal are the best options because they allow for multiple themed sits to use one core install of the CMS tool. This allows the site manager to update the core and plug-ins with ease as they update on each site.

Your level of skill with development and the amount of customizing you’d like on your website will be defining factors in which CMS option you choose. The information above should be a good starting point for the decision. For more information please visit the sites below.

www.wordpress.org
www.drupal.org
www.joomla.org

www.gantry-framework.org

www.rockettheme.com

AJAX Google Search and jQuery Mash-up

Site search is becoming an expected functionality for any website. Fortunately, Google provides an API that makes adding site search trivial. With a few lines of code you can take advantage of Google and provide search results directly on your site.

The question then becomes, how do you display the results? By combining jQuery with the Google search you can quickly create a dynamic and user friendly search system for your site.

Learn more ...

Introduction to iPhone Development

Learning to develop iPhone applications can be a frightening undertaking. However, if you let it, it can be a very enjoyable experience. Assuming you are, like me, a PC user first, you will be overwhelmed by the small differences between developing on the PC platform, and developing on the MAC platform. Heck, just using the MAC operating system can be a challenge at first! Eventually, though, you should discover that the new environment is fun.

The key here is to approach the MAC OS, also known as Leopard (or lynx, or wildcat, or whatever cat they are using these days), without focusing on the differences between it and Windows. These little differences can really get on your nerves if you let them. But let’s face it, Windows is not exactly a perfect platform…I’m not saying that Leopard IS perfect, but if you don’t get caught up in the small differences, you can see that it really does have a lot to offer. I suggest trying out “Spaces”, a way of virtually extending your screen size. Also, try the function keys; they have some really cool functionality for moving your application windows around, making it easier for you to find the window you are looking for.

 

So, once you are confident with the MAC OS, you are ready to begin developing your very own iPhone application. Apple offers a very nice SDK for this, called XCode. To download XCode (plus lots of other development resources), visit developer.apple.com. XCode provides several “build-ready” application templates that really jump start your development. Simply choose one of these templates and click “Build and Go”, and you should already have a working application running in the iPhone simulator (another tool within XCode).

 

Once you have a working template running, you should take some time to get to know the language. iPhone development is done using Objective-C, or as some of my colleagues were fond of calling it, C[] (pronounced “C-bracket”). Objective-C is obviously an OOP language, and the syntax resembles other “C” languages. The differences are pretty clear right away, however. All object methods are contained within brackets.


(example: [myObject doSomething])

This may seem odd at first, but it has some benefits. It keeps your objects and their methods organized, while doing away with the excessive use of parenthesis that some other languages use. Another nice feature of the syntax is calling methods with multiple parameters. Each parameter (except the first) is preceded with its name, which keeps the programmer from losing track of the order of the parameters.


(example: [myObject doSomething:firstParameter secondParameterName:secondParameter])

This allows the code to be easily read by someone who does not necessarily know the format of the methods.


(example: [myBaseball throwWithSpeed:80 withAngle:45

So, while the syntax may be different, it definitely has its advantages.

 

If you are serious about learning to develop iPhone applications, I recommend trying out some online tutorials. Apax Software will also be offering workshops in the near future.



Justin Raney
VP Development
jraney[at]apaxsoftware[dot]com

UML Modeling

In the rapidly changing landscape of information technology, new methodologies can often be looked at with skepticism when compared next to the classic processes that have been industry tried and tested. While there exists some merit to concerns of adopting new technologies, developers can often stunt their potential by not utilizing fresh tools. Unified Modeling Language isn’t exactly a new technology, but among fellow developers it appears to be largely ignored in spite of the powerful tool that it is.

UML is a powerful modeling tool designed to automate many elements of software development using related diagrams. After creating the various diagrams, one can then export their models directly into their programming language of choice. The most recent iteration of UML (2.0) contains 13 types of diagrams; each classified under three major categories – Structure diagrams, behavior diagrams, and interaction diagrams. Each category emphasizes different aspects of the software development life cycle.

Structure Diagrams
One can think of structure diagrams as they would a SQL database model. While not strictly limited to databases, these diagrams outline the static components of a project in addition to their relationships with each other. Classes, databases, and even the hardware in implementation can be modeled by these diagrams.

Behavior Diagrams
Although structure diagrams show relationships, they do not provide much detail on what the various components actually do. Behavior diagrams outline specifically what happens in the system between actors (users and their role) and the innards of the system.

Interaction Diagrams
Interaction diagrams are a subset of behavior diagrams, but have a more narrow purpose. They emphasize flow of control and data among the components in the system.

designing the various diagrams, one can then automatically generate source code from their skeleton bodies. This comes with a few advantages. For one, software developers are only human. We make mistakes and with conventional software design, the risk of misinterpreting what another developer was trying to achieve exists. With UML, as long as the system is designed correctly, the classes and database information will be generated accurately and quickly. The swiftness of the development time is another advantage. By utilizing it, one is automatically merging design time with development time, cutting down on the overall time spent on the project.

You guys are worth your weight in GOLD!!!! Thanks for fixing this issue for me, It's great to have a company like your's willing to work with us little guys even on weekends. — Terry Young, Terry Young Photography, http://www.terryyoungphoto.com/

I want to thank you and your entire team for your excellent support in developing our Sleepless in Lexington Website. Your quick response to our request for an interactive website in a very short time frame was much more than we ever expected. We are thrilled with the site. It has played a major role in making our event a huge success. Your patience & professionalism are outstanding. I would highly recommend APAX to any organization needing a website development partner. — Dave Kilburn, Sleepless in Lexington Co-Chairman

When we were looking to showcase Alltech as an information provider, we turned to Apax for help. Their enthusiastic team brought an entirely new perspective to the project and delivered in a timely and cost-effective manner. — Billy Frey, Alltech, http://www.alltech.com/

Dean Dorton Allen Ford is a Kentucky CPA and business advisory firm. We pride ourselves on providing superior client service. Recently, we had a client who was in a real pinch. Apax Software agreed to help resolve the issue despite having no prior experience with the client or application. Their team even committed to working late nights to help until the issue was resolved. I call that going above and beyond to provide great client service. — Jason D. Miller, Dean Dorton Allen Ford, PLLC, http://www.ddafcpa.com/

Switch to our mobile site