Good open source web app code



  • Kinda going to rant a bit to add context to my question "what's a good, well written, non monsterous, extendable open source ecommerce solution" because A) I need to rant, B) I want to get into where I am coming from with this question:

    Basically, I've been writing code for small scale websites (online stores, chambers of commerce, associations etc) and basically building the databases (usually mysql, sometimes mssql) and using a number of languages for the business logic (cold fusion, php, very occationally perl, and way back the old idc/htx MS stuff) for about 13 years. 

    I went from idc/htx to cold fusion when a client needed it, and had a lot of success despite the language's inability to even have UDFs back then.  That company didn't survive the dot com crash, ended up working in perl, then php as clients (more often, design companies that needed programmers) needed back end code.  Started working with a cold fusion shop again and this time CFCs allowed me to build everything in a much more OO manner.  Built a lot of sites for clients with that company that I really enjoyed - business logic clearly seperate from presentation layer, only loading thin (low mem) application wide data once when an app started, only loading data needed for a specific page upon request, easily reuseable components and patterns were easy to apply to create extensions as needed for repetitious elements. 

    I loved it, except for one thing:  this company happens to be in the middle of nowhere (Wyoming) and really only gets by on local clients via word of mouth (in a town of 10k, the largest within an hour easily).  Marketting does not enter the equation.  When things are good - its great, but when the influx stalls, you just can't make ends meet.

    So, now I am working from home again, this time with a company in New York, who has a nice steady supply of clients ready to go.  I see it as an opportunity to get some stable income (they actually do marketing) and relocate to Seattle, where I can be better connected in the industry. 

    The main problem with this scenario - its driving me mad.  They seem to be in love with PHP open source software, and so far (while its a new situation) I can't believe how ugly the code is that I end up dealing with.  Now, I pretty much came on board when their last programmer vanished, then they tried "india" and they needed someone to clean up the mess - which is about as close to "refurbishing damaged septic tanks" as you can get in the world of software (in my experience) and I'll be able to set stuff up the way I want more with the new contracts lined up, after these "stragglers" get out the door. 
    I fought through extending an osDate install, which had some madding conventions.  Nearly all "include" based code, but not with any real good clear organization at all - and in my opinion a pretty asinine way to deal with database queries.  Things that used to take 2 minutes and three lines (create object, set params, execute) turn into hunting down through an entire third party API to track which include the actual 'query' is executed so I can trap for an error that gives more information than a generic "query failed."

    Now, with that behind me (thank god) I am dealing with an osCommerce mess that these guys swore was "the premier open source ecommerce solution" which is even worse - business logic mixed in with output - query execution peppered inbetween HTML - what the fuck is the here?  Tons of defined constants that are used once - with no attention to how to utilize patterns to actually reuse code at all. 

    Its like monkeys were thrown in a room, each having watched a different developer for just long enough to imitate them and produce a wide disparity of vapid paradies of various development processes that meanders off after being distracted by thoughts of bananas.

     
    So, please, what are good examples of well designed open source software, preferably in php (since these guys love it) and what secondary solutions are worth moving away from php if needed?

    Honestly, I think I may use this as a "staging phase" to get the hell out of here, and dig into .NET and not look back. C++ is still my favorite standalone app language and Java is alright but still ticks me off at times.  MS Access/VBA scared me off the Microsoft stuff for a while, but it looks like .NET has finally turned it around.

    I just don't want to loose my sanity in the process, and alternatives to osCommerce could make my life a lot easier.  If a package costs $500 bucks and is really good (with source) I'll tell the guys to buck up and include it in the bids - since it'll save development time, and turn around on future extension, I can probably get away with it.  Still, OS is the easier sell.

    I think I've ranted enough to make my criteria pretty obvious, so if there are good packages out there (both ecom and cms), please pitch your favorites!



  • I've hard good things about solr for guided search and nav... for product managment, pricing, targeting, promotions, campaigns etc I haven't heard of any good open source products... though products such as ATG and Hybris are great... if you have a large wallet.

    A friend working for a large UK retailer ran their Endeca data feed through it, and it worked well with over 1m+ products



  • I know know what you mean. My boss is in love with OS commerce - although we have thrown over 10k into the damn thing with some overseas OS commerce development company and finally got it to do what we wanted. I was working on other projects at the time so I did not have the pleasure of sifting though it (I hear you have to have register_globals enabled... fun :/).

    However, look at the zend framework. It has everything you need to do in php (forms, validation, MVC) already in nice clean components.

    http://framework.zend.com/ 

    Here is the book that introduced me to the zend framework. I think you will end up loving it.

    http://www.amazon.com/Practical-Web-2-0-Applications-PHP/dp/1590599063

    Post back with what you think!



  •  It might be out of your price range, but I've heard good things about ProductCart.



  • @tster said:

     It might be out of your price range, but I've heard good things about ProductCart.
     

    Thanks for the suggestion, but the only one I could find (searching for ProductCart) is asp based, these guys are married to php for some reason.

     

    I did find LiveCart which has a reasonable price tag, and from what I've seen on their site they use the MVC pattern extensively and actually made "ease for developers" a top priority, so it looks pretty good so far.  Haven't tried the source yet - but it sounds like night and day vs osCommerce.



    NorseLaQuet:  Thanks, I'll check out the framework - If Zend can't do a great php based framework, who can afterall?


Log in to reply