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

Cal Evans:
What do developers look for when they scan a job ad?
Apr 28, 2016 @ 09:20:15

Recently Cal Evans took an informal survey of fellow Twitter users and asked them what they thought was most important to see in a job ad for a developer position. In this new post he shares some of the results and responses to the question (with a surprising range of answers).

In my book “Culture of Respect” I have a section on writing job ads that will attract developers. I am in the process of revising that chapter, so I thought I would ask the people who actually read the job ads what they look for. The results weren’t that surprising to me. Having read a lot of job ads though, I am guessing that the results will be surprising to some managers out there.

He's embedded the tweets themselves in the post (straight from the horse's mouth, so to speak). Responses touch on subjects like:

  • salary requirements
  • clear definition of duties
  • less "buzz words"
  • well-defined list of technologies they'll be working with

The results are interesting and a definite must read for anyone coming up with job postings for open developer roles in your company.

tagged: developer job ad posting requirement opinion twitter poll

Link: https://blog.calevans.com/2016/04/20/what-do-developers-look-for-when-they-scan-a-job-ad/

Loïc Faugeron:
The Ultimate Developer Guide to Symfony - CLI Example
Apr 07, 2016 @ 10:43:51

Loïc Faugeron has posted another in his "ultimate guide" series of posts around components in the Symfony framework. In this latest post he gives an example of using the command line component with the Console component.

In this guide we've explored the main standalone libraries (also known as "Components") provided by Symfony to help us build applications: HTTP Kernel and HTTP Foundation, Event Dispatcher, Routing and YAML, Dependency Injection and Console. We've also seen how HttpKernel enabled reusable code with Bundles, and the different ways to organize our application tree directory.

Finally we've started to put all this knowledge in practice by creating a "fortune" project with: an endpoint that allows us to submit new fortunes, a page that lists all fortunes. In this article, we're going to continue the "fortune" project by creating a command that prints the last fortune.

He walks through the use of an example repository as a base and shows:

  • the creation of the command class
  • the matching tests to ensure it's working correctly
  • building out the logic to pull in the latest fortunes

They enter the fortunes via the web interface and use the command line to output them as as simple text.

tagged: ultimate developer guide symfony commandline cli example tutorial series

Link: https://gnugat.github.io/2016/04/06/ultimate-symfony-cli-example.html

Loïc Faugeron:
The Ultimate Developer Guide to Symfony - Web Example
Mar 30, 2016 @ 10:50:17

In a previous post Loïc Faugeron showed you how to take all of the components he'd talked about so far and make a simple API endpoint. In this latest post he takes the same functionality and makes a web-facing example instead.

In this guide we've explored the main standalone libraries (also known as "Components") provided by Symfony to help us build applications: HTTP Kernel and HTTP Foundation, Event Dispatcher, Routing and YAML, Dependency Injection and Console. We've also seen how HttpKernel enabled reusable code with Bundles, and the different ways to organize our application tree directory.

Finally we've started to put all this knowledge in practice by creating a "fortune" project with an endpoint that allows us to submit new fortunes.

In this article, we're going to continue the "fortune" project by creating a page that lists all fortunes.

He goes through a similar process as before, but with a few changes to make it output a web page instead of API (JSON) results:

  • Create the Controller
  • Configure related routing
  • Create the logic to list all current fortunes
  • Putting the "wiring" in place to connect it to the database
  • Creating the view to output a simple page with the fortune list

It's that last step that's different, resulting in a simple (non-templated) page being output with HTML markup. He then refactors this to use Twig as the templating output layer, removing the output generation from the application logic.

tagged: ultimate developer guide symfony web example component combine tutorial

Link: https://gnugat.github.io/2016/03/30/ultimate-symfony-web-example.html

Loïc Faugeron:
The Ultimate Developer Guide to Symfony - API Example
Mar 25, 2016 @ 10:31:09

Loïc Faugeron has posted another article in his "Ultimate Developer Guide to Symfony" series today. In this new article he shares an API example making use of the knowledge gained from the other articles to create a simple project.

In this guide we've explored the main standalone libraries (also known as "Components") provided by Symfony to help us build applications: HTTP Kernel and HTTP Foundation, Event Dispatcher, Routing and YAML, Dependency Injection and Console.

We've also seen how HttpKernel enabled reusable code with Bundles, and the different ways to organize our application tree directory. In this article, we're going to put all this knowledge in practice by creating a "fortune" project with an endpoint that allows us to submit new fortunes.

He starts by creating the project (via Composer's create-project command), sets up a basic routing configuration and installs PHPUnit for testing. He then shows the creation of the controller - test first - to handle the "fortune" endpoint requests. He then comes back in and adds in some logic around the submission including matching tests. This is then refactored further to use Doctrine to insert the contents into a database. Additional code is provided showing how to "wire it all together" and create the database structure. The entire post takes the TDD approach so tests for all submission functionality are included.

tagged: ultimate developer guide symfony api example component combine tutorial

Link: https://gnugat.github.io/2016/03/24/ultimate-symfony-api-example.html

StackOverflow:
Developer Survey Results 2016
Mar 21, 2016 @ 09:16:15

Each year the StackOverflow site asks the developers that use its services to participate in a survey with a wide range of questions. They've just posted the results of their latest round - the 2016 edition.

This year, over fifty thousand developers shared where they work, what they build, and who they are. You are about to read the results of the most comprehensive developer survey ever conducted. We asked them 45 questions. Key highlights include the following:

For the first time, more developers are using Mac than Linux as their primary OS. Only 7% of developers identify as "rockstars". Most developers prefer dogs to cats. (But not developers in Germany.)

The results of the survey are broken up into several main sections, each with their own statistics (and graphs for some) showing the results:

  • Developer Profile (including Geography, Age, Experience and Education)
  • Technology (includes Most Loved/Dreaded/Wanted, Top Paying Tech and Development Environments)
  • Work (including Job Priorities, Salary, Teams and Remote/In-office)
  • Community (Visit Frequency, Motivation and Asking/Answering)

You can check out the details these results in the full page output.

tagged: developer survey results 2016 stackoverflow

Link: http://stackoverflow.com/research/developer-survey-2016

Loïc Faugeron:
The Ultimate Developer Guide to Symfony - Skeleton
Mar 17, 2016 @ 10:24:39

Loïc Faugeron has posted another in his series of "Ultimate Developer Guides" for a component of the Symfony framework. In the latest part of the series, he looks at the Skeleton component.

In this guide we've explored the main standalone libraries (also known as "Components") provided by Symfony to help us build applications: HTTP Kernel and HTTP Foundation, Event Dispatcher, Routing and YAML, Dependency Injection and Console. We've also seen how HttpKernel enabled reusable code with Bundles.

In this article, we're going to have a closer look at how to organise our applications directory tree.

He shows how to create a new project with the "empty edition", a skeleton for creating a basic Symfony framework with some of the basic boilerplate already in place. He shows the resulting directory tree and creates a new AppBundle for his new development. Initially he put the bundle under the main directory so he then shows how to decouple this and move bundles and libraries out into a src/ directory outside of the main application directory in the skeleton.

tagged: symfony ultimate developer guide tutorial skeleton edition empty bundle library decouple

Link: https://gnugat.github.io/2016/03/16/ultimate-symfony-skeleton.html

Paul Jones:
Why Do PHP Developers Think MVC Is An Application Architecture?
Mar 16, 2016 @ 11:49:51

In a new post to his site Paul Jones wonders out loud about why developers think MVC is an application architecture versus just a user interface pattern.

I’ve pointed out before that Model-View-Controller is a user interface pattern, not an application architecture. But why would PHP developers get the idea that MVC is an application architecture in the first place?

[...] I used to think that MVC was an application architecture. Even after reading Fowler’s POEAA and seeing that MVC was for the user interface, I figured that meant I was doing “user interface applications.” But that was not quite right; it would have been more accurate to say that I had been mixing the concerns of user interface with the underlying core application.

He suggests that the reason MVC is commonly thought of as an architecture is because of the "flow" most PHP developers follow in their learning and development practices. Starting from "page scripts" where things are all mashed together, a developer then learns about the separation of concerns and how MVC helps splitting up the application easier. Paul includes a reminder, though, that the "user interface" isn't really just the frontend parts (HTML, CSS, JS) but the HTTP request/response to and from the application.

tagged: mvc modelviewcontroller application architecture progression developer opinion

Link: http://paul-m-jones.com/archives/6288

Loïc Faugeron:
The Ultimate Developer Guide to Symfony - Bundle
Mar 09, 2016 @ 10:53:40

Loïc Faugeron is back again with another of his "Ultimate Developer Guide" tutorials in his series. In his latest he looks at the Bundle component and the functionality it introduces as it relates to some of the components already discussed (like HttpKernel).

In this guide we've explored the main standalone libraries (also known as "Components") provided by Symfony to help us build applications: HTTP Kernel and HTTP Foundation, Event Dispatcher, Routing and YAML, Dependency Injection and Console. In this article, we're going to have a closer look at how HttpKernel enables reusable code.

He starts by comparing the HttpKernel and Kernel components, laying them out so that their use makes sense later. From there he then gets into the actual Bundle component. He introduces the component, provides a code example showing its interface and talks about situations where bundles could be useful. To help make it a bit more "real world" he then shows how to create a "NanoFrameworkBundle" complete with Extension, Compiler, configuration and bundle definition examples.

tagged: ultimate developer guide symfony component bundle tutorial

Link: https://gnugat.github.io/2016/03/09/ultimate-symfony-bundle.html

CloudWays Blog:
Joomla Ace Tessa Mero Shares About PHP, Community & Offers Advice To Students
Mar 02, 2016 @ 10:48:11

The Cloudways blog has posted a new interview in their series of talks with members of the PHP community. In their latest interview they talk with Tessa Mero of the Joomla project.

Tessa Mero is Joomla Extension Directory(JED) Assistant Manager and a contributor to different PHP open source projects. She performs as a speaker in different PHP conferences and she is also an instructor and PACE-IT Mentor at Edmonds Community College. You can also contact her and she can provide you best guidance for your career. In this interview, she talks about her initial career, developers to follow in the PHP community and also gives useful consultancy to students.

In the interview Tessa answers questions about:

  • How she got started in her career as a PHP developer
  • How she became involved in conferences (both in attending and speaking)
  • Her experiences at Sunshine PHP
  • People in the community that have influenced her
  • How she sees Joomla fitting in with other similar software like WordPress and Drupal

You can read her answers to these and other questions in the full interview.

tagged: speaking developer joomla community interview tessamero cloudways conference

Link: http://www.cloudways.com/blog/interview-tessa-mero/

Loïc Faugeron:
The Ultimate Developer Guide to Symfony - Console
Mar 02, 2016 @ 09:34:21

Loïc Faugeron is back again with another in his "Ultimate Developer Guide" series each focusing on an individual component of the Symfony framework. In this new article he focuses on a very widely used component - the Console component.

In this guide we explore the standalone libraries (also known as "Components") provided by Symfony to help us build applications.

We've already seen: HTTP Kernel and HTTP Foundation, Event Dispatcher, Routing and YAML [and] Dependency Injection. We're now about to check the last one: Console.

He starts with the definition of an Application class and gives an example of using it to make a simple command line script. He talks about some of the built-in features and how to create Command classes that hold the actual functionality in your command-line tool. He finishes up the post by talking about the input, output and styling functionality also included with the component and how they can be used.

tagged: ultimate developer guide symfony component console tutorial

Link: https://gnugat.github.io/2016/03/02/ultimate-symfony-console.html