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

Laravel News:
Can you be an expert developer in 10,000 hours?
Oct 26, 2016 @ 09:32:48

On the Laravel News site there's a new post that tries to answer the question "can you be a an expert developer in 10,000 hours?" This is based on some prior research (not specific to programming) that anyone can be an expert on anything in about 10 thousand hours worth of work and study on the subject. This post takes the ideas presented there and applies them to the world of development, trying to see if there's a good match.

Back in 1993, psychologists K. Anders Ericsson, Ralf Th. Krampe, and Clemens Tesch-Romer said that 10,000 hours of deliberate practice of a specific skill will make one an expert. Fast forward 15 years, and Malcolm Gladwell’s Outliers made the 10,000 hours rule famous. And in 2012, Macklemore solidified it’s fact status: it officially takes 10,000 hours to be an expert at anything.

How does this rule correlate to coding? If you’ve been working full time as a dev for five years, you’d be considered an expert by the parameters of the rule. [...] The problem with the 10,000 hours rule to excellence is that most domains aren’t static.

The article goes on to talk about the ever-changing world of technology (as compared to static activities where the rules aren't going to change). They talk about the Laravel framework and how it has evolved since beta/version 1 and how, if the 10k rule is applied, no one is an "expert" as it changes so fast. There's also a link to a study that debunked the 10k rule and so they shift to trying to answer another question: how much does it take to be just considered "good"? This is related back to software engineering and where in the process could it be that you move from "good" to "great".

Maybe the real question here is instead of trying to be an expert software developer, what aspects of your job can you improve in 20 hours of practice? Maybe the focus shouldn’t just be on the code; after all, your job is more than just staring at glowing screens all day. Identifying specific areas of weakness that you can devote time to strengthening every week may be the key to becoming that expert that you desire to be.
tagged: expert developer good tenthousand hours development opinion

Link: https://laravel-news.com/2016/10/10000-hours/

Paragon Initiative:
Let's Re-Think Security Trade-Offs
Dec 16, 2015 @ 12:38:08

On the Paragon Initiative blog there's a post that suggests changing your thinking about security trade-offs, those concessions we make every day in the development choices we make around the security of our applications versus other concerns.

The theory goes: You cannot have perfect security against all possible threats all the time for free. Usually, we expect our applications to incur a cost (usually in terms of CPU, memory, or electricity usage) in order to be secure. It seems logically correct that, if you need more security, your cost must therefore be higher.

Fortunately, this is not always true! Sometimes, given a choice between two solutions, the more secure option costs less than the insecure one.

The article points out that what we think might be a "fair tradeoff" between two choices may only look as much on the surface. They give the example of random number generation and the speed involved in using the random functions versus the true CSPRNG in PHP 7 (or the compatibility library). The article also points out that even those in the security industry make these same kinds of decisions. Essentially they lesson they're trying to suggest is that trade offs in security are usually based on the wrong assumptions or a limited knowledge of the technologies offered.

And if you reach the point where you have to make a choice between a secure option and an insecure option that might be better by some other metric, make sure you actually document and measure this trade-off. You might find that the benefit of the insecure choice is negligible, and that you therefore should opt for security.
tagged: security tradeoff performance unfair expert libsodium assumption

Link: https://paragonie.com/blog/2015/12/let-s-re-think-security-trade-offs

Vic Cherubini:
Expert PHP Deployments
Dec 03, 2014 @ 12:04:22

Vic Cherubini has a recent post on his site sharing for free the contents of a book he'd written previously about "Expert PHP Deployments":

In 2013 I wrote and self-published a book titled “Expert PHP Deployments”. While it was not a smashing success, it sold enough copies to pay for itself, and I was happy to have a published book to my name. Unfortunately, I have not had time to market it, update it, or further improve it, so I am giving it away for free. You can read the book in its entirety below or download it as a PDF.

The book covers a wide range of topics related to deploying PHP applications including:

  • Environment configuration (setting up Vagrant for the developers)
  • Working with the Phing automation tool
  • Building deployments with Capistrano
  • Creating and configuring a production server
  • Ensuring the security of the server
  • Making the actual deployment

The post has the full text of the book in one page but you can grab the PDF if you prefer that format.

tagged: expert deployment book free vagrant phing capistrano tutorial

Link: https://leftnode.org/posts/expert-php-deployments.html

SitePoint.com:
What Happened when we Talked PHP with the Experts
Apr 15, 2013 @ 09:05:56

On SitePoint.com today they've posted the transcript of a "Talk with the Experts" session they did with Lorna Mitchell (instructor of their recent OOP sessions). The transcript includes questions and answers to those in attendance as well as some good links and advice.

Last Thursday I broke with tradition slightly and ran a Talk with the Experts session in the evening (down under), making it a bit more time-zone friendly for our UK audience. It also meant that I was able to swap my usual coffee for a wine, which probably made the session run a bit more smoothly. The subject was PHP and our expert was Lorna Mitchell, tutor of Object-oriented PHP and co-author of PHP Master: Write Cutting-edge Code.

The transcript starts with a collection of some of the links provided during the discussion and then runs through the entire conversation. There's some good advice in there, especially if you're relatively new to the world of PHP object-oriented programming.

tagged: expert lornamitchell oop sitepoint transcript session

Link: http://www.sitepoint.com/what-happened-when-we-talked-php-with-the-experts

Reddit.com:
In Web Development is it better to be a Expert or All-arounder?
Oct 03, 2011 @ 12:32:16

In this new post to reddit.com the question is posed, "is it better to be an expert or all-arounder in web development?"

Is it better to be an Expert in a framework like Zend (a certified Zend Developer) or know a little bit about everything. [...] In sum, it's just taking too much time for me to master Drupal, Magento, and other popular CMS/Frameworks. So I'm wondering if I should just specialize is one framework/CMS.

Most of the comments follow along the same idea - it's good to be an "all-arounder" and know several different technologies, but it's also good to be an expert (or as close as you can) in one or more technologies. As one comment puts it:

In my experience, it's best to have a specialty, but not have a too narrow focus. There's a lot going into a web site - programming, design, usability, marketing, economy, etc. Understanding a number of those fields makes it easier to work with other people.
tagged: general knowledge webdevelopment opinion expert subject

Link:

Mashable.com:
8 Experts Break Down the Pros and Cons of Coding With PHP
Nov 23, 2010 @ 12:06:44

Mashable has posted the third part of their "PHP experts" series with a look at what the eight people on their panel think are some of the pros and cons about developing with PHP.

In recent posts, our "PHP masters" gave helpful hints for beginners as well as some pointers for intermediate and advanced coders. For the last post in this series, we've turned to the same experts with some more general questions: What makes PHP a good language? What are some of PHP's drawbacks? And what are the best apps or cleverest hacks you’ve seen made with and/or for PHP?

Some of the reasons the panels gave were some common issues you hear about with PHP every day - how easy the language makes "spaghetti coding", the low barrier to entry (both good and bad), a problem with copy and pasting and - a very good thing - the documentation the project provides. Disclaimer: I was a member of the panel.

tagged: pros cons opinion language coding expert

Link:

PHPClasses.org:
Book Review - Expert PHP 5 Tools
Aug 10, 2010 @ 08:38:38

On the PHPClasses.org blog today there's a new book review posted about a recent release from Packt Publishing - "Expert PHP 5 Tools" by Dirk Merkel.

"Expert PHP 5 Tools" is a book for every developer, beginner to expert. Even experts will find useful information between the lines. You do not really need to have much experience with PHP. If you are really beginning with the language, this book can boost your programming skills very quickly.

He mentions some of the topics in the book including continuous integration, deployment and some howto on debugging. The book won't teach you PHP, but it will introduce you to many of the tools offered to developers.

tagged: book review expert tools dirkmerkel

Link:

Ian Barber's Blog:
Book Review: Expert PHP 5 Tools
Jun 02, 2010 @ 12:08:14

Ian Barber has posted a book review to his blog today covering the Packt Publishing book Expert PHP5 Tools from Dirk Merkel.

[It] is a tour through a variety of processes and systems that the author suggests should be in use by any serious PHP developer. [...] The book is aimed squarely at developers, though most of the advice only really applies if implemented by an entire team, so the natural audience is team leads or one man bands, where decisions regarding coding standards or framework usage are under their control.

He talks about the quality of the writing and how well the topics are covered and how each chapter seems to read like an in-depth tutorial on the given topic (things like phpDocumentor, Eclipse, Subversion, frameworks and UML). He does mention one or two things he would have liked to see out of the book that weren't there like more of a description on problems/issues that popped up using the tools.

tagged: book review expert php5 tools packt

Link:

PHPClasses.org:
Book Review: Expert PHP and MySQL
May 20, 2010 @ 09:31:00

On PHPClasses.org there's a recent book review of a new offering from Wrox Publishing - "Expert PHP and MySQL" (by Andrew Curioso, Ronald Bradford, Patrick Galbraith). Udi Mosayev is the reviewer.

This book is for developers who have worked on several projects and have some good experience developing with PHP and MySQL, as well developers who develop high-demand applications or applications that handle lots of data and processing. OOP experience is recommended.

He talks about the subjects he specifically likes that the book covers like opcode caching, general caching techniques, Gearman and memcached.

The techniques discussed in this book are used by large sites that we all know like Digg, Yahoo, Facebook, YouTube and more. If its good for them, I believe it is good for you too.
tagged: book review expert mysql wrox publishing

Link:

Eirik Hoem's Blog:
Book review: Expert PHP5 Tools
May 19, 2010 @ 10:42:14

Eirik Hoem has written up a review of one of the latest PHP-related books from Packt Publishing, "Expert PHP5 Tools".

If you are working with PHP you’ll want to read this book. Covering topics like continuous integration, documentation and unit testing thoroughly it gives an insight of great value to any PHP developer.

The review touches on the contents of the book including unit testing, application deployment, version control and how to get your development set up in a more professional way overall. You can find out more about the book from the sample chapter Packt has on their site.

tagged: book review tools expert php5 tool packt

Link: