Custom PHP Projects
Thinking about a custom PHP web project? Maybe an online web store? Then this post is for you!
I interviewed with a small business owner and his young IT manager yesterday. They want to build a custom PHP web application to sell their apparel products.
They are currently using Shopify, and are unhappy that their site isn’t fully responsive and that they don’t have access to much of the visitor data.
First, let’s examine that statement, shall we? Did he really expect me to believe that he had checked out every CMS web store solution and found them all to be unusable?
I won’t speak for Magento, since I have no experience with it, but the rest are built on PHP, which is totally malleable. Bumped into a “limitation”? No problem, just modify it! It’s a lot easier to make little modifications here and there than to re-invent the wheel by coding an online storefront from scratch.
Nah, those all have limitations. We need our own web app.
Let’s use home remodeling as an example – Say you’ve got a three bedroom house but the kids have moved out and you would like just one bedroom and a large hobby room. So what are we gonna do? Bulldoze the house and build a new one, or take out the wall between two of the bedrooms?
Which is quicker? Cheaper?
But it’s even more drastic with software.
- One or two developers are not likely to create as solid a web application as a team of open source developers who’ve been at it and updating for years.
- The average web developer knows next to nothing about web security (though many think they do), and we’re talking about ecommerce here. What will it do to your business when your local newspapers and radio broadcast that you’ve been hacked and that all your customer data has been stolen?
- Custom software projects – web or otherwise, routinely take twice as long as estimated. What will that do to your budget? What happens when bugs cause your customers’ purchases to not be recorded in your database?
- Have you thought of the never-ending updates that will be needed for security fixes, compatibility issues (when browsers, servers, libraries, etc. update) ?
The headaches and related expenses never go away.
Just write lots of notations
This Custom-PHP Project is Doomed!
“OK. What’s the plan?”, I asked. I.T. Kid says “Just write lots of notations, so future coders can figure out what’s happening with the code.”
That’s it??? No naming conventions, procedures, rules? No ERD? No database normalization process? Not even a rule about whether to code procedural or OOP?
If you’re not going to use a CMS (which is what I recommend), why not at least use a framework like Yii? That would enforce conventions and procedures, give you automatic, free updates for security and compatibility issues and make it a whole lot easier when you have developer turn-over.
What “I.T. Kid” doesn’t seem to understand is that the only limitations are in how things get coded. There is absolutely no limitation in how things are presented or how they function on the front-end.
“You’re business is selling apparel – not software development. Stick to what you do best.“
My Web Store Recommendation
- Setup three or four test sites, one for each of the more popular CMS solutions, and see which you prefer.
- Next, setup a pre-production server and fill with real data and test thoroughly.
- Now, go live with your new online web store.
- Finally, use a framework like Yii2 to build your backend reporting application for your marketing department. Although it reads the same database, by being totally separate from your front-end, there is no risk of bugs affecting sales.
My recommendation would have the business’ web store fully operational in less than a month, and security and compatibility updates would be automated and free.
As I told the owner, “You’re business is selling apparel – not software development. Stick to what you do best.”
“We’ll be in touch.”, the owner smiled and shook my hand while I.T. Kid glared a bit.