Altabel Group's Blog

Posts Tagged ‘WordPress

In the rapidly changing world of IT only those people win who are developing all the time: if you stop — you will lose. Besides general philosophy of life, it’s also true for CMS. Trying to keep up with the time the developers of CMS Drupal have released a new version of Drupal 8.

Many improvements have been made in the interface by default which makes it easier for non- professional users to use CMS. There is practically everything you need to build the “mid-level” web site without using additional modules. So, let’s observe some changes:

• From the very beginning probably the most sensational news was the transfer to Symfony 2 components, which greatly simplified the usage for those developers who are already familiar with it, but probably scared off those who are used to functional programming in WordPress. However, it should be noted that every time the page is loaded in Drupal 7, all enabled modules are also uploaded, even if we don’t need some modules on certain pages, which leads to unnecessary uploading and waiting time increasing for the user who is carefully studying the website. Implementing the basic principles of Symphony, Drupal 8 downloads only those modules that you need for a particular page and nothing more. It accelerates page loading for your visitors and probably reduces memory consumption.
 

 
• The introduction of HTML5 can be attributed to a significant improvement in comparison with XHTML in Drupal 7. Sites that are made by using HTML5 have a better structure and functionality. HTML5 provides better work for a user either on a computer or on a mobile device.

• Anyone who has ever run a website knows that it is better to use a computer or a laptop as most features of the admin section would require the resources of the computer and not work on mobile devices. The Drupal 8 Mobile Initiative is a concerted effort to make Drupal 8 a first-class mobile platform. Not only the admin section works on mobile, but the templates for Drupal 8 are also adapted for devices. It’s more comfortable not only for administrators but also for visitors who use gadgets.

• One more pleasant news was the improvement of multilingualism. Multi Language Module enables its users to create phrases in many languages and display them on your website. It helps developers and users to implement a multilingual website.

• Drupal 8 contains one of the fastest and most popular template engines. Twig is a popular templating engine for PHP, which opens the door to more robust, scalable and secure themes. It should be noted that Twig is fast, secure and flexible.

Fast: Twig compiles templates into optimized PHP code. The performance losses are reduced to the minimum in comparison with an ordinary PHP code.

Secure: Twig has a sandbox mode to test untrusted template code. It makes possible to use Twig as a template language for applications where users may modify the template design.

Flexible: Twig has a flexible vocabulary and syntax. It enables developers to define their own tags and filters and create their own DSL (domain specific language).

• With Drupal 8 you have an opportunity to use the Views without your developer. Views contain a set of parameters that determine which content appears on the page and choose the fields to display, field order, etc., In Drupal 7 Views module was a separate module and depended on the CT Tools Suite module. Development of the Views for Drupal (VDC Initiative) enabled to embed Views in Drupal core 8, so that it appeared immediately after installation. It means that Views has a better integration. Besides, Drupal 8 has made the Views much easier, now a site administrator can delegate the work with the Views to technical specialists, as it does not require complex skills.

These are just some of the changes that came with Drupal 8. It’s a fantastic platform for developing a wide range of sites, from simple to extremely complex.

Remember to feed back by sharing your discoveries and creations in using Drupal 8!

 

Kate Kviatkovskaya

Kate Kviatkovskaya

Business Development Manager

E-mail: Kate.Kviatkovskaya@altabel.com
Skype: kate.kviatkovskaya
LI Profile: Kate Kviatkovskaya

 
altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

Nowadays content management systems (CMS) have become not just publishing tools, but also a powerful means for automotive management of a web-project. CMSs allow display, edit, indexing and publish content easily, make the adjustment of the interface and functional features flexible.

There are a number of systems that require being a high-qualified web-master to work on the project successfully and this article deals with how to choose the right CMS that would be the best match for a project in terms of design, programming and usability.

Choosing

The choice of the CMS could turn out to be a backbreaking task because the choice is extensive. However, a structured approach towards evaluating of the existing systems could make the choice easier.

Thus, let us talk over the criteria and what we should sharp our attention on, while taking a decision.

Below you could find 8 characteristics, that a good CMS should have:

1. Intuitiveness (easy in mastering and use)

Your CMS should have pretty simple and easy graphic user interface (GUI). A good interface means that the publishing of the content will be fast, will save a lot of time and increase productivity.

It is also vital from the end user point of view; I mean that if you develop a CMS that requires deep technical knowledge for an IT illiterate customer, he unlikely will be able to use it; therefore, it will abolish the whole idea of the CMS- to widen the customers’ opportunities.

2. Flexibility, easy adjustment

While choosing a CMS make sure that, you are not obliged to use your own templates. A number of CMSs allow using custom design with no limitations. In case a CMS gives you a limited template library, you are deprived of creative freedom and your site will not look individually.

Some of the adjustable CMS in accordance with the selected templates: Expression Engine, WordPress, Joomla, etc.

3. Module and plugin adjustment

A good CMS will allow you to add its useful features to your project, increasing the standard configuration with the help of plugins.

Plugin/ extensions/ modules (a various terminology is used for each platform) allow users to improve their project with useful parameters for interaction with the site.

It is better to select a CMS with powerful Application Programming Interface (API) in case you need custom extensions. Make sure that your CMS has an extensive list of the applied plugins. Though in the beginning you may not require a lot of them, still this need could arise later and it is vital that plugins are available for you in future.

4. No Need in Coding Knowledge

If you are more «design-oriented» than anything else is, make sure you select a CMS where you will not need to have extensive programming abilities to publish and maintain your site.

There is a wide selection of CMS’s that have WYSIWYG editors, letting you edit content without the need for code. Having to edit text through HTML markup can be time consuming and takes you away from other aspects of your managing and building your site.
Complex sites, however, can require a CMS that will let you type in some code, edit files with extensions such as .php, .css, .html, and make changes without that need for a third-party source code editor.

5. Optimized for Performance and Speed

Taking into consideration the speed your pages load on the browser, and how fast your site can make a connection to a server, is vital. Choosing a CMS that is bulky will drive away visitors rather then bring them in. By visiting examples of live sites, you will be able to gauge somewhat how fast pages load.

Keep in mind that you can increase the load time of your site by choosing a good host, and adding plugins that cache/compress/minify feeds, CSS, JS and also caches your database objects.

A simple and free tool that you can use to evaluate page response times of your CMS candidates is YSlow. Install it and head on over to demo sites of your CMS’s to see how well it’s front-end performs.

6. Security

Adequate security for your site is very important and must be in place in order to protect your content. There are CMS’s that allow you to install specific plugins and edit files/permissions in order to increase security levels. Make sure you choose a management system that offers modules to protect the integrity of your site. You can also protect your site by selecting a CMS that allows you to assign easily a different username and password to each user. This will let you view and control what each user has access to.

7. Documentation and Community Support

Nothing is more frustrating than trying to figure out how to do something, and not have references online that you can take advantage of. One way to ensure that you will not be running into this problem is by reading through the documentation of your candidate CMS’s. In addition, a quick Google search will tell you how popular and well documented a content management system is.

The availability (or lack thereof) of support from users of the system can be a dealmaker or deal breaker. When users are active and proud of being part of the community, you not only have access to individuals that are more familiar with the system, but also, you can be assured that the project will be developed continually. Nothing is worse than investing your resources and effort on a dead (or soon to be dead) project.

8. Emphasis on Web Standards and Best Practices

Content Management Systems developed under web standards guidelines and best practices will ensure that you won’t get burned later down the road. When applications are designed with best practices in mind, you can be assured ultimate cross-browser compatibility, lean-and-mean code, and ease of maintenance.

Look for content management systems that promote the use of web standards, and those that put it at the forefront of their development and design philosophy.

 
Some Key Content Management Systems to Consider

Now that you know the key characteristics of a good content management system, let’s take a look at a handful of major CMS’s that excel in most, if not all, of those areas.

 
ExpressionEngine

ExpressionEngine

ExpressionEngine (EE) is a flexible CMS for any scope of project. Within a few minutes, you’ll understand how to easily begin creating content. EE’s templating system lets you quickly see instant changes live. EE also has a multi-layered caching system to try and minimize the database usage. In addition, EE lets you embed and run PHP directly within its templates, very similar to WordPress.

ExpressionEngine has various features such as allowing you to have multiple sites with just one installation of their software. Just as we spoke in the above section dealing with connections and load times, EE has a unique template caching, query caching and tag caching keep the site running at a quick pace by storing database queries in memory to reduce database connections when generating web pages.

 
WordPress

WordPress

Nowadays WordPress is one of the most renowned publishing platforms.

It is widely known as a great blog-platform. WordPress is an open source product, could be downloaded, and installed unlimited number of times.

WordPress installations are very quick and easy. It only takes a few minutes for your admin panel to be operational. If coding is not your strong suit, then no worries, WordPress offers its users a WYSIWYG editor (called Visual Editor).

 
Business Catalyst/Goodbary

Business Catalyst/Goodbary

Business Catalyst/Goodbary (owned by Adobe) is a powerful ecommerce CMS for developers. This content publishing platform has an array of useful features such as email marketing and in-depth site analytics. Business Catalyst gives you an easy way for your business to gain an online presence in no time. GB allows you to easily keep track of a customer’s actions, build and manage a customer database of any size, and sell your products and services online. Business Catalyst integrates well with a lot of popular payment systems such as PayPal, Google Checkout and pre-integrated gateways.

 
Joomla!

Joomla!

Joomla! is an advanced CMS with excellent function and content management. The installation process is pretty quick and easy. Joomla! is a complete CMS allowing you to build simple to advanced sites. Joomla also has super support for access control protocols like LDAP and OpenID, and can interface with popular and open API’s such as Google APIs.

With Joomla!, you’ll have more than 3,500 extensions at your disposal along with the support of an entire community. With a simple extension, you can add almost any needed functionality to your site.
One downside to Joomla! is that their heavy-artillery list of extensions often require you to purchase them. Hopefully, in the future, they will make their plugins free in order to aid users on a tight budget.

 
Drupal

Drupal

Drupal, a great open source CMS supported by a very active community, lets users publish content through any time with very little restrictions. Once the installation is finalized, you will discover features such as forums, user blogs, OpenID sign-ons, profiles and more. This CMS was written in PHP/MySQL for ease of customization and has one of the highest-regarded API’s in the open source content management system field.

 
Cushy CMS

Cushy CMS

Cushy CMS is a hosted and free content management system that is lightweight, though powerful enough to jumpstart your site in a moment. With Cushy CMS, you have to add CSS styles to the sections that you will eventually change or edit. This CMS allows you to access and store content while it uploads this same data to server.
Cushy was built for content editors and designers and so it is very simple and easy to manage. Being a SaaS, you do not need to install or self-maintain the CMS.

 
TYPOlight

TYPOlight

TYPOlight is a great match for assembling and support of several site simultaneously. Thus, it is an ideal solution for web-developers. With the help of TYPO CMS you are able to create a simple-designed site as well as a complex one with extensive functionality.

 
RadiantCMS

RadiantCMS

RadiantCMS is a Ruby on Rails app. Radiant has a very active community for core support and updates. If you are a RoR developer, it is right up your alley. Radiant has concentrated on making things much more user-friendly for end users and web designers. RadiantCMS also contains an innovative custom tagging language (called Radius) that is easy to pick up.

 
SilverStripe

SilverStripe

SilverStripe is an open source application written on top of PHP and was designed with emphasis on flexibility. SilverStripe has many configurable options and is geared towards content-heavy websites.

This CMS was completely built on its own PHP framework, called Saphire. SS offers content version control and great SEO support. All users alike are welcome to customize the administration area for their clients or themselves.
The only downside with SS is that the default templates are garbage; however, that is nothing a little hard work would not fix.

 
Textpattern CMS

Textpattern CMS

Textpattern CMS is a very popular system for many designers due to its simplicity.
Textpattern strives to provide great content management that produces quick, easy, and desirable web standards-compliant pages. There is no WYSIWYG editor because Textpattern utilizes textile markup for content generation.

The backend is very easy to use and follow. New users will learn the administration section with super speedy ease.

 
Alfresco

Alfresco

Alfresco is a JSP enterprise content management solution that is quick and easy to install. Alfresco lets you drop files into folders and convert those files into interactive web documents. This CMS is not as easy to become familiar with when compared to others, however, with a little bit of time investment, you will definitely get the hang of it. Alfresco could be targeted more towards the intermediate developer, although its pure functionality allows it to become very usable. The administration GUI is very organized, well maintained, and easy to navigate.

 
Thank you for your attention!

I hope that this article will help to make a reasonable decision on what CMS suits your particular project in the best way.
If you have experiences (good or bad) with the content management systems shown here or any tips on how to evaluate the right CMS, feel free to share in the comments, I will highly appreciate!

 

Tatyana Ogneva

Business Development Manager

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

Building a website wasn’t so easy earlier as it is now. Fortunately the time has passed when you had to hand-code HTML and PHP scripts in order to get an easy and fully functional website. Now content management systems (CMSs) do most or all of the heavy lifting for site creators. There are a number of CMSs for serious site creators, but the most common for websites today are considered to be three open-source tools: Joomla, Drupal and WordPress.

WordPress is a free and open source blogging tool and a CMS based on PHP and MySQL. It got its start as a blogging platform in May 2003 and gradually evolved, first into a blogging system that let users add Web pages outside of the blog and then into a full-featured, popular CMS. Of the three most popular open-source CMSs – WordPress, Joomla and Drupal – WordPress is both the most popular and the fastest growing by far, according to Web technology tracker W3Techs.

Earlier anyone could hardly think of using WordPress as the blogging platform. But now the situation has changed completely. Every second site owner using a CMS chooses WordPress. But to be objective let’s see what the facts are that speak in favor of this star-CMS. And what are there against it?

WordPress Pros

* Open-source
It means you get access to its source code and can study, modify and improve it according to your needs. However, it doesn’t mean you can do anything at all with the code. WordPress is issued under GPL license, which restricts certain actions (like limiting access to the code for others etc).

* Installation doesn’t cost anything
However, you may need to pay for customization, app development, premium themes etc, but the basic installation is at no cost.

* Easy set-up
That’s not even advertised anymore. It is simple and it is also quick. WordPress is known for 5- minute’s installation time.

* “Friendliness” with users
What can be a better way to gain popularity among users that become friends with them? WordPress is well suited for all types of users, even those who had never suspected a site can possibly have a backend. If you are able to google WordPress site and register your account, if you know how to use a text processor, you’re sure to get well with your new WordPress blog or website.

* No problems with customization
With the number of free themes and plug-ins for adding functionality to your site bigger than in any other CMS, a user gets the rich choice of website appearance and features that don’t come by default. And their integration is usually as easy as installing WordPress itself.

* Community support
WordPress has the enormously big community of users – from new born WordPressers to seasoned pros. They do great job helping each other via community support forums and discussion boards. Apart from that, WordPress provides exhaustive documentation on every possible issue, to ease the life of its followers.

* Multisite feature
WordPress allows its users not to be limited with just one website or start every new site with the new WordPress installation. With Multisite feature that’s available with all versions starting from WordPress 3.0 you can manage your several sites within one admin interface. However, to use this feature successfully, you need to study the WordPress codex well and have certain administration skills.

WordPress Cons

– Insecure
The security of WordPress leaves much to be desired, as with majority of open-source software. The thing is, when anyone gets access to the code, it’s easy to find flaws in it and use them to get into a site. But it doesn’t mean you’ve got to buy the most expensive software, you just need to use the techniques to enhance the protection of your site integrity.

– Advanced theming/features
If you know no HTML and coding and are satisfied with the looks of your blog by just switching to a new theme – you’ll be fine. If you desire to start off by changing everything to your taste – you may be in need for professional help. As to adding more functionality to your site via various plug-ins, in most cases, the common ones work out great, but if you experiment too much with them, you may get stuck when one plug-in is not compatible with the other, some need upgrade and some require tweaking the code to work correctly.

– Maintenance Costs
Although considered one of the most affordable CMSs, WordPress still may require money to be running successfully. For example, you pay for hosting, if it’s not self-hosted, exclusive themes or plug-in development in case nothing free suits you.

WordPress: what to expect?

During 2012, WordPress didn’t undergo any major changes. There wasn’t much new in WordPress 3.4 except easier theme customization. WordPress 3.5 had a mildly different new theme, some media improvements and not much else. In contrast, WordPress 3.6, which is set for a release sometime in April-May 2013 feels like a big step forward. There’s a bold new theme and several useful new features.

• Twenty Thirteen:
Twenty Thirteen will be the new default WordPress Theme with increasing support for post formats. Unlike previous default WordPress theme this theme is going to have lots of bold colors and will be fully responsive.

• Navigation Menus:
Lots of beginners complain that WordPress Menu system is quite hard to understand. In WordPress 3.6 this navigation menu options have been simplified and it will become easier to create and manage Menus in WordPress.

• WordPress Post Formats:
In WordPress 3.6 there will be a new User interface for Post Formats and theme authors will also have access to template the individual functions to change the structured data.

• WordPress Auto Save:
There will be some great enhancements related to Auto Save function. Posts are now auto saved locally so if the browser crashes, the server goes down or internet connection fails you will not lose the post and you will be able to resume editing right where you left it.

• WordPress Post Revisions:
Upcoming WordPress version will be a better handler for your post revisions. The changes will be highlighted with different colors so you can modify the usual things easily.

• Post Lock:
WordPress 3.6 will have a better editorial feature built in called Post lock. It will allow the authors or website administrators to lock a post to kick other person out of the editing and gambling between posts.

No site or platform is perfect, but WordPress has so much to offer and is very easy to use. In my opinion, the advantages outweigh disadvantages and with new version of it things are only getting better. Do you agree? Are there any other pluses and minuses of WordPress that are essential in your opinion and that I didn’t mention in the article? I’m eager to see your comments 🙂

Yuliya Tolkach

Yuliya Tolkach
Yulia.Tolkach@altabel.com
Skype ID: yuliya_tolkach
Business Development Manager (LI page)
Altabel Group – Professional Software Development

When planning the application you have to choose the right programming language to make your application work appropriate. The choice depends on many factors you need to consider. Such as but not limited: you need to think over on what platform the application will run, how easily new features would be added to the existing platform, the code size, performance, support and community etc.

There are various web programming languages and selecting the right one makes a website function properly. In my article I would like to focus on three of them, so called three “P”: PHP, Perl and Python to answer which of these languages is the best one.

Let’s have a look at them and try to make a comparison analysis

PHP – is free of charge open source scripting language and widely used in web environment. The best advantage of PHP is that it is easy to learn and easy to use. It is flexible and used for developing from small websites to giant business and organizational websites. Most common are informative forums, chatting platforms, CRM solutions, e-commerce shopping carts, community websites, e-business, shopping carts.

In terms of efficiency it is executed by the server and server parses the code at its source, executes and send properly formatted html to the client computer. Therefore it increases the speed of PHP applications.
What concerns the advantage of running, PHP is multiplatform language and compatible with all operating systems and platforms.

Being open source language, a large group of PHP developers help in creating a support community, so it’s maintained and when bugs are found, it can be quickly fixed.
A lot of websites including such giants as Wikipedia, Yahoo!, Facebiook, Digg, WordPress and Youtube are written in PHP. The popularity of PHP is based on its simplicity and coding style that is quiet easy to understand.

Nevertheless, the simplicity in developing, precisely principle so called «structure is not important» in PHP has its reverse side, precisely it’s hard to maintain for large applications since it is not very modular.

Also it’s weak in terms of security since its open source, all people can see the source code, and if there are any bugs it could be used to explore the weakness. About 30% of all vulnerabilities listed on the National Vulnerability Database are linked to PHP. The last summary on vulnerabilities you may find following the link: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-0427

Perl –refer to all purpose languages. Perl was developed as a text editor for converting or processing large amounts of data for tasks such as creating reports. Nowadays it intended improvements and suited for web development, game programming, GUI development, popular among system administrators etc.
The Perl reusable code structure provides flexibility in apps development and at the same time creates the problem of code reading after. As there are so many ways to do, there are a lot more ways to mess up in what you’ve done. If the code was written without proper care, the reading could even take 6 months.

So from one hand Perl is a good language for small programs because of its messy syntax structure it’s hard to write and maintain large programs. On the other hand if you’re planning to develop big web application you need to consider good coordination between developers work on discussing the code stile, mentoring and managing work in the team.

In terms of portability Perl code doesn’t use system specific features, so can be run on any platform.
Among popular websites created on Perl could be named bbc.co.uk, Amazon.com, LiveJournal.

In respect of vulnerability Perl takes the second place – 9.4%. I assume that it’s not bad taking into consideration its complexity and its long history.

It has fallen out of popularity lately a bit because of the slow development of Perl 6. Most people still use Perl 5.

Python – is considered to be very elegant programming language. It’s general purpose, high level programming language. On the one hand Python’s syntax and semantics are minimal; on the other it has complex standard libraries.

Python supports multiple paradigms: object-oriented, imperative and functional programming styles and has features including fully dynamic type system and automatic memory management.

In comparison with Perl Python is easy to read language. And its key idea is vice versa “there should be one—and preferably only one—obvious way to do it”. It means that the code written by one developer could be easily developed and supported by the others. Besides to delimit blocks Python uses whitespace indentation, rather than curly braces (C, C++, ….) or keywords (Delphi).

Python is often used as a scripting language, but is also used in 3D animation (Maya, Softimage XSI, Blender) and image editors (GIMP, Inkscape, Scribus, Paint Shop Pro). It was also used for writing several video games.

Python is actively used by Google, Yahoo!, CERN and NASA. But it has problems with popularity, precisely with spreading. The reason is that it’s less simple than PHP. Working with Python you need to learn numerical libraries. So that’s why some people prefer choosing PHP instead of Python. But only the betrayed ones could explain why they choose Python, the answer is easy the development on Python is faster on 30% and his vulnerability consists only 0.67% against 36% of PHP.

Conclusion

PHP at first sight seems to be a leader in this so called comparison race. It’s simple, easy to learn and efficient for building small and middle size websites. Going further with analysis in terms of scalable large system it turns out that here Python will perform better than PHP. The reason is in readability that makes Python easier to maintain and extend. Besides, Python is object-oriented. PHP is not. Moreover, Google supports Python with its Google App Engine where web sites can be hosted on Google’s server for free. What concerns Perl, analysis showed that it’s simple programming language with cross platform running and open source modular architecture that provides to develop interesting things. If the task is to perform administration scripts Perl is much better to use here than PHP.

After the analysis it follows that the choice any of three P is a good choice. Also it means that for a certain purpose there is a right tool to choose. Besides the analysis showed that all three “P” have in common the following:

• are cross platform;
• have open source code;
• have well written documentation;
• have large user communities;
• extend libraries and big amount of code written;
• have high-level frameworks (PHP – Symfony, php.MVC; Python-Django, CherryPy, Pylons; Perl -Catalyst, CGI::Application, Gantry);

So I hope that summary based on technical analysis we made could help to make a right decision in future web projects you might have.

Thank you for your attention and if you have anything to add, please feel free to leave a comment.

 

Katerina Bulavskaya

Business Development Manager

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com


%d bloggers like this: