Improving the Magento 2 Developer Experience

Similar documents
Build & Launch Tools (BLT) Automating best practices for enterprise sites

Docker Universal Control Plane Deploy and Manage On-Premises, Your Dockerized Distributed Applications

FROM VSTS TO AZURE DEVOPS

Magento 2 Certified Professional Developer. Exam Study Guide

Magento Enterprise Edition Customer Support Guide

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

Expert Guidance on Migrating from Magento 1 to Magento 2

Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications

Drupal 8 THE VIDER ITY APPR OACH

Blast Search Lucene Search Module for Magento 2

Magento 2 Guide ING. Guide 1

WordPress Case Study

Composer Best Practices Nils Private Packagist

DreamFactory Security Guide

Fastly_Cdn Module Installation Instructions

Magento Marketplace's New Extension Quality Program

Microsoft 365 powered device webinar series Microsoft 365 powered device Assessment Kit. Alan Maddison, Architect Amit Bhatia, Architect

PayPalPlus Magento 2 User's Guide

Visual Studio Team Services

projecto Documentation

Please give me your feedback

WebStorm, intelligent IDE for JavaScript development

Magento Commerce Cloud. Implementing a Project Effectively

Aldryn Installer Documentation

Connect and Transform Your Digital Business with IBM

Before you start proceeding with this tutorial, we are assuming that you are already aware about the basics of Web development.

Application Management Webinar. Daniela Field

Research Faculty Summit Systems Fueling future disruptions

Running Effective Projects In Office 365. June 1, 2017

EMARSYS FOR MAGENTO 2

USER MANUAL. Star Track Shipping TABLE OF CONTENTS. Version: 2.0.0

USER MANUAL DELIVERY DATE SCHEDULER TABLE OF CONTENTS. Version: 1.0.0

PHP-Einführung - Lesson 8 - Composer (Dependency manager) and JSON. Alexander Lichter June 27, 2017

MonarchPress Software Design. Green Team

OpenStack Mitaka Release Overview

Guides SDL Server Documentation Document current as of 04/06/ :35 PM.

Blog FAQ.

Web AppBuilder Presented by

platform Development Process Optimization For Drupal centric projects

Dynamicweb 9. Experience the new and intuitive All-in-One Platform

User Manual for Market Place. Version 2.0 & above

Full Stack boot camp

Purpletree SMS for Magento2

Tools. SWE 432, Fall Design and Implementation of Software for the Web

WebSphere Puts Business In Motion. Put People In Motion With Mobile Apps

How Often and What StackOverflow Posts Do Developers Reference in Their GitHub Projects?

Getting started with GitHub

Php4u Payment Restrictions Module for Magento 2

Team Up: Contributing to the Tizen Platform. Narasimha Swamy Sanjay NM

Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13

TOP DEVELOPERS MINDSET. All About the 5 Things You Don t Know.

Version Control for PL/SQL

What s in Magento 2.3? Olga Kopylova Lead architect Magento

Composer and Drupal. CIDUG Meeting December 13, 2018 John Rearick

Technical Comparison Sheet: ez Platform Cloud vs Other Hosting Approaches

MexBS Google Invisible Recaptcha v1.0.0 User Guide

API MANAGEMENT WITH WEBMETHODS

5. Enable and configure Stripe in Magento Admin under Stores/Configuration/Payment Methods/Stripe

Kubernetes Integration with Virtuozzo Storage

Oracle Mix. A Case Study. Ola Bini JRuby Core Developer ThoughtWorks Studios.

WebCenter Interaction 10gR3 Overview

Configuring Autocomplete & Suggest

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Linus Torvalds inventor of Linux wanted a better source control system so he wrote one

Liferay Digital Experience Platform. New Features Summary

(Cloud9) and to the Remote Repository (GitHub)

Hands-On Lab. Getting Started with Git using Team Foundation Server Lab version: Last updated: 12/30/2013

Import Export Products Attributes

CuteFlow-V4 Documentation

Delphi Day, June Delphi 10 Tokyo for Windows 10 and More

MODERN APPLICATION ARCHITECTURE DEMO. Wanja Pernath EMEA Partner Enablement Manager, Middleware & OpenShift

Olga Kopylova. Lead architect Magento Open Source and Commerce

State of Enterprise Mobile App Development

vrealize Suite Lifecycle Manager 1.1 Installation, Upgrade, and Management vrealize Suite 2017

Lab 1 MonarchPress Product Description. Robert O Donnell CS411. Janet Brunelle. September 20, Version #2

OWASP. The OWASP Foundation Shake Hands With BeEF

This guide will show you how to install and configure Fastly CDN extension for Magento 2.

Get Started on SOA. People Entry Point Interaction and Collaboration Services. Case for an SOA Portal

GIT TUTORIAL. Creative Software Architectures for Collaborative Projects CS 130 Donald J. Patterson

Oracle Policy Automation The modern enterprise advice platform

Version Control. Software Carpentry Github s Hello World Git For Ages 4 And Up You need source code control now

LiveNX BACKUP GUIDE. LiveAction, Inc. LIVEACTION, INC.

GIT VERSION CONTROL TUTORIAL. William Wu 2014 October 7

Introducing VMware Validated Design Use Cases. Modified on 21 DEC 2017 VMware Validated Design 4.1

Swift Web Applications on the AWS Cloud

Pre Order Magento Extension User Guide Official extension page: Pre Order

DevOps Course Content

TM DevOps Use Case. 2017TechMinfy All Rights Reserved

Operations Orchestration 10.x Flow Authoring (OO220)

TM DevOps Use Case TechMinfy All Rights Reserved

JetBrains YouTrack Comparison

X(cross) Development System make AGL application development easier. July 2017 Sébastien Douheret

Evaluation Guide for ASP.NET Web CMS and Experience Platforms

S-NET Connect. Directory. Directory. Directory

vrealize Suite Lifecycle Manager 1.0 Installation and Management vrealize Suite 2017

STREAMLINED CERTIFICATION PATHS

USER MANUAL TABLE OF CONTENTS. Easy Site Maintenance. Version: 1.0.4

Xcode Release Notes. Apple offers a number of resources where you can get Xcode development support:

& Free.

WHAT IS NEW FOR DEVS IN SP 2013

Transcription:

Improving the Magento 2 Developer Experience

Alan Kent Magento Chief Architect

Consistent Magento 2 Feedback I have been working on some larger Magento 2.1 EE solutions for a few months now and I really prefer Magento 2 over Magento 1 Getting into M2 was a huge pain but once I got past that peak it has been relatively painless. I really hate going back to Magento 1 projects for the lack of proper Composer support alone After working with M2 for a year now, I dread my work on M1 in comparison. Not that M2 doesn't have the occasional hiccup, but it is so much better.

Setup and installation Getting up to speed Identified areas for improvement Deployment Bug backlog Patching and upgrades

Great experience along the whole developer lifecycle Discover Install Design Develop Integrate Deploy Engage Maintain Monetize

Discover Install Design Develop Integrate Deploy Engage Maintain Monetize Discover Install Design Develop Integrate Deploy Engage Maintain Monetize developer.magento.com for developers, simple How To s Downloads, Docker dev box, getting started guide Frontend (JavaScript, Less/CSS, layouts, ), themes Git structure, write code, run tests, debugging, reference docs Web APIs, 3rd party extensions from Marketplace Deployment performance, Magento Cloud, automation Community, forums, GitHub issues and PRs, conferences, Test automation, upgrades, patches, release notes Selling extensions, building your personal profile

Patches and Updates Security Portal Extension Sales Dashboard How To Videos, Online Training Download Page u.magento.com @MagentoU Community Conferences Blogs developer.magento.com Dev Docs, Install Guide devdocs.magento.com @MagentoDevDocs github.com/ magento GitHub Dev Box Forums Marketplace Swagger community.magento.com @sherrierohde marketplace.magento.com @bhavinr

Discover Install Design Develop Integrate Deploy Engage Maintain Monetize Soon Online training available at no cost in December First How To videos with exercises Future Recognizing Dev Docs Recent Contributors Community Resources page UI Component Guide Online training increased focus on exercises Ebooks advanced topics by community members Curated community content, including short videos

File Sharing Reuse Magento Marketplace Repository Private Composer Repository IDE / Text Editor Version Control System PHP Development Environment Direct Access Project Source Files Deployment Process Integration Environment Production Environment Staging Environment Full-Stack Development Environment

Statis PHP Development Environment Direct Access Project Source Files Integration Environment Production Environment Staging Environment Full-Stack Development Environment

Magento Cloud

Discover Install Design Develop Integrate Deploy Engage Maintain Monetize Getting Going 1. Install Docker 2. Online site generates pre-configured download 3. Native file sharing on Mac; Unison in Windows* * Subject to change! Tried Unison, rsync, shared file system, NFS mounts and more.

Advanced multi-container setup Simple single container setup Docker Image Variations Mac and Windows configurations How To s (preloaded) Luma (preloaded) Base LAMP stack image

Discover Install Design Develop Integrate Deploy Engage Maintain Monetize Frontend WIP Current Adopt BEM (or similar) for clearer CSS class naming rationale? Simpler HTML out of the box versus easier to restyle with just CSS? Make Community (SNOW.DOG) driven Sass port standard? B E M https://en.bem.info/ Future Ongoing JavaScript review http://sass-lang.com/

Discover Install Design Develop Integrate Deploy Engage Maintain Monetize Project directory structure & git.gitignore vendor, var, pub/static Use Composer to download vendor directory contents Grunt and Gulp Great tools for Less and Sass compilation Mac: Docker 1.12 shares work + Unison internally works fine Windows: Unison file sync correctly generates inotify events in container PHP Storm Remote interpreter (ssh into Docker container) no need for local PHP on laptop, even when running unit tests

Discover Install Design Develop Integrate Deploy Engage Maintain Monetize 750+ approved extensions on marketplace.magento.com and growing Targeted most important extensions first

Magento Marketplace

Marketplace Purchase Flow $ composer require fooman/printorderpdf-m2 2.0.2 Also going to improve web install experience

Discover Install Design Develop Integrate Deploy Engage Maintain Monetize Magento Cloud deployment steps $ composer require fooman/printorderpdf-m2 2.0.2 $ magento setup:upgrade $ git add composer.json $ git commit $ git push Update: removing DB from build process for automation. There is support to dump config information to file by hand and use that file instead of DB in 2.1.3. Cleaner solution under investigation for 2.2. Deployment performance 3 areas (frontend & admin) 5 themes (4 frontend & admin) 32 locales 160 deployed packages. 160m 4GB x4 parallel 40m 4GB x15 quick 2.5m 4GB x2 compact 2.1.4? 2.2.0? 85s.3GB

Discover Install Design Develop Integrate Deploy Engage Maintain Monetize Want to engage more? Twitter (@magento, @MagentoDevDocs, @akent99, lots more) Forums - see Community on the magento.com site Conferences popping up everywhere, Meet Magento DevDocs accepting pull requests for doc improvements GitHub github.com/magento/magento2 issues for bug reports GitHub PR to fix a bug Feature ideas go in forums New Ebook initiative for those with greater commitment

Discover Install Design Develop Integrate Deploy Engage Maintain Monetize Magento is continuing to explore Improving patch release automation SemVer, upgrades, and patches Release notes Hot fixes patching patches

Setup and installation Download page Docker container Getting up to speed Free online training (Dec) Short How To videos Community content curation Identified areas for improvement Deployments Speed improvements More in 2.1.4, better in 2.2.0 Bug backlog 2.1.3 has ~90 bug fixes 2.1.4 will have more Internal process changes with renewed priority for bugs Patching and Upgrades More official APIs Improved public definition 2.2+ timeframe

Q & A

Security Many exploits are easy to avoid Set up strong passwords and change them periodically Don t use admin as your admin account make it hard to guess Install all security patches and updates immediately Subscribe to security alerts at https://magento.com/security/sign-up Check you store on http://magereport.com monthly Review all Admin user accounts monthly Verify file permissions monthly Check systems for unauthorized programs Put Magento Security Best Practices in place OWASP Developer guidance Writing code? Read OWASP Top 10 2016 Proactive Controls