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

Zend Developer Zone:
Welcome to PHP
Nov 09, 2016 @ 11:05:02

It's no secret that PHP is one of the most popular languages for web development available. The language has enjoyed quite a bit of popularity over the years with more and more developers discovering and learning it all the time. On the Zend Developer Zone they've put together a guide just for those new to the PHP language and its community: Welcome to PHP.

Every day new developers discover the power of PHP and start looking for resources to help them learn more. It would be impossible to gather a complete list of all the resources, people, and projects that are useful to developers new to PHP. However, I decided it was time to put together a list designed to be starting point.

Ok, so all we need on the Internet is one more list. That having been said, I couldn’t think of a better way to organize this data other than into a list of lists. [...] Otherwise, here it is, presented to you in all its glory. If you like it, if you know someone new to PHP, please share it. I do hope that it is useful to anyone and everyone looking to get more involved or learn more. As the title says, Welcome to PHP!

The post is broken down into several sections (lists) including:

  • Language Resources
  • Community
  • Forums
  • Frameworks
  • News

There's plenty of links and descriptions of each resource linked to in these and a few other sections. If you're new to the world of PHP or even just looking to expand your horizons to more PHP-related things outside of your "developer bubble" check out the full post.

tagged: welcometophp language community guide introduction list resources

Link: https://devzone.zend.com/welcome-to-php/

Joe Ferguson:
User Group Advice
Mar 17, 2016 @ 12:38:36

If you've been thinking about starting a local technology user group in your area but have been looking for some guidance, you should definitely check out this recent post from Joe Ferguson with some good "dos" and "don'ts" around groups and organization.

When I introduce myself before I give a talk at a conference or a user group I mention I am a user group leader and very passionate about community. I happily receive questions from people starting new user groups or reviving old groups.

I wanted to share a recent response I sent to someone today who was asking for advice about their meetup group: Congrats on jumping into the world of running a UG. A lot of this is “in my experience” so your milage may vary

He starts with the "dos" (like keeping it small to start and making meetings consistent) and "don'ts" (not to worry about sponsors and making the talks "conference level" every month). He also includes an interesting section about "protecting" your user group, preventing things like over-zealous recruiters from coming in and giving people a bad impression of the group. He also links to lots of other resources you can read and participate in to make you a more effective user group leader.

tagged: usergroup advice organize do dont protect resources

Link: https://www.joeferguson.me/user-group-advice/

SitePoint PHP Blog:
Learn PHP 7, Find out What’s New, and More
Dec 04, 2015 @ 11:16:24

Now that PHP 7 has been released, it's time to catch up with what this new major version has to offer. In this tutorial from SitePoint you can learn about what the latest features and changes are in this release (including what happened to PHP 6).

PHP 7, the next version of the world’s most popular programming language, has been released. We’d love to shoot fireworks and get drunk with our newfound power (seriously, the language is in the true big leagues now, functionality and performance-wise) but we’re sure the rest of the internet will do this for us. Instead, we’ll focus on compiling a (perpetually up to date) list of resources to get started with version 7 – posts describing what’s new, books helping you kick things off, and more.

The post starts by answering the "what happened to PHP 6?" question, listing a few resources with some more information on the topic. Following this it gets into the "what's new" of PHP 7 including:

  • Links to guides to the features themselves
  • Tools to help you get a PHP 7 environment set up
  • Other PHP 7-related tools

There's also some other miscellaneous things mentioned including the gophp7-ext project trying to get as many extensions PHP 7 compatible and some sources for more "live" help for your questions.

tagged: php7 whatsnew features links resources tools gettingstarted gophp7ext

Link: http://www.sitepoint.com/learn-php-7-find-out-whats-new-and-more/

Dutch Web Alliance:
Continuous Learning
Nov 13, 2015 @ 10:45:57

On the Dutch Web Alliance site today Stefan Koopmanschap makes a recommendation about something that can help make you a better developer and grow in your knowledge: continuous learning.

Education. In a fast-changing environment such as the web industry, education is the single most important thing to survive. [...] We need to stay up-to-date on those subjects to ensure we keep doing the right things in the right ways. It is impossible to keep your knowledge on everything up-to-date and still have enough time to work, so we need to make choices on which topics to focus on and how to learn. In this article I’ll go into some strategies and some ways to keep the knowledge of you and your team current.

He covers lots of good topics, including a brief summary of each point as he goes (including deciding if you want to be a generalist or specialist). He goes through several places to gain this kind of knowledge including:

  • Knowledge sessions
  • Trainings
  • Code kata
  • Code reviews
  • Mentoring

...and these are just some of the places. He also points out the value of learning something on your own every day, trying out something outside of your usual solutions and remembering that "no two challenges are the same".

tagged: continuous learning resources generalist specialist knowledge

Link: https://dutchweballiance.nl/techblog/continuous-learning/

Paragon Initiative:
Secure Data Encryption in Web Applications with PHP
Aug 03, 2015 @ 10:58:47

The Paragon Initiative has posted a new white paper to their site covering secure data encryption in web applications written in PHP. The paper covers high level topics and offers some more practical suggestions about tools and guides to use in protecting your applications.

Encrypting network communications is absolutely essential to the security of anyone who wishes to use your website or application. The standard and most reliable form of network encryption is called Transport Layer Security (TLS), which was preceded by and older standard called Secure Socket Layer (SSL).

Websites that use SSL or TLS are accessible by typing https://domain.com into your browser instead of just http://domain.com. Consequently, the shorthand way to refer to HTTP over TLS is simply HTTPS. Contrasted with network cryptography, storing sensitive information is a much more challenging and interesting problem to solve, and is the focus of this paper.

Among the topics covered in the white paper are things like:

  • The flow of a HTTPS request (and if it's "fast" or not)
  • Secure password storage and handling
  • On-demand encryption/decryption
  • Cryptography library recommendations
  • Using asymmetric cryptography with public and private keys

They also point to this curated list of resources to help you learn more about general web application security including cryptography.

tagged: secure application cryptography https password library libsodium resources

Link: https://paragonie.com/white-paper/2015-secure-php-data-encryption

Loïc Chardonne:
Symfony Differently - part 1: Introduction
Jun 12, 2015 @ 08:48:26

Loïc Chardonne has kicked off a new series of posts on his site that talk about doing "Symfony Differently" and some things to consider/change to increase your Symfony application's performance.

Symfony is an amazing HTTP framework which powers high traffic websites. Performance shouldn't be a concern when first creating a website, because between the time it is launched and the time it actually has a high traffic many things that we didn't expect in the first days will happen: requirements will change, user behavior will change, even the team can change.

Optimizing applications has an impact over maintenance, and making it harder to change right from the beginning might not be the best option. However when the need of performance actually arises, we need to tackle it. This series of articles is about this specific moment, and how to tackle it in a pragmatic way.

He starts with a basic project (Acme) and works through the process of adding a new feature to it: buying an item. He talks about the team they have to work with and the architecture of his sample application (a frontend application mostly). He then works through the data structure and flow of the new feature and other functionality that should be included. He ends the post with a bit of a wrap-up of this first part and talks about the next part in the series where the application will actually be bootstrapped.

tagged: symfony performance optimize introduction project requirements team resources series part1

Link: http://gnugat.github.io/2015/06/03/sf-differently-part-1-introduction.html

Luciano Mammino:
Symfony security: authentication made simple (well, maybe!)
Jun 04, 2015 @ 10:36:41

Luciano Mammino has a quick post to his site with information that tries to help make Symfony authentication simple (well, maybe).

The Symfony2 security component has the fame of being one of the most complex in the framework. I tend to believe that's partially true, not because the component is really that complex, but because there are (really) a lot of concepts involved and it may be difficult to understand them all at once and have a clear vision as a whole.

[...] Going back to the Symfony2 security component, the point is that I found out difficult at first glance to get a clear idea of what is going on behind the scenes and what I need to write to create a custom authentication mechanism. So in this post I will try to collect few interesting resources that helped me understanding it better and a graph I drawn to resume what I learned.

He provides a good list to some of the other resources that helped him along the way including several blog posts and links to the Symfony "cookbooks" about creating custom providers. He also shares a graph showing the full flow of the Symfony authentication process including commentary about each step.

tagged: symfony authentication simple resources graph flow provider

Link: http://loige.co/symfony-security-authentication-made-simple/

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

SitePoint PHP Blog:
PHP Tips, Resources and Best Practices for 2015
Jan 05, 2015 @ 09:59:18

The SitePoint PHP blog has shared a list of their suggestions of the best tips, resources and best practices for 2015. This includes tips about your environments, tools and techniques you can use to improve your everyday work.

PHP has had many reputations over the years, but being insecure as a language never really was one of them. The core team, all its faults notwithstanding, is rather quick in pouncing on all security matters, and updating PHP to the latest version will often allay all worries. But the end users, such as we are, tend to mess things up. We don’t update, we use outdated packages or packages with holes in them we’re not aware of, we use ancient extensions… we expose ourselves to risk in some truly creative ways.

Some of the things mentioned include:

  • Keeping your PHP up to date
  • Adopt HTTPS
  • Secure your PHP
  • Stay on the Right Way
  • Avoid Bad Packages
  • Dodge common mistakes
  • Use Virtualization

Each section comes with a description and plenty of links to point you in a good direction and get you started off right for 2015.

tagged: bestpractice tips resources list 2015 tools

Link: http://www.sitepoint.com/php-tips-resources-best-practices-2015/

Phil Sturgeon:
The Tribal Framework Mindset
Jan 03, 2014 @ 10:37:15

Phil Sturgeon has an interesting post (with plenty of comments following it) about what he calls the "tribal framework mindset" - basically that certain technologies can provide a siloing effect on developers rather than engaging them as a part of the PHP community as a whole. One community centered around the Laravel framework sparked the post.

As much as I understand pushing the "Laravel Community", content, blogs, etc, can we stop this soloing of efforts and be a PHP community? [...] It should still have made sense. [...] Well, I thought so at least until I had a myriad of bizarre responses from people (mostly the well-known Laravel names) defending and picking issue with things I said, assuming instead of saying something logical I must have meant something moronic. That is rather offensive to me, so let's explain it for them.

He goes on to break it down into four different topics and summarizes how the "framework versus general PHP" point fits in - packages and functionality, developers and how they label themselves and books/other resources. He finishes off the post with a look at the "morals" behind it all and how, due to some of the "tribal bullshit" he's seen (even in his own CodeIgniter experience), developers are siloing into groups when really they should be a part of the community as a whole.

tagged: tribal framework laravel community books resources morals packages

Link: http://philsturgeon.co.uk/blog/2014/01/the-tribal-framework-mindset