Post by paisleybay » Mon Oct 14, 2013 1:31 pm

I am an ardent fan of Opencart since we started using it one year ago. I think its a great open souce platform with tremendous flexibility for users, what with the large and ever-increasing array of extensions. ;D

However, I was very disturbed to read the following article titled "Why you should never use opencart" dated March 29, 2013 by Fears in "techchattr.com" : http://www.techchattr.com/never-use-opencart . ??? I did a search in this Forum to see if this had been referred to earlier - but could not find any reference. So, please pardon me if I am repeating anything.

I thought there should be a proper counter/explanation for issues raised in this article, not so much to "put it over to my critics", but to allay apprehensions of non-techie loyalists like me. :-\

I hope some of the experts have seen this. If they have already responded, please let me have the url of the explanatory post.

Thanks & cheers. ;D

New member

Posts

Joined
Sat Dec 08, 2012 1:55 am

Post by MarketInSG » Mon Oct 14, 2013 7:47 pm

well, he's a retard himself. If he's so good, ask him to go ahead and write one ;)

It's interesting for him to tell someone to not use vqmod too. I would say that keeps maintenance so much simpler. Imagine not using vqmod, and after each upgrade, your previous work just get deleted. So every upgrade = start new, start fresh? No way anyone would do that.

Code repetition, well, have been discussed before. I think it makes things easier for people to understand. It's easy for us to understand array merge etc etc, but would it be easy for beginners to pick up and start easy on this software?

Well, he spent lots of time to write that, he might have consider writing a software with the time instead ;)


User avatar
Guru Member

Posts

Joined
Wed Nov 16, 2011 11:53 am
Location - Singapore

Post by Qphoria » Mon Oct 14, 2013 9:29 pm


Image


User avatar
Administrator

Posts

Joined
Tue Jul 22, 2008 3:02 am

Post by MarketInSG » Mon Oct 14, 2013 9:56 pm

Qphoria wrote:ok I've replied gracefully:
http://www.techchattr.com/never-use-opencart
I would suggest you to post a copy here, since I believe he will get rid of your post sooner or later. You spent quite a lot of effort writing that ;)


User avatar
Guru Member

Posts

Joined
Wed Nov 16, 2011 11:53 am
Location - Singapore

Post by Qphoria » Mon Oct 14, 2013 11:38 pm

In case he deletes it, I Replied with:
Just found this article and figured I'd say my piece....

You are of course entitled to your opinion about any software, but this article is riddled with a mix of inaccuracies and overzealous slamming of some relatively common coding methods that you claim to "have never seen before". This leads me to believe your exposure to the world is a rather new one (read: know-it-all youngster).

Database:
First off, the database using MyISAM.. You should realize that OpenCart has been around for about 8+ years now. Back when it was first started, innodb was hardly even heard of. Everyone used myisam and still many do today. zencart, oscommerce, even Wordpress.. the very blog you are using uses MyISAM (http://markmaunder.com/2011/06/23/wordp ... odb-mysql/)



It always humors me when I read about how people write about myisam "Oh the horror" or "I cannot believe it" or "this is an outrage" as if using MyISAM was the equivalent of burning down a church. This is the usual fresh-out-of-college points of view where people look back and say "why would you ever using analog electronics when digital is so much better?!". Congrats on your youth and new found programming knowledge. But your first lesson in life is that not everything is magically going to update to the latest bleeding edge technology overnight because you read about it once.


You might have noticed that HTML5 has been around for years but only starting to finally take hold with most major websites. Even Amazon.com is still HTML 4.01... "Oh the humanity!!".. I'm sure they are losing sleep while counting their billions.


MyISAM is plenty popular and still very valid in use. Sure it is true that other database methods: PDO, innodb, etc could improve things in the long run but it isn't something that happens overnight. You don't just upheave a community of mods and code examples and invalidate them overnight with a new transaction engine. These things must be finessed in. InnoDB also cannot use fulltext search so you have to find alternatives to things like this. It isn't so black and white.


Code Repetition:
I'll be the first to admit I dislike the reuse of code. I personally added loops for most of these and an automatic language includer to avoid needing to write code like this. However, opencart is also a learning cart and is aimed at newer programmers. Daniel preferred keeping the code this way as it adds a sense of reference for understanding with minimal performance hit. It's not ideal for the advanced programmer, but great for newbies. You can still choose to code the other way in your own addons and extensions. The core code should be viewed as a learning tool. Again, there may be room to improve, but nobody losing business over it.


Templates:
Well your understanding of this section is just plain wrong so I can't even comment on this. I think you are referring to "modules" which you are right.. there are 6 files for a module to satisfy the framework design... but modules generally do more than simply display one line. If you look at an actual module like "latest" then you'll see reasoning for all the files. First off it is an MVC design.. so MVC means 3 separate files. Since there is an admin and a catalog piece, that means 3 separate files per side, hence the 6 files. You don't need 50 language files.. in fact OpenCart has language fallback that allows the module to show in English until you find time to translate the module to your own language. The use of language files is nothing new in any platform. You can't expect every mod to include 200 languages when most don't need more than 1 to 3. As far as needing 6 files. One of the features of OpenCart is the ability to store the "admin" folder on a separate server than the "catalog" folder. This is another great but underrated security feature. So while it might make sense to share the "controller" file for both catalog and admin pieces, it is meant to be kept separate. Sometimes you gotta do what's best in the long haul and security is more important than a few extra files.


SEO URLS:
Agreed. This was done poorly. It was actually done much better in old 0.x versions of OpenCart but changed in later versions and I personally agree that it should be done better. The hardcoding of the types is the more annoying part to me because as that code shows, only the 4 major item types can be SEO, the rest are just left without the ability to add a custom keyword. But this has been handled by over 100 different 3rd party mods already and there are ample options to solve this. So while it could be better, it isn't like there aren't possibilities, and many of them free.


Security:
This is the first and foremost the main focus of OpenCart. You won't find any major security holes because the coding is done very securely. Even all the database joining and stuff is done meticulously to properly clean and filter malicious calls. There hasn't be a real threat since back in the 1.4.7 build 2 years ago when the admin session was added to the url for enhanced security, preventing anyone from tricking you into running commands on the admin side while you were logged in. Before that was a dompdf hole which was caused by using the 3rd party dompdf library and not directly related to OpenCart.


Conclusion:
This is where you get a bit full of yourself with small things like reuse of code for clarity purposes and the use of the more popular MyISAM being taken as a violent act instead of understanding it as a viable alternative. To say it is the "worst" only shows that you are wet behind the ears and have seen very little. You forget that OpenCart is the fastest rising open source cart in history and its security as well as its ease of use are what make it so promising and popular. There are always bugs to be fixed and features to be added with ALL software... even with big names like Microsoft and Apple. But these do not happen overnight.. they take years.


Your naivety and ignorance shine through on this article more than the alleged faults of OpenCart. It reeks of spite against the opencart coders and general misunderstanding instead of being a credible source of argument or critique.

Image


User avatar
Administrator

Posts

Joined
Tue Jul 22, 2008 3:02 am

Post by paisleybay » Tue Oct 15, 2013 1:12 am

Hi Q

Thanks for your very detailed reply. I must admit some of it is likely to go over the heads of non-techies like me, but we can understand most of it concerning general principles of Opencart architecture and coding pattern, that you have taken pains to explain. Thanks for the effort you have taken in preparing this reply. Cheers. :)

New member

Posts

Joined
Sat Dec 08, 2012 1:55 am

Post by Qphoria » Mon Oct 21, 2013 11:12 pm

Replied again
Being "newbie" friendly doesn't necessarily mean it's not professional. It may means there is some extra code reuse but it is completely optional when developing your own modules.

You may not see the benefit is a separate admin/catalog but so what? You can't pick apart every platform for things you don't like or you'll never be happy. I wish the start button was on the right side of Windows instead of the left, but you adapt. Being more secure shouldn't be a negative, even if it means you have to have a few more files. At least not to the point where you need to make a slam article about it.

Your biggest issue seems to be with MyISAM vs InnoDB. According to this: http://wordpress.org/support/t... InnoDB is a rather newer feature... Wordpress came out in 2003 and just got innodb in 2012. if that is the case then perhaps you should allow the same right for OpenCart which only came out in its current form in 2008. It has some time still. It is true that something can break in the middle of a query causing the order to be only half completed. But this doesn't happen enough to be an issue. The core itself works and all the hype and potential of losing orders etc because of MyISAM is so rare that it's not even an issue.

You also seem to be comparing a "free" cart to "Big Enterprise" carts that get a ton of money for development. This is more of a hobby and is still young. There is only one main coder on the project and it has come a long way since its inception but is still young and there are tons of things planned for it. Slamming it at this point is like ridiculing an 8 yr old for not knowing Calculus.

In the future HTML5 for the default theme is planned and I would assume InnoDB is inevitable. I appreciate that you can get frustrated with OpenCart or any software when you don't initially understand it but really if you are going to slam OpenCart then it is only fair that you make 2 more blog posts to slam Zen and OSC and every other product you hate. I assure you that if you hate OpenCart, you will loathe zen and osc. At least OpenCart core is well tabbed in the php files. Even with all the reused code, it is readable.

Magento may seem nice on the surface but it is also backed by Paypal which is good and bad. It is also a pain to customize. Prestashop is backed by a full team of around 50 employees but most modules on their store cost upwards of $200-$300 for the same mod found on OpenCart for $50. All carts have their own quirks. No cart is perfect for everyone.

Image


User avatar
Administrator

Posts

Joined
Tue Jul 22, 2008 3:02 am
Who is online

Users browsing this forum: No registered users and 17 guests