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

Thijs Feryn:
Fabrizio Branca – Talking about Magento & living in the Bay Area
Nov 30, 2015 @ 12:27:07

Thijs Feryn has posted his latest in his series of video interviews during his travels to various conferences around the world. In his latest he talks with Fabrizio Branca about Magento and what it's like living in the (San Francisco) Bay Area.

I had the pleasure of having a great conversation with Fabrizio Branca. Fabrizio was born in Italy, raised in Germany and currently lives in the Bay Area, near San Francisco. He is a well-respected member of the Magento community and has a bunch of Magento modules to his name.

It comes as no surprise that the main subject of our conversation was about Magento. [...] Fabrizio works for AOE, a German-based company that focuses on open source software. It was actually thanks to AOE that Fabrizio and his family were able to move to San Francisco. He started a team out there and has been living in the Bay Area for a number of years now. We talk about that as well.

You can watch this latest episode either through his in-page video player, directly over on YouTube or for the more audio-minded, just the recording on Soundcloud

tagged: thijsferyn interview fabriziobranca magento sanfrancisco bayarea community

Link: http://blog.feryn.eu/2015/11/30/fabrizio-branca-talking-about-magento-living-in-the-bay-area/

SitePoint PHP Blog:
Modeling an Aggregate with Eloquent
Nov 30, 2015 @ 11:49:19

The SitePoint PHP blog has a tutorial posted from Andrew Cairns showing you how to model an aggregate with Eloquent, the database access layer from the Laravel framework. The "aggregate" here is an implementation of the Aggregate design pattern, a system of smaller opbjects operating as a whole.

The Aggregate pattern is an important part of Domain Driven Design. It prevents inconsistencies and is responsible for enforcing business rules within a collection of objects. For these reasons alone, it is clear to see why it is a key component of a domain model.

[...] Mixing persistence concerns into a Domain Model can become complex and lead to a lot of bad decisions. This does not mean that it is impossible to create an Active Record Domain Model. In this article, we will work through an example of building an Aggregate which also extends Eloquent: a popular Active Record ORM.

They start with a brief summary of what the Aggregate design pattern, how its objects work together and the point of a "root" object. They help illustrate how it would in a more real-world situation with a simple blog system, starting with a simple Post object minus the Eloquent integration. From there they bring in Eloquent, showing how to extend it with the class and what features it introduces. Most of the changes they make then revolve around a "lock" on the post and where value objects and the invariant rule comes in to play.

tagged: aggregate eloquent designpattern domaindrivendesign tutorial

Link: http://www.sitepoint.com/modeling-aggregate-eloquent/

PHP 5.6.16 is available
Nov 30, 2015 @ 10:15:08

The main PHP.net site has announced the release of the latest minor version in the PHP 5.6.x series: PHP 5.6.16:

The PHP development team announces the immediate availability of PHP 5.6.16. Several bugs have been fixed. All PHP 5.6 users are encouraged to upgrade to this version.

Changes in this release include updates to Mysqlnd, PDO and OCI8 bugfixes as well as changes in the SPL (ArrayObject) and a segfault with the ini_lex function. You can get this latest release as always from either the main download page (source) or from the Windows.php.net site (Windows binaries).

tagged: language release php56 bugfix version upgrade

Link: http://php.net/index.php#id2015-11-26-2

Voices of the ElePHPant:
Interview with Brian Fenton
Nov 30, 2015 @ 09:28:16

The Voices of the ElePHPant podcast has posted their latest episode interviewing another member of the PHP community. In this new show host Cal Evans talks with Brian Fenton of the San Francisco PHP User Group

Cal and Brian talk about the talks that he presented at the North East PHP Conference about unit testing and "professional-grade software design". Brian also shares some of his recommendations about creating this professional-grade software, mostly around decoupled systems with small pieces working together. They also talk about some of the games that Brian plays, some that are a bit out of the mainstream. The episode ends with Cal and Brian discussing conference speaking and why it's a good idea to practice talks at user groups before presenting at a full conference.

You can listen to this latest episode either through the in-page audio player or by downloading the mp3 directly. If you enjoy the episode be sure to subscribe to their feed or follow them on Twitter.

tagged: voicesoftheelephpant community interview brianfenton podcast

Link: https://voicesoftheelephpant.com/2015/11/27/interview-with-brian-fenton/

Community News:
Latest PEAR Releases (11.30.2015)
Nov 30, 2015 @ 08:05:01

Latest PEAR Releases:



Lorna Mitchell:
Generating a File List for Phan
Nov 27, 2015 @ 10:38:33

Lorna Mitchell has shared a tip she's found helpful when using the phan static analysis tool for finding only PHP files via a simple grep.

Phan is the PHP Analyzer for PHP 7 code. I've been using it, partly out of curiosity, and partly to look at what the implications of upgrading my various projects will be. [...] I generated my filelist.txt files with a little help from grep - by looking for all files with opening PHP tags in, and putting that list of filenames into a file.

The phan tool is still pretty young but it provides a good example of how to use the new php-ast handling to parse and analyze PHP code.

tagged: phan file list generate quick tip grep static analysis tool

Link: http://www.lornajane.net/posts/2015/generating-a-file-list-for-phan

Ben Ramsey:
Lack of Hypermedia
Nov 27, 2015 @ 09:37:38

In a post to his site today Ben Ramsey shares his response to a question about hypermedia in APIs and how they could make the API more brittle if used incorrectly.

One of the most common problems I see in API development is lack of hypermedia, or none at all. By hypermedia, I mean links that describe relationships among data in the API. When hypermedia isn’t used, the API becomes brittle, and those building clients that talk to the API are forced to code to URLs. The URLs become an important interface to the API, and if they change, they break everything. This leads to URL-based versioning schemes, and the only upgrade path for clients is to modify their code to accommodate the new versions.

He suggests that when APIs use hypermedia they tend to no longer rely on the URLs of the resources (as they're linked from the meta in other requests). He also shares the slides for a presentation he gave at this year's True North PHP Conference with more information on the topic.

tagged: hypermedia lack url resource link

Link: https://benramsey.com/blog/2015/11/lack-of-hypermedia/

Developer Drive:
Looming PHP 7 and its effect on WordPress
Nov 26, 2015 @ 11:54:15

On the Developer Drive site they've posted an article for all of the WordPress users (and other curious folks) about the impact PHP 7 will have on the current WordPress system.

It’s no big secret now that PHP 7 is just on the horizon, and with that development comes questions on how it affects sites that run on WordPress. PHP 7 is a massive update to the server-side web development language called PHP, yet it’s also going to have an impact on any PHP-powered CMS like Drupal, Joomla and Magento.

They go through some of the major changes in PHP 7 and talk briefly about what kind of effects they'll have on those running this popular CMS including:

  • Performance upgrades
  • New and improved operators
  • Continuous 64-bit support
  • Anonymous class support

They recommend that you keep an eye out for messages from your host that they might be upgrading, backing up your site to prevent loss and update your plugins/themes prior to any PHP 7 switch over.

tagged: php7 wordpress features update recommendation hosting

Link: http://www.developerdrive.com/2015/11/looming-php-7-and-its-effect-on-wordpress/

SitePoint PHP Blog:
Liking, Watchlisting and Uploading through Vimeo’s API
Nov 26, 2015 @ 10:26:40

The SitePoint PHP blog continues their series looking at using the Vimeo API from PHP with the second part of their series, enhancing the previous functionality. In this new tutorial they show you how to hook in to the Vimeo API and "like" videos, add them to watchlists and even push them through as uploads.

In a previous post, we used the Vimeo API to build a rudimentary video application with Silex and Twig. We added login and user feed functionality and wrapped it all up with a video searching feature. In this one, we’ll add in liking a video, adding a video to a watchlist for later, and uploading videos via the Vimeo API.

You'll need to have the functionality from part one in place first. From there they take off running, showing you how to interact with videos to perform the "like" and "add to watchlist" actions. The interaction with the API is fired from Javascript on the page and passed through a backend script through to the API. They follow this with the handling for the uploads, using a standard file upload form for input with a few validations once submitted. The code then uses the library to pull in the contents of the file and push it through to the API.

tagged: vimeo api tutorial part2 series watchlist like upload video

Link: http://www.sitepoint.com/liking-watchlisting-and-uploading-through-vimeos-api/