|Hi PHP fans, and welcome to your latest edition of PHP weekly news.
This week we ask the question, could you become an expert developer after 10,000 hours of practice?
We also take an in-depth look at PHP 7, almost a year after its release. Are you aware of, and using, all the great features it has?
The second beta for WordPress 4.7 has been released, ready for testing.
Plus we look at tweeting through Laravel Notifications, a new feature of Laravel 5.3 that allows you to automatically send out notification updates instantly.
And finally, the November edition of php[architect] magazine is out now, titled Moving Forward.
Enjoy your weekend folks,
Katie and Ade
We love our sponsors. Why not try them?
From our sponsors:
||Read Now. Research Note: Avoid Failure by Developing a Toolchain That Enables DevOps
(ads by LaunchBit)
From MailChimp to Sendy: How I Saved 600$ a Year
I recently moved away from MailChimp for the cron.weekly newsletter, and chose a self-hosted newsletter app called Sendy in combination with Amazon SES. In doing so, I saved over 600$ a year.
PHP Elephant: 5 Things That Make Github Fans Happy
PHP Developers are great people. They have an open-minded attitude and great conferences for networking. That being said, minorities are underrepresented in the community. So to help shed light on this issue one man went to Kickstarter for a unique idea that will surely make GitHub fans happy. Here are 5 things to know about it.
Can You Be An Expert Developer in 10,000 Hours?
Back in 1993, psychologists K. Anders Ericsson, Ralf Th. Krampe, and Clemens Tesch-Romer said that 10,000 hours of deliberate practice of a specific skill will make one an expert. Fast forward 15 years, and Malcolm Gladwell’s Outliers made the 10,000 hours rule famous. And in 2012, Macklemore solidified it’s fact status: it officially takes 10,000 hours to be an expert at anything. How does this rule correlate to coding?
Definition of “Done” In A Web Project
Here is the "definition of done in an MVC project" list.
Get Rid Of -m
I can't remember where I actually first read about this little developer's lifehack, but I've been using this for a while now and really like it: Not using the -m option anymore when committing with git.
Tutorials and Talks
Building Your Startup With PHP: Choosing and Configuring Production Hosting
This tutorial is part of the Building Your Startup With PHP series on Envato Tuts+. In this series, I'm guiding you through launching a startup from concept to reality using my Meeting Planner app as a real-life example. In this tutorial, I'll explore choosing an ideal hosting platform for Meeting Planner and the initial configuration of our server. I'll be guiding you through the process as I migrate the pre-launch website to a better production environment for our upcoming alpha launch.
Running PHP Unit Tests on Windows using AppVeyor and Chocolatey
Travis is the go to CI to run your tests on as an opensource project, but it is limited to only Linux (and with some hassle you can also run your tests on OS X). But it doesn't do Windows, and while popular opinion states you shouldn't run (PHP on) Windows, there is a significant amount of shops and developers that do. In this post I'll walk you through my configuration file for AppVeyor, a Windows CI.
Build Your OWN Switch Statment Using Laravel’s Custom Blade Directives
One of the good points of Laravel’s framework is that it allows you to make your own components, macros and directives. So today we will make use of Laravel’s Custom Blade directives and make something good.
How’d They Do It? PHPSnake: Detecting Keypresses
At a recent conference in Bulgaria, there was a hackathon for which Andrew Carter created a PHP console version of the popular “snake” game. I thought it was a really interesting concept, and since Andrew has a history of using PHP for weird things, I figured I’d demystify and explain how it was done. The original repository is here, but we’ll build a version of it from scratch in this series so no need to clone it.
Tweets Through Laravel Notifications
One of the exciting new features that came out in Laravel 5.3 was Laravel Notifications, and they allow you to send quick updates through a variety of services. As I am working on this site I wanted to automatically send a tweet whenever a new post is published and a package, for this has already been created by Christoph Rumpel. Let’s take a look at how easy it is to integrate the Twitter package and automatically tweet out new posts.
PHP 7 In-Depth Look
PHP 7 was released on 03 Dec 2015, and so many people have not yet started using or learning about the awesome features it has. I wrote this post to give a breakdown of the features released with PHP 7 for those that have not yet learnt about them and even if you know it, you might still learn something from this post.
Handling Laravel Validation Error Messages With Vue.js
In this post, I will be showing you how to handle Laravel validation error messages with Vue.js.
Recently I have been working on a new extension. It is a wrapper around libui, which is a cross platform user interface development library, that allows the creation of native look and feel interfaces in the environments it supports.
Using Namespaces and Autoloading in WordPress Plugins, Part 1
Namespaces and autoloading are not topics that are usually discussed when it comes to working with WordPress plugins. Some of this has to do with the community that's around it, some of this has to do with the versions of PHP that WordPress supports, and some of it simply has to do with the fact that not many people are talking about it. In this series, we're going to take a look at exactly what PHP namespaces are, why they are beneficial, and how to use them. Then we're going to take a look at how to use autoloaders to automatically load the files that we need without having to manually load them in our code.
Smart Bulb Controlled From a Raspberry Pi with Python - My RGB Alarm Clock
I’ve got a BeeWi Smart LED Colour Bulb. I must admit I cannot resist buying those kind of devices🙂. I can switch on/off the bulb and change the colour using its Mobile App, but it’s not fun. I want to play a little bit with the bulb.
Build Your Own Dropbox Client with the Dropbox API
There are lots of file hosting solutions out there, but few things compare to Dropbox because of its simplicity, auto-sync feature, cross-platform support and other cool features. As a PHP developer you can even take advantage of their API in order to create apps that use its full capabilities. In this article, you’ll learn how to build one such app to perform different operations in a user’s Dropbox account. You will be using the Dropbox API version 2 in this tutorial.
How to Publish New Content in Realtime with Bolt and Pusher
In traditional websites, users are expected to manually reload the page to discover new content, but this is not ideal. That is why modern websites instead push new content to their website as soon as the author hits “Publish”. You’ve probably seen this kind of real-time behaviour before on modern websites like Twitter. We can easily add this kind of real-time functionality to our own Bolt applications with a little help from Pusher, and in this tutorial I’ll show you how.
|News and Announcements
WordPress 4.7 Beta 2
WordPress 4.7 Beta 2 is now available! This software is still in development, so we don’t recommend you run it on a production site. Consider setting up a test site just to play with the new version.
PHP Conference Brazil - December 7-11th 2016, Sao Paulo
With hands-on courses, practical mini-courses, talks and keynotes, the Brazilian PHP Conference takes place over five days. For beginners and professionals, students, project managers and analysts alike. Phase Three tickets are on sale now.
php[tek] Conference - May 24-26th 2017, Atlanta
Hello and welcome to php[tek] 2017 - the premier PHP conference and annual homecoming for the PHP Community. This conference will be the 12th annual edition, and php[architect] and One for All Events are excited to bring it to Atlanta, the empire city of the South! We are currently working on big plans for the 2017 edition and will continue to update this website with more information, so for now Save The Date!
Nomad PHP US - December 15th 2016 20:00 CST
Robust Second-factor Authentication with PHP, presented by Tim Lytle. Single-use codes delivered by email and SMS, mobile phone verification using automated phone calls and installed applications, or standalone physical devices – there’s more than one way to do 2nd-factor authentication (2FA). There are benefits – and downsides – to each. Learn how each one works and what is best for you and your users. Avoid some common mistakes when rolling out 2FA, and take a look at how you can add one, or many, to your application’s login flow.
Nomad PHP EU - December 15th 2016 20:00 CET
Building for the PHP Command Line Interface, presented by Steve Grunwell. Executing PHP from the command line enables us to interact with our applications in new and interesting ways: from performing site maintenance to scaffolding new projects, CLI tools like WP-CLI, Artisan, and Drush make it easy to interface with our code without ever opening a browser. Attendees will be introduced to popular PHP CLI tools and their default capabilities. We’ll discuss characteristics of good CLI scripts, strong use-cases for writing custom commands, then write several CLI programs across different platforms.
Voices of the ElePHPant - Interview with Todd Ross
This week Cal Evans talks to the director of consumer question site Answers.com, Todd Ross.
Acquia Podcast: Meet Paul Johnson, the Face Behind @drupal, #celebr8d8, and More
I sat down with Drupal Social Media Lead, Paul Johnson at Drupal Camp London 2016, a few weeks after DrupalCon Asia in Mumbai. Paul runs the official community social media accounts on Twitter and elsewhere. I feel Paul is a kindred soul, since he and I both love highlighting and celebrating the Drupal community's stories and achievements.
MageTalk Magento Podcast #105 - SUPEEGEDDON *or* The Fourth Horseman of the SUPEEPOCALYPSE (w/ Ben Marks)
Phillip gets jiggy with Ben Marks and shakes him up over "SUPEEGEDDON".
PHP Round Table Podcast Episode 55: Acceptance Testing with Behat
We chat about the open-source Behaviour-Driven Development framework called Behat. We get a brief overview of how Behat can help us write more reliable code and also explore some best-practices when writing automated tests.
The Laracasts Snippets Episode 47: Turbolinks, the Laracasts Refresh, and My Annoying Bank
We're all over the place today. If you're walking the dog or on your way home, tune in as I discuss everything from Turbolinks, to my annoying, broken bank. I also provide a few updates on the Laracasts refresh that I've been working on for the last few months.
php[architect] November 2016 - Moving Forward
The eleventh issue of 2016 is now available! It’s time to download your copy of this issue of php[architect] magazine. This issue contains articles on the history of women in computing, using Abstract Classes/Interfaces/Traits, scaling with RabbitMQ, and custom extensions using Zephir. Our columnists have articles on Security scanners, advice for your first conference, improving your processes, understanding your editing tools, and more.
PHP True North - Browser Performance Slides
Ilia Alshanetsky's slides from the PHP True North Conference talk on Browser Performance are available here.
Benjamin Eberlei Talks About Tideways, Doctrine ORM & PHP Development
Benjamin is a Doctrine Project lead and core contributor to the project. He is the creator of Tideways.io, a robust Performance Monitoring and Profiler for PHP and HHVM. Benjamin is an open source enthusiast and loves to contribute to several projects. In addition to development, he also actively participates in PHP conferences and training sessions. Let’s start the interview!
Laravel 5.x Cookbook Kindle Edition (by Alfred Nutile, published 20th September 2016)
Leverage the amazing new features of Laravel 5.x to create cutting-edge responsive PHP applications, and create apps with inter-operability features and extend these features to your existing applications as well.
Joomla for Developers (by Alex Manfield, published 3 Oct 2016)
Joomla is a free, open source CMS (Content Management System) written in PHP. There are are almost 70 million downloads worldwide, and Joomla can help you to develop great web applications in a very short time.
Do you have a position that you would like to fill? PHP Weekly is ideal for targeting developers and the cost is only $50/week for an advert. Please let me know if you are interested by emailing me at firstname.lastname@example.org
Interesting Projects, Tools and Libraries
A simple PHP framework that is not tied to a web interface.
PRADO is a component-based and event-driven programming framework for developing web applications in PHP 5.
Commando is a PHP command line interface library that beautifies and simplifies writing PHP scripts intended for command line use.
PHP 5.x support for random_bytes() and random_int()
PHP client library for the Infusionsoft API.
PHP library - Validators for standards from ISO, International Finance, Public Administrations, GS1, Book Industry, Phone numbers & Zipcodes for many countries.
Crunz is a framework-agnostic package to schedule periodic tasks (cron jobs) in PHP using a fluent API.
A simple PHP wrapper for the fine library CasperJS designed to automate user testing against web pages.
Perceptual image hashing for PHP.
PHP library for working with recurrence rules (RRULE) and converting them in to DateTime objects.
Simple PHP 5 email class with chainable methods.
A platform to create documentation/wiki content built with PHP & Laravel.
|Please help us by clicking to our sponsor:
From our sponsors:
||Read Now. Research Note: Avoid Failure by Developing a Toolchain That Enables DevOps
(ads by LaunchBit)
So, how did you like this issue?
Protect your PHP code with SourceGuardian 10. Free trial.