Magento Beginner's Guide 124
Michael J. Ross writes "The shopping cart systems that power online stores have evolved from simple homebrew solutions in the CGI era to far more powerful open source packages, such as osCommerce. But even the later systems are frequently criticized as suffering from poorly-written code and inadequate documentation — as well as for being difficult to install and administer, and nearly impossible to enhance with new functionality and improved site styling, at least without hiring outside help. These problems alone would explain the rapidly growing interest in the latest generation of shopping cart systems, such as Magento, purported to be outpacing all others in adoption. In turn, technical publishers are making available books to help developers and site owners get started with this e-commerce alternative, such as Magento: Beginner's Guide, written by William Rice." Read on for the rest of Michael's review.
This title was published on 15 April 2009 by Packt Publishing, under the ISBN 978-1847195944. The firm makes available a Web page dedicated to the book, where visitors can find information on how to purchase the print or PDF versions of the book (or both as a bundle, at substantial savings). The site also has a link labeled "Code download" (even though there isn't any downloadable code), another link for viewing any errata (of which there is one reported, as of this writing), and a link for downloading a sample chapter (the third one, "Categories and Attributes").
Magento: Beginner's Guide | |
author | William Rice |
pages | 300 |
publisher | Packt Publishing |
rating | 8/10 |
reviewer | Michael J. Ross |
ISBN | 978-1847195944 |
summary | A starter guide to this popular e-commerce shopping cart. |
The bulk of the book's 300 pages are organized into eleven chapters, which are intended to take the reader through the basic topics, in the same order they might be encountered by anyone developing a Magento-based store for the first time: an introduction; Magento system requirements and installation; product categories and attributes; tax rules; adding product information; site styling; advanced product functionality; CRM; payment processing; shipping configuration; and order fulfillment. These chapters are followed by an appendix that delineates, as numbered lists, all of the steps covered in greater detail in the chapters. The book concludes with an index whose value is immediately brought into question by the "products" entry, which presumably would be one of the most lengthy sections for an e-commerce book such as this one, yet contains only two entries, and neither one has a page number.
The book's first chapter begins by stating what Magento and the book offer, which were already covered in the preface. The author then introduces the demo store (an online vendor of coffee beans) to be used throughout the book, with screenshots. Readers can skip over this chapter, without missing anything of importance. This chapter, like all that follow, concludes with a summary, which adds no value to the book.
In Chapter 2, the author patiently steps the non-technical user through each phase of installing Magento on a Web server, with an emphasis upon Linux systems, which apparently are far less problematic for Magento than using a Windows-based hosting account (imagine that). PHP novices will likely appreciate the author's tip on how to use phpinfo() to see their server settings, but should be warned to delete that file so hackers cannot also stumble upon that information. Also, there are some technical inaccuracies in the author's discussion of search engine friendly URLs. In step 1 of the installation, he should have explained why he chose the Full Release and not the Downloader. On page 31, he instructs the reader to set some Magento files to permissions of 777, even though the previous page stated that his Web hosts' control panel does not allow that setting. Some readers may be confused by this, and should be advised to use their FTP programs for accomplishing this task, if their control panel has the same limitation. In step 3, the author could have provided some guidance as to what the reader can do if Magento refuses to proceed with the installation and provides no error messages, even though the database information is valid and confirmable by logging in at the command line. Of course, it is difficult to anticipate all the possible problems that a user may encounter. Even the official Magento documentation does not appear to address this particular issue. Lastly, the checklist at the end of the chapter, which specifies four items to confirm prior to installation, obviously should have been presented at the beginning of the chapter.
In the third chapter, the author explores some key concepts needed in working with Magento: products, categories, and attributes. Throughout the book, these three common terms — and later, "shopping cart," "payment gateways," etc. — are presented in title case, as if they were proper names, which they are not. Within the text, this formatting gives them the appearance of menu or page names, which quickly becomes annoying. A glaring example of this is section 16 on page 59. On the same page, the reader will encounter a rather cryptic heading, "Have a go hero." Nonetheless, readers should find the topic coverage to be quite useful, including tips on enabling a product navigation menu, optimizing categories, entering products, creating product images, and setting attributes. The next two chapters explain how to apply taxes to customer purchases, and how to add "simple products" (those without customer-changeable attributes), respectively. At first glance, one might conclude that Chapter 5 should immediately follow Chapter 3 — or be combined into one chapter — since both deal primarily with products. But within Magento, tax rules are a prerequisite for properly creating new products in one's store, so the chosen order makes sense.
The author shifts gears with the sixth chapter, which explores basic styling, i.e., customizing the appearance of a Magento-based storefront. The majority of the changes can be accomplished easily by the reader, because most of them are made within the Magento administrative area, and not through any involved editing of the CSS files of the default theme. Chapter 7 covers the topics of related products, grouped products, and configurable products — and thus clearly should have followed Chapter 5. Regardless, the author's use of illustrative examples, in creating the demo site, is quite helpful for the reader to see how to use each dialog box in the process of creating the various types of products.
The last four chapters of Magento: Beginner's Guide address four essential aspects of building and running an online store, beyond the products themselves: Chapter 8 is fairly brief, but explains how to configure a store's e-mail addresses and contact form (but not how to customize the e-mail templates), as well as the functionality made available by Magento for administering customers once they have become registered users on the store site. The subsequent chapter shows how to set up a Magento site to accept customer payments using PayPal, Authorize.Net, and other electronic payment options. Chapter 10 explains how to configure the various shipping options within Magento, and, like the previous chapter, focuses on trade-offs among the various options rather than the details of how to complete each dialog box. Confusingly, on page 219, the author states that you can charge a handling fee with the flat rate method, but four pages earlier states the exact opposite. The last chapter in the book covers the various phases of order fulfillment, as well as order management.
Despite the value of the book's contents, the material would have benefited from some proper editing, evidenced alone by the many errata: "freelance[r]" (on the "About the reviewer" page), "[and] so" (page 2), "distinguishes" (page 3), "top[-]two" (page 10), "Paypal" (page 11), "Card(saved)" (page 11), "php" (page 13), "reading and article" (page 17), "you web host" (page 27), "/single-origin-coffees" is missing (page 55), "Attribute[']s Model" (page 73), "Add New [Attribute] Set" (page 75), "answer[s]" (page 78), "zip codes" (pages 85-86, and others), "characters;" (should be a comma; page 104), "later [in the] book" (page 131), "discuss about" (page 131), "direct[ion] replacement" (page 133), "graphics;" (should be a comma; page 138), "tab. to" (page 141), "2@ brew..." (page 182), "can sit[e]" (page 190), "such [as] Visa" (page 195), and "Shopping Card" (page 197). Some of these errata are likely not attributable to the author, but instead introduced during the production phase of publication. There are other indicators that quality control was lacking, such as an errant period tacked on to every "Chapter 5" in the page title, on all the pages of that chapter. On a more subjective note, I found Packt Publishing's use of four different font sizes within the table of contents — no doubt intended to make higher level section names stand out — to actually reduce speed of scanning and comprehension, just as it does on Web pages that have half a dozen or more font sizes on a single page. The practice is not limited to this particular title, but appears to be standard in their lineup of books. In addition, the longer subheads are shown in such a thick and compressed font face as to be quite difficult to read, e.g., on page 239.
Throughout his book, the author's writing style is generally clear and approachable, though occasionally choppy. His background in technical instruction is exemplified by his logical, step-by-step explanations. Some readers may find this style too repetitive, such as the many mini-summaries — labeled "What just happened?" — scattered throughout the book. These are unnecessary, waste space, and could be excised. One instance of pedantry (on page 105) deserves special recognition/ribbing: "Yes and No are self-explanatory."
But all of these aforementioned flaws are relatively minor — particularly to the reader anxious to put up a new online storefront with minimum delay. Magento: Beginner's Guide is a detailed and lucid introduction to an e-commerce system quickly growing in favor.
Michael J. Ross is a freelance Web developer and writer.
You can purchase Magento: Beginner's Guide from amazon.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
Magneto (Score:2, Interesting)
Re: (Score:3, Interesting)
Re: (Score:2, Insightful)
Re:Magneto (Score:5, Funny)
Re: (Score:3, Interesting)
Sorry? There were people who didn’t read it as “Magneto”??
As if anybody ever heard about this Magento-whatever-it-is, before this Slashvertisement. ^^
Hell, I comment here, and I still haven’t heard about it. And I most likely never will! :P
Re: (Score:1)
Magneto Beginner's Guide
1. Be born with the X-Gene
2. Kill all humans
3. ???
4. Profit!
Re: (Score:2)
Chapter 1 - Holocaust surviving, bending concentration camp's steel bars
Chapter 2 - Learn how to hate humans, advanced steel bending
Chapter 3 - Mercury
Chapter 4 - Know your enemy, get a dorky helmet
Chapter 5 - Aluminum and Adamantium explained
Chapter 6 - Electromagnetic forces, negative uses
Chapter 7 - Improving your leadership skills
Chapter 8 - Chess, strategy and tactics
Apendix A - All about blue hot chicks
Re: (Score:1)
Woah! Here is it! The "Beginners Guide to Magneto"! Totally awesome!
Thats my favorite hero/villain/mutant/goodguy/badguy - dang, he fills so many niches and his old 80s-era costume was totally awesome.
Wait, no. "Magento".
Imagine my disappointment.
Re: (Score:2)
Huh, the first thing I thought of was this [wikipedia.org].
Is a character in some comic really a more obvious reference for "magneto" than the actual device? That's slightly disheartening.
Re: (Score:2)
If you think it's bad that you read it as "Magneto", just think how I feel. I read it properly as "Magento" and thought "good job, editors***...you misspelled Magneto".
***no, I'm not new here.
osCommerce (Score:3, Interesting)
What I noticed when I evaluated osCommerce and few other ecommerce packages is the people who developed the package didn't have even a small understanding of how to use style sheets. This was a few years ago, so maybe things have improved since then.
Re: (Score:2)
Re: (Score:3, Insightful)
osCommerce is a piece of shit.
It's the code equivalent of Finnegan's Wake, but without any hint of genius at work in its production.
Broken architecture, ugly-ass code, no templating system to speak of (a side effect of the broken architecture) etc. STAY AWAY.
Re: (Score:1)
So is there any other option that works well for e-commerce websites? I don't know what else is good?
Re: (Score:2)
VirtueMart works. It's a Joomla component.
Or, at least, works a heck of a lot better than OSCommerce, which is completely unmanageable to edit.
Also, the OSCommerce people seem utterly unable to actually make releases. The current release candidate is almost two years old at this point.
As usual, they're devoting their time to the alpha of the next version, and any complaints about bugs will direct you to the cvs server. Heaven forbid people want an actual functioning piece of software.
Oh, and as a fun fe
Re: (Score:1)
I ran an e-commerce shop for around 2 years and the website had been set up before I took it over. For the first 6 months it was running on osCommerce. And it was pretty painful to make even minor changes. There've been no releases for well over 2 years at this point and I would be inclinded to say that as a official project it is dead. It keeps going through community support with an absolutely massive array of contributions.
Of course none of the contributions are tested, or have any guarantees of inter
Re: (Score:2)
The problems with osCommerce go further (much much further) than just style sheet issues.
Re: (Score:2)
Re: (Score:2)
Amen. It is amazing how popular total crap is, sometimes. It got there first, and, by God, people will continue to use it five years later no matter what's come out in the meantime.
I will point out this isn't entirely the fault of PHP. It happens in other languages too. Two words: BIND and sendmail.
Magento is nice, but... (Score:2)
Re: (Score:2)
Re: (Score:2)
This is the problem I had with all the open-source ecommerce systems I tried a while ago when I just wanted to add a nice shopping cart to my little site, where I sell a small handful of products. All of the options (oscommerce, magento, etc.) were bloated, and used the database for everything. Every single page view required database lookups to create the page. Maybe this makes sense on some site selling dozens or hundreds of products, each with very little description, but my site only has a few produc
You'll still need a database for... (Score:2)
What I want is a simple shopping cart that's open-source, and lets me use my existing website (without turning it into some database-driven monstrosity) with its simple, fast-loading pages, which only use PHP for the headers and footers.
Even if you don't put product descriptions in a database, you'll still need some sort of database to store unfinished and finished orders. If you don't want to use a database on your web site, use the PayPal cart.
Re: (Score:2)
No, I don't mind using the database for storing orders, when people make them. I just think it's ridiculous to use the database for storing product descriptions and having to regenerate all that content every time someone looks at a page. For obvious reasons, there's far, far more page views than there are actual orders.
Re: (Score:2)
I just think it's ridiculous to use the database for storing product descriptions and having to regenerate all that content every time someone looks at a page.
Unless you want to provide multiple views of a product or category, or real-time views of stock status. Then you'd have to generate all the static HTML for each different view of each product, each category, etc., and you'd have to do so whenever stock status would change. And are you going to rely on Google for site search, even though Google's spidering speed is far from instant?
Re: (Score:2)
As I said before, I have a handful of products (3 to be exact, though I'd like to get up to 10 or 20 eventually). I'm not ever going to have one of those sites with 10,000 different products. That's why I don't see why the entire product description should be contained in a DB, and fetched from that DB by PHP and generated into an HTML page for every single pageview. That's incredibly inefficient, and requires a fast site; I don't think my $3/month FatCow hosting is that high-performance.
So no, having st
Re: (Score:2)
Re: (Score:1)
Actually, I was building ecommerce systems several years ago and we took it as dogma to hit the db a few times each page. Having the product descriptions in the db is the most important thing, for flexibility of display and back-end inventory and product maintenance.
But if you have less than 10 products, then no, you don't need any of this.
Re: (Score:2)
Well, if you are ok with writing web pages, then all you need is Mal's e-commerce.
It's free. It's a hosted shopping cart and will probably work well for your needs.
http://www.mals-e.com/hosted_by.php [mals-e.com]
THe problem isn't the code... (Score:2)
The problem I've ran into with most OSS (and even paid) ecommerce systems is they dont understand basic accounting nor do they understand how a business operates.
Take zen-cart for example. When a customer cancels an order, what is the proper thing to do? Well, I'll tell you what *isn't* the proper thing... DELETE THE ORDER FROM THE DATABASE!!
The second I found out that the way to hide/cancel an order was deleting it from the database, I ran away from zen-cart. You never delete an order... what if you got
Re: (Score:2)
Wow, that's pretty scary. A canceled order is a canceled order, not a deleted one.
That's why I was hoping to find an ecommerce system I could just pick and choose the modules I needed from, and add them to my website without it being an all-or-nothing proposition, but the ones I looked at (ZenCart included, which seemed very similar to oscommerce in the code) were so convoluted that it wasn't an easy task. The other part, which really isn't avoidable when using these web scripting languages like PHP, is t
Re: (Score:1)
However, having PHP spit out HTML is extremely powerful. Consider how many thousands of different product view pages you can browse on a site like Amazon. Th
Re: (Score:1)
Zend, behind the framework to which it uses and a great PHP advocate, also wishes to advocate it's optimised LAMP servers. They have a cache demo to speed up pages on the server side so the "instant" loading is possible.
Optimisation has always been an issue but on shared hosting it's alright as long as you setup some subdomains make-do CDN so you can load your images.
Good luck with that! (Score:5, Informative)
Re: (Score:2)
As an e-commerce business owner, and a former web developer, I just tried Magento based on a suggestion from my designer. It's not for regular people.
Magento is for irregular people? I thought that was Milk of Magnesia? Learn something new every day....
Re: (Score:1)
Re: (Score:2)
Re: (Score:2)
They boast of 1 million downloads, but I am wondering how many of those downloads actually became Enterprise customers. I don't know what it is about their website, but it makes me
Re: (Score:1)
That's a joke. For $8,900, expect no less than to have a techie visit your store, spend two weeks manually entering every item into the database, configuring the appearance of the storefront, and then spending 6 months on the phone with you making sure it's working properly.
If they provide any lower level of service than that (I'm guessing zilch?) then they are ripping you off.
For real competition in this area, look at POS
Re: (Score:1)
I help manage a website based on Magento and whenever I want to hear the sound of crickets, I post a technical question to its user forum. If it hasn't already been asked and answered, you're pretty much screwed.
Are there still problems? (Score:2, Informative)
Magento isn't exactly perfect either (Score:2, Interesting)
Magento does do a better job in these areas than say, osCommerce, but there are still massively underdocumented portions of the code base. The code is clean and extensible, but horribly inefficient, to the point where a lot of people speculate that the Magento team wants it to be like that, so when your
Re: (Score:2)
"to the point where a lot of people speculate that the Magento team wants it to be like that, so when your store takes off you are more likely to hire them to speed things up."
Which is hilarious when you look at the "Enterprise" sites that Varien has done to date. They are slow, ugly and often broken. Varien does not do great work. Thats probably why they are partnering with Optaros, but it remains to be seen if those carrion eaters can do any better.
$10,000 a server license. It might be worth it if you nee
Re: (Score:2)
Agreed.
I set up a test magento site just a couple weeks ago to see if it had gotten better, and not only was it slow as fsck, but the installer had some hiccups. The URL checking steps broke, and I had to skip them. I had a weird fastcgi + aliasing setup that may have contributed, but an installer should just work with defaults if you keep clicking next. That magento didn't is a big red flag IMO. I'm also not impressed with the admin interface.
The database setup step alone took a number of minutes, long
Not the book the Communtity needs... (Score:4, Informative)
The problem with Magento is not that it is too complex for a non-technical user. The problem with Magento is that is not properly documented or commented for technical users. Non-technical users that stay within the Magento default store box will have no problems, developers that try to move outside this box will be frustrated, constantly.
Take a look at the code. There are precisely zero comments. Take a look at the documentation, there is almost no official documentation. This makes developing with Magento extremely hard as they employ some convoluted structures for very simple tasks. Eventually one finds that the code is generally of a high standard and that most things can be done without too much effort, but the learning curve is excessive.
I believe that the lack of comments and documentation is part of an intentional strategy by Varien to drive potential users to their closed-source Enterprise solution. The power of the community edition is enticing, but finding knowledgeable developers is nearly impossible and training inhouse staff takes far too long due to the conspicuous absence of documentation and comments.
Finally, I think it is pretty clear that PHP was a very poor choice for such a large framework. The lengths they need to go to implement something that appears to be convention bases and sort of but not quite dependency injected are extreme. PHP's inability to execute code asynchronously is a huge headache and the EAV model is cumbersome to say the least. Performance is seriously wanting.
So yeah, Magento is enticing as hell to non-technical beginners. However ultimately the combination of Varien's refusal to document/comment and their poor technology choices make this a platform that just won't scale. Whats needed to at least partially change that is Magento for Developers*
*There is a Magento for architects, but its already out of date and very short on real details.
PHP has driven me out of web work (Score:2)
I don't want to talk about PHP's technical merits. We could have an endless flamewar about those. I just want to say that PHP become a lingua franca of web development. Pretty much everyone (especially in the Bay Area echo chamber) give you the my-god-you've-just-killed-that-kitten look if you propose writing a package in PHP. PHP isn't used because it's good, but because it's popular, and has a huge developer bas
Re:PHP has driven me out of web work (Score:4, Insightful)
You know this. I know this.
But Joe the Web 2.0 Startup Person (who never actually got a CS degree) doesn't, and when he wants to begin creating his MugshotTome site, thinks "well, my friend mentioned this PHP thing. Maybe he can help me with it." Joe creates MugshotTome, which takes off and becomes one of the larger sites on the Internet. Now they've hired real programmers, but they're still stuck with PHP for all eternity: rewriting the system from scratch would take too long.
Bob the Web 2.0 Startup Personn wants to create his own site, say, MyCylinder. Like Joe, he's more a businessman who fancies himself a hacker than a trained developer, so he looks around and sees what's popular. "Ah, MugshotTome uses PHP. It must be good. Let me go look for a few tutorials on that." And so MyCylinder and and MugshotTome end up using PHP. Jill, Jane, and Jim all start their Web 2.0 Startup Sites using PHP for the same reason. Bob realizes that PHP is popular enough that he can get "mad hits yo" by writing a PHP tutorial article "how to make mad monies by using PHP for your Web 2.0 Startup Website". This article encourages more people to start using PHP. Then Sergio, who's worked on a few Web 2.0 Startup Sites, has a well-intentioned desire to avoid code duplication, and wants to put some common functionality in a library. So because Sergio has used PHP for his website development, it seems natural for him to write his library in PHP.
In the final stage of this disease, even Jennifer, an actual trained programmer who knows better, gets told to use PHP when she's hired for yet another Web 2.0 Startup because PHP is now the de-facto standard.
This is how PHP becomes popular. It's also how Java became popular in enterprisy applications (just imagine a bunch of CTOs all talking to each other). It's how Python became popular in bioinformatics. It's how Lisp became popular in the AI community back in the day. It's how C became popular in systems programming. It's why people are making the mind-bogglingly stupid decision to start using Flash for desktop applications.
This disease afflicts every field. Differences in hype, hosting, adoption in college classes, and random chance have a far greater impact on which language ends up being dominant than differences in the quality of the languages themselves. In this way, if the best language happens to become dominant, it's really just an accident.
Re: (Score:1)
I'm asking because scripting worked for me, back in the day. Sure it was verbose - the amount of typing was excessive - but it was easy as fuck. And we wrote some pretty incredible library functions too. It was not uncommon to write a CMS from scratch. Plenty of us had to do it just to get our jobs.
I suppose if you need to do anything mathematical, you're SOL.
Re: (Score:1, Troll)
Lots of reasons, but start with these:
No namespacing.
No Asynchronous execution.
Non-standard date formats
Dangerous stuff like "Global"
Without Zend-acceleration its incredibly slow.
Re: (Score:3, Informative)
No namespacing.
What you mean is that PHP doesn't force namespaces. It has [php.net] them, just no one uses them.
No Asynchronous execution.
That is not particularly relevant for a web programming language where a new process starts, runs code, and exits. You can't safely have background threads in that circumstances. It makes it really hard to write daemons in, but not for web programming.
Non-standard date formats
This just baffles me. Do you mean the DateTime object?
I've always stored dates as a Unix timestamp
Re: (Score:2)
I think when the GP says "namespaces" what he might mean is "namespaces used in the standard library." PHP's stdlib is, and always has been, dreadful in that regard.
Re: (Score:2)
``The problem with Magento is not that it is too complex for a non-technical user. The problem with Magento is that is not properly documented or commented for technical users.''
So, some smart guy decided to step into the void and improve the situation, but, rather than writing documentation that is distributed with the software, he wrote a book that people have to pay for.
Why the fuck is this binspam on /.? (Score:2, Insightful)
Re: (Score:2)
well its a Book Review so they are like talking about a book
Re: (Score:1)
Does it handle (Score:1, Offtopic)
Does it handle getting your share of Obama's stash? He's giving away all that money from his own stash, so you should have an easy way of handling that.
"at least without hiring outside help" - (Score:2)
.. This statement is interesting.
A lot of the e-commerce software you can get for free is written in common web development languages, e.g. Perl/PHP/Ruby/ASP.
So is this a question of lacking in-house competence from a SMB perspective? Most OSS e-commerce packages I've used have been a breeze to install, never mind to customize.
The truth to the statement is that some things are, at best, poorly documented. But if worst comes to worst, track down the bit of script you need to know (how it works) and read the
Re: (Score:2)
Magento is an OO MVF application, on an EAV database, with an artificial (and ridiculous) namespacing system, managed by strictly case sensitive (sometimes you need to capitalise the first letter, sometimes not) XML config files and file placement within module directories. There is literally no documentation and the debugging information is pretty limited.
Figuring it out takes a while.
Re: (Score:2, Informative)
I am one of the core devs so I am biased but do feel compelled to chime in with an alternative to the PHP based solutions out there like Magento.
Don't know too much about Magento, but do know (Score:5, Insightful)
If you are attempting to launch a business without the initial funds to spend around $1000 on a custom shopping cart, with the expectation of spending more money down the road adding custom features tailored to your business if proved successful, then you are not ready to start your business.
Re: (Score:1)
Re: (Score:2, Funny)
If you are attempting to launch a business without the initial funds to spend around $1000 on a custom shopping cart.
Please point me toward some $1000 custom shopping cart apps. that are currently running. I have no money and lots of christmas presents to acquire.
Re: (Score:1)
Re: (Score:2, Insightful)
$1000 buys you 3 devs for a month in India. I'm not trolling.
Re: (Score:2)
I can give Indian programmers away as Christmas gifts!!!
Re: (Score:2)
While you do that, I'm going to get three of them on indefinite retainer and start accepting a shitload of jobs on Craigslist, passing them off to those guys, and keeping the difference.
Jesus, that's cheap.
Where? (Score:1)
Re: (Score:2)
Most places I've seen would charge you $500-$1,000 just to set up and skin an open-source e-commerce package.
$1,000 won't buy you shit. Just getting some non-hideous custom graphics will cost you most of that money--and maybe more. I've seen shops charge north of $10,000 for sites that weren't a quarter as complex as an e-commerce site.
Re: (Score:2)
When I come across one of them that does have a customized shopping cart and is looking for a new web developer because the old one got hit by a bus, or just started ignoring their calls, I do feel really bad for them. Suddenly they're 1) really vulnerable to back-end developers with a God-complex and 2) lacking a cost-effective way to port their pre
Re: (Score:2)
Why is this sort of thing so common on the low end of web development? It's amazing how happy you can make people in that market by just returning their calls and emails and taking less than a month to perform a task that requires maybe 30 minutes of your time, because they've usually dealt with assholes who can't be bothered to do any of that.
WTF is up with free lance web developers?
Re: (Score:2)
It's incredibly flattering to be referred to in corporate documents as "our web guy," - being so relied upon - and yet also realize that you are still your own boss.
So a webdev ends up making a comfortable amount while he ignores his less-profitable clients (who would be m
I call Bullshit. (Score:4, Insightful)
Anyone who has needed to deal with credit card security concerns and being audited by Visa or one of the big processors for PCI compliance will run to a commercially supported ecommerce product or ASP payment service. The days of custom coded carts for a serious online business is over. It doesn't matter whether the custom coded cart is more or less secure, and it also doesn't matter if 90% of online credit card security concerns are total bullshit propagated by the security consultants - this is about risk mitigation and about business owners having someone they can point to if the PCI audit is required. So, yeah, you can continue to make a few bucks selling custom carts or low-cost carts to micro-businesses, but you won't be making a living off any well-known brands.
Re: (Score:1)
If you're a small company selling some products, ubercart and drupal is for you. You can see a good list of sites using it now. [ubercart.org]
the ONLY time I'd recommend someone spending money to develop their own ecommerce system is if they have something extremely customized--$million+ sites... NewEgg for example... and even then, the amount of money and time to make a 'custom' cart system could be cut by spending that time on extending the drupal and ubercart frameworks.
So now that I know about the book... (Score:2)
Depends on what you're doing with it. (Score:1)
Impenetrable (Score:1)
I agree that Magento is a properly designed enterprise commerce package and that most other OS commerce packages are spaghetti. But Magento is just... Impenetrable. You wander around forever just trying to figure out how to change some simple thing. Knock the PHP hack carts all you want, but I bet I can figure out how to graft on a quick feature about a billion times faster in that than in Magento. And when you're talking OS solutions, a great many users will be of the hacker type just wanting to git 'r
Stay away from it if you look forward. (Score:3, Interesting)
i work in the field. im a programmer.
magento is shiny, looks good and whatnot, but the code seems to be done in a way to discourage external development and modification. it takes 2-3 times longer to do some modification to magento that it takes to do on other shopping cart software.
im suspecting this to be a new trend though. i noticed similar other software (non shopping cart) out there, which were open source, but coded in such a way that (as if to show your left ear with your right hand), it would become complicated and manually time consuming to modify, therefore discouraging 3rd party development.
we had some former clients jumping on magento bandwagon. things went well for them at the start. but as their needs for modification increased with passing time, they had to migrate their store to another cart because it became too expensive for them to fund modifications to their store software.
Re: (Score:2)
What other shopping card do you recommend then?
Re: (Score:2)
currently it would be best to go with oscommerce. unfortunately, or maybe rather unfortunately, despite having deficiencies in a lot of fronts, it has a HUGE community. the number of contributions, modifications and whatnot are immense. there are wild implementations which totally wander off from the realm of shopping cart even. most important is this, because it has a huge community and a user base, there is also a huge developer base who can be hired for cheap to get work done on one's system. this is the
Re: (Score:2)
You are asserting Magento takes 2-3 times longer to modify than OSCommerce.
Okay, that is theoretically possible.
To insert a random car analogy, that's sorta like asserting that a Hummer is a more fuel efficient vehicle than a FooMobile. That is theoretically possible, as I've never see or even heard of a FooMobile, so perhaps FooMobiles come attached to an immovable building, for example. But that does not mean you should go around recommending a Hummer for fuel efficiency.
I can't even begin to comprehend
Re: (Score:2)
so perhaps FooMobiles come attached to an immovable building, for example. But that does not mean you should go around recommending a Hummer for fuel efficiency.
in this case it does. for, this is software - one has to count in all factors. had the thing been only the source's modifiability, it would be debated. however it comes as a package :
I recommend you look at Joomla w/Virtuemart if you think that OSCommerce, of all things, is the easiest to modify. There's a lot of files, but almost all that's Joomla...virtuemart is in administrator/componants/com_virtumart/, and is 500 files _max_, and actually organized in directories.
There's also a Drupal solution that is apparently okay, but I don't know Drupal that well.
its not just source's modifiability as i said. oscommerce, by itself lacks a lot in that regard. HOWEVER, what matters is, all of its defects and advantages are known, and there are innumerable ready made modules to start from, even if one is doing an out of ordinary modification. thats the point.
as it stands now, i dont see os
Re: (Score:2)
Amen to that!
Underneath lies tho larger problems than just that. Sure it's been obfuscated to make harder for 3rd party modifications, but they actually fail to implement proper MVC pattern, just to name one problem. (Nevermind that 12k files in a fresh install...)
Having worked with Magento... (Score:2)
Foreword: I work as a web developer, and work in highly complex dynamic systems, specializing in UIs and system integration.
I've worked with both osCommerce and Magento. Magento has very good marketing engine, really efficient throwing around of buzzwords. Sure it says on the cover to use Zend Framework and MVC pattern. What's not to like? EVERYTHING. The implementation is crappy even at best. It's not true MVC as view components actually FETCH DATA oO;
I spent about 3 weeks to get an new store launched, and
Drupal + Ubercart (Score:1)
A decent alternative is Ubercart and Drupal. Ubercart, while not the best example of -good- drupal code, it is getting better, and d7uc is planning on bringing much of the code to drupal standards. One big plus about ubercart is its extensibility. Despite it being a bloated shopping
it's what makers of magento should have done (Score:1)
I've read it, and this book is exactly what the makers of Magento should have done.
I don't think it's worth the money, maybe 5$.
WAY TO MUCH (Score:2)
A project with no documentation and the comments stripped out, Qel Surpise!
A shopping cart should be simple and small. It should be unobtrusive.
What it should do is give you the calls to display, review, modify, fill your shopping cart, check out and take a payment.
Nothing more, nothing less.
At that point you can integrate it into whatever web site your building using your styling and markup.
This ain't brain surgery, it is a database. and the most complex thing should be a bit of javascript to update the t
Re: (Score:2)
Any idiot can make things bigger and more complex, it takes a true genius to make things smaller, simpler.
Magento might have the base ideas correct, unfortunately however, the implementation is worse than kissing a frog while swimming in poo, dragging a concrete block on your ankle.
Re: (Score:2)
Re: (Score:1)
I actually left a company last year over a custom Magento project. At one point, they were throwing $1500/mo worth of dedicated server at a vanilla install (v1.1.something), and it was taking upwards of 20 seconds to load a product page. Load times have gotten significantly better since then, but it can still be showstoppingly slow even on tier 1 hardware.