Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

A Journey Down the Open Road - SymfonyCon Paris 2015

251 views

Published on

Sharing the experience of managing an Open Source Project like Magento, some of the key decisions we made that lead to Magento becoming the leading eCommerce application in the world and the challenges, failures and successes we had.

Published in: Technology
  • Be the first to comment

A Journey Down the Open Road - SymfonyCon Paris 2015

  1. 1. A Journey Down the Open Road
  2. 2. Bonjour SymfonyCon! Yoav Kutner CEO of Oro Inc. & x.CTO of Magento
  3. 3. Happy Birthday!
  4. 4. The Journey
  5. 5. Choose Your Travel Partner(s) • Seek travel partners who share a common interest. • Discuss your trip budget when choosing adventure companions. • Review your ideal itinerary and travel dates. • Travel on a short excursion before taking a longer one. • Locate potential travel partners online if you can't find any through your existing contacts. http://www.wikihow.com/Choose-a-Travel-Partner
  6. 6. My Partner Roy Rubin Co-Founder and x.CEO, Magento, Inc.
  7. 7. The Varien Days (and Nights)
  8. 8. Open Source • Open Source: is a philosophy, or pragmatic methodology that promotes free redistribution and access to an end product's design and implementation details. http://en.wikipedia.org/wiki/Open_source • Open Source Software :(OSS) is computer software that is available with source code: the source code and certain other rights normally reserved for copyright holders are provided under an open-source license that permits users to study, change, improve and at times also to distribute the software. http://en.wikipedia.org/wiki/Open-source_software
  9. 9. The Open Source Definition Introduction: Open source does not just mean access to the source code. The distribution terms of open-source software must comply with the following criteria: 1. Free Redistribution 2. Source Code 3. Derived Works 4. Integrity of The Author's Source Code 5. No Discrimination Against Persons or Groups 6. No Discrimination Against Fields of Endeavor 7. Distribution of License 8. License Must Not Be Specific to a Product 9. License Must Not Restrict Other Software 10. License Must Be Technology-Neutral http://opensource.org/osd
  10. 10. Open Does Not Mean Free
  11. 11. Open Source Technologies • Linux/Unix • Apache • MySQL • PHP
  12. 12. • osCommerce was started in March 2000 in Germany by project founder and leader Harald Ponce de Leon as The Exchange Project. • As of August 2008 the osCommerce site says that there are over 14,000 'live' websites using the program. • In November 2010 the development of osCommerce v2.2 was met with another stable release. Version 2.3 • Version 3.0 has been released on March 31, 2011 and is a major re-write of the program to incorporate an object-oriented backend, a template system to allow easy layout changes, and inclusion of an administration-area username and password definition during installation.
  13. 13. We Hit a Crossroad
  14. 14. Select a Programing Language <?php echo “php?”; ?>
  15. 15. A Modular Application • OO support. We wanted Magento to be an OO application so it would be considered as a platform and allow to extend and develop it. We also wanted Enterprise organizations to consider this platform. • The added support for Encapsulation (privet, protected public), Interfaces, and Static Methods etc allowed us to create a true OO architected application in PHP. • We were worried about the support for PHP5 when it comes to hosting (even considering creating 2 versions of Magento) but the PHP4 End of Life announcement made our decision much easier.
  16. 16. Selecting a Framework Prior to Magento we were using an in-house developed framework (PHP4). Lead to problems: • Specifying hiring criteria when it comes to developers. • Long training process due to lack of documentation and training materials. • Collaborating with other companies on big projects was a nightmare. • Maintaining and Supporting our framework without a large community was hard both in allocating resources and without a large “collective wisdom” • Many different coding styles – each code I looked at was different
  17. 17. So let’s select a framework! • PHPDevShell • Prado • Pronto • QPHP • Seagull • Symfony • ZOOP • Akelos • Ash.MVC • CakePHP • Codelgniter • DIY • eZ Components • Fusebox • PHP on TRAXz Not an easy thing to do!!! Selecting a Framework
  18. 18. Criteria for Selecting a Framework • Must have a commercial company behind it. • Widespread community support. • A wealth of documentation and training. • A use-at-will architecture that enables developers to use the Framework for the functionality they need. • A clear roadmap and transparency • Open Source Licensing that protects the entire ecosystem of products built on the platform
  19. 19. Magento Development Time Line December 2006 January 2007 February 2007 May 2007 June 2007 August 2007 September 2007-February 2008 March 2008 April 2007-June 2008 July 2008 July- Nov 2008 December 2008 Decision to create a new open source ecommerce platform Begin by selecting the Zend Framework, and creating the core team (3 developers) Core team starts designing the application architecture (3 developers) First “proof of concept” a semi-working ecommerce application (3 developers) Start working on First Beta (core team 5 developers) Magento Beta release (core team 5-7 developers) 12 Beta releases (core team 5-8 developers) Magento 1.0 released (core team 6-8 developers) Seven 1.0.x releases (core team 6-8 developers) Magento 1.1 released (core team 6-8 developers) Eight 1.1.x releases (core team 5-7 developers) Magento 1.2.0 released (core team 5-7 developers)
  20. 20. Magento Development Time Line
  21. 21. Features and Open Product Management
  22. 22. Community
  23. 23. Community
  24. 24. Community
  25. 25. Introducing Magento to the World Twiistup Los Angeles January 15, 2008
  26. 26. Twiistup Los Angeles January 15, 2008 Introducing Magento to the World
  27. 27. Next Day January 16, 2008 Sun acquired MySQL for $1 billion!!! Twiistup Los Angeles January 15, 2008 Introducing Magento to the World
  28. 28. Introducing Magento to the World Twiistup Los Angeles January 15, 2008
  29. 29. How Do We Make Money?
  30. 30. Services? How Do We Make Money?
  31. 31. Services? How Do We Make Money?
  32. 32. Support? How Do We Make Money?
  33. 33. Support? How Do We Make Money?
  34. 34. Commercial Open Source • Alfresco • Red Hat • MySQL • Jboss • … How Do We Make Money?
  35. 35. Commercial Open Source • Alfresco • Red Hat • MySQL • Jboss • … How Do We Make Money?
  36. 36. Brands
  37. 37. Evil Superhero Awesome Ecommerce
  38. 38. Magento Trends
  39. 39. Magento Developers
  40. 40. Magento Developers
  41. 41. Any fool can use a computer. Many do. Ted Nelson Magento Developers
  42. 42. Contributions Extensions Magento Connect Magento Developers
  43. 43. We are in the business of leaving holes Roy Rubin Magento Developers
  44. 44. Open Source Ecosystem
  45. 45. Magento Ecosystem The Magento system integrator ecosystem is significant, with estimated collective revenues approaching Forrester Research, June 2011 $1 billion annually
  46. 46. Core Values • Partnership • Community • Collaboration • Transparency Magento Ecosystem
  47. 47. Don’t Be Afraid of Forks
  48. 48. • In software engineering, a project fork happens when developers take a copy of source code from one software package and start independent development on it, creating a distinct piece of software • Free and open source software may be legally forked without the approval of those currently managing a software project or distributing the software, per the definitions of "free software and open source“ https://en.wikipedia.org/wiki/Fork_(software_development) Don’t Be Afraid of Forks
  49. 49. The way to deal with forks is to be attentive to the reason(s) the fork was created and release often. Don’t Be Afraid of Forks
  50. 50. Magento Inc.
  51. 51. Culture and Team
  52. 52. Lessons Learned Don’t create a company or a product to sell it. Create it because there is a need for what you are creating and you believe that you can create a great business of it.
  53. 53. The Destination Is Not Always The End of the Journey
  54. 54. The Destination Is Not Always The End of the Journey
  55. 55. The Destination Is Not Always The End of the Journey
  56. 56. The Destination Is Not Always The End of the Journey
  57. 57. And some times we find ourselves at the same point we started our journey
  58. 58. Yoav Kutner Founder & Chief Executive Officer Jary Carter Founder & Chief Revenue Officer Dima Soroka Founder & Chief Technology Officer Roy Rubin Advisor
  59. 59. Our Products
  60. 60. • Tools for business application development • Enabling business application suite • Application compatibility and integrations out of the box OroPlatform Goals
  61. 61. Applications Built on OroPlatform
  62. 62. OroCRM is the most flexible, open source CRM. We’re redefining what you should expect from customer relationship management. www.orocrm.com
  63. 63. 300,000+ Unique Site Visitors 15,000+ Registered Community Users 2,000+ Active EE Customers 16+ Worldwide Partners 35,000+ Product Downloads
  64. 64. Customers Powered by OroCRM
  65. 65. OroCommerce Will Disrupt B2B Online Commerce
  66. 66. • All of Oro Platform Productivity Tools • Corporate customer accounts with configurable roles, permissions and workflows. Multiple business units and flexible ACLs • Multiple price lists • Configurable payment term levels • Personalized catalogs • Configurable quote-to-order submission process • Quick order forms • Contract pricing • Reports, dashboards and data insights • Multi-business / multi-brand websites (including catalog-only websites) • Fully personalized customer experience • Built-in flexible content management
  67. 67. Merci Beaucoup! Life would be so much easier if we only had the source code... Anonymous
  68. 68. t: @YoavKutner e: yoav@orocrm.com

×