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

Teaching the Next Generation...

Avatar for mikeymike mikeymike
October 01, 2017

Teaching the Next Generation...

The next generation of (PHP) developers are looking for learning resources, Universities are not able to provide the platform required to everyone, it comes at a high cost... Current free resources are lacking behind with new improvements in the language. Here's how we're filling that requirement. PHP School, a completely Open Source learning platform for "students" to push themselves, at their own pace, not driven by deadlines but topics of interest. Teach the skills that are required, show off your project with a tutorial workshop! The possibilities are endless, let's help shape the next generation.

Avatar for mikeymike

mikeymike

October 01, 2017

Other Decks in Technology

Transcript

  1. Teaching the Next Generation Michael Woodward (@mikeymikemw) Co-founder PHP School

    (@PHPSchoolTeam) Lead PHP Developer (@wearejh) First ever conference talk!
  2. • Over 75% developers have a degree * • 32%

    don’t believe it’s important * • Employer recognised • Starting point • Generally incredibly expensive (Uni) • Limited part time possibilities (Uni) * Stack Overflow Developer Survey 2017 (http://bit.ly/2rz30Wz) Formal Education
  3. • Can start at any level • Occurs without even

    realising • Certifications • Employer driven Training / Mentoring
  4. • Forever ongoing • Works in tandem with other methods

    • We believe we’re partly self taught* • Relies on personal drive • Requires good material • Generally low, but comes at personal cost * Stack Overflow Developer Survey 2017 (http://bit.ly/2rz30Wz) Self Teaching
  5. /** * @return RequestInterface[] */ public function getRequests() { $url

    = 'http://www.time.com/api/%s?iso=%s'; $params = urlencode((new \DateTime)->format(DATE_ISO8601)); return [ (new Request(sprintf($url, 'parsetime', $params)))->withMethod('GET'), (new Request(sprintf($url, 'unixtime', $params)))->withMethod('GET'), ]; }
  6. /** * @return array */ public function getArgs() { return

    [ ['arg1', 'arg2', 'arg3'], //first execution ['run2-arg1', 'run2-arg2', 'run2-arg3'] //second execution ]; }
  7. <?php print_r($argv); // output Array ( [0] => solution.php [1]

    => arg1 [2] => arg2 [3] => arg3 ) Array ( [0] => solution.php [1] => run2-arg1 [2] => run2-arg2 [3] => run2-arg3 )
  8. /** * @return ResultInterface */ public function verify() { if

    (//service is running) { return new Success('My Program Check'); } return new Failure('My Program Check', 'Program is running!'); }