Upgrade to Pro — share decks privately, control downloads, hide ads and more …

My journey to the center of PHP - ZendCon 2016

My journey to the center of PHP - ZendCon 2016

"I don't know C!" is probably one of the most common excuses that we PHP nerds give for not contributing to PHP source. And top it off with all the overly-publicized drama surrounding the PHP internals mailing list, most user-land PHP developers don't want to touch PHP source with a ten foot pole.

In this talk, I tell my story of how a plain-old user-land PHP nerd who, "doesn't know C," found himself drawn to PHP internals like a bug to a light. I was meet with a lovely, helpful community of individuals who mentored me the whole way to making PHP better. This talk will encourage and inspire you to join me on an epic journey to the center of PHP.

PHP Roundtable: https://www.phproundtable.com/
Facebook PHP SDK: https://github.com/facebook/php-graph-sdk
CSPRNG: https://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_number_generator
User-land implementation: https://github.com/SammyK/php-src-csprng
Password hash diff: https://github.com/php/php-src/pull/191/files
How to create an RFC: https://wiki.php.net/rfc/howto
CSPRNG RFC: https://wiki.php.net/rfc/easy_userland_csprng
HHVM port: https://github.com/facebook/hhvm/pull/5925

PHP source: https://github.com/php/php-src
Write tests for PHP source: http://qa.php.net/write-test.php
How to contribute to the docs: https://www.sammyk.me/how-to-contribute-to-php-documentation
Bugs: https://bugs.php.net/
PHP.net source: https://github.com/php/web-php

Sammy Kaye Powers

October 20, 2016
Tweet

More Decks by Sammy Kaye Powers

Other Decks in Programming

Transcript

  1. O C T O B E R 2 0 T

    H , 2 0 1 6 JOURNEY MY CENTER TO THE OF S A M M Y K A Y E P O W E R S @SammyK #zendcon2016 joind.in/talk/ad2c6
  2. I love tabs! this is a table… Spaces is where

    it’s at! I’m trying to upgrade bison I added array_column() Have you used Docker? Licensing in FOSS is important Let’s have a PGP key signing party! JavaScript is weird
  3. I love tabs! this is a table… Spaces is where

    it’s at! I’m trying to upgrade bison I added array_column() Have you used Docker? Licensing in FOSS is important Let’s have a PGP key signing party! JavaScript is weird
  4. SCOTT ARCISZEWSKI (AR - SIZ - ZU - SKI) @SammyK

    #zendcon2016 joind.in/talk/ad2c6
  5. rand(); mt_rand(); AUTO SEEDING USING TIMESTAMP + A FEW OTHER

    VARIABLES CSPRNG @SammyK #zendcon2016 joind.in/talk/ad2c6
  6. random bytes int min max ?? ?? ? ??!! @SammyK

    #zendcon2016 joind.in/talk/ad2c6
  7. THE P R O C E S S (REQUEST FOR

    COMMENTS) @SammyK #zendcon2016 joind.in/talk/ad2c6
  8. Everyone is smarter than me - I’ll be a laughingstock!

    Everyone is mean - look at scalar type- hints drama!
  9. LEARNED WHAT I I don’t know what I’m doing! HOW

    FEATURES ARE ADDED TO PHP THE CULTURE OF PHP INTERNALS BETTER AT C & C++ DEEPER UNDERSTANDING OF CSPRNG’S BINARY AND HEXADECIMAL NUMBER SYSTEMS HOW TO CONTRIBUTE TO THE PHP DOCS AND TONS MORE!
  10. I N T E R N A L S N

    E E D S YOU SOURCE BUGS WEBSITE TESTS @SammyK #zendcon2016 joind.in/talk/ad2c6