News Feed
Sections




News Archive
feed this:

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

Three Devs & A Maybe Podcast:
Episode #56 The SOLID Podcast
January 29, 2015 @ 12:20:03

In the latest show from the Three Devs & A Maybe podcast hosts Michael Budd, Fraser Hart, Lewis Cains and Edd Mann talk about a wide range of topics with a focus on the SOLID development principles.

This week we have a three developer podcast with discussion on a host of topics. We kick off with how Fraser has enjoyed building his first bonus slot game, written entirely in JavaScript and HTML5. Preprocessors are a huge part of the JavaScript ecosystem at this time, with so many to choose from we discuss a couple of the more popular ones. This leads on to Photoshop discussion, ReactJS, the cool features present in ES6 and how you can use them today with transpilers. Following this we move on to the SOLID principles, the overuse of inheritance, technical debt and the concept of Over-DRY vs. Software Value. This then takes us on to a strange 'rubber duck' example Edd conjured up to help try and explain the Liskov substitution and Interface segregation principles. Finally, we discuss Edd's media server setup and how he has got it to a staged that he is finally happy with it.

Other topics include things like:

You can listen to the latest show either through the in-page audio player or by downloading the mp3 of the episode. Also, be sure to subscribe to their feed of you enjoy the show!

0 comments voice your opinion now!
threedevsandamaybe podcast ep56 solid development principles

Link: http://threedevsandamaybe.com/the-solid-podcast/

SitePoint PHP Blog:
Basic TDD in Your New PHP Package
January 28, 2015 @ 12:27:17

The SitePoint PHP blog continues their "How to Build Your Own PHP Package" series with their latest post (part two of the series) covering the use of test-driven development while working on the package code.

In part 1, we set up our development environment, baked in some rules as inherited from The League, and created two sample but useless classes - Diffbot and DiffbotException. In this part, we'll get started with Test Driven Development.

He starts by briefly introducing PHPUnit, a PHP-based unit testing tool, and how to use it to generate the HTML version of the code coverage report. He helps you define a good phpunit.xml configuration file and how to execute a first sample test (code provided) from inside PHPStorm. From there he adds one some more complex testing of exception handling and checking the class types. With this foundation, he moves into the test-driven development (TDD) practices. TDD means writing the tests before writing the code to make those tests pass. He gives an example of this and shows how test abstract classes too. He then comes back around and writes the code to satisfy the test.

0 comments voice your opinion now!
tdd package bestpractice unittest testdriven development tutorial

Link: http://www.sitepoint.com/basic-tdd-new-php-package/

JetBrains Blog:
Laravel Development using PhpStorm
January 21, 2015 @ 09:03:16

The JetBrains blog has posted about an update to their popular PHPStorm IDE tool. In this new post they talk about the next level of integration they've introduced for those developing Laravel-based applications.

Last summer, we introduced support for Blade, the template language used by Laravel. Support for artisan, the command line tool for Laravel developers, is baked into PhpStorm as well. Using the Laravel plugin and the Laravel IDE helper, we can further extend PhpStorm's support for Laravel applications.

They walk you through each of these two new updates, showing what kind of features they enable and some screenshots of the interface in use. For more information and to check out other features in this new plugin/helper setup, see this documentation page.

0 comments voice your opinion now!
development phpstorm laravel plugin helper integrate

Link: http://blog.jetbrains.com/phpstorm/2015/01/laravel-development-using-phpstorm/

VG Tech Blog:
How I Set Up My Local PHP Dev Environment on Mac OSX Yosemite in Three Easy Steps
January 16, 2015 @ 11:43:51

On the VG Tech blog today Erland Wiencke has posted a quick guide to the "three easy steps" he uses to set up a PHP development environment on OSX.

When I first started writing this post, I considered giving it a title such as "How to set up local PHP development with dynamically configured mass virtual hosting on Apache 2.4″, "Quick and easy prototyping using Liip PHP, Dnsmasq or Proxy Auto Configuration" or even "The Ultimate Guide to Rapid Development on OSX 10.10″. I did not.

In my daily job as a Development Manager, I don't get to code very much, but when I do, I want to have a setup that allows me to quickly create development projects and prototypes in the ~/Sites folder and have them show up as vhosts automagically, without having to edit any configuration file(s).

His three steps do require a few prerequisites including Homebrew, but that's easy enough to set up. Here's his process:

  • Step 1 - installing (my preferred version of) PHP
  • Step 2 - enable hosting under ~/Sites
  • Step 3 - add a local DNS server

He also includes a "Step 3a" that shows how to test the installation via a simple response from each of the domains.

0 comments voice your opinion now!
development environment osx yosemite local tutorial setup configure

Link: http://tech.vg.no/2015/01/15/how-i-set-up-my-local-php-development-environment-on-mac-osx-yosemite-in-three-easy-steps/

AirPair.com:
Best Practices for Modern PHP Development
December 05, 2014 @ 09:50:22

On the AirPair site today they've posted an article from developer Brian Fenton covering several things he sees as the best practices for modern PHP development, a listing of several tool, practices and suggestions to improve your skills as a PHP developer and bring them to the next level.

He breaks it down into five main sections (each with their own subsections):

  • Setup and configuration
  • Use Composer
  • Follow good design principles
  • Object calisthenics
  • Unit testing

Some of the points made under each of these sections include suggestions about using sensible defaults, installing and using Composer, the SOLID design principles and unit testing tools. Check out the full post for more great suggestions and techniques to improve your skills.

0 comments voice your opinion now!
bestpractices modern development tips list composer objectcalisthenics unittest

Link: https://www.airpair.com/php/posts/best-practices-for-modern-php-development

SitePoint PHP Blog:
5 Easy Ways to Get Started with PHP on Vagrant
October 30, 2014 @ 10:44:49

On the SitePoint PHP blog there's a new tutorial showing you how to get started with Vagrant and PHP to create easier, more flexible development environments via virtual machines.

Vagrant is a tool for creating and managing virtual environments that help many developers not have to care about the "works on my machine…" problem. Vagrant creates reusable development systems that can be used again and again, helping you keep your system clean of too many installations.

They offer "five easy ways" to get started including various tools and services:

You can find summaries about each of the items on the list as well as links to more information in the full post.

0 comments voice your opinion now!
vagrant introduction getstarted service tool virtualmachine vm development

Link: http://www.sitepoint.com/5-easy-ways-getting-started-php-vagrant/

SitePoint PHP Blog:
18 Critical Oversights in Web Development
September 12, 2014 @ 13:09:23

The SitePoint PHP blog has a new post today sharing what they (well the author, George Fekete) see as the top 18 critical oversights common to web development in recent years. While the examples are in PHP, the principles could apply across multiple other languages.

Over the past years I had the opportunity to work on some interesting projects, complex in nature with an ongoing development, constantly upgrading, refactoring and adding new features to them. This article will cover the biggest coding oversights most PHP developers make, when dealing with medium and large projects. Oversights such as not differentiating between development environments or not implementing caching and backup. [...] The root of these problems lies mainly in developers' knowledge and experience, especially the lack of it.

He's broken them up into three different overall types: design, application and database levels. Included in his list are things like:

  • Developing with error reporting off
  • Not implementing caching
  • Not using automated tests
  • Not differentiating between read / write queries
  • Not using transactions
  • No backup
  • No monitoring

Check out the full post for the rest of the items on the list, all including examples and explanations.

0 comments voice your opinion now!
critical oversights development list top18

Link: http://www.sitepoint.com/18-critical-oversights-web-development/

Nate Turner:
Spinning Up Symfony 2 Development Environments With Vagrant
September 11, 2014 @ 10:57:13

Nate Turner has posted a tutorial to his site sharing a step-by-step method for creating Symfony2 development environments with Vagrant. Vagrant (and Puppet) allow you to create a scriptable setup process that creates a VM with the same settings every time, making it easier to destroy and recreate as needed.

When we use Vagrant to create new virtual development environments we avoid the very real possibility that we could mess up our personal development machines. People have used virtual machines for development for years. [...] Managing installed applications across a teams VMs is a pain. Why not just include a Vagrantfile and a few Puppet manifests instead? Instead of passing around a virtual machine a few gigabytes in size, just include your Vagrant and Puppet in a project's source control. That's it. In future tutorials we will be using the environment we create here to start a new virtual machine running Symfony 2 with the above command.

He walks you through each of the steps, complete with commands and configuration changes to make everything cooperate:

  • Create a Symfony Project with Composer
  • Setting up Vagrant
  • Provisioning with Puppet / Symfony's Requirements
  • Set up a new VirtualHost
  • Set Apache to run as the Vagrant user

He's also posted the complete working script over on his GitHub account.

0 comments voice your opinion now!
development environment symfony2 vagrant puppet tutorial

Link: http://nater1067.github.io/blog/2014/08/25/spinning-up-symfony-2-development-environments-with-vagrant/

NetTus.com:
Understanding PhpSpec
September 04, 2014 @ 11:09:42

The NetTuts.com site (well, TutsPlus) has posted a new tutorial that gets you more intimate with PhpSpec, a PHP-based testing tool that lets you define tests as specifications and using behavior-driven development principles. If you need an introduction to the tool, check out this other tutorial first.

If you compare PhpSpec to other testing frameworks, you will find that it is a very sophisticated and opinionated tool. One of the reasons for this, is that PhpSpec is not a testing framework like the ones you already know. Instead, it is a design tool that helps describing behavior of software. A side effect of describing the behavior of software with PhpSpec, is that you will end up with specs that will also serve as tests afterwards. In this article, we will take a look under the hood of PhpSpec and try to gain a deeper understanding of how it works and how to use it.

They provide a quick overview of some of the internals of the PhpSpec tool and a brief look at the difference between BDD (behavior-driven) and TDD (test-driven) development practices. There's also a look at how the tool differs from the popular PHP testing tool PHPUnit. Code examples are provided through out the post with simple tests, making the separation between the methods and tools easier to follow.

0 comments voice your opinion now!
tutorial phpspec testing tool bdd tdd unittest behaviordriven development

Link: http://code.tutsplus.com/tutorials/understanding-phpspec--cms-21915

Qandidate.com Blog:
How we manage our development process at Qandidate.com
August 22, 2014 @ 10:34:46

The Qandidate blog has a new post today that "pulls back the curtain" as to how they manage their development process and get their work done.

At Qandidate.com we tried a lot of different project management tools and techniques. After two years of experimenting I want to share our current process, seen from my role as product owner (PO). One reason for sharing this, is to help you improve your process, but the most important reason is to start a discussion with you based on your experience, to improve our process even more. Our main rule at Qandidate.com is to embrace change. Always be open for changes that may or may not improve your process. If a change improves the process it's a win. If you didn't try it you will never know!

They walk through the three main points over the overall flow of work there:

  • The process itself including two week sprints containing (unestimated) stories
  • A demo and stakeholders meeting showing the work they've done during the sprint and get feedback from the stakeholders
  • The stories and how they're created and when/how new ones are added (their "piano meetings").

They also include testing, both frontend and backend, and focus on small chunks of functionality instead of quick and dirty hacks. While their process won't work for every group (and is more of a "scrum-but..." setup) it is interesting to see how another group does their work.

0 comments voice your opinion now!
qandidate manage development process scrumbut stories meeting demo stakeholder

Link: http://labs.qandidate.com/blog/2014/08/21/development-process-at-qandidate-com/


Community Events





Don't see your event here?
Let us know!


interview release community conference symfony list version framework series voicesoftheelephpant laravel opinion unittest podcast api composer threedevsandamaybe language introduction configure

All content copyright, 2015 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework