This document summarizes the author's experience with Magento over time. It describes how in the past they used Magento CE1 in 2012, but now in 2016 they are using Magento EE4k with improved development practices. Specifically, they now use Composer for dependencies, Circle CI for automated builds, Codeception for testing, and Elastera on AWS for deployment. Looking ahead, the author is excited about new features in Magento 2 like native Composer support, a modular structure, and improved UX with a responsive design.
Varien founded 2001 by Yoav Kutner and Roy Rubin.
Agency using osCommerce.
Planned to fork #osCommerce in early 2007 but rewote as Magento
They planned to name it like Bento, public beta August 31 2007 renamed Bento to Magento,
a mix of Bento and Mage.
The term Mage from Dungeons & Dragons, where Mage is means Wizard.
Think mangeto is magic you know why
Aparently
inspiration of Dragonlance Logo similaritiesMagento 1.0 March 31st 2008
Founded Brian and debbie
The product being a chair not website
One chair found after a sourcing trip to india
No e-commerece experince
How hard can it be?
Built on Mage CE
Agency build 2 weeks
Lookeed like this
Decoholic
Zip file of you go
Good luck
Find a host
Probally look like this
FTP the zip up
Super easy and cheep
You could edit on the box
Need big changes download it edit ftp back
On day this happened
Hard drive failed
Probably couldn’t recover it
Ira hungover
Went for a sleep under a table and hope it all goes away
Doing any thing like that that’s what you are doing
So we did come back
Eventually 36 hours later
Time for a new plan
Time for the present
Fastforward
Fastforward
2010, ebay bought 49% ownership
2010 was Magento2 was first announced, release date planned y/e 2011
June 6, 2011, eBay 100%
Yoav Kutner left Magento in April 2012
Roy Rubin left Magento in April 2014
Raid on ebay and it was broke up
Permira private equity fund on November 3, 2015
Varien Rebraned Mangento Inc
Now #1ecoomerce platform on alexa top 100k
250k customers
70k devs 5k cetified
$50bn estimated commerce volume
That’s is Magentos present for most people , we’ll come to magento 2 soon
And this is our Present
We still sell furniture, over 4k lines
Now latest Mag EE
We have a very different site
We rebranded in just 3 weeks in Jan this year
Many of them are made to order where you design it yourself
We launch new products every day and
Collaborations with top UK designers like liberties of London
We have separate business units inside our business
Like our mattress unit with mr & mrs smith
To get here
We don’t ftp it to a box
So what did we do?
What is development?
Code – the modules and the themes
Build - How do make it ready to go out
reminds me of - real world, honest to God double-clawed hammer
real-world acknowledgement of the epic blog entry PHP: A Fractal of Bad Design.
Very adpt here as it a tool and most of what people can see as wrong with php
Is actually tooling so we’re going to look at some good ones
Test manual or automatic
Deploy – get it one the server
Not go live that should be a feature switch, not install, that’s build
Getting here is not easy
We start here
Half way through painfull but bearable
Just before the end too much
Then f-ing amazing
Time to code
Composer – not to much – Jordi closing keynote talk today
Here is some libs
magento-composer-installer - enable composer to install Magento modules
automatically integrate them into a Magento installation
add Composer's vendor autoloader so that Composer-compatible 3rd party tools can be used.
- Originally came from a Magento hackathon repo now maintained by Daniel Fahlke from brandung agency
magento-composer-autoload - adds the composer Autoloader before the Magento Autoloader by Aaron Bonner
magento-core-composer-installer – Allows the Magento core to installed via composer - built by Aydin JH nothigham
magento-composer-autoload - adds the composer Autoloader before the Magento Autoloader by Aaron Bonner
magento-core-composer-installer – Allows the Magento core to installed via composer - built by Aydin JH nothigham
Grunt
Simple npm install Grunt on it’s repo
That is included in Composer and our build puts it together
Then do what you like Compass / SCSS / Require JS
React Components creating self-contained, customizable elements that you can easily import and use in your project
can later reuse, combine, and nest
special syntax called JSX, which allows you to mix HTML with JavaScript. This is not a requirement – you can still write in plain JavaScript – but I strongly suggest that you try the new syntax because makes writing your components a breeze
Babble able to write in ES6
to install the official React.js chrome extension. It makes debugging your app so much easier, you’ll have a direct look into the virtual DOM just as if you were browsing a regular DOM tree in the elements panel.
Stub our all possible states not just defaults with static php files
Mock all the JS Endpoints to make sure all inter active componats
Deploy to get quick feed back from externals or just to your loacl if not
Now we have good code
Next build
Free Hosted Continuous Integration and Deployment - Jenkins, Hudson whoever we Circle
Used by Shopify
Connects to Github
Docker base images
circle.yml
Great guide https://github.com/integrations/circle-ci
Symlinks in theme
Builds a Zip in the right place – zip moves it right place
htdocs
test
Fresh DB
Circle runs all the tests
EE unit tests Codeception –
Acceptance and unit
Phanto JS on mocked on the theme
ecomdev
Deploy
Hosting Specialist based here in london
Similar to beanstalk/
Separate Staging, integration and production
ELASTIC scaling
FPC on EE, Auto CDN via S3 and cloudfront
24 X 7 X 365 MONITORING, ALERTING AND SUPPORT
Circle places on build on Jump ox
Intergrates with Slack with notifications and final push deployments via hubot
Varnish with Turpentine and FPC on CE for maxium page speed
Done
Then f-ing amazing
This is what they were going for
Native composer installer
Composer for Modules
One repo per Module
Symfony and Zend components
Native varnish support
Unit tested
New arch
Four core apps
Catalogue Management
Product Management
Order Management
Checkout
Don’t have to do from the get go
Magento UI
Built on LESS preprocessor
Focused on web standards
Customizable and easy to maintain
Responsive
Accessible
7. No more Prototypes
11. Frontend development : Blank Theme
Blank theme to develop from
Hugley impoyed Admin
Reorts are customisable
Responsive