Building a CI System with Free Tools and Duct Tape

January 2018

Presented by Julian Egelstaff (@jegelstaff)

Date: January 18, 2018
Time: 20:00 CET

19:00 GMT, 13:00 CST, 11:00 PST
Not sure of the time in your area? Check it on timeanddate.com

If you want to add automated testing to your development process, but don’t know where to start, I want to show you how we used GitHub, Travis-CI, Sauce Labs and Selenium Builder to create an automated continuous integration system that can put our web application through its paces after every single GitHub commit! And it’s all free. Too good to be true? No, it’s for real, and I can even prove it with screencasts of our tests running on Sauce.

Julian Egelstaff

Julian Egelstaff

Julian Egelstaff has been working in the software and IT industries for over 20 years. In 2003, he co-founded Freeform Solutions, a not-for-profit organization that builds and maintains websites for other not-for-profits. In 2016, he left Freeform to focus on managing custom database systems for select clients. Julian holds a Bachelor of Journalism and Philosophy, is a Zend Certified Engineer, and is responsible for the Formulize open source project.

PHP 7 Goodie Bag

November 2017

Presented by Cal Evans (@calevans)

Date: November 16, 2017
Time: 20:00 CET

19:00 GMT, 13:00 CST, 11:00 PST
Not sure of the time in your area? Check it on timeanddate.com

This meeting is over, but you can still purchase the video.

Purchase Video

Things change fast in the PHP world. If you don’t stop every once in a while and look around, PHP will pass you by. With regular point releases coming out, it’s tough sometimes to keep up with all the new features that the core developers are constantly giving us.

Join us as we walk through the changes that came with PHP 7.0, 7.1 and 7.2. We’ll take a look at the important changes and how you can use them in your projects. Along the way, we’ll say a fond farewell to some features that have served their purpose and are now just a fond memory…or nightmare.

Cal Evans

Many moons ago, at the tender age of 14, Cal touched his first computer. (We’re using the term “computer” loosely here, it was a TRS-80 Model 1) Since then his life has never been the same. He graduated from TRS-80s to Commodores and eventually to IBM PC’s.For the past 13 years Cal has worked with PHP and MySQL on Linux, OSX, and Windows. He has built a variety of projects ranging in size from simple web pages to multi-million dollar web applications.

When not banging his head on his monitor, attempting a blood sacrifice to get a particular piece of code working, he enjoys building and managing development teams using his widely imitated but never patented management style of “management by wandering around”.

These days, when not working with PHP, Cal can be found working on a variety of projects like Nomad PHP. He gives motivational talks to developers around the world. If you happen to meet him at a conference, don’t be afraid to buy him a shot of Bourbon.

Cal is based in Jupiter, FL where he is happily married to wife 1.32, the lovely and talented Kathy. Together they have 2 wonderful kids who were both smart enough not to pursue a job in IT.

PHP Tip of the Week: Code as Config

This week’s tip is going out to both Nomad PHP and Nomad Mage because the person who wrote the blog post is an active member of both communities.

Stephan Hochdörfer recently penned short blog post introducing an interesting concept that he and bitExpert are espousing. Forget XML (or YAML, or JSON, or any other markup language) store your config files in PHP code. This is an interesting concept to me. I’ve done this in the past but I’ve also used YAML and JSON. (I refuse to use XML for anything)

If you are curious, check out his blog post “Why using code as DI config is a win!”. It doesn’t matter if you like the idea or not. All that matters is that you understand the idea before you decide. 🙂

Don’t miss out on any PHP tips!

Did you know that we post tips like this every single week to our newsletter? Each Tuesday we send you a short post about something that we know you will find informative and useful. Fill out the form below and join the World Wide Herd today. Don’t be the only one who doesn’t know.

 


 

Deploying PHP Applications with Fabric

Oliver Davies

Speaker: Oliver Davies @opdavies

You’ve built your application, and now you just need to deploy it. There are various ways that this could be done – from (S)FTP, to SCP and rsync, to running commands like “git pull” and “composer install” directly on the server (not recommended).

My favourite deployment tool of late is Fabric – a Python based command line tool for running commands locally as well as on remote servers. It’s language and framework agnostic, and unopinionated so you define the steps and workflow that you need – from a basic few-step deployment to a full Capistrano style zero-downtime deployment.

This talk will cover some introduction to Fabric and how to write your own fabfiles, and then look at some examples of different use case deployments for your PHP project.

Atlas: A Data Mapper For Your Persistence Model

Paul Jones

Speaker: Paul M. Jones @pmjones

Atlas lets you build an OO model of your SQL tables and relationships. You can use it at the start of your project for basic CRUD operations. As you begin to need simple behaviors in your application, you can add them to the Record and RecordSet persistence model objects. Finally, when the time comes to transition to a rich domain model, you can map the Atlas persistence model objects to your domain Entities and Aggregates.