Magento is difficult to modify and customize 47


Update:

This post is a number of years old and I’ve got the hang of Magneto these days. Yes, it has quite a learning curve and will take many hours weeks or months to become effective with Magento. Initially development will be slow while frustration and learning will be high :).

 

 

I’ve recently started a side project for a friend building an ecommerce solution that requires some customizations.  I’ve read about Magento and attended a presentation about it at ZendCon 2008 by a couple guys from Varien, the company that built Magento, and viewed a few of their sample sites.  Because I have years of experience with oscommerce ecommerce, I was eager to dive right in and customize one of these!  Unfortunately, it turns out Magento sucks to work on.  Yes, I said Magento sucks.

Features

Magento has nearly all the ecommerce features you could imagine.  It has pretty much everything that oscommerce ever had, even after installing a hundred community contributions. They support downloadable products, grouped products, different customer types (retail, wholesale) and pricing for each, and a variety of payment and shipping modules.  Magento has “current” features such as tagging and tag clouds and on the backend also has a caching mechanism to speed things up on the site.

Bugs

There are some bugs in Magento and this is expected with any software.  They’ve been releasing an updated version every 2-3 weeks.  I’m still waiting on the payment subscription feature and a bug fix that will allow me to assign downloadable products to a group product.

Interface

Looking over a Magento store from the front end and peering into the source code you’ll quickly notice it uses very few tables.  On a given page, there was one small table in one of the sidebar objects.  That’s it!  Very good for search engine optimization.

Admin

The admin took a little getting used to.  Especially the product configuration as it’s laid out a little differently than the oscommerce I’m used to.  The main problem with the admin is that it’s freak’in SLOW!!!!  The ajax page content thing is cool and all, but not when it takes a minute to refresh!  It’s ridiculous.  At one time I had four tabs open and three of them loading a page in the admin while I worked on another.  I’ve tried it in firefox and google chrome and after reading the forums, I’m not the only one with these troubles.

Modifying code

The code… well, sad to say, but the learning curve is extremely steep.  I’m not talking in hours or days… weeks is getting closer, and I’d feel comfortable with months if you’re putting in a few hours per week.  It would probably make things a hellava lot easier if you’re a Zend Framework master as Magento is built on top of the Zend Framework.  Look into the code and you’ll just dig into directories eight or ten levels deep.  Many of the directories contain sub directories with the same name, making things even more confusing.  Each sub directory may contain one to four files and each file has about 50 to 100 lines of code that seem to only call an object or set a variable.  Where is the meat and potatoes?  You know, the controller containing all the logic?  Oh, and the XML config files for every modules and chunk of code in the system are kinda cool, but I really don’t know how they work at this point.  Below is a screen shot from my Zend Studio looking at a project and a sample file.

untitled-12

Customizing

After looking at this code for an hour, I decided to try the old way of locating something in a file.  Yep, I went to the product detail page and copied the text “product description” that was printed on the page, then search the whole codebase for it.  Nothin.  Ok, it must be in the database somewhere, so check the database… damn… over 200 tables!  I tried this a few times and came up empty.

If you don’t have 100-200 hours to learn the Zend Framework and play around with Magento, then I’d say forget about making customizations to it.  Yeah, it’s open source, but not too many do it yourselfers (if any) are going to be able to modify and taylor this thing to their needs.  Sure, it’s an awesome piece of work, but take it as it is or find something else.

How they make their money

They build the most complicated open source package I have every seen… by far.  Sure, it’s open source and maybe they “gave back to the community”… no.  It’s obvious the first time you hit their website that they’re in this for big bucks.  They make it easy to download, but as soon as you need something altered, it’s damn near impossible for any casual coder.  It’s still a challenge for a PHP Expert and Zend Certified Engineer without the proper training and experience.  They do have a tutorial on “how to customize Magento” at http://www.magentocommerce.com/wiki/groups/174/changing_and_customizing_magento_code , which pretty much just tells you how to merge a new release into your existing one and show you how to create a module.  Professional installation currently goes for $149 from Magento.  I was able to install Magento on my local server, but it took some tweaking and working around a few of their bugs to get it to work.  Speaking of bugs, if you want support from them it’ll cost between $42 and $1500/yr.  Why not just look on the forums?  There are a zillion questions on their forums, but no answers.  Figures… you gotta pay for the answers. How about professional training?  Yes, they offer 19 hours of professional training for $1000. They’ve done a great job at ensuring they have jobs for a few years supporting this beast.

If you want to master this solution

  1. You need to be an object oriented PHP expert.
  2. You need an awesome IDE to work with that has intellisense. Zend Studio is a good choice. Don’t even think about using Dreamweaver here folks.
  3. Gain experience with Zend Framework.
  4. You must have a lot of time available to learn this solution
  5. Pay for their training and figure out how this damn thing works.

Thanks Varien for the cool product, but it’s not for me right now.  Don’t have the hundreds of hours to learn your system; there are much easier shopping cart solutions available.


Leave a comment

Your email address will not be published. Required fields are marked *

47 thoughts on “Magento is difficult to modify and customize

  • Kevin Roth

    I agree 100% — you are not the only person who thinks Magento should not be exalted as the greatest ecommerce app in existence today. Well, perhaps it is, but it certainly has its faults as you point out.

    Here are some other things I found lacking with Magento:

    1) the server requirements are high — unless you have your own server you’re going to be getting to know your sysadmin pretty well before you even get started.

    2) it is extremely sensitive, and a little buggy. One false move in the db and you’ll have to reinstall the whole damn thing. I had my new cart all built out in magento, ready to launch. Then I looked at it the next day and found that somehow there were now 5 sites in the config, and the front end reflected that. When I attempted to delete some of the extra sites, the whole thing fell apart and I couldn’t even restore the db to get it to work properly. After searching forums and such I found there were many others that had this happen to them as well — so don’t judge me 🙂

    Anyway, I think Magento is intriguing, but it is too difficult to modify for it to be a product that I want to work with on a regular basis.

  • Venu

    What open source ecommerce do you recommend with the experience you had with magento. I am definetly no php pro, so am looking a software where i can customize with ease, something like the eCommerce site in yahoo, all we do is change via webpage, little code modification.

    • nick Post author

      I looked into presta shop for about 15 minutes and was impressed. Tableless design on the front end and plenty of good PHP code objects driving the application. Plus, it’s not stupid complicated like Magento to figure out.

      If you’re looking to do a lot of pointing and clicking with little to no code modification, a yahoo ecommerce is probably your best bet. Godaddy has a shopping cart solution as well, but I don’t have any experience with that.

  • Paul

    Magento is an enterprise level solution. It is not a quick-to-install-and-modify platform. It gives you a lot even if you consider spending $500 for support. Think about writing it from scratch or buying something simillar – not a chance! It is not for everybody but it is definitely a diamond! And yes, it is complicated but look on the feature list! And Zend Framework was a good choice.

  • SeanB

    I have been working with Magento and although it was difficult to figure out at first, after a little while it starts to make sense. I like it much better than OSCommerce as far as customization.

  • J. Greene

    I am so not impressed–the product handling features are wonderful, but if I didn’t have a customer who was extremely enamored of the product because of the nice-looking website, I’dve tossed it immediately as ridiculously complicated and user un-friendly.

    Documentation is atrocious, and when you have to google how to add a manufacturer to the list (and you find the answer somewhere OTHER than their site!), you’re looking at a very poor product no matter how cool everyone thinks it is.

    I suppose we should be grateful because those of us who do figure it out can make scads of money with it since we’re such a rare breed right now… *rolls eyes*

  • Eddie

    Hi,
    I hear your pain! However, Magento has a level of functionality built in that other systems I’ve used (Zen-Cart, OsCommerce, etc) just don’t have – multiple stores/websites, for example.

    I too did the fruitless code search for a way in, & have spent more hours than I can afford scanning the forums & google for answers, sometimes with no luck whatsoever. However, the more I’ve studied and failed the more I’ve learnt to the point where I’ve written my own modules (Suppliers, etc) that do just what I need them to do.

    That said, the documentation is sparse to say the least. Varian need to slow down with the feature releases and stabilise the product & the documentation. They need a real push on their wiki, with some Varian produced tutorials on how to achieve common goals, etc.

    Then, all of us who agree that this is a great product and a bitch to work with will be able to push the platform forward – which will help Varian make money too!

  • Branko Ajzele

    Nicely said J.Greene. I have been doing everyday Magento development for almost a year now.

    I have learned a lot of PHP OOP programming just by studying the code of Magento. Not to mention I went trough process of learning Zend Framework and a bit of Doctrine ORM (just for the fun of it). I do lot of blogging on Magento on my site, http://activecodeline.com.

    Anyhow, my point, I’m still struggling with lot of stuff with it. It’s hard to tell your client that the certain X feature will take around 6-12hours to develop and implement, while the same feature can take around hour, two at most in some other platform or CMS. I’m talking about features like “Could you add 3 more fields to my Customer Address, and make those available under Customer Account page and under Order information”. For this little request, you would need to extend Customer Address object (extend entiry object of customer address or…), change few template files and so on.

    One year after and official documentation is still no were to find. All those Wiki documents you can find on the official site are either out of date or so obscure and totally unusable to developer. Around 1 on every 5 searches I do on Google, I find my own site listed on first page. Not sure if I should be happy and proud or disappointed for this.

    One thing is for sure, they never gave impression they are community oriented. And now that the Enterprise Edition is out, makes you wonder how much community editions we will have after 1.3.1 release. I cant say I hate them, making money on open source requires clever business model. This one looks clever… for them, so…

    At this point, I will say no more. I do my living on Magento development but…

    Happy coding people.

  • Nick S

    We looked into moving to Magento at one stage but as many others have said Magento has far too many shortcomings, which unfotunately far outweight the good things about it. Just to include some: Complex, Dog Slow, Needs dedicated hardware, hard to customise, poor DB structure for a large catalogue, etc. The final blow was the release of Magento Enterprise… I really don’t see much support happening for Magento Community Edition. Ultimately having looked into many many other eCommerce solutions I have to say that PrestaShop gets my vote. Just like Magento it’s well architected using current programming techniques, OO PHP, smarty, etc but unlike Magento it’s lean and mean. Unfortunately it’s not mature enough 🙁

  • Jürgen

    Well, I agree that Magento has a HUGE learning curve, but so does every other “enterprise” product, this is just normal. And I think the “DogSlow” argument is not really valid. Of course it’s going to be slow in a shared hosting environment, where you and 50 others share the same Hardware, but seriously, Magento was not ment to run in that kind of environment.

    I am currently deploying magento in an “enterprise” environment, and testing on a HP G5 (which costs around 6.000 Euro), magento seems fast enough to me.

    Also, remember that Computers are getting faster and faster, so not too far in the future magento will run smooth everywhere. Also I tried on my Lenovo W700, installing magento on Ubuntu which runs on my installed VMWare Server, and the performance was good on the backend, and the frontend was fast.

    If there is one thing that I really dislike about Varien then it’s the lack of available documentation.

  • Johnykao

    I think so.Magento is very difficult.I’m trying to make a template of magento from apsd file.But have many things to do so i can’t make a template , also i’m working on OS 2 years ago.
    Any one help me make a template from a psd file?
    Thanks.

  • sibble

    Great post, however I do disagree with “Magento sucks to work on.” I would probably agree more with “Magento sucks to learn,” because I’m pretty comfortable doing work on Magento at this point. It all depends on what type of work.

    I’ve been working on Magento sites for a little over 1 year. I started out by learning how to install, configure and change the design. Understanding the file structure wasn’t so hard, like anything, things become easier with more time spent (more experience gained.)

    I’m now just starting to get into modules. It took about a week for me to figure out how (with no prior Zend Framework experience.)

    Anyway, my main point… If you’re a developer serious about e-commerce, there is no substitution. Magento is a great solution.

  • Eric Gillette

    Yeah, I had the same experience.

    On the surface Magento seems like a breeze.

    But when you crack open their “templates” and try to modify things, it gets wee-bit hairy.

    I use PHPEdit as my IDE, so I was able to modify it to get it to work the way I wanted, but then mid-way through, I scrapped the whole thing, and went with a simpler-to-modify shopping cart solution from TurnKeyWebTools.com that I used to build this site for a client:

    http://www.wewriteyourvows.com

    Just my 2 cents.

  • Paolo Baratta

    I know that Magento and Virtuemart for Joomla are not comparable for many reasons, but I experienced that is possible to build an ecommerce section inside a Joomla site spending a third of the time you need realizing a Magento ecommerce website

  • Sean

    I agree on this. Read through all the sites and reviews that claimed Magento was the second coming. It’s got a ton of features and attempts to accomplish a lot.

    But it’s extremely overated. It doesn’t really do anything better than another cart. It’s bulky, slow, and has a lot of little annoying bugs still laying around. You have to put massive hours into edits that would take a short period of time in other carts. Despite their appeal to the community, their add-ons are rather sparce. They do not respond at all to the community even on major issues that arise.

    I’m stuck with it but trying to migrate back to a less complex cart. While the extra features lured me in, I’ve learned when it comes to carts, I want it to be simple. I’d avoid this hunky piece of junk like the plague. Stick to a trusted cart that’s been out awhile.

    • Sophie

      I have been looking into offering my clients ecommerce and have been trying to find best solution. Was thinking of Magento, but now I read this, am not so sure. All I want is to offer reasonably straightforward shopping, with the client able to log into backend for simple maintenance: ie price changes/add products.

      But I would like to be able to customize completely using CSS, as I do offer clients ‘design’ rather than template driven websites.

      I guess Magento is not the answer? Any alternatives gratefully received. Am looking at one mentioned below right now…

      • nick Post author

        If you’re modifying code yourself, I’d lean towards an easier solution like oscommerce or zencart. Prestashop wasn’t bad, but just don’t create any products with attributes/combinations such as different colors or sizes (see my post on this). If you’re just going to point and click your way through a shopping cart and use the tools, I’d still go with Magento since it has a lot to offer. You’ll get the hang of it ;). If you’re an expert PHP developer, want the best solution, and plan to customize the shopping cart, go with Magento. Hope that helps.

        • Niki

          I am new to development. Currently manage the development team. Planning to build a website with shopping cart and use some template with Magento.

          Do you think it is a good idea or i should look for some simple cart solution than magento?

    • Chris Donalds

      I tend to agree with the comments posted here. Magento is a beast to operate and modify — there is no doubt with that! But I am not talking only from the point-of-view of a website developer or module programmer. My background is in the creating of CMS systems like WordPress, Joomla and, yes, Magento.

      On a scale, WordPress is possibly the easiest to customize, reprogram, and extend. Next is Joomla, then Drupal. However, there is a huge gap before we reach Magento! While Magento might pride itself with being a very popular and competent eCommmerce solution, its robustness is greatly outweighed by several key deficiencies:

      – Its codebase is extremely difficult to master. Even ZF, CF and PHP-OOP experts have trouble getting the hang of its obtuse logic flow
      – Its folder hierarchy was organized with a blender! Unlike WordPress and Drupal’s straight-forward approach to installing plugins/modules (either in UI or directly via FTP to a single folder), try uploading Magento extensions using FTP! The folder arrangement weaves in and out of the app, var, skin, etc. folders. Better yet, try removing an extension using only FTP! Yes, although not recommended, it is possible with WordPress or Drupal.
      – Code is buggy and not properly unit-tested. For instance, good programming practise dictates that all input parameters to a module should be checked and validated BEFORE use. We all recognize PHP functions like isset(), function_exists(), and empty(). I cannot count the number of times I have seen parameters being used without validation IN core functions. It’s one thing to find poor programming in extensions or themes, but that is inexcusable for the core system.
      – What happened to proper and extensive documentation? I see several comments here that address the lack of documentation in both the file code and on the Wiki/help sites. I agree that Varien should spend some of the thousands of dollars it receives from clients hiring people to solely write documentation!
      – The CMS mechanism is ugly and cumbersome! Again, we’ve all experienced the fluid ease that is WordPress (BTW I am not even a true WordPress lover myself). I have read several blogs out there that tell people to upload files directly via FTP and modify some esoteric PHP code file just to display a bit out output. Rediculous! Additional coding should only be needed to add or modify system functionality not give clients a new field. While Magento excels at eCommerce it sorely lacks at CMS — it’s almost better to write the HTML old school directly than hunt around for the widget or module that deals with output
      – It bastardizes the MVC structure. I have written code in CF. Better yet I have built two MVC platforms from scratch, mostly to see if I can produce a more user-friendly system for site owners, site developers, plugin/theme contributors, and core architects. Magento’s typical “views” mix in controller and model code.
      – XML files are not the easiest way to extend a system. A proper, tight, robust extension architecture is the easiest way to extend a system.

      So in a nutshell, run away from Magento like the plague. Try PrestShop, osCommerce, even Drupal Commerce or WordPress’ WooCommerce. As a site developer, before purchasing a solution, compare required features against implementation and long-term
      costs!

      • nick Post author

        Thanks for your insight Chris! The modularity of Magento 2 is much improved and more straight forward as drupal by using a single folder instead of weaving in and out of app, skin, etc.

  • Adam Cleaner

    i hate seeing thank you comments but thank you. you have saved me a lot of time. after struggling yesterday to get magento installed locally for hours and then reading this article i’ve decided it’s not for me, and to try something a little simpler.

  • Colin

    Magento has a very abstract, flexible design, which is great in an academic way, like if you built a giant, room-sized, 10000-moving-part machine that would butter a piece of toast. Impressive, and hugely impractical.

    What good is the most flexible software in the world if it’s not accessible to the vast majority of your potential audience? In my 25 years of software, I have never run into a system so cryptic and obtuse to use.

    What makes a big problem enormous is Magento has broken the cardinal rule:
    If you’re going to use a dynamically typed language, DOCUMENTATION MUST TAKE THE PLACE OF STRICT TYPING!

    Because of this, it is common to spend hours figuring out problems that would normally take minutes, or seconds.

    Really, what are the major objects you care about in an e-commerce site? Stores, Categories, Products, Attributes…. at any time, anywhere, one should easily be able to ask “What’s the current category?” or “Give me all products with criteria x and y”. But asking obvious ecommerce-site questions in Magento requires a huge amount of incredibly non-obvious, complex and arcane knowledge.

    I call “emperor has no clothes” on Magento. At some point, someone will match their feature set with an intuitive, flexible, documented developer interface, and it will be over for them. Only masochists would want to stick around.

  • smfDesignSolutions

    wow, wish I would have seen this before I wasted about 6 hours of possible billable time. I’m a zen cart user, but heard lots of buzz about magento, wanting to stay ahead of things I sandboxed magento. I’ll be leaving that sandbox to grow weeds.
    Zen does what I need, if your an os user the conversion is easy and offers a bit more. I’m looking to create a mod for class registration where company pays for multiple students. Was thinking I would do it in Magento – think I’ll stick with what I know! Thanks.

  • Catalin

    Since Nov 2009 I have been working with magento and now I have a single magento install as a multi-site for almost 40 shops and around 25,000 products.

    Everything is set on a dedicated server (no cpanel, overcomplicated panels – just pure lamp on centos without even email or DNS; we use godaddy and google for those 2 things).

    The server is a quad core with 8Gb of RAM and properly tunned for performance with apc-cache and the only thing we are hosting is a magento install for all those 40 domains (shops).

    We haven’t added any plugins/features to magento. It’s basically the out of box thing, with a very simple theme added to it.

    We have tried all kind of performance tuning and this the best we achieved.

    I must admit if people are just browsing the website, it loads very quickly. But the problem is when we update products and orders. It takes about 2 minutes to save a product and it eats 120% of the CPU and 10% from the memory.

    Our products are scrapped from other websites, so we need to do regular product updates and let me just tell you that using the dataflow is the fastest way to import products, but even that takes about 1 hour and 10 minutes to process 500 products. So when we have to do batch updates for 11,000 we have to wait endless hours.

    If you’re thinking about using magento for your shop, it’s ok, but make sure to have a dedicated server and don’t even try to have more than 10,000 products or a multi-shop. It just doesn’t work.

    MAGENTO is simply NOT scalable in performance.

    • nick Post author

      Interesting, thanks for spreading the word Catalin. I’d be interested what the database looks like and how the products are setup. I recall a product type in magento that exponentially creates product “combinations” rather than relationships, similar to the poor methods prestashop uses. I wonder if this could be the reason.

      • Catalin

        They are called bundle products and we only have about 100 of them.

        The rest of the products are Simple Type products with only one attribute (manufacturer).

    • Ben

      MAGENTO is good for its foundation of Zend framework, and it is not that much scalable as it still use MySQL which is only for medium and small database, but the idea of this OS ecommerce is good and it still the best OS platform in PHP. It is hard to learn really hard if you have no idea about it, but once you know how it works you will love it, as I have done really well with it and its module class is so organised and you can build really good module yourself, the only thing you need to do is to be a real good PHP programmer. Its SEO is really good and the backend is more professional than oscommerce, I can easily add great deal of features in it SOAP and integrate with any CMS if they can pay the price, Joomla or WordPress, as Magento’s API is so good, and you can add your own API, controller concept is so nice to create unqiue URL. Check it out in mytraining.net can you imagine it is only one developer’s work, just don’t use what magento offer, even the product type, it is useless in my project. After all you need to charge a lot for magento project, it is not as simple as oscommerce or joomla or zend cart or any other platform.
      The only thing makes it down is the extension that people make is not free, the useful extension is really limited, most of them are useless and that is why it is hard, and I fount that one platform can not suit all ecommerce objectives so it needs customize and develop, I believe if they get rid of the address part and checkout part, I can make it a advertise website like other asp.net site. But all in all it is a well-formed platform and the CM version is extremely same as enterprise version, except some useless extensions that enterprise has.

  • Pimpsho

    Powerful and all but structured with unnecessary complications, bulgy, doesn’t separate logic from the html or css – mixes up everything – code, html + formatting

    so not that good to develop upon as claimed not nearly, saw masses of much better coded and structured engines.

    all in all – overprized and overacclaimed

  • Michael R

    I am so frustrated with magento that it’s impossible to express in words! My store is impossible to update. Every time I need to call a professional to modify my website. ARRRRRRRRRR!

  • Cyball

    Magento sucks anyway … it is not even an enterprise solution for that to be it should be much i think 1.000 times faster and even if you figure out the brainfucking table structure they should use an NoSQL solution … anyway it was not a enterprise solution , it is not a enterprise solution and as i guess it will never be one for the next 20 years and i guess after that time it will be death … 🙂 hopefully …

    Cyball 🙂

  • Eric Gillette

    Yeah, I totally agree with you. . .

    I have used TurnkeyWebTools.com’s SunShop for years until one day a client suggested Magento to me since she didn’t want to pay for SunShop.

    I opened it up, and tried just modifying some of the code, and had one of my designers try to modify the look of the cart and she was pulling her hair out!

    This is probably one of the worst shopping carts I’ve ever come across in my 10 years of building e-commerce websites!

  • nicholas

    magento’s learning curve /is/ god damn ridiculous, but once you get it, and have a target in mind, it becomes second nature

    after working with oscommerce for years and hitting brick walls of limitation, i spent a few days getting to know magento.. the reason it runs so slow for most is that they have a lot of things left in the database by default, magento is a bulky bunch of code, but you can eliminate things you wont use

    it’s really an amazing ecommerce script, though, especially for free. most small to medium ecommerce will be fine with most out of the box php scripts (oscommerce, creloaded, zencart, etc) but if someone comes to you and says ‘i want different groups of categories to have entirely different navigation, i want product pages to only have one column.. that is if they are simple products, if they are entire engines or transmission parts i want a column on the right explaining terms im probably going to use in them, oh and the home page needs to be one column, but i want the cms pages to be one column with a left nav that isn’t like any of the categories, and a few custom callouts on certain pages (controlled by xml).. i don’t even know if this would be possible in oscommerce?

    but in magento as long as you are using the difficult and seemingly assbackwards xml layouts, paired with calling html blocks, updatable per category, per layout, per whatever you want, you can really do anything and everything per page, or per layout

    it’s really hard to explain here, but if you really still feel this way about magento, i /really/ would not mind explaining in what cases it is good for, and that it really doesn’t fully suck for everything, and that it completely destroys the ‘other’ ecommerce scripts in a click of a button, that is if you need it to.

    cheers!

  • Karen

    I always use OpenCart (really, this opensource shop is AWESOME) and have it running and customized within 4 hours. Configuration and theme adjusting is super simple. Front end is table less and the back end is clean.

    But now my manager wants me to learn Magento.. I have been busy for one month now, and I believe I want to die.

    Deadline was 22nd of April, which is tomorrow. I figured it would take me less than a week to configure and customize.

    I estimated it will take me another 4 months. Do not, I repeat, do not use this “open source shop”. It will lead you into an infinite depression.

  • Kimmo

    I’ve been using Magento for less than a week now, and I’m already building modules with custom eav attributes, custom forms, and custom models. Granted I’ve got several years of experience in ZF and MVC architecture in general, but Magento really didn’t seem too hard to understand.

    You have to understand that the “finely grained” structure is one of the things that enable loose coupling within Magento’s components. Loose coupling is one of the key aspects in a well-architectured system, and it saves you from a lot of trouble later on. If you disagree, start unit-testing components or replacing components at will in a tightly coupled system and post your experiences here.

    It feels wrong to blame Magento as an application if it’s your own skills that are lacking. Magento is a complex, powerful app with a lot of potential for tweaking. If you wanna learn how to use it properly, start studying about architecture in web apps and following those principles in your own code too. Can’t go wrong with PoEAA by Martin Fowler for example.

    • Andrew

      Hello

      Our company has been setting up Magento for sometime and unfortunately some of the outside services we engaged ended up costing us quite a bit for code that is useless. I am wondering is you can recommend any company to begin a long time partnership to grow with our needs. ThanksAndrew

  • internetne strani

    Totally agree. My new project should be build on Magento. I have lost 3 days with barely even customize something. I really dont have time to learn this web app, if I think again I dont even want to learn it. I have finished my new project within one week with custom modules in Joomla. I am building web apps mainly on ZF so I consider myself arhitecture aware programmer, but Magento is something I am gonna avoid in the future.

  • Anders

    Hey guys. I’ve been trying for 3 days now, 5 hours a day, to understand how to build a simple template, and i can’t figure it out. The only guides and walkthroughs Magento has on their site is abstract and doesnt explain how to do it step by step.. I don’t know if i’ll ever learn this software…
    //Anders

  • joe

    bottom line is: there are many bugs report each version, and developer don’t bother to fix them, they want you to wait for next version.

    and when some developers do their hard work and fixed them by themselves, add some new module they developed.

    but when the next version is out, the customized modules they developed for old version, just simply don’t works. they change core class code whatever they want and no backward compatibility at all.

  • Leaflet Printing

    If you are a designer or developer, and give your client a Magento package, you will forever be providing them with support. In my opinion, it is just too difficult to use for people who might not be too computer savvy. Also, it can be a right pain to set up! No wonder it comes with it’s own training, books and courses! I think in future, opencart is the way to go. Not as powerful, but certainly easier to use!

  • CannedSwank

    Magento is not a functional end product out of the box – its a framework intended to be customized and developed into a functional end product, and the developers of the core product, and supporting extensions, make money keeping it this way. I am ok with this business model, because I understand that an enterprise level e-commerce site isn’t easy to build and i don’t expect to get one for free.

    So, Magento IS difficult to modify and customize (and expensive) because its a hugely complicated and powerful framework intended to support enterprise level e-commerce sites. If you can manage with a wordpress woocommerce site – stay clear of Magento, because Magento will cost you a lot of time and money. But if you need the functionality(s) that Magento can provide… what other choice do you have?

    Example of time and cost …. and how the Magento business model (make money off you) works…. I am building a site and installed a paid for extension. The extension did not work. The author blamed the host provider and server settings without attempting to actually visit my site and look things over. After hours I discovered that it was the extensions fault – but you have to be programmer to figure that out, lacking that skill you have to pay the extension author for hourly services to make it work. If you don’t know better and cant figure it out, you are going to pay for it, albeit naively.

    With this specific extension, I could have paid the fee (to a very well known provider of extensions and had it fixed, but I need to figure out how this stuff works, hopefully to avoid being nickle and dimed down the road. I am not bothering to beat my chest all proud and happy with a shout back to the extension provider with my solution either. They know quite well what the problem was. I would have ended up in their comment section with one of those comments…. “wow – what a super extension, it was tough to get started but service jumped in and got me running in no time for a reasonable small fee – now I am a lifetime fan.. blah blah blah.”

    BTW… ever notice how many extension providers provide extensions with near perfect feedback rating? I have posted feedback that wasn’t positive and that feedback never was published, imagine that.

    the bottom line – Magento is complicated for some good reasons, and the folks that can make it work, make money making it work. You either learn how to do the modifying and customizing on your own, which will be difficult and time consuming or….. pay for it.

    If you fancy yourself a wordpress developer and a master of installing and customizing a WP theme….. Magento is 100 time more complicated. Better be sure you really need the functionality because the learning curve is steep and you are going to spend money on custom programming or extensions, or more likely both.

    lastly – the reason I am chiming in on this thread is because the websites closely associated with Magento developers go to great lengths to keep these types of conversations out. Candid conversations about Magento are hard to come by.

    • nick Post author

      Hey great honest feedback here. Yes with Magento you get a TON of functionality on the community edition for free, and the enterprise edition also has great benefits for sites with higher traffic and marketing needs. The problem you had with the extension developer may occur with any third party plugin including wordpress, so I don’t feel that’s unique to Magento. Yes, Magento is much more complicated than wordpress, so be sure you need it and have the budget to get what you want out of it 🙂