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

Dylan Bridgman:
Writing highly readable code
Jul 30, 2015 @ 12:29:55

Dylan Bridgman has posted a few helpful tips on writing code that's "highly readable" and easier for both developers inside and outside the project to understand.

We are always told that commenting our code is important. Without comments other developers will not be able to understand what we did and our future selves will recoil in horror when doing maintenance. Readable code, however, is not only about comment text. More importantly it is about the style, structure and naming. If you get into the habit of writing easily readable code, you will actually find yourself writing less comments.

He breaks it up into a few different categories to keep in mind as you're writing your code:

  • the overall style of the code
  • the structure of the application (directories, libraries used, etc)
  • naming conventions for variables, methods and classes

Finally, he talks about comments and how they should fit into the ideas of readable code. He suggests that they should stay as high level as possible and explain the intent of the code, not what the code is doing (yes, there's a difference).

tagged: write readable code tips style structure naming convention comments

Link: https://medium.com/@dylanbr/writing-highly-readable-code-94da94d5d636

Luciano Mammino:
6 Rules of thumb to build blazing fast web server applications
Jul 28, 2015 @ 09:48:33

Luciano Mammino has posted six tips for blazing fast web applications to his site. These tips aren't as much specific to the code (though they're related) as they are general good practices around architecture, development work and common issues.

In this post I will try to highlight some of the most common principles that you have to take under consideration when you want to achieve a great level of performance while building a web application (specifically on the backend part). I believe the concepts discussed here can be applied to any language and framework even if, due to my specific experience, I will mention some examples, design patterns, conventions and tools that are mostly used in the PHP world.

His post lists out six main rules along with some description and links to other tools for each:

  • Avoid premature optimization
  • Do the minimum amount of work to solve the problem
  • Defer the work you don't need to do immediately
  • Use cache when you can
  • Understand and avoid the N+1 query problem with relational databases
  • Prepare your app for horizontal scalability when possible

There's lots of good tools mentioned here so find one that fits your needs and helps solve the issue. There's also some good articles mentioned, giving more information about a particular topic or other perspectives on how to solve it a different way.

tagged: tips rulesofthumb fast web application optimize work cache nplusone scale horizontal

Link: http://loige.co/6-rules-of-thumb-to-build-blazing-fast-web-applications

Acquia Blog:
Quick Tips for Writing Object Oriented Code in PHP
Jul 13, 2015 @ 10:58:14

On the Acquia blog Adam Weingarten has shared some tips for writing good (and modern) object-oriented code in PHP:

Recently I began working on a D8 module, but this isn't a story about a D8 module. The work I did provided me an opportunity to get back to my pre-Drupal object oriented (OO) roots. Writing OO code in PHP presented some curve balls I wasn’t prepared for. Here are some of the issues I encountered:

His tips touch on things like:

  • Using a code structure that can be autoloaded via PSR-4
  • Namespacing your classes
  • Working with types and type hinting
  • Using docblock comments for autocomplete in IDEs

There's also a few other quick topics he finishes the post out with: the lack of enums in PHP, working with associative arrays, no functional overloading and assigning responsibility to classes.

tagged: oop tips objectoriented code modern psr4 namespace typing docblock missing

Link: https://www.acquia.com/blog/quick-tips-for-writing-object-oriented-code-in-php/09/07/2015/3285651

Community News:
Dutch PHP Conference Video - 42 Tips & Tricks for PHPStorm
Jul 01, 2015 @ 08:40:25

The Laravel News site has linked to a presentation from Mikhail Vink at the recent Dutch PHP Conference in Amsterdam. The video they've linked to was a presentation he gave showing 42 Tips & Tricks for PHPStorm, a popular PHP IDE.

With the PhpStorm IDE buzzing in modern PHP community, there are always many neat things to learn for better synergy with your every-day tool for web development. This session will give you an insight on 42 powerful tips and tricks that will make you more productive and efficient. From lightning-smart navigation to debugging and testing hidden tricks, from making UI of the IDE even more suitable for presentations to some handy tools integrations - all of those tips will find a good use in your development workflow.

You can watch the video of the full presentation over on YouTube. The video is a full-on screencast so you get to see every move he makes including special keystrokes, general IDE functionality, settings changes and built in tools like a REST client and integration with other external tools.

tagged: dpc15 conference video mikhailvink phpstorm tips tricks

Link: https://youtu.be/J9emzl_VmIs

Matt Stauffer:
Sublime Text (3) for PHP Developers
Jun 29, 2015 @ 09:25:55

Matt Stauffer has posted a set of helpful hints for developers using Sublime Text (3) to help make them more efficient and writing code much easier.

A lot of folks in the PHP community have been checking out PHPStorm lately, including myself and most of the developers I work with. We love the code intelligence we get from PHPStorm, but still miss the speed, quick boot-up, and convenience of Sublime Text. Before I blindly assume PHPStorm is the only way to go, I wanted to see: Can I bring the things a PHP-focused IDE provides PHP developers back to Sublime Text and get the best of both worlds?

He starts with a list of "must haves" for him to be able to move from PHPStorm, features it provides that Sublime, an editor not IDE, might not come with out of the box. Most of his suggestions use the Package Control functionality in Sublime so you'll need that installed to try out his examples. He then shows several tools you can install including:

  • Sublime PHP Companion (package)
  • AllAutocomplete (package)
  • Cmd-click for function definition
  • Integrating Code sniffing and PHP_CodeSniffer
  • DocBlockr (package)
  • Git helpers

...and many more. If you're a Sublime Text user, definitely take a look at his list and see if you can find something to help make your development easier.

tagged: sublimetext phpstorm editor ide features package tips integration

Link: https://mattstauffer.co/blog/sublime-text-3-for-php-developers

SitePoint PHP Blog:
Mastering Composer – Tips and Tricks
May 26, 2015 @ 11:02:32

The SitePoint PHP blog has a new tutorial today from editor Bruno Skvorc with some tips and tricks to help you master Composer, the widely popular PHP package management tool.

Composer has revolutionized package management in PHP. It upped the reusability game and helped PHP developers all over the world generate framework agnostic, fully shareable code. But few people ever go beyond the basics, so this post will cover some useful tips and tricks.

Tips in his list include:

  • Installing Composer globally
  • Using "composer require" to install packages
  • Committing your composer.lock file
  • Options to provide profiling information
  • Speeding up Composer installations

...and many more. If you're looking to take your Composer usage and knowledge beyond the basics, definitely check out this article.

tagged: master composer tips tricks advanced list

Link: http://www.sitepoint.com/mastering-composer-tips-tricks/

Bigcommerce Engineering Blog:
PHP Memory Optimization
May 22, 2015 @ 08:18:12

On the Bigcommerce Engineering blog there's a new post sharing a few tips for memory optimization in your PHP applications. This includes tips you can implement at a code level without too many changes to the server or the need for external services.

Lately, I’ve been working on optimizing the memory of some of our backend PHP applications and wanted to share some of the tricks that I have come across, especially dealing with large set of data using PHP.

Each of their tips includes code to illustrate the technique:

  • Always cap your internal in-memory caching
  • Use layered caching
  • (Freeing) DB Resources
  • Free large blocks of memory

Some of the examples include output from the scripts showing the reduction (or non-growth) of the peak memory usage of the script.

tagged: memory optimization tips caching resources free

Link: http://bigeng.io/post/119546277718/php-memory-optimization

Acquia Blog:
Web Accessibility Tips for Developers - Part 2
May 15, 2015 @ 10:28:08

The Acquia blog has posted the second part in their series sharing tips for developers around web accessibility. In this new post they focus on page content and making things accessible.

We’re at the halfway point of what hopefully has been a helpful guide for developers to make a website accessible for all visitors. (If you missed the first part of this two-part series, please click here.) In this blog, we’ll review how instructional text, navigation, and other parts of development can allow those with blindness and low vision, deafness, and other disabilities to make full use of a website.

In the post they share helpful tips on:

  • There’s a Proper Place for Instructional Text
  • A Search that Searches When Instructed
  • Jump Directly to Main Content
  • An Easier Way to Zoom and Shrink
  • Know What to Show; What to Hide

Each item comes with a brief summary (and screenshots where it helps) to illustrate the point.

tagged: accessibility tips developers series part2 acquia

Link: https://www.acquia.com/blog/web-accessibility-developers-part-2

Acquia Blog:
Web Accessibility Tips for Developers
May 08, 2015 @ 10:20:14

The Acquia blog has posted a few helpful usability tips for developers to help you think about how users will be interacting with the systems they create. This post is the first in a four part series and kicks off the content with four good tips.

Creating the code that makes a website accessible to all visitors doesn’t have to be as time-consuming or resource-intensive as you might think. All you need to do is follow some simple steps that require a little extra time and effort. [...] It’s up to both the developer and the client to achieve site accessibility. Although they usually work together in the planning and later stages of website creation, a developer and client also have separate responsibilities in making a site accessible.

In this post they touch on points around the use of "read more", clear requirements for input and good error messaging practices.

tagged: web accessibility tips series part1 readmore, requirements, input, error, message

Link: https://www.acquia.com/blog/web-accessibility-tips-developers

Henrik Warne:
Lessons Learned in Software Development
Apr 29, 2015 @ 12:52:04

In this recent post to his site Henrik Warne has shared a list of advice around software development and some good practices he's picked up along the way.

Here is my list of heuristics and rules of thumb for software development that I have found useful over the years.

His list includes several points related to a few main categories:

  • Development
  • Troubleshooting
  • Cooperation (personal, not code)
  • Other Miscellaneous Tips

Each main topic has a few sub-topics and each of those includes a brief description (with twenty-two tips in the list overall). There's some great advice in the list as well as some good contributions in the comments, so be sure to read through those too.

tagged: lessons learned software development advice tips development troubleshooting cooperation

Link: http://henrikwarne.com/2015/04/16/lessons-learned-in-software-development/