SlideShare a Scribd company logo
Phorum
                           The first PHP/MySQL message board

                                  Brian Moon
                           Senior Web Engineer - dealnews.com
                                  http://brian.moonspot.net/
                                         @brianlmoon




Saturday, April 23, 2011
Why am I on stage?
    • I wrote PHP/FI code
    • I wrote for msql (not mysql)
    • I wrote Perl CGI scripts
    • Wrote mysql_fetch_assoc()
    • Wrote a core PHP function that has
      been deprecated

                 (bottom line? I am an old man in PHP years!)
Saturday, April 23, 2011
Rasmus Lerdorf
  “PHP began life as a simple little CGI wrapper written in Perl. I wrote it in an afternoon during a
  period between contracts when I needed a quick tool to get an idea of who was reading my online
  resume. It was never intended to go beyond my own private use. The web server where I had my
  resume was extremely overloaded and had constant problems forking processes. I rewrote the Perl
  wrapper in C to get rid of the considerable overhead of having to fork Perl each time my resume was
  accessed.”

                               http://www.php.net/manual/phpfi2.php#history




Saturday, April 23, 2011
1998




Saturday, April 23, 2011
Message Boards Sucked




Saturday, April 23, 2011
Community




     http://www.flickr.com/photos/michaelsphotos/127987110




Saturday, April 23, 2011
New Hotness




Saturday, April 23, 2011
Evolution
         • Store messages in MySQL
         • Support Paging
         • Search Messages
         • Use a block layout




                                     http://www.flickr.com/photos/brentdanley/2205021283

Saturday, April 23, 2011
Accidental Open Source
      • Offered to the PHP General
        list
      • Help me debug and you can
        have the source
      • 10 bug reports in the first day,
        rolled to deal-mac.com in 3
        days.
                                          http://www.flickr.com/photos/rrenomeron/85825614/




Saturday, April 23, 2011
Open Source
       • Started with no license
       • Switched to GPL in 1998 sometime
       • During 1999 Apachecon, heard a
         talk on GPL vs. Apache license.
         Changed to the Apache license in                                Vs.


         the hotel room that night
       • Phorum License is a BSD license
                                       Ben Ramsey

         today                                 http://www.flickr.com/photos/maistora/5017939764

                                             http://www.flickr.com/photos/mikeschinkel/424276070


Saturday, April 23, 2011
Open Source
       • 50+ contributors over the years
       • Many are still friends even though
         they are not active on Phorum
       • 3 core developers over the last 5 or                                Vs.

         so years
       • Power users more prevalent in our
         support forums now                Ben Ramsey


                                                   http://www.flickr.com/photos/maistora/5017939764

                                                 http://www.flickr.com/photos/mikeschinkel/424276070


Saturday, April 23, 2011
Failures

     • Evolutionary, not
       revolutionary
           • v1 lacked moderation, web
             based configuration, user
             accounts, more
     • Tailored for deal-mac largely
       in the early years

Saturday, April 23, 2011
Successes
    • Performance was always a top priority
    • Code sanity
    • Utilized the database well
    • Hook and Module system
    • Real threading of messages
                                       http://www.flickr.com/photos/alltheaces/4158804332




Saturday, April 23, 2011
Diverging from mainstream
     • Shunned OOP in PHP4 for Phorum 5
     • Wrote our own template system. Smarty was only
       months old at the time + it was OOP
     • Wrote our own database layer. Never seen a good
       one, including PDO
     • Uses a “no framework”
       framework
              http://moonspot.net/rasmus-php-mvc

                                                   http://www.flickr.com/photos/conorkeller/4455479137

Saturday, April 23, 2011
Market Share    Quality over quantity




                    * Hired creator of another product and
                     switched to that and is now on phpBB




     "powered by phorum" returns 5+ million results on google
                                                             "powered by phpbb" returns 32+ million results on google


Saturday, April 23, 2011
Status
    • Phorum 5.2 is the current
      release. It is in maintenance
      status.
    • Major work being done in        Maurice Makaay

      Phorum 5.3 to make the
      application more developer
      friendly.
    • Phorum 6?
                                       Thomas Seifert



Saturday, April 23, 2011
Future of message boards
    • Needs another revolution
          • Last revolution was UBB,
            everything else has just evolved
            their model
    • Focus on less categorization and
      more about getting people what
                                               http://www.flickr.com/photos/arfried/186159147

      they want to see
    • Do it as distributed software, not
      as a service
Saturday, April 23, 2011
Phorum
                           The first PHP/MySQL message board

                                  Brian Moon
                           Senior Web Engineer - dealnews.com
                                  http://brian.moonspot.net/
                                         @brianlmoon




Saturday, April 23, 2011

More Related Content

Viewers also liked

Catalog
CatalogCatalog
Adobe Digital Publishing Suite by dualpixel
Adobe Digital Publishing Suite by dualpixelAdobe Digital Publishing Suite by dualpixel
Adobe Digital Publishing Suite by dualpixel
dualpixel
 
Training for Foster Parents
Training for Foster ParentsTraining for Foster Parents
Training for Foster Parents
- Mark - Fullbright
 
互联网搜索技巧
互联网搜索技巧互联网搜索技巧
互联网搜索技巧
bemyfriend
 
Proceedings online v2
Proceedings online v2Proceedings online v2
Proceedings online v2
Nick Sage
 
Ijm 06 10_012
Ijm 06 10_012Ijm 06 10_012
Ijm 06 10_012
IAEME Publication
 
Métricas em mídias sociais (versão 2010)
Métricas em mídias sociais (versão 2010)Métricas em mídias sociais (versão 2010)
Métricas em mídias sociais (versão 2010)
Edney Souza
 
Funciones A1t2
Funciones A1t2Funciones A1t2
Funciones A1t2
Adolfo Castillo Navarro
 
Asp net (versione 1 e 2)
Asp net (versione 1 e 2)Asp net (versione 1 e 2)
Asp net (versione 1 e 2)
Felice Pescatore
 

Viewers also liked (18)

Catalog
CatalogCatalog
Catalog
 
Xakep
XakepXakep
Xakep
 
Clase2
Clase2Clase2
Clase2
 
Google
GoogleGoogle
Google
 
Adobe Digital Publishing Suite by dualpixel
Adobe Digital Publishing Suite by dualpixelAdobe Digital Publishing Suite by dualpixel
Adobe Digital Publishing Suite by dualpixel
 
Training for Foster Parents
Training for Foster ParentsTraining for Foster Parents
Training for Foster Parents
 
互联网搜索技巧
互联网搜索技巧互联网搜索技巧
互联网搜索技巧
 
Facelets
FaceletsFacelets
Facelets
 
IoF South West Conference
IoF South West ConferenceIoF South West Conference
IoF South West Conference
 
Search engines
Search enginesSearch engines
Search engines
 
Metodos en php
Metodos en phpMetodos en php
Metodos en php
 
Proceedings online v2
Proceedings online v2Proceedings online v2
Proceedings online v2
 
Ijm 06 10_012
Ijm 06 10_012Ijm 06 10_012
Ijm 06 10_012
 
Bollean Search - NageshRao
Bollean Search - NageshRaoBollean Search - NageshRao
Bollean Search - NageshRao
 
Métricas em mídias sociais (versão 2010)
Métricas em mídias sociais (versão 2010)Métricas em mídias sociais (versão 2010)
Métricas em mídias sociais (versão 2010)
 
Funciones A1t2
Funciones A1t2Funciones A1t2
Funciones A1t2
 
Asp net (versione 1 e 2)
Asp net (versione 1 e 2)Asp net (versione 1 e 2)
Asp net (versione 1 e 2)
 
Unemployment
UnemploymentUnemployment
Unemployment
 

Similar to Phorum - PHP Community Conference

Developers! Y U No Open Source Ur Code?
Developers! Y U No Open Source Ur Code?Developers! Y U No Open Source Ur Code?
Developers! Y U No Open Source Ur Code?
Craig Marvelley
 
Building mobile apps with JavaScript and PHP
Building mobile apps with JavaScript and PHPBuilding mobile apps with JavaScript and PHP
Building mobile apps with JavaScript and PHPfunkatron
 
Introduction to Open Source, Apache and Apache Way
Introduction to Open Source, Apache and Apache WayIntroduction to Open Source, Apache and Apache Way
Introduction to Open Source, Apache and Apache Way
Srinath Perera
 
P Hundamental Security Coding Secure With Php Lamp
P Hundamental Security Coding Secure With Php LampP Hundamental Security Coding Secure With Php Lamp
P Hundamental Security Coding Secure With Php Lamp
phptechtalk
 
TriplePlay-WebAppPenTestingTools
TriplePlay-WebAppPenTestingToolsTriplePlay-WebAppPenTestingTools
TriplePlay-WebAppPenTestingToolsYury Chemerkin
 
Railsify your web development
Railsify your web developmentRailsify your web development
Railsify your web development
Thomas Lundström
 
Enabling The Enterprise With Php
Enabling The Enterprise With PhpEnabling The Enterprise With Php
Enabling The Enterprise With Php
phptechtalk
 
Debugging and Profiling Symfony Apps
Debugging and Profiling Symfony AppsDebugging and Profiling Symfony Apps
Debugging and Profiling Symfony Apps
Alvaro Videla
 
Conferences andcommunity
Conferences andcommunityConferences andcommunity
Conferences andcommunity
Jeff Carouth
 
From Blog to Multi Media with Anne Fabre of Anne's kitchen #FBC14
From Blog to Multi Media with Anne Fabre of Anne's kitchen #FBC14From Blog to Multi Media with Anne Fabre of Anne's kitchen #FBC14
From Blog to Multi Media with Anne Fabre of Anne's kitchen #FBC14
Food Blogger Connect
 
Symony2 A Next Generation PHP Framework
Symony2 A Next Generation PHP FrameworkSymony2 A Next Generation PHP Framework
Symony2 A Next Generation PHP Framework
Ryan Weaver
 
facebook architecture for 600M users
facebook architecture for 600M usersfacebook architecture for 600M users
facebook architecture for 600M users
Jongyoon Choi
 
Practical project automation (PyGrunn conference)
Practical project automation (PyGrunn conference)Practical project automation (PyGrunn conference)
Practical project automation (PyGrunn conference)Reinout van Rees
 
Notes on Reducing Firefox's Memory Consumption
Notes on Reducing Firefox's Memory ConsumptionNotes on Reducing Firefox's Memory Consumption
Notes on Reducing Firefox's Memory Consumptionnnethercote
 
Thourough guid to PHP5
Thourough guid to PHP5Thourough guid to PHP5
Thourough guid to PHP5Mohammad Arif
 
Facebook Scaling Overview
Facebook Scaling OverviewFacebook Scaling Overview
Facebook Scaling Overview
Moritz Haarmann
 
Hacking Infinispan: the new open source data grid meets NoSQL
Hacking Infinispan: the new open source data grid meets NoSQLHacking Infinispan: the new open source data grid meets NoSQL
Hacking Infinispan: the new open source data grid meets NoSQL
Codemotion
 
Continuously Integrating Puppet
Continuously Integrating PuppetContinuously Integrating Puppet
Continuously Integrating Puppet
Puppet
 
Node js techtalksto
Node js techtalkstoNode js techtalksto
Node js techtalksto
Jason Diller
 

Similar to Phorum - PHP Community Conference (20)

Developers! Y U No Open Source Ur Code?
Developers! Y U No Open Source Ur Code?Developers! Y U No Open Source Ur Code?
Developers! Y U No Open Source Ur Code?
 
Building mobile apps with JavaScript and PHP
Building mobile apps with JavaScript and PHPBuilding mobile apps with JavaScript and PHP
Building mobile apps with JavaScript and PHP
 
Introduction to Open Source, Apache and Apache Way
Introduction to Open Source, Apache and Apache WayIntroduction to Open Source, Apache and Apache Way
Introduction to Open Source, Apache and Apache Way
 
P Hundamental Security Coding Secure With Php Lamp
P Hundamental Security Coding Secure With Php LampP Hundamental Security Coding Secure With Php Lamp
P Hundamental Security Coding Secure With Php Lamp
 
TriplePlay-WebAppPenTestingTools
TriplePlay-WebAppPenTestingToolsTriplePlay-WebAppPenTestingTools
TriplePlay-WebAppPenTestingTools
 
Railsify your web development
Railsify your web developmentRailsify your web development
Railsify your web development
 
Enabling The Enterprise With Php
Enabling The Enterprise With PhpEnabling The Enterprise With Php
Enabling The Enterprise With Php
 
Php 5-power-programming
Php 5-power-programmingPhp 5-power-programming
Php 5-power-programming
 
Debugging and Profiling Symfony Apps
Debugging and Profiling Symfony AppsDebugging and Profiling Symfony Apps
Debugging and Profiling Symfony Apps
 
Conferences andcommunity
Conferences andcommunityConferences andcommunity
Conferences andcommunity
 
From Blog to Multi Media with Anne Fabre of Anne's kitchen #FBC14
From Blog to Multi Media with Anne Fabre of Anne's kitchen #FBC14From Blog to Multi Media with Anne Fabre of Anne's kitchen #FBC14
From Blog to Multi Media with Anne Fabre of Anne's kitchen #FBC14
 
Symony2 A Next Generation PHP Framework
Symony2 A Next Generation PHP FrameworkSymony2 A Next Generation PHP Framework
Symony2 A Next Generation PHP Framework
 
facebook architecture for 600M users
facebook architecture for 600M usersfacebook architecture for 600M users
facebook architecture for 600M users
 
Practical project automation (PyGrunn conference)
Practical project automation (PyGrunn conference)Practical project automation (PyGrunn conference)
Practical project automation (PyGrunn conference)
 
Notes on Reducing Firefox's Memory Consumption
Notes on Reducing Firefox's Memory ConsumptionNotes on Reducing Firefox's Memory Consumption
Notes on Reducing Firefox's Memory Consumption
 
Thourough guid to PHP5
Thourough guid to PHP5Thourough guid to PHP5
Thourough guid to PHP5
 
Facebook Scaling Overview
Facebook Scaling OverviewFacebook Scaling Overview
Facebook Scaling Overview
 
Hacking Infinispan: the new open source data grid meets NoSQL
Hacking Infinispan: the new open source data grid meets NoSQLHacking Infinispan: the new open source data grid meets NoSQL
Hacking Infinispan: the new open source data grid meets NoSQL
 
Continuously Integrating Puppet
Continuously Integrating PuppetContinuously Integrating Puppet
Continuously Integrating Puppet
 
Node js techtalksto
Node js techtalkstoNode js techtalksto
Node js techtalksto
 

Recently uploaded

IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
Abida Shariff
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
Fwdays
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 

Recently uploaded (20)

IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 

Phorum - PHP Community Conference

  • 1. Phorum The first PHP/MySQL message board Brian Moon Senior Web Engineer - dealnews.com http://brian.moonspot.net/ @brianlmoon Saturday, April 23, 2011
  • 2. Why am I on stage? • I wrote PHP/FI code • I wrote for msql (not mysql) • I wrote Perl CGI scripts • Wrote mysql_fetch_assoc() • Wrote a core PHP function that has been deprecated (bottom line? I am an old man in PHP years!) Saturday, April 23, 2011
  • 3. Rasmus Lerdorf “PHP began life as a simple little CGI wrapper written in Perl. I wrote it in an afternoon during a period between contracts when I needed a quick tool to get an idea of who was reading my online resume. It was never intended to go beyond my own private use. The web server where I had my resume was extremely overloaded and had constant problems forking processes. I rewrote the Perl wrapper in C to get rid of the considerable overhead of having to fork Perl each time my resume was accessed.” http://www.php.net/manual/phpfi2.php#history Saturday, April 23, 2011
  • 6. Community http://www.flickr.com/photos/michaelsphotos/127987110 Saturday, April 23, 2011
  • 8. Evolution • Store messages in MySQL • Support Paging • Search Messages • Use a block layout http://www.flickr.com/photos/brentdanley/2205021283 Saturday, April 23, 2011
  • 9. Accidental Open Source • Offered to the PHP General list • Help me debug and you can have the source • 10 bug reports in the first day, rolled to deal-mac.com in 3 days. http://www.flickr.com/photos/rrenomeron/85825614/ Saturday, April 23, 2011
  • 10. Open Source • Started with no license • Switched to GPL in 1998 sometime • During 1999 Apachecon, heard a talk on GPL vs. Apache license. Changed to the Apache license in Vs. the hotel room that night • Phorum License is a BSD license Ben Ramsey today http://www.flickr.com/photos/maistora/5017939764 http://www.flickr.com/photos/mikeschinkel/424276070 Saturday, April 23, 2011
  • 11. Open Source • 50+ contributors over the years • Many are still friends even though they are not active on Phorum • 3 core developers over the last 5 or Vs. so years • Power users more prevalent in our support forums now Ben Ramsey http://www.flickr.com/photos/maistora/5017939764 http://www.flickr.com/photos/mikeschinkel/424276070 Saturday, April 23, 2011
  • 12. Failures • Evolutionary, not revolutionary • v1 lacked moderation, web based configuration, user accounts, more • Tailored for deal-mac largely in the early years Saturday, April 23, 2011
  • 13. Successes • Performance was always a top priority • Code sanity • Utilized the database well • Hook and Module system • Real threading of messages http://www.flickr.com/photos/alltheaces/4158804332 Saturday, April 23, 2011
  • 14. Diverging from mainstream • Shunned OOP in PHP4 for Phorum 5 • Wrote our own template system. Smarty was only months old at the time + it was OOP • Wrote our own database layer. Never seen a good one, including PDO • Uses a “no framework” framework http://moonspot.net/rasmus-php-mvc http://www.flickr.com/photos/conorkeller/4455479137 Saturday, April 23, 2011
  • 15. Market Share Quality over quantity * Hired creator of another product and switched to that and is now on phpBB "powered by phorum" returns 5+ million results on google "powered by phpbb" returns 32+ million results on google Saturday, April 23, 2011
  • 16. Status • Phorum 5.2 is the current release. It is in maintenance status. • Major work being done in Maurice Makaay Phorum 5.3 to make the application more developer friendly. • Phorum 6? Thomas Seifert Saturday, April 23, 2011
  • 17. Future of message boards • Needs another revolution • Last revolution was UBB, everything else has just evolved their model • Focus on less categorization and more about getting people what http://www.flickr.com/photos/arfried/186159147 they want to see • Do it as distributed software, not as a service Saturday, April 23, 2011
  • 18. Phorum The first PHP/MySQL message board Brian Moon Senior Web Engineer - dealnews.com http://brian.moonspot.net/ @brianlmoon Saturday, April 23, 2011