SlideShare une entreprise Scribd logo
1  sur  92
Development Workflow
for PHP/Joomla! developers




                             Radek Suski
Development Workflow
for PHP/Joomla! developers




                             Radek Suski
Things we need
Things we need
Things we need
Things we need
Things we need
What is an IDE?
                 Integrated development environment




An integrated development environment
(IDE) is a software application that
provides comprehensive facilities to
computer programmers for software
development.... (wikipedia)
Code Completion
         aka IntelliSense™
Code Completion
         aka IntelliSense™
Code Completion
         aka IntelliSense™
Code Completion
         aka IntelliSense™
Code Completion
         aka IntelliSense™
Code Completion
         aka IntelliSense™
Code Completion
         aka IntelliSense™
Code Completion
         aka IntelliSense™
Code Inspection
Code Inspection




             expected semicolon
Code Inspection




       expected “}”
Code Inspection



              Cannot instantiate
              abstract class “Test”
Code Inspection



             Member has private
             access
Code Inspection



                  Method has private
                  access
Code Inspection
Code Inspection


            Unused variable / parameter
Code Inspection




       Undefined variable (wrong scope)
Code Inspection




                  Spell checker
Code Inspection




                  Interface’s method
                   not implemented
Refactoring
                      goodbye “copy & paste”




Copy and paste programming is (...)
frequently symptomatic of a lack of
programming competence, or an
insufficiently expressive development
environment, as subroutines or libraries
would normally be used instead... (wikipedia)
Refactoring
      goodbye “copy & paste”
Refactoring
      goodbye “copy & paste”
Refactoring
      goodbye “copy & paste”
Refactoring
      goodbye “copy & paste”
Reformat Code
Reformat Code
Reformat Code
Reformat Code
Deployment
Deployment

Configure “Path Mapping”
Deployment

Configure “Path Mapping”

     Save your local file
Deployment

Configure “Path Mapping”

     Save your local file

         Changes are in your test environment
Deployment

Configure “Path Mapping”

     Save your local file

         Changes are in your test environment



      Access through:
      - FTP
      - SFTP
      - Local file system
Debugger
    a real time saver
Debugger
           a real time saver

Sent data i.e via $_GET / $_POST
Debugger
           a real time saver

Sent data i.e via $_GET / $_POST

      data is passing several function before
Debugger
           a real time saver

Sent data i.e via $_GET / $_POST

      data is passing several function before

          at the end we received other data as expected
Debugger
           a real time saver

Sent data i.e via $_GET / $_POST

      data is passing several function before

          at the end we received other data as expected



     How the hell this could happen?!
Debugger
    a real time saver
Debugger
    a real time saver




                   Breakpoint
Debugger
    a real time saver


                 Frames: call history
Debugger
     a real time saver


  All defined vars
Debugger
    a real time saver

   Watches list: observed vars
Debugger
    a real time saver
Debugger
    a real time saver
Debugger
    a real time saver
Debugger
    a real time saver
High Resolution
High Resolution
High Resolution
High Resolution
Which IDE?
Which IDE?
   Eclipse / php-Eclipse
Which IDE?
       Eclipse / php-Eclipse

Free
Which IDE?
      Eclipse / php-Eclipse

Free
Powerful
Which IDE?
       Eclipse / php-Eclipse

Free
Powerful
Universally usable
Which IDE?
      Eclipse / php-Eclipse

Free
Powerful
Universally usable
JavaScript +XML + CSS + Debugger
Which IDE?
      Eclipse / php-Eclipse

Free
Powerful
Universally usable
JavaScript +XML + CSS + Debugger
Available for every platform
Which IDE?
      Eclipse / php-Eclipse

Free
Powerful
Universally usable
JavaScript +XML + CSS + Debugger
Available for every platform


         Very complex
Which IDE?
      Eclipse / php-Eclipse

Free
Powerful
Universally usable
JavaScript +XML + CSS + Debugger
Available for every platform


         Very complex
         Everything has to be installed manually 
Which IDE?
      Eclipse / php-Eclipse

Free
Powerful
Universally usable
JavaScript +XML + CSS + Debugger
Available for every platform


         Very complex
         Everything has to be installed manually 
         Tends to s... up after updates
Which IDE?
Which IDE?
   NetBeans
Which IDE?
       NetBeans

Free
Which IDE?
      NetBeans

Free
Powerful
Which IDE?
       NetBeans

Free
Powerful
Universally usable
Which IDE?
       NetBeans

Free
Powerful
Universally usable
Most features build-in
Which IDE?
       NetBeans

Free
Powerful
Universally usable
Most features build-in
Available for every platform
Which IDE?
       NetBeans

Free
Powerful
Universally usable
Most features build-in
Available for every platform
Lightweight
Which IDE?
       NetBeans

Free
Powerful
Universally usable
Most features build-in
Available for every platform
Lightweight

          XSLT Support (?)
Which IDE?
       NetBeans

Free
Powerful
Universally usable
Most features build-in
Available for every platform
Lightweight

          XSLT Support (?)
          Ugly UI (IMHO)
Which IDE?
Which IDE?
   PhpStorm
Which IDE?
      PhpStorm

Powerful
Which IDE?
      PhpStorm

Powerful
JavaScript + XML + CSS + debugger + LESS
Which IDE?
      PhpStorm

Powerful
JavaScript + XML + CSS + debugger + LESS
Inline language injection
Which IDE?
      PhpStorm

Powerful
JavaScript + XML + CSS + debugger + LESS
Inline language injection
Most features build-in
Which IDE?
      PhpStorm

Powerful
JavaScript + XML + CSS + debugger + LESS
Inline language injection
Most features build-in
Available for every platform
Which IDE?
      PhpStorm

Powerful
JavaScript + XML + CSS + debugger + LESS
Inline language injection
Most features build-in
Available for every platform
Pseudo-UML tool
Which IDE?
      PhpStorm

Powerful
JavaScript + XML + CSS + debugger + LESS
Inline language injection
Most features build-in
Available for every platform
Pseudo-UML tool

         Not free
Which IDE?
      PhpStorm

Powerful
JavaScript + XML + CSS + debugger + LESS
Inline language injection
Most features build-in
Available for every platform
Pseudo-UML tool

         Not free
         Requires lot of performance
Questions?
Thank You very much ☺



 Twitter, Facebook & Co:

 http://radek.sigsiu.net

Contenu connexe

Tendances

Selenium Interview Questions And Answers | Selenium Interview Questions | Sel...
Selenium Interview Questions And Answers | Selenium Interview Questions | Sel...Selenium Interview Questions And Answers | Selenium Interview Questions | Sel...
Selenium Interview Questions And Answers | Selenium Interview Questions | Sel...
Simplilearn
 

Tendances (18)

Designing Auto Generated Codes
Designing Auto Generated CodesDesigning Auto Generated Codes
Designing Auto Generated Codes
 
Lecture 12
Lecture 12Lecture 12
Lecture 12
 
DBI for Parrot and Perl 6 Lightning Talk 2007
DBI for Parrot and Perl 6 Lightning Talk 2007DBI for Parrot and Perl 6 Lightning Talk 2007
DBI for Parrot and Perl 6 Lightning Talk 2007
 
Robot Framework Introduction & Sauce Labs Integration
Robot Framework Introduction & Sauce Labs IntegrationRobot Framework Introduction & Sauce Labs Integration
Robot Framework Introduction & Sauce Labs Integration
 
QA Fest 2018. Adam Stasiak. React Native is Coming – the story of hybrid mobi...
QA Fest 2018. Adam Stasiak. React Native is Coming – the story of hybrid mobi...QA Fest 2018. Adam Stasiak. React Native is Coming – the story of hybrid mobi...
QA Fest 2018. Adam Stasiak. React Native is Coming – the story of hybrid mobi...
 
Practices and tools for building better API (JFall 2013)
Practices and tools for building better API (JFall 2013)Practices and tools for building better API (JFall 2013)
Practices and tools for building better API (JFall 2013)
 
Intro Of Selenium
Intro Of SeleniumIntro Of Selenium
Intro Of Selenium
 
iOS Development at Scale @Chegg
iOS Development at Scale @CheggiOS Development at Scale @Chegg
iOS Development at Scale @Chegg
 
IntelliJ IDEA Architecture and Performance
IntelliJ IDEA Architecture and PerformanceIntelliJ IDEA Architecture and Performance
IntelliJ IDEA Architecture and Performance
 
All a flutter about Flutter.io
All a flutter about Flutter.ioAll a flutter about Flutter.io
All a flutter about Flutter.io
 
Apache Cordova In Action
Apache Cordova In ActionApache Cordova In Action
Apache Cordova In Action
 
Massive applications in node.js
Massive applications in node.jsMassive applications in node.js
Massive applications in node.js
 
Practices and Tools for Building Better APIs
Practices and Tools for Building Better APIsPractices and Tools for Building Better APIs
Practices and Tools for Building Better APIs
 
Apigility & Restfull APIs
Apigility & Restfull APIsApigility & Restfull APIs
Apigility & Restfull APIs
 
Apigility introduction v2 (glasgow php)
Apigility introduction v2 (glasgow php)Apigility introduction v2 (glasgow php)
Apigility introduction v2 (glasgow php)
 
Microservices for building an IDE – The innards of JetBrains Rider - TechDays...
Microservices for building an IDE – The innards of JetBrains Rider - TechDays...Microservices for building an IDE – The innards of JetBrains Rider - TechDays...
Microservices for building an IDE – The innards of JetBrains Rider - TechDays...
 
Java notes
Java notesJava notes
Java notes
 
Selenium Interview Questions And Answers | Selenium Interview Questions | Sel...
Selenium Interview Questions And Answers | Selenium Interview Questions | Sel...Selenium Interview Questions And Answers | Selenium Interview Questions | Sel...
Selenium Interview Questions And Answers | Selenium Interview Questions | Sel...
 

En vedette

Security talk: Fortifying your Joomla! website
Security talk: Fortifying your Joomla! websiteSecurity talk: Fortifying your Joomla! website
Security talk: Fortifying your Joomla! website
Sigsiu.NET
 
Sobi pro flexibility by design
Sobi pro flexibility by designSobi pro flexibility by design
Sobi pro flexibility by design
Sigsiu.NET
 

En vedette (8)

License models for Joomla! extension developers
License models for Joomla! extension developersLicense models for Joomla! extension developers
License models for Joomla! extension developers
 
Security talk: Fortifying your Joomla! website
Security talk: Fortifying your Joomla! websiteSecurity talk: Fortifying your Joomla! website
Security talk: Fortifying your Joomla! website
 
Sobi pro flexibility by design
Sobi pro flexibility by designSobi pro flexibility by design
Sobi pro flexibility by design
 
Building partnerships - Clare McCluskey
Building partnerships - Clare McCluskeyBuilding partnerships - Clare McCluskey
Building partnerships - Clare McCluskey
 
Librarians As Researchers-Miggie Pickton
Librarians As Researchers-Miggie PicktonLibrarians As Researchers-Miggie Pickton
Librarians As Researchers-Miggie Pickton
 
Grammar: Spelling
Grammar: SpellingGrammar: Spelling
Grammar: Spelling
 
Getting Started as a Researcher by Carolynn Rankin
Getting Started as a Researcher by Carolynn RankinGetting Started as a Researcher by Carolynn Rankin
Getting Started as a Researcher by Carolynn Rankin
 
Organise a successful Joomla! Event
Organise a successful Joomla! EventOrganise a successful Joomla! Event
Organise a successful Joomla! Event
 

Similaire à Development workflow

Native client (Евгений Эльцин)
Native client (Евгений Эльцин)Native client (Евгений Эльцин)
Native client (Евгений Эльцин)
Ontico
 
Hacking with Reverse Engineering and Defense against it
Hacking with Reverse Engineering and Defense against it Hacking with Reverse Engineering and Defense against it
Hacking with Reverse Engineering and Defense against it
Prakashchand Suthar
 
Dennis Benkert - The Dog Ate My Deployment - Symfony Usergroup Berlin March ...
Dennis Benkert -  The Dog Ate My Deployment - Symfony Usergroup Berlin March ...Dennis Benkert -  The Dog Ate My Deployment - Symfony Usergroup Berlin March ...
Dennis Benkert - The Dog Ate My Deployment - Symfony Usergroup Berlin March ...
D
 

Similaire à Development workflow (20)

Introduction to Software Development
Introduction to Software DevelopmentIntroduction to Software Development
Introduction to Software Development
 
Optimized Cross Platform Development
Optimized Cross Platform DevelopmentOptimized Cross Platform Development
Optimized Cross Platform Development
 
Porting your favourite cmdline tool to Android
Porting your favourite cmdline tool to AndroidPorting your favourite cmdline tool to Android
Porting your favourite cmdline tool to Android
 
Advanced Eclipse Workshop (held at IPC2010 -spring edition-)
Advanced Eclipse Workshop (held at IPC2010 -spring edition-)Advanced Eclipse Workshop (held at IPC2010 -spring edition-)
Advanced Eclipse Workshop (held at IPC2010 -spring edition-)
 
Build Great Networked APIs with Swift, OpenAPI, and gRPC
Build Great Networked APIs with Swift, OpenAPI, and gRPCBuild Great Networked APIs with Swift, OpenAPI, and gRPC
Build Great Networked APIs with Swift, OpenAPI, and gRPC
 
NDC Sydney 2019 - Microservices for building an IDE – The innards of JetBrain...
NDC Sydney 2019 - Microservices for building an IDE – The innards of JetBrain...NDC Sydney 2019 - Microservices for building an IDE – The innards of JetBrain...
NDC Sydney 2019 - Microservices for building an IDE – The innards of JetBrain...
 
VB2013 - Security Research and Development Framework
VB2013 - Security Research and Development FrameworkVB2013 - Security Research and Development Framework
VB2013 - Security Research and Development Framework
 
Native client (Евгений Эльцин)
Native client (Евгений Эльцин)Native client (Евгений Эльцин)
Native client (Евгений Эльцин)
 
Ide
IdeIde
Ide
 
Comment améliorer le quotidien des Développeurs PHP ?
Comment améliorer le quotidien des Développeurs PHP ?Comment améliorer le quotidien des Développeurs PHP ?
Comment améliorer le quotidien des Développeurs PHP ?
 
Hacking with Reverse Engineering and Defense against it
Hacking with Reverse Engineering and Defense against it Hacking with Reverse Engineering and Defense against it
Hacking with Reverse Engineering and Defense against it
 
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentEclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
 
Native App + Wep App = ? (Hybrid Applications)
Native App + Wep App = ? (Hybrid Applications)Native App + Wep App = ? (Hybrid Applications)
Native App + Wep App = ? (Hybrid Applications)
 
API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)
 
One App, Multiple Platforms
One App, Multiple PlatformsOne App, Multiple Platforms
One App, Multiple Platforms
 
Embarcadero's Connected Development
Embarcadero's Connected DevelopmentEmbarcadero's Connected Development
Embarcadero's Connected Development
 
Survival Strategies for API Documentation: Presentation to Southwestern Ontar...
Survival Strategies for API Documentation: Presentation to Southwestern Ontar...Survival Strategies for API Documentation: Presentation to Southwestern Ontar...
Survival Strategies for API Documentation: Presentation to Southwestern Ontar...
 
Intro to Reverse Engineering
Intro to Reverse EngineeringIntro to Reverse Engineering
Intro to Reverse Engineering
 
Dennis Benkert - The Dog Ate My Deployment - Symfony Usergroup Berlin March ...
Dennis Benkert -  The Dog Ate My Deployment - Symfony Usergroup Berlin March ...Dennis Benkert -  The Dog Ate My Deployment - Symfony Usergroup Berlin March ...
Dennis Benkert - The Dog Ate My Deployment - Symfony Usergroup Berlin March ...
 
The Modern Developer Toolbox
The Modern Developer ToolboxThe Modern Developer Toolbox
The Modern Developer Toolbox
 

Dernier

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 

Development workflow

Notes de l'éditeur

  1. \n
  2. - Few months ago at Facebook \n- If I would had to works with N++ or other notepad ...\n
  3. - Don’t get me wrong - N++ is nice notepad\n- From what I read has also lot of nice features\n- Even some kind of autocomplete\n- But this is still just a notepad\n
  4. Let’t take a look what we need\n- Server is meant to be a Software Server\n- Better an other machine\n- Especially if you work at Windows\n- Two servers - even better\n- Large monitor - will show later\n- And above all - good IDE \n
  5. Let’t take a look what we need\n- Server is meant to be a Software Server\n- Better an other machine\n- Especially if you work at Windows\n- Two servers - even better\n- Large monitor - will show later\n- And above all - good IDE \n
  6. Let’t take a look what we need\n- Server is meant to be a Software Server\n- Better an other machine\n- Especially if you work at Windows\n- Two servers - even better\n- Large monitor - will show later\n- And above all - good IDE \n
  7. Let’t take a look what we need\n- Server is meant to be a Software Server\n- Better an other machine\n- Especially if you work at Windows\n- Two servers - even better\n- Large monitor - will show later\n- And above all - good IDE \n
  8. Despite the definition:\n- It’s a tool which will steal lot of your time at the beginning \n- And then will allow you to spare a lot of time\n- It’s a tool which will steal lot of your time at the beginning \n- And then will allow you to spare a lot of time\n\n
  9. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  10. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  11. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  12. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  13. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  14. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  15. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  16. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  17. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  18. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  19. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  20. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  21. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  22. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  23. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  24. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  25. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  26. - AC for own code\n- Requires discipline - comment our method\n- Support while writing args (when more than 5 very helpful)\n- Support for own XML (need schema definition)\n- Of course HTML as well\n- For me important - XSLT support / also self defined templates and vars\n- Also support for JavaScript\n\n.... another important feature is ...\n
  27. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  28. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  29. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  30. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  31. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  32. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  33. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  34. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  35. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  36. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  37. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  38. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  39. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  40. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  41. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  42. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  43. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  44. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  45. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  46. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  47. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  48. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  49. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  50. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  51. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  52. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  53. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  54. - A good IDE is supervising our work\n- Able to find possible problems\n- From the very obvious ...\n- ... to more complex\n\n.... but alos not that obvious errors like\n
  55. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  56. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  57. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  58. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  59. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  60. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  61. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  62. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  63. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  64. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  65. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  66. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  67. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  68. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  69. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  70. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  71. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  72. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  73. - unused var or arg\n- or other way; using not defined var\n- or even spell checking\n- and a structure control as well\n
  74. - I guess we all know “copy & paste” is bad\n- But it used to happen that we are using this method\n- But not only, sometimes we writing similar code manually\n- At some point we realize it could be done better\n- It needs time\n- not necessarily \n\n
  75. - I guess we all know “copy & paste” is bad\n- But it used to happen that we are using this method\n- But not only, sometimes we writing similar code manually\n- At some point we realize it could be done better\n- It needs time\n- not necessarily \n\n
  76. - I guess we all know “copy & paste” is bad\n- But it used to happen that we are using this method\n- But not only, sometimes we writing similar code manually\n- At some point we realize it could be done better\n- It needs time\n- not necessarily \n\n
  77. - I guess we all know “copy & paste” is bad\n- But it used to happen that we are using this method\n- But not only, sometimes we writing similar code manually\n- At some point we realize it could be done better\n- It needs time\n- not necessarily \n\n
  78. - I guess we all know “copy & paste” is bad\n- But it used to happen that we are using this method\n- But not only, sometimes we writing similar code manually\n- At some point we realize it could be done better\n- It needs time\n- not necessarily \n\n
  79. - I guess we all know “copy & paste” is bad\n- But it used to happen that we are using this method\n- But not only, sometimes we writing similar code manually\n- At some point we realize it could be done better\n- It needs time\n- not necessarily \n\n
  80. - I guess we all know “copy & paste” is bad\n- But it used to happen that we are using this method\n- But not only, sometimes we writing similar code manually\n- At some point we realize it could be done better\n- It needs time\n- not necessarily \n\n
  81. - I guess we all know “copy & paste” is bad\n- But it used to happen that we are using this method\n- But not only, sometimes we writing similar code manually\n- At some point we realize it could be done better\n- It needs time\n- not necessarily \n\n
  82. - Sometimes it happens that our code isn’t formatted well\n- Or we have to keep certain coding standards / Joomla! is using PEAR std i.e.\n- Most IDE’s has a very helpful tool\n- Additionally it can be configured or even imported\n
  83. - Sometimes it happens that our code isn’t formatted well\n- Or we have to keep certain coding standards / Joomla! is using PEAR std i.e.\n- Most IDE’s has a very helpful tool\n- Additionally it can be configured or even imported\n
  84. - Sometimes it happens that our code isn’t formatted well\n- Or we have to keep certain coding standards / Joomla! is using PEAR std i.e.\n- Most IDE’s has a very helpful tool\n- Additionally it can be configured or even imported\n
  85. - Sometimes it happens that our code isn’t formatted well\n- Or we have to keep certain coding standards / Joomla! is using PEAR std i.e.\n- Most IDE’s has a very helpful tool\n- Additionally it can be configured or even imported\n
  86. - Sometimes it happens that our code isn’t formatted well\n- Or we have to keep certain coding standards / Joomla! is using PEAR std i.e.\n- Most IDE’s has a very helpful tool\n- Additionally it can be configured or even imported\n
  87. - Sometimes it happens that our code isn’t formatted well\n- Or we have to keep certain coding standards / Joomla! is using PEAR std i.e.\n- Most IDE’s has a very helpful tool\n- Additionally it can be configured or even imported\n
  88. - Sometimes it happens that our code isn’t formatted well\n- Or we have to keep certain coding standards / Joomla! is using PEAR std i.e.\n- Most IDE’s has a very helpful tool\n- Additionally it can be configured or even imported\n
  89. - Sometimes it happens that our code isn’t formatted well\n- Or we have to keep certain coding standards / Joomla! is using PEAR std i.e.\n- Most IDE’s has a very helpful tool\n- Additionally it can be configured or even imported\n
  90. - In most cases we have a local project and a testing environment \n- So we have to upload our changes to the test env: time consuming and annoying\n- It doesn’t have to be\n- After each “save” in local project files are uploaded\n- Before I got this I was trying to manage it with SVN - Sobi2 revision > 5000\n\ndeployment is very important for ....\n
  91. - In most cases we have a local project and a testing environment \n- So we have to upload our changes to the test env: time consuming and annoying\n- It doesn’t have to be\n- After each “save” in local project files are uploaded\n- Before I got this I was trying to manage it with SVN - Sobi2 revision > 5000\n\ndeployment is very important for ....\n
  92. - In most cases we have a local project and a testing environment \n- So we have to upload our changes to the test env: time consuming and annoying\n- It doesn’t have to be\n- After each “save” in local project files are uploaded\n- Before I got this I was trying to manage it with SVN - Sobi2 revision > 5000\n\ndeployment is very important for ....\n
  93. - In most cases we have a local project and a testing environment \n- So we have to upload our changes to the test env: time consuming and annoying\n- It doesn’t have to be\n- After each “save” in local project files are uploaded\n- Before I got this I was trying to manage it with SVN - Sobi2 revision > 5000\n\ndeployment is very important for ....\n
  94. ... debugger\n- This is a very ordinary (banal) example\n- We have a form\n- ....\n- Now how to find out where the data is being lost\n\n.... how can we check it\n
  95. ... debugger\n- This is a very ordinary (banal) example\n- We have a form\n- ....\n- Now how to find out where the data is being lost\n\n.... how can we check it\n
  96. ... debugger\n- This is a very ordinary (banal) example\n- We have a form\n- ....\n- Now how to find out where the data is being lost\n\n.... how can we check it\n
  97. ... debugger\n- This is a very ordinary (banal) example\n- We have a form\n- ....\n- Now how to find out where the data is being lost\n\n.... how can we check it\n
  98. ... debugger\n- This is a very ordinary (banal) example\n- We have a form\n- ....\n- Now how to find out where the data is being lost\n\n.... how can we check it\n
  99. ... debugger\n- This is a very ordinary (banal) example\n- We have a form\n- ....\n- Now how to find out where the data is being lost\n\n.... how can we check it\n
  100. ... debugger\n- This is a very ordinary (banal) example\n- We have a form\n- ....\n- Now how to find out where the data is being lost\n\n.... how can we check it\n
  101. ... debugger\n- This is a very ordinary (banal) example\n- We have a form\n- ....\n- Now how to find out where the data is being lost\n\n.... how can we check it\n
  102. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  103. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  104. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  105. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  106. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  107. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  108. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  109. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  110. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  111. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  112. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  113. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  114. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  115. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  116. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  117. \n- Set a breakpoint\n- Refresh your site\n- PHP execution will stop at that point\n- Here we can take a deep look at the environment \n...\n- Now we can go step-by-step\n- F7/F8\n- \n
  118. we reaching JFilterInput::_remove\n\nOf course if we ready the Joomla! docs it would spare even more time \n\nBut is should be only a simple example just to give the feeling\n\n
  119. we reaching JFilterInput::_remove\n\nOf course if we ready the Joomla! docs it would spare even more time \n\nBut is should be only a simple example just to give the feeling\n\n
  120. we reaching JFilterInput::_remove\n\nOf course if we ready the Joomla! docs it would spare even more time \n\nBut is should be only a simple example just to give the feeling\n\n
  121. - As I said before a big / high resolution monitor\n- The debugger is the best example\n- It my desktop - resolution 2560x1440\n- For other reasons, testing, you may even need more devices\n- Sigrid ahead of me but as you can imagine the communication is difficult\n- \n
  122. - As I said before a big / high resolution monitor\n- The debugger is the best example\n- It my desktop - resolution 2560x1440\n- For other reasons, testing, you may even need more devices\n- Sigrid ahead of me but as you can imagine the communication is difficult\n- \n
  123. - As I said before a big / high resolution monitor\n- The debugger is the best example\n- It my desktop - resolution 2560x1440\n- For other reasons, testing, you may even need more devices\n- Sigrid ahead of me but as you can imagine the communication is difficult\n- \n
  124. - As I said before a big / high resolution monitor\n- The debugger is the best example\n- It my desktop - resolution 2560x1440\n- For other reasons, testing, you may even need more devices\n- Sigrid ahead of me but as you can imagine the communication is difficult\n- \n
  125. - As I said before a big / high resolution monitor\n- The debugger is the best example\n- It my desktop - resolution 2560x1440\n- For other reasons, testing, you may even need more devices\n- Sigrid ahead of me but as you can imagine the communication is difficult\n- \n
  126. - Used it for long time\n
  127. - Used it for long time\n
  128. - Used it for long time\n
  129. - Used it for long time\n
  130. - Used it for long time\n
  131. - Used it for long time\n
  132. - Used it for long time\n
  133. - Used it for long time\n
  134. - Used it for long time\n
  135. - Used it for long time\n
  136. Never really used it\n
  137. Never really used it\n
  138. Never really used it\n
  139. Never really used it\n
  140. Never really used it\n
  141. Never really used it\n
  142. Never really used it\n
  143. Never really used it\n
  144. Never really used it\n
  145. This is the one I’m using right now\n\nif you are contributing to Joomla! you can get a free/legal copy \n
  146. This is the one I’m using right now\n\nif you are contributing to Joomla! you can get a free/legal copy \n
  147. This is the one I’m using right now\n\nif you are contributing to Joomla! you can get a free/legal copy \n
  148. This is the one I’m using right now\n\nif you are contributing to Joomla! you can get a free/legal copy \n
  149. This is the one I’m using right now\n\nif you are contributing to Joomla! you can get a free/legal copy \n
  150. This is the one I’m using right now\n\nif you are contributing to Joomla! you can get a free/legal copy \n
  151. This is the one I’m using right now\n\nif you are contributing to Joomla! you can get a free/legal copy \n
  152. This is the one I’m using right now\n\nif you are contributing to Joomla! you can get a free/legal copy \n
  153. This is the one I’m using right now\n\nif you are contributing to Joomla! you can get a free/legal copy \n
  154. \n
  155. \n