{"id":3754,"date":"2018-10-08T10:30:05","date_gmt":"2018-10-08T14:30:05","guid":{"rendered":"https:\/\/2018.philadelphia.wordcamp.org\/?p=3754"},"modified":"2018-10-10T18:17:07","modified_gmt":"2018-10-10T22:17:07","slug":"advance-skills-get-started-with-developer-track","status":"publish","type":"post","link":"https:\/\/philadelphia.wordcamp.org\/2018\/advance-skills-get-started-with-developer-track\/","title":{"rendered":"Advance Your Skills &#8212; or Get Started &#8212; with the Developer Track"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-3879\" src=\"https:\/\/2018.philadelphia.wordcamp.org\/files\/2018\/10\/dev-wordcloud.jpg\" alt=\"wordcloud of developer terms from the talk titles and descriptions\" width=\"900\" height=\"450\" srcset=\"https:\/\/philadelphia.wordcamp.org\/2018\/files\/2018\/10\/dev-wordcloud.jpg 900w, https:\/\/philadelphia.wordcamp.org\/2018\/files\/2018\/10\/dev-wordcloud-300x150.jpg 300w, https:\/\/philadelphia.wordcamp.org\/2018\/files\/2018\/10\/dev-wordcloud-768x384.jpg 768w, https:\/\/philadelphia.wordcamp.org\/2018\/files\/2018\/10\/dev-wordcloud-500x250.jpg 500w\" sizes=\"auto, (max-width: 706px) 89vw, (max-width: 767px) 82vw, 740px\" \/><br \/>\nThe WordCamp Philly 2018 Developer track will offer lots of useful talks for more experienced developers, but it will have topics for relative newcomers to WordPress development as well. Learn how to leverage the inspector, find out more about testing, get workflow tips, tackle Gutenberg development, see what you can do with post meta and learn about e-commerce plugin development &#8212; all part of the Developer track.<\/p>\n<p><!--more--><\/p>\n<p>The sessions and speakers for the Developer track are:<\/p>\n\n\t<div class=\"wcorg-sessions\">\n\t\t\n\t\t\t<div id=\"wcorg-session-3385\" class=\"wcorg-session\" >\n\t\t\t\t<h2>\n\t\t\t\t\tFalling in Love with Your Development Workflow\t\t\t\t<\/h2>\n\n\t\t\t\t<div class=\"wcorg-session-description\">\n\t\t\t\t\t\t\t\t\t\t<p class=\"wcpt-session-meta\">Presented by <a href=\"https:\/\/philadelphia.wordcamp.org\/2018\/speaker\/tessa-kriesel\/\">Tessa Kriesel<\/a> in Developer.<\/p>\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/1228ee4cc3ac80fb085c80893febfdde565de132a5c1eb9bc99368e15f3b09ff?s=100&amp;d=mm&amp;r=g\" class=\"avatar avatar-100 photo\" height=\"100\" width=\"100\" \/>\t\t\t\t\t<p>Whether you are just getting started with WordPress development or you are an advanced developer, there are always things that we can do to upgrade our workflows. Creating a process for your development workflow can help you save time, better estimate projects and in turn be more profitable.<\/p>\n<p>We will talk about example workflows and things to consider to help you \u201cfall in love with your development workflow.\u201d<\/p>\n\n\t\t\t\t\t\t\t\t\t\t\t<ul class=\"wcorg-session-links\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/speakerdeck.com\/tessak22\/falling-in-love-with-your-wordpress-development-workflow\">\n\t\t\t\t\t\t\t\t\t\tSlides\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div id=\"wcorg-session-3387\" class=\"wcorg-session\" >\n\t\t\t\t<h2>\n\t\t\t\t\tGutenberg for Site Developers\t\t\t\t<\/h2>\n\n\t\t\t\t<div class=\"wcorg-session-description\">\n\t\t\t\t\t\t\t\t\t\t<p class=\"wcpt-session-meta\">Presented by <a href=\"https:\/\/philadelphia.wordcamp.org\/2018\/speaker\/michael-dance\/\">Michael Dance<\/a> in Developer.<\/p>\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/2a49cf5c5d7eb51c36c82a3d683f34430a7df2dc3dadbe3b3e22d65fedafbd0c?s=100&amp;d=mm&amp;r=g\" class=\"avatar avatar-100 photo\" height=\"100\" width=\"100\" \/>\t\t\t\t\t<p>Gutenberg is great for bloggers who want better publishing tools, but what about developers who need to craft customized CMS experiences for their clients? If you use a lot of custom fields and are horrified at the idea of giving clients any design control, this session is for you. We\u2019ll talk about:<\/p>\n<ul>\n<li>when to use Gutenberg, and when not to;<\/li>\n<li>what should be a block, and what should stay a custom field;<\/li>\n<li>how to limit a client&#8217;s color and text options;<\/li>\n<li>the magic of block templates and block locking;<\/li>\n<li>and how your theme development will change.<\/li>\n<\/ul>\n<p>Now is the chance to create new site building best practices and drive the evolution of block editing. Let&#8217;s get excited for what&#8217;s possible!<\/p>\n\n\t\t\t\t\t\t\t\t\t\t\t<ul class=\"wcorg-session-links\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"http:\/\/mikedance.com\/wp-content\/plugins\/gfsd\/slides\/index.html\">\n\t\t\t\t\t\t\t\t\t\tSlides\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div id=\"wcorg-session-3389\" class=\"wcorg-session\" >\n\t\t\t\t<h2>\n\t\t\t\t\tIntroduction to Post Meta\t\t\t\t<\/h2>\n\n\t\t\t\t<div class=\"wcorg-session-description\">\n\t\t\t\t\t\t\t\t\t\t<p class=\"wcpt-session-meta\">Presented by <a href=\"https:\/\/philadelphia.wordcamp.org\/2018\/speaker\/sal-ferrarello\/\">Sal Ferrarello<\/a> in Developer.<\/p>\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/316d9a40e8cc9d69a67cd6c5e88c08889e03731ccc8b887c5149b2b4e37c24ec?s=100&amp;d=mm&amp;r=g\" class=\"avatar avatar-100 photo\" height=\"100\" width=\"100\" \/>\t\t\t\t\t<p>One of the things that makes WordPress so powerful is its extensibility. While in some cases a post may consist of no more than a Title and Content, in other cases there may be a great deal of additional information associated with it. Posts can be enhanced with things like colors, external URLs, subtitles, and logos, all of which can be stored as WordPress post meta values. We&#8217;ll look at how to add these values and how to modify our theme to display them.<\/p>\n\n\t\t\t\t\t\t\t\t\t\t\t<ul class=\"wcorg-session-links\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/ironcodestudio.com\/presentations\/post-meta\/#\/\">\n\t\t\t\t\t\t\t\t\t\tSlides\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div id=\"wcorg-session-3393\" class=\"wcorg-session\" >\n\t\t\t\t<h2>\n\t\t\t\t\tMaking Friends with the Inspector: How Non-Developers Can Harmlessly Dig into Code for the First Time\t\t\t\t<\/h2>\n\n\t\t\t\t<div class=\"wcorg-session-description\">\n\t\t\t\t\t\t\t\t\t\t<p class=\"wcpt-session-meta\">Presented by <a href=\"https:\/\/philadelphia.wordcamp.org\/2018\/speaker\/tara-claeys\/\">Tara Claeys<\/a> in Developer.<\/p>\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/edcb7cf6ae8a2aa0b25e0334d981fce72312198ae4d76e103d6624a6b701a34f?s=100&amp;d=mm&amp;r=g\" class=\"avatar avatar-100 photo\" height=\"100\" width=\"100\" \/>\t\t\t\t\t<p>When I started learning and playing with CSS, I didn\u2019t know how to use the browser inspector (I use Chrome). The first time someone showed me how to use the Inspector, I was hooked on \u201cplaying\u201d with code and learning how css properties relate to each other.<\/p>\n<p>In this talk, we\u2019ll focus on debugging tools in the Inspector for non-developers. We\u2019ll play with the Inspector to edit some CSS on \u201clive\u201d websites without actually editing the code. We\u2019ll discuss ways to make the most of using the inspector to save time in development by visualizing changes on the front end before editing the code in the style sheet. This talk will also be helpful for designers who want to give developers specific edits, such as font size, padding and margins.<\/p>\n\n\t\t\t\t\t\t\t\t\t\t\t<ul class=\"wcorg-session-links\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.slideshare.net\/designtlc\/making-friends-with-the-inspector-how-non-developers-can-harmlessly-dig-into-code-for-the-first-time\/designtlc\/making-friends-with-the-inspector-how-non-developers-can-harmlessly-dig-into-code-for-the-first-time\">\n\t\t\t\t\t\t\t\t\t\tSlides\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div id=\"wcorg-session-3391\" class=\"wcorg-session\" >\n\t\t\t\t<h2>\n\t\t\t\t\tTesting Business Critical Features with Behat\t\t\t\t<\/h2>\n\n\t\t\t\t<div class=\"wcorg-session-description\">\n\t\t\t\t\t\t\t\t\t\t<p class=\"wcpt-session-meta\">Presented by <a href=\"https:\/\/philadelphia.wordcamp.org\/2018\/speaker\/andrew-taylor\/\">Andrew Taylor<\/a> in Developer.<\/p>\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/7088017a58a4916771faf0b5b9a20e929a385c27ca1f36d675abd552029d259e?s=100&amp;d=mm&amp;r=g\" class=\"avatar avatar-100 photo\" height=\"100\" width=\"100\" \/>\t\t\t\t\t<p>Every site seems to have that one feature that, if it breaks, would be a catastrophe. Lost profits and angry clients are something we all want to avoid.<br \/>\nIn this session, we will explore the fundamentals of Behat and look at some example tests covering critical features of WordPress sites.<\/p>\n\n\t\t\t\t\t\t\t\t\t\t\t<ul class=\"wcorg-session-links\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/docs.google.com\/presentation\/d\/1fZ6d-OZLnUrwxYgaZce-Cx_myb5V97zobmqBsO4Ke68\/edit#slide=id.g40167f6aa7_0_11\">\n\t\t\t\t\t\t\t\t\t\tSlides\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div id=\"wcorg-session-3383\" class=\"wcorg-session\" >\n\t\t\t\t<h2>\n\t\t\t\t\tTesting Your Critical JavaScript\t\t\t\t<\/h2>\n\n\t\t\t\t<div class=\"wcorg-session-description\">\n\t\t\t\t\t\t\t\t\t\t<p class=\"wcpt-session-meta\">Presented by <a href=\"https:\/\/philadelphia.wordcamp.org\/2018\/speaker\/nick-smith\/\">Nick Smith<\/a> in Developer.<\/p>\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/11e35daecaac3dad77eb15a70982fa08bf2dd02d0b6653db22c628f36618877c?s=100&amp;d=mm&amp;r=g\" class=\"avatar avatar-100 photo\" height=\"100\" width=\"100\" \/>\t\t\t\t\t<p>We&#8217;ll deep dive into testing in JavaScript. Looking at when to write a test, which type of testing approach to take, and how to be sure other developers feel comfortable adding and editing your tests in the future. We&#8217;ll start with an overview of what should be tested and then cover some of the different kinds of testing &#8211; unit, integration, and snapshot. We&#8217;ll cover when to think about mocking your functions and how to think about critical pathing future testing iterations<\/p>\n\n\t\t\t\t\t\t\t\t\t\t\t<ul class=\"wcorg-session-links\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/github.com\/fuhton\/testing-critical-js\">\n\t\t\t\t\t\t\t\t\t\tSlides\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div id=\"wcorg-session-3472\" class=\"wcorg-session\" >\n\t\t\t\t<h2>\n\t\t\t\t\tUnderstanding Merchants: Building Plugins for the E-Commerce User\t\t\t\t<\/h2>\n\n\t\t\t\t<div class=\"wcorg-session-description\">\n\t\t\t\t\t\t\t\t\t\t<p class=\"wcpt-session-meta\">Presented by <a href=\"https:\/\/philadelphia.wordcamp.org\/2018\/speaker\/beka-rice\/\">Beka Rice<\/a> in Developer.<\/p>\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/54ee2bdde1167620e273788599a3a901fa15a06d4c8db400de0c2af0a24c7032?s=100&amp;d=mm&amp;r=g\" class=\"avatar avatar-100 photo\" height=\"100\" width=\"100\" \/>\t\t\t\t\t<div>Most of the battle in building a great software product is understanding your user&#8217;s job stories: how will your software be used, and who will be using it? This session will look at best practices in building plugins for eCommerce users, from great code foundations to excellent user experience.<\/div>\n\n\t\t\t\t\t\t\t\t\t\t\t<ul class=\"wcorg-session-links\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.skyverge.com\/wp-content\/uploads\/2018\/10\/beka-rice-woosesh-2018.pdf\">\n\t\t\t\t\t\t\t\t\t\tSlides\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\t<\/div><!-- .wcorg-sessions -->\n\n\t\n<h2>Find Out More<\/h2>\n<p>Visit the <a href=\"https:\/\/2018.philadelphia.wordcamp.org\/schedule\/\">Schedule page<\/a> to see all the tracks and talks lined up for WordCamp Philly 2018. Then head over to the <a href=\"https:\/\/2018.philadelphia.wordcamp.org\/tickets\/\">Tickets page<\/a> to register for the event.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The WordCamp Philly 2018 Developer track will offer lots of useful talks for more experienced developers, but it will have topics for relative newcomers to WordPress development as well. Learn how to leverage the inspector, find out more about testing, get workflow tips, tackle Gutenberg development, see what you can do with post meta and &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/philadelphia.wordcamp.org\/2018\/session\/understanding-merchants\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Understanding Merchants: Building Plugins for the E-Commerce User&#8221;<\/span><\/a><\/p>\n","protected":false},"author":14467842,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[492853,1174011],"tags":[],"class_list":["post-3754","post","type-post","status-publish","format-standard","hentry","category-guides","category-speakers-tracks"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pheL7k-Yy","_links":{"self":[{"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/posts\/3754","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/users\/14467842"}],"replies":[{"embeddable":true,"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/comments?post=3754"}],"version-history":[{"count":4,"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/posts\/3754\/revisions"}],"predecessor-version":[{"id":3880,"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/posts\/3754\/revisions\/3880"}],"wp:attachment":[{"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/media?parent=3754"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/categories?post=3754"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/philadelphia.wordcamp.org\/2018\/wp-json\/wp\/v2\/tags?post=3754"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}