WordPress Vs DIY – Continued

The third and final blog on the series.

After analysing the pros and cons of WordPress Vs DIY, it was only logical to try out the DIY approach; so I tried.

Now I have a fully functional application developed from the scratch. Only razorpay has to be attached to go live .

Here’s a  short video clip showing how membership is renewed and policy is bought. The clip is under three minutes including explanations.

Video Link  for mobile phone users

Not a single word needs to be typed. The database is fully populated including the details of all beneficiaries. As a member logs in all his particulars are displayed.

Should take just about a minute or two even on a slow internet connection. I feel that’s how it should be.

200-500 users should be able to login and transact in a day.

Of course , there will be always more and more customization and features required. That’s the best part of a DIY approach. Once you have the framework ready , it is easy to customise it to your requirement , as every line of code is your own! 

WordPress Vs DIY Web site

Information technolgy is a field that’s ever expanding, touching every industry , every activity of the commerce, education, administration , the world over.

India , surprisingly has taken to digital transactions and e commerce like fish to water. A kirana store in Kerala is taking orders and supplying to buyers at Madhya Pradesh. Bhanwari lal halwai, Mhow has pan India clientele because of e-commerce.

All these activities require good programmers for design , development and maintenance of web sites. No country has even a small fraction of the number of  people required with aptitude for coding. Even if they do have, it’s just not possible to find time for so many businesses, so many websites and web applications.

So what we have today are  tools to automate design and development of software.

Gone are  the days when men were men  and did their own coding.

Welcome to the world of drag and drop development with zero knowledge on HTML / MySql /CSS/ Javascript /PHP and languages  that were once like mother tongue for a developer.

WordPress started as an open source CMS for bloggers. Now it has expanded into other fields to the extent that 70% of web sites today are powered by word press.

A word about web site development. Skills required for developing a web site includes knowledge of Front end , Back end, Database , Dev OPs and Mobile App.

Someone who does everything is a full stack developer .

Now coming back to word press, it is a free of cost  platform that facilitates a novice to create a complete web application in an hour or two , what a full stack developer with five years experience may do in two months.

All hunky-dory, right ? It’s not always so .

Now let us compare wordpress site vs a DIY customised application.

You will find a number of articles on the subject , I stick to my own experience in the field. As some one who has moved on from dbase to foxbase / foxpro /ms access and mysql I have always  loved learning database .  HTML and CSS  have  been a  pain to learn ; an unavoidable pain . But there is no front end without HTML and css and front end is all that people see.

After a long night of coding in php to achieve  that wonderful, intricate  calculation for producing a balance sheet , all you hear on the next day from a user is that ” why can’t that column be aligned a little more to the right ?”. Front end is all that people see; and the efficiency of an application depends on the code behind , that people don’t see.

php as a scripting language is also fun learning as it works wonderfully well with mysql; a great couple that can produce absolute magic when waltzing together in harmony.

A Tabulation  Word Press Vs DIY

Word Press DIY
1. Time to develop If you want to start an e-commerce business, in a day or two you can set up your web site and  start selling right away. Will need a couple of discussions between the developer and user just to understand the requirements. Will take a month or two.
2 Customizability Very limitted Sky is the limit
3 Adding features Depends on plugins to add features. Can be done on the fly with the right plugins A skilled programmer can add features on the fly.

But mostly it takes a day or two.

4. Maintainability Requires a deep understanding of WordPress and when something goes wrong, it is extremely difficult to detect. Very easy if the documentation has been done right.
5. Size Bulky and can become unwieldy very fast  if not cleaned up regularly. Absolutely light and easy to keep it so.
6. Appearance Often, looks can be awesome as it just involves installing an awesome theme; but changing the color a shade up or down can be next to impossible. Requires front end skills that not everyone can master easily. These days people like me depend on frameworks like Bootstrap for front end design.
7. Upgradation WordPress version gets regular upgrades. Each plugin is upgraded separately. If for some reason a plugin is not being maintained by the author, it can lead to compatiblity issues. only php version needs to be upgraded and some functions in the code may be required to be modified. But rarely requires an upgrade.
8. Website Speed It works very well when there are no compatibility issues between theme and plugins. When there is a problem it can drastically bring down the speed. Can be very fast .
9. Database the entire database is created, populated and maintained by WordPress and its plugins. Since it has to cater for a wide range of applications , the number of tables are very high. I am aware of an e commerce application having about 230 tables with only six of them being used.

Uses a complex method to store data.

Often the number of tables are very few and all are in use by the application .

uses a simple method to store data.

The write up would not be complete without a brief on plugins.

WordPress is written in php and uses MySql for its database. WordPress is written for blogging and so the database is created to hold contents like posts , category,comments etc.

For diversifying into applications like E commerce or education , the same model is used and every input is stored in tables . Since these tables as required are not avilable by default , a plugin for  say e commerce creates these tables and also code snippets for data handling.

For other functions like forms, you have more plugins with code snippets. Since these code snippets are produced by different developers over different periods of time , compatibility is most important. 

Most plugins use existing tables and that’s how you find some tables with over 200,000 records and occupying about 100 mb. It slows down the system. The solution is not to just delete old records but to weed out the debris left behind by some plugins unused or later removed.

The WordPress environemnet along with its 30-40 plugins is like an office with 30-40 members of staff each doing his job. Some plugins are created keeping in view the design of other plugins while some are designed as stand alone .

In short , a web application created using WordPress can be like an office where three or four members of staff don’t talk to each other at all and hence would not know what the other is doing. There would also be three four members who always keep talking to each other only to fight for system resources.

When these plugins work in harmony , well integrated to the installed theme , it’s sheer Music !

 

 

A Primer on Web Site Speed

This is a common refrain that a particular website is too slow to work on.

Some blame their computers, some the ISP(Internet service Provoder) and there are people who blame the web site itself ,may be , rightly so.

Here I would stick to the web site issues only. How to isolate that ?

The easiest way to confirm if the problem lies with the website is to go to

https://downforeveryoneorjustme.com/

The url is aptly named as “Down for everyone or just me ?”

The page displays a box where you enter the url and click and you get the report instantly. Slow sites are also catgorised as down as it has a time out feature.

Once you have confirmed that the problem lies with the web site , let us try to understand what could be the problem.

 

 

Ease of accessibility of a web site depends on the servers installed.

 

1. Web server – serves web pages .
2. Database server – serves data.
3. Email server …provides email services.
4. Scripting languages…the most important aspect to decide the speed of transactions on the web site.

1. Web server.

Even a shared hosting can easily support 500 hits , 50 of them concurrent.
( My web site on which you are reading this page can easily support 500 users though it is shared web hosting ; it’s a different matter that my blog posts are read once in 1000 days!  🙂 )

2. Database server .

Need to design the database correctly. ( Nowadays most of the data driven web applications use WordPress. WordPress  is inherently less efficient because of too many plugins and each plugin needs to be checked . Removed plugins also leave  debris behind and need to be cleaned. )

A customised application based on php mysql is always superfast as compared to wordpress sites. 

3. Email server . Normally no problems are faced unless there is too much spamming or the system is  infected with worms.

4. Scripting language .

php and python , perl etc are scripting languages  that act as interface between front end and the backend. Once you understand this , let’s say in a restaurant parlance , you wont be increasing the kitchen area or the dining area when you know, it is an errant waiter who is slowing down the services. You would just change the waiter or just set him right.

One bad script can stall the whole server. When a server gets slow ,this is where one should first look.