The Knight Rider Methodology
  to Software Development

           Eli White
         http://eliw.com/
Knight Coder




“A shadowy flight into the dangerous world of a
   man who uses tools & technologies to make
            ...
Guidelines for this talk


              These are suggestions


            I won't mention all options


Use what makes ...
Editor

  Most important piece of technology!



                   Good Features:
         Code completion & Tool tips
 R...
Editor




The Knight Rider Methodology to Software Development
         Eli White - ZendCon 08 - 9/16/2008
Profiler




 Discover where you need to optimize




The Knight Rider Methodology to Software Development
         Eli Wh...
Profiler



valgrind / callgrind
                                                          xdebug



                  kca...
Load Tester




                    Stress your code
            See at what point it breaks
Document benchmarks to test i...
Load Tester

http_load



                            siege



                                                 Apache Ben...
Performance Tools




Use technologies that make performance easy




   The Knight Rider Methodology to Software Developm...
Performance Tools

                     APC – Instant Performance & Caching



      Memcached – Distributed Caching




G...
Libraries


            Don't reinvent the wheel!


  Use other coders' time as your own


     Know when to walk away tho...
Libraries


PHP:



                                                             YUI
JS:


      The Knight Rider Methodol...
Debugger




      Code is never perfect the first time


Use technology to help you find the problems




   The Knight R...
Debugger


 Zend Studio




                                                           APD

WARNING: Maybe not so easy!

 ...
Debugger




                        Don't Forget:


echo '<pre>'; var_dump($var); echo '</pre>';




  The Knight Rider M...
Debugger




                                     Web Developer Toolbar




The Knight Rider Methodology to Software Devel...
Test Suites


                    Tests are great


       Tests keep your code running


   Make writing tests easy for y...
Test Suites




                                                         PHPT



Selenium


  The Knight Rider Methodology...
Multi-Tier Servers


Have multiple servers with different purposes


 Control the flow of development & testing


        ...
Multi-Tier Servers

  Development
      Initial independent work by programmers
  Integration
      Making sure all previo...
PHP Error Reporting




               E_ALL & E_STRICT


          It is your friend. 'Nuff said.




The Knight Rider Me...
Version Control

                        Just do it!


                 So many benefits:
          Recovering from mistak...
Version Control




   CVS

The Knight Rider Methodology to Software Development
         Eli White - ZendCon 08 - 9/16/2008
Lint




Automatically find broken or suspicious code


Hook into version control for total protection




  The Knight Ri...
Lint


              php -l
                  Language syntax only




PHPLint
 Strict, Simple code required, Type validat...
CodeSniffer


Coding standards are important for teams > 1


      CodeSniffer will ensure compliance


              Hook...
GUIs


                    Yes I said GUIs


Use them to make complicated tasks easy


  DB maintenance, Version Control, ...
GUIs

DB:
                Aqua Data Studio


                                                     MySQL
                  ...
Little Things

    Don't underestimate the power of:


                            rsync
                             grep...
Hardware


                Hardware is your friend


             Much cheaper than people


Make sure you acquire anythin...
Hardware




The Knight Rider Methodology to Software Development
         Eli White - ZendCon 08 - 9/16/2008
Social Networking


                     Make contacts


You are at the best place for that right now


                  ...
Social Networking




The Knight Rider Methodology to Software Development
         Eli White - ZendCon 08 - 9/16/2008
Any Questions?


For this presentation & more:

       http://eliw.com/
Upcoming SlideShare
Loading in...5
×

Zendcon 2008 Knight Rider

1,737

Published on

As all children of the 80's know, Knight Rider was a story about an otherwise 'normal' law enforcement officer who through the use of Technology (KITT) become an unstoppable machine. In this talk find out how programmers should be using technology/tools to make themselves better and more productive.

Published in: Business, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,737
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
75
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Zendcon 2008 Knight Rider

  1. 1. The Knight Rider Methodology to Software Development Eli White http://eliw.com/
  2. 2. Knight Coder “A shadowy flight into the dangerous world of a man who uses tools & technologies to make better coders.” The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  3. 3. Guidelines for this talk These are suggestions I won't mention all options Use what makes YOU better ... experiment The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  4. 4. Editor Most important piece of technology! Good Features: Code completion & Tool tips Regular expression search & replace Context sensitive highlighting Extensibility The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  5. 5. Editor The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  6. 6. Profiler Discover where you need to optimize The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  7. 7. Profiler valgrind / callgrind xdebug kcachegrind APD The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  8. 8. Load Tester Stress your code See at what point it breaks Document benchmarks to test improvement The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  9. 9. Load Tester http_load siege Apache Bench The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  10. 10. Performance Tools Use technologies that make performance easy The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  11. 11. Performance Tools APC – Instant Performance & Caching Memcached – Distributed Caching Gearman – Parallel & Batch Processing The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  12. 12. Libraries Don't reinvent the wheel! Use other coders' time as your own Know when to walk away though The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  13. 13. Libraries PHP: YUI JS: The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  14. 14. Debugger Code is never perfect the first time Use technology to help you find the problems The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  15. 15. Debugger Zend Studio APD WARNING: Maybe not so easy! The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  16. 16. Debugger Don't Forget: echo '<pre>'; var_dump($var); echo '</pre>'; The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  17. 17. Debugger Web Developer Toolbar The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  18. 18. Test Suites Tests are great Tests keep your code running Make writing tests easy for yourself The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  19. 19. Test Suites PHPT Selenium The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  20. 20. Multi-Tier Servers Have multiple servers with different purposes Control the flow of development & testing Not always separate machines The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  21. 21. Multi-Tier Servers Development Initial independent work by programmers Integration Making sure all previous work plays well together Testing Running unit & regression tests Staging As true to production as possible for final tests Production It's live and hopefully working The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  22. 22. PHP Error Reporting E_ALL & E_STRICT It is your friend. 'Nuff said. The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  23. 23. Version Control Just do it! So many benefits: Recovering from mistakes Integrating code from multiple sources Concurrent work streams Finding old code Assigning blame The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  24. 24. Version Control CVS The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  25. 25. Lint Automatically find broken or suspicious code Hook into version control for total protection The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  26. 26. Lint php -l Language syntax only PHPLint Strict, Simple code required, Type validation The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  27. 27. CodeSniffer Coding standards are important for teams > 1 CodeSniffer will ensure compliance Hook into version control The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  28. 28. GUIs Yes I said GUIs Use them to make complicated tasks easy DB maintenance, Version Control, etc The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  29. 29. GUIs DB: Aqua Data Studio MySQL Workbench Version Control: The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  30. 30. Little Things Don't underestimate the power of: rsync grep find sed cut The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  31. 31. Hardware Hardware is your friend Much cheaper than people Make sure you acquire anything that will help The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  32. 32. Hardware The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  33. 33. Social Networking Make contacts You are at the best place for that right now Stay in touch The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  34. 34. Social Networking The Knight Rider Methodology to Software Development Eli White - ZendCon 08 - 9/16/2008
  35. 35. Any Questions? For this presentation & more: http://eliw.com/
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×