Regular Talk Session

August 4, 2016

Simple Machine Learning
10:30
Simple Machine Learning
Grafton Room

Simple Machine Learning

Want to separate the signal from the noise, but have too much input to deal with? Fed up with reading everything yourself? Mechanical Turk got you down? Then perhaps you need to apply some machine learning! In this talk, Christopher will cover some basic approaches to machine-learned classification as well as demonstrate a real-life application […]

Click for more information on 'Simple Machine Learning'

Taking the Web Offline
10:30
Taking the Web Offline
Richmond Room

Taking the Web Offline

The internet is an amazing tool for sharing information with users all over the world, but what happens when “online” isn’t a guarantee? This was the question posed after 10up built an web-based product catalog for one of the world’s leading water technology providers. With a sales team of hundreds, how could we be sure […]

Click for more information on 'Taking the Web Offline'

Functional Programming in PHP
10:30
Functional Programming in PHP
Kent Room

Functional Programming in PHP

#The Challenge Functional programming (FP) is a powerful approach to problem solving. Until now, the majority of the PHP community hasn’t realized this, but it’s actually fully available to us in PHP! When the size of PHP applications increases, they become extremely hard to maintain and reason about, especially when sharing and modifying global state. […]

Click for more information on 'Functional Programming in PHP'

Driving Technical Change
11:30
Driving Technical Change
Grafton Room

Driving Technical Change

Ever been to a conference, get inspired, try to bring what you learned back to the office, only to be stymied by co-workers who aren’t interested in rocking the status quo? It turns out that people tend to resist change in patterns, and like any pattern they can be overcome by using other people’s experiences […]

Click for more information on 'Driving Technical Change'

Simple push notifications with Ratchet and Web Sockets
11:30
Simple push notifications with Ratchet and Web Sockets
Richmond Room

Simple push notifications with Ratchet and Web Sockets

React and Ratchet are pretty cool, but it’s hard to utilize them within an existing full stack application. This talk will go through the simple steps required to get your application sending push notifications via web sockets, allowing your application to take advantage of real time updates and notifications without the need for refreshes or […]

Click for more information on 'Simple push notifications with Ratchet and Web Sockets'

File Level Manipulation in PHP
11:30
File Level Manipulation in PHP
Kent Room

File Level Manipulation in PHP

Using files as an alternative to simple database processes; PHP has many little hidden features within its vast tool set. One of these features – often overlooked – is its uncanny capability to handle complex files. Sure, everyone knows that PHP can open a file, but what can it really do with that file? What actually brought the true […]

Click for more information on 'File Level Manipulation in PHP'

Dockerizing Development
13:30
Dockerizing Development
Kent Room

Dockerizing Development

Our development team uses Vagrant-powered virtual machines for local development, a multi-tenant staging environment for client demos, and manages multiple production servers for client websites. Until recently, every system in that fragile chain was running a different version of PHP. And by “fragile chain” I mean this system caused headaches for the team. Every. Single. […]

Click for more information on 'Dockerizing Development'

Querying and Manipulating HTML using PHP
13:30
Querying and Manipulating HTML using PHP
Richmond Room

Querying and Manipulating HTML using PHP

You know PHP so why not use it locally to query and manipulate HTML files? You can use it to automate any number of tasks. In what circumstances would you want to use PHP scripts with HTML files? – cleaning up files that have been converted to HTML – automation of bulk conversions – creating […]

Click for more information on 'Querying and Manipulating HTML using PHP'

MySQL’s JSON Data TYpe
13:30
MySQL’s JSON Data TYpe
Grafton Room

MySQL’s JSON Data TYpe

MySQL 5.7 features a new JSON data type. You can now store valid JSON documents in a column. This session is about how your JSON data is stored, the function you need to fully control the data (the four built in PHP JSON functions are not up to snuff), how to use generated columns to […]

Click for more information on 'MySQL’s JSON Data TYpe'

Caching on the Bleeding Edge
14:30
Caching on the Bleeding Edge
Kent Room

Caching on the Bleeding Edge

Caching is among the most vital parts of modern system, and one of the most cost-effective ways of squeezing that extra bit of oomph from an app. Thankfully, we now have more caching techniques and tools than ever, but knowing know how they fit together is difficult. Memcached and redis are just the first step […]

Click for more information on 'Caching on the Bleeding Edge'

Probabilistic Network Analysis in Project Management
14:30
Probabilistic Network Analysis in Project Management
Richmond Room

Probabilistic Network Analysis in Project Management

What is the probability that your project will actually be completed by the time you had estimated?  The CPM/PERT method assumes that the activity times are statistically independent, which allows us to sum the individual expected activity times and variances to get an expected project time and variance. It is further assumed that the network […]

Click for more information on 'Probabilistic Network Analysis in Project Management'

Smart Homes Made Smarter With Javascript
14:30
Smart Homes Made Smarter With Javascript
Grafton Room

Smart Homes Made Smarter With Javascript

Nowadays, more and more things are getting connected on the Internet. It is now easier than it has ever been to automate some stuff around your house. It’s nice to have a button to control lights from your phone but what if you wanted to add some more advanced interactions with your other connected devices. […]

Click for more information on 'Smart Homes Made Smarter With Javascript'

Effectively Monitoring Client-Side Web Performance
16:00
Effectively Monitoring Client-Side Web Performance
Kent Room

Effectively Monitoring Client-Side Web Performance

The performance of client-side web applications directly impacts the experience of users, yet browser performance can be one of the most difficult metrics to reliably track. The best way to improve performance is to collect and monitor a wide range of these metrics over time. There are countless tools and techniques available to developers to […]

Click for more information on 'Effectively Monitoring Client-Side Web Performance'

Adventures of a Contract Developer
16:00
Adventures of a Contract Developer
Richmond Room

Adventures of a Contract Developer

Thinking about quitting that desk job and enjoying the freedom of contract development? Already have? A contract developer for 10 years, I’ll share my philosophy on contracting, some tips on how be successful, and a look at some of the clients you’ll run into. While my style of contracting may not work for you, this […]

Click for more information on 'Adventures of a Contract Developer'

Moving to NoSQL with PHP
16:00
Moving to NoSQL with PHP
Grafton Room

Moving to NoSQL with PHP

Two years ago we (Minds.com) made the brave decision to ditch MySQL and move to a ‘master-less’ NoSQL system that would horizontally scale up and down with traffic. I will cover what was wrong with MySQL and why chose to use Cassandra as our new database. The talk will feature: comparing MySQL schemas with a […]

Click for more information on 'Moving to NoSQL with PHP'

August 5, 2016

The Websockets Awaken: Using websockets in your PHP application
09:00
The Websockets Awaken: Using websockets in your PHP application
Richmond Room

The Websockets Awaken: Using websockets in your PHP application

Websockets give you real-time access to your PHP application, facilitating data transfer between the browser and the server. With the popularity of Javascript libraries like Node.js and Meteor, websockets are Hot Stuff™. But just because they’re popular with the Javascript crowd doesn’t mean PHP applications are left out in the cold. In this talk, we […]

Click for more information on 'The Websockets Awaken: Using websockets in your PHP application'

Avoiding Common Database Problems
09:00
Avoiding Common Database Problems
Grafton Room

Avoiding Common Database Problems

Few PHP developers have any formal training in Structured Query Language or set theory and are amazed they write database queries that perform poorly. This session covers basic set theory, shows how to use simple Venn Diagrams to create JOINS, how to avoid the N+! problem, data scrubbing, and how to let the database do […]

Click for more information on 'Avoiding Common Database Problems'

Monkeys in the Machine
10:00
Monkeys in the Machine
Grafton Room

Monkeys in the Machine

Sometimes, our use of PHP grows beyond the typical request/response cycle of dynamic page generation. Unfortunately, the threaded nature of PHP – and the stateless nature of the server – betrays any efforts to expand our utilization of the server. I will walk attendees through various evolutions of a specific application from synchronous execution of […]

Click for more information on 'Monkeys in the Machine'

Traits: PHP’s best feature that you aren’t using
10:00
Traits: PHP’s best feature that you aren’t using
Richmond Room

Traits: PHP’s best feature that you aren’t using

Traits were introduced all the way back in version 5.4 and added a pretty powerful option to the developer’s tool belt. However, it seems as if very few people really understand them. As a result, most people just avoid them. In this talk I will go over some of the ways that traits can be […]

Click for more information on 'Traits: PHP’s best feature that you aren’t using'

Graphs are Everywhere
10:00
Graphs are Everywhere
Kent Room

Graphs are Everywhere

No – not charts! Graphs are a data structure that are more than just the nodes and edges they contain: from mapping networks to representing arithmetic, from writing chat-bots to inferring relationships, applying graphs to a problem can quite often provide an elegant solution. In this talk, Christopher will cover the basics of graphs as […]

Click for more information on 'Graphs are Everywhere'

Creating PHP Pages Using DocBook
11:00
Creating PHP Pages Using DocBook
Kent Room

Creating PHP Pages Using DocBook

DocBook is an XML format use by many open-source companies to create technical documentation The author has 10 years experience using DocBook. This paper is based on a chapter of “DocBook for Writers” Basics of creating HTML pages using DocBook and a transformation (XSLT) Show how creating PHP pages differs Description of XSLT style sheet Show […]

Click for more information on 'Creating PHP Pages Using DocBook'

Containing Chaos with Kubernetes
11:00
Containing Chaos with Kubernetes
Grafton Room

Containing Chaos with Kubernetes

Okay, you’ve made the move to containers and can now write Dockerfiles for everything. How do you manage all of those containers?. Have you found that you traded managing individual machines for managing individual containers? Kubernetes, an Open Source container orchestration engine, can be your answer. We’ll explore Kubernetes and see how you can use […]

Click for more information on 'Containing Chaos with Kubernetes'

Integrating React.js into a PHP application
11:00
Integrating React.js into a PHP application
Richmond Room

Integrating React.js into a PHP application

React.js has taken the web development world by storm, and for good reason: React offers a declarative, component-oriented approach to building highly-scalable, high-performance web UIs. But how can we take advantage of a JavaScript library like React in our server-side PHP applications? In this talk I’ll cover the different ways React.js can be integrated into […]

Click for more information on 'Integrating React.js into a PHP application'

Hacking the Human Interface
13:00
Hacking the Human Interface
Grafton Room

Hacking the Human Interface

Humans are the most complex systems we work with on a regular basis. That complexity produces a huge variety of behaviors that can seem entirely unpredictable on the surface. Thankfully we have a powerful tool in our arsenal that we can use to understand and share the experiences of our fellow humans. Let’s talk about […]

Click for more information on 'Hacking the Human Interface'

The API Toolbox
13:00
The API Toolbox
Kent Room

The API Toolbox

If you’re building and consuming APIs, there are some tools you should know about. HTTP tunnels make it easy to point callbacks and webhooks to your local development server. Proxy services can help capture, debug, and replay API traffic. External monitors can track uptime for the APIs you use – or provide – and verify […]

Click for more information on 'The API Toolbox'

Building a social network with Minds
13:00
Building a social network with Minds
Richmond Room

Building a social network with Minds

Minds is a free & open source social networking platform which powers Minds.com. The framework features a modular system which allows for developers to write extensible plugins. Plugins consist of both a front-end ‘Javascript’ client and a backend PHP (OOP) public API. Minds is a scalable system built for high traffic networks and is powered […]

Click for more information on 'Building a social network with Minds'

Testing and You: The Art of Software Communication
14:00
Testing and You: The Art of Software Communication
Kent Room

Testing and You: The Art of Software Communication

Often developers are taught how to test their code, but it is much less often that we discuss “the why”. This talk, a shallow dive across a wide variety of testing techniques and pitfalls, seeks to unify and clarify all the different ways we test under a common umbrella. Armed with “the why”, or more […]

Click for more information on 'Testing and You: The Art of Software Communication'

Professional Development for Professional Developers
14:00
Professional Development for Professional Developers
Richmond Room

Professional Development for Professional Developers

The best and worst part about our chosen vocation is that there’s an endless amount of stuff to see, learn, and try and nowhere near enough time in which to do it. In an industry where “the new hotness” changes every week, what hope does a developer have of keeping up? This talk focuses on […]

Click for more information on 'Professional Development for Professional Developers'

Robocalypse: Controlling Robots With Kinect Gestures
14:00
Robocalypse: Controlling Robots With Kinect Gestures
Grafton Room

Robocalypse: Controlling Robots With Kinect Gestures

Building Arduino robots is pretty cool, but being able to program a robot in Javascript is even better. However, what is even more awesome is the ability to control a robot with Kinect gestures. This presentation provides attendees with a brief introduction to the awesome world of NodeJs, Johnny-Five and Socket.io. The session will deliver an overview of a […]

Click for more information on 'Robocalypse: Controlling Robots With Kinect Gestures'