Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Ben Sampson:
Creating a decent Laravel deploy script
Jun 15, 2018 @ 13:45:38

Ben Sampson has posted a quick guide on his site sharing a deployment script for Laravel applications he's found useful.

A good deploy script can save you time and speed up your application, and it only takes a few minutes to set one up.

I have a standard deploy script which I use for almost all of my projects, which I'm going to break down and share with you.

Note: This article assumes that you're using Laravel Forge. If you're not, many of the settings will be applicable, but the setup steps may be a bit different.

He starts with a brief description of what a deployment script is and goes through the functionality he has included in his:

  • switching the site to maintenance mode
  • clearing caches
  • clearing and optimizing routes
  • clearing and optimizing the configuration
  • clearing expired password reset tokens
  • compiling front-end assets

He puts it all together into a single file that's then included in the Forge deployment process. He doesn't provide other instruction as to how to use this script with another deployment method but it can potentially be used anywhere a bash script could.

tagged: laravel deployment script steps laravelforge tutorial

Link: https://sampo.co.uk/blog/creating-a-decent-laravel-deploy-script

Tomas Vortuba:
How to Migrate From PHP CS Fixer to EasyCodingStandard in 6 Steps
Jun 12, 2018 @ 11:16:09

Continuing on in his series of migrating your PHP syntax checking over to the EasyCodingStandard, Tomas Vortuba has a new post showing how those currently using PHP CS Fixer can make the migration over to the new tool.

We looked at how to migrate from PHP_CodeSniffer to Easy Coding Standard on Monday. But what if your weapon of choice is PHP CS Fixer and you'd to run also some sniffs? There are a few simple A ? B changes, but one has to know about them or will get stuck.

ECS is a tool build on Symfony 3.4 components that combines PHP_CodeSniffer and PHP CS Fixer. [...] But what if you already have PHP CS Fixer on your project and want to switch?

He then lists out the six steps, giving a brief description of the change and any commands of code required:

  1. From String Codes to Autocompleted Classes
  2. From notPath() to skip Parameter
  3. From .php_cs to YML Config
  4. Configuring Fixer Values
  5. From no --dry-run to --fix option
  6. From @Rules to imports

You can find out more about the EasyCodingStandard on its GitHub repository.

tagged: migrate easycodingstandard steps phpcsfixer tutorial

Link: https://www.tomasvotruba.cz/blog/2018/06/07/how-to-migrate-from-php-cs-fixer-to-easy-coding-standard/

Adnan Ahmed:
Modern Backend Developer in 2018
Apr 05, 2018 @ 12:55:05

On his Medium.com site, Adnan Ahmed has shared some of his thoughts about being a modern backend developer in 2018. In it he talks about the current state of backend development and makes some recommendations for those wanting to get started.

Web development today is completely different from what it was a few years ago; there are lots of different things that can easily baffle anyone entering into the web development. It was one of the reasons that we decided to make these step by step visual guides demonstrating the bigger picture and to give anyone a clear idea about what they have to follow to be in certain roles in web development.

The post starts with a large infographic showing the basic steps and some of the related technologies and concepts to go with them. Following this they break it down into more detail in a text form with summaries attached for each. There are a lot of topics in the list (24 of them) but here's some of the highlights:

  • Learn a Language
  • Learn a Package Manager
  • Standards and Best Practices
  • Security
  • ?Learn about the Relational [and NoSQL] Databases
  • Learning a Framework
  • Caching
  • RESTful APIs
  • Different Auth Methods
  • GraphQL [and Graph Databases]

His final recommendation is one that's good for beginners and veterans in the software development world alike: "keep exploring". If you stop learning and stop trying new things you'll stagnate in your own work and career. Challenge yourself to learn something new - a new language, tool or technique - as often as possible and apply it to your work.

tagged: modern backend developer 2018 summary steps recommendations

Link: https://medium.com/tech-tajawal/modern-backend-developer-in-2018-6b3f7b5f8b9

Matt Stauffer:
Removing all Vue dependencies from Laravel
Mar 15, 2017 @ 10:17:01

In a new tutorial on his site Matt Stauffer shows how to remove the Vue.js dependencies from a standard Laravel installation. There's only a few but they're installed by default and if you're not using Vue.js they can easily be removed.

The recent versions of Laravel have come with some very minor Vue dependencies out of the box. They're easy to remove, but you may have not actually tried that yet, or you might be worried you're going to leave something sitting there. So, here's a quick tip on how to remove all Vue dependencies in a new Laravel install in a few easy steps.

The process is broken down into a few steps:

  • Install Laravel
  • Drop Vue from package.json
  • Drop the bootstrap and the sample component

The changes you'll need to make to the configuration files are included so the removal process is pretty painless.

tagged: laravel remove vuejs tutorial steps javascript

Link: https://mattstauffer.co/blog/removing-all-vue-dependencies-from-laravel

Jani Hartikainen:
5 step method to make test-driven development and unit testing easy
Oct 11, 2016 @ 10:23:08

While his examples may be in Javascript, Jani Hartikainen has posted a guide that can help any developer get started with TDD - Test Driven Development - in their new or legacy applications.

What’s the hardest thing in test-driven development or unit testing in general? Writing tests! The syntax or the tools aren’t the problem – you can learn those enough to get started in 15 minutes. The problem is how to take some vague idea in your head about what you want to do, and turn it into something that verifies some function works… before you even wrote the damn thing!

People tell you to use TDD. But how can you possibly write a test for something that doesn’t exist? I don’t even know what the function is going to do yet – or if I actually want two functions instead of one – and instead you want me to think of a test for it? Are you crazy?

How do all those people who tell you to use TDD do it? That’s the thing – test-driven development requires thinking of your code in a different way. And nobody ever tells you how to do that. Until now.

He then breaks down the process of how to turn a "vague idea" into something that can be effectively tested, noting that this change in thought process can sometimes be difficult. He then breaks it down into a set of five steps:

  • Step 1: Decide the inputs and outputs
  • Step 2: Choose function signature
  • Step 3: Decide on one tiny aspect of the functionality
  • Step 4: Implement test
  • Step 5: Implement code

While the above may seem familiar to anyone that's read about TDD before, it's interesting to see how he explains each item with an emphasis on behavior not just the code required. He ends the post with a few more smaller suggestions to help you get on the road to TDD with the same emphasis on behavior rather than functionality.

tagged: tdd testdriven development steps easy unittest behavior

Link: http://codeutopia.net/blog/2016/10/10/5-step-method-to-make-test-driven-development-and-unit-testing-easy/

Paragon Initiative:
Solve All Your Cryptography Problems in 3 Easy Steps
May 12, 2016 @ 11:55:55

On the Paragon Initiative site there's a new post that promises a way to solve all of your cryptography problems in PHP with three simple steps.

Last year, we began developing Halite, a FOSS high-level wrapper for the PHP bindings to libsodium. We use Halite extensively in our own projects (including our upcoming CMS which has quite a few of its own innovative cryptography features baked-in).

As of version 2.1.0, we are confident that Halite solves all of the application-layer cryptography problems that most PHP developers face; and it does so in three easy steps. (For transport-layer cryptography, you should still use TLS, of course.)

Their three steps to effectively using Halite and libsodium in your application are:

  • Step One: Managing Cryptography Keys
  • Step Two: Encrypting or Authenticating with Halite
  • Step Three: Decrypt or Verify

Each step comes with example code showing how to use the tool to accomplish it. There's also a few other problems that are solved by using the library including generating encrypted password hashes and whole file cryptography.

tagged: cryptography problem halite libsodium steps keys authentication encrypt decrypt

Link: https://paragonie.com/blog/2016/05/solve-all-your-cryptography-problems-in-three-easy-steps-with-halite

Knp University:
How we Upgraded to Symfony 2.7 (+ deprecation notices)
Jun 01, 2015 @ 11:17:24

The Knp University site has a new post to their blog sharing how they migrated to Symfony 2.7, the latest release of the popular PHP framework.

Symfony 2.7 - the next LTS release - came out on Saturday, with bells and whistles like 100+ new features/enhancements and a surprise new bridge component to PSR-7. So, we decided to upgrade immediately and report back. Let's go!

They walk through each stage of the process, sharing code and summaries about what changed along the way (including the update to the composer.json):

  • You need to upgrade sensio/distribution-bundle
  • You Need -with-dependencies
  • Upgrading FOSUserBundle
  • Fixing Behat 2.5

It's a pretty short list and obviously your milage may vary depending on what version you're updating from, but most recent versions shouldn't have too much trouble.

tagged: knpuniversity upgrade symfony27 guide steps fixes

Link: http://knpuniversity.com/blog/upgrading-symfony-2.7

NetTuts.com:
When You're Hacked in WordPress: Dealing With a Hacked WordPress Site
Feb 19, 2015 @ 10:50:30

On the NetTuts.com site today there's a new tutorial showing you what you can do when your WordPress site is hacked.

One of the worst things that can happen to your website just happened: It's been hacked. Somebody broke into your computer and got passwords, or your passwords were weak, or somebody exploited a security vulnerability caused by WordPress or your hosting provider, or something else happened that let a hacker hack your website...What do we do now? It's not the time to feel sorry for yourself, it's time to take action and bring back your website.

They start with a brief look at how a WordPress site might be hacked, not specific exploits, but topics and types of vulnerabilities. Following this they talk about thier recommended steps to do when the hack is discovered including:

  • Shut It Down NOW!
  • Contact Your Hosting Provider for Details
  • Find Out What Caused It and Take Action
  • Fix and Double-Check Everything and Go Live Again

Each step comes with a summary of the steps inside and even a "checklist" of things to verify before bringing the site back up.

tagged: wordpress hack remediation plan steps recommendation

Link: http://code.tutsplus.com/tutorials/when-youre-hacked-in-wordpress-dealing-with-a-hacked-wordpress-site--cms-22747

Matt Stauffer:
Upgrading from Laravel 4 to Laravel 5
Jan 19, 2015 @ 10:37:19

Matt Stauffer has posted a guide to his site to help you migrate from Laravel 4 to Laravel 5 as painlessly as possible. This is part fourteen in his overall introduction to Laravel 5 series of posts.

It's very simple to get started in a new Laravel 5 app [...] but what if you have a Laravel 4 app you want to upgrade? You might think the answer is to upgrade the Composer dependencies and then manually make the changes. Quite a few folks have created walkthroughs for that process, and it's possible—but there are a lot of little pieces you need to catch, and Taylor has said publicly that he thinks the better process is actually to start from scratch and copy your code in. So, that's what we're going to be doing.

He walks you through cloning a new Laravel 5 instance and setting up the various pieces of the application including the app itself, the domain folder and Composer dependencies. He then gets into the migration of things in the "app/" folder like controllers, database migrations and models. He also includes steps to update namespacing, handling the configuration updates, moving over user handling and any forms you may have created.

tagged: laravel4 laravel5 upgrade guide tips steps

Link: http://mattstauffer.co/blog/upgrading-from-laravel-4-to-laravel-5

PHPClasses.org:
How to Install LAMP with Samba File Sharing
Jul 03, 2013 @ 12:52:43

On PHPClasses.org there's a tutorial posted from Michael Fuhrman about getting a LAMP environment set up with Samba. This setup will allow a single server to serve up sites stored on remote machines and accessed over a Samba share.

Web sites can be served using PHP scripts stored in a different machine than the actual Web server machine. Read this article to learn how to setup a Fedora based Web server machine (without a desktop GUI) using Linux, Apache, MySQL, PHP and using Samba to serve sites using files shared by separate machines.

He steps you through the installation of everything you'll need - a VM to set up the server on in VirtualBox, configure the network interface and the packages/configuration updates you'll need to make. It's a pretty lengthy tutorial as it includes every single step you need (and sometimes its output). One note on this method - because it would be accessing the files over the network for each Apache request (possibly multiple) it will cause much more latency than if they were on the local machine.

tagged: install lamp samba fileshare tutorial steps

Link: http://www.phpclasses.org/blog/post/212-How-to-Install-LAMP-with-Samba-File-Sharing.html