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

We shape the web, and the web shapes us - Joomladay Brussels 2022

We shape the web, and the web shapes us - Joomladay Brussels 2022

Web technology has shaped Joomla in many different ways over the past 2 decades and in return Joomla, as a tool, has had a great impact on how we build the web. Like music, Joomla is an instrument that humankind has developed — intuitively and naturally. It helps us to overcome our obstacles, to overcome the things we call limitations, because we have a vision, that we deeply want to see fulfilled or a trouble making problem that needs to be solved.

The story of Joomla has been told many times before, the fork..., the start of a strong community driven project, ... this talk is not about that. Instead

Johan Janssens, Joomla Co-Founder will look back to the very humble beginnings to try and define the key challenges, technologies and ideas that helped us shape Joomla, and from there look forward to what could shape Joomla’s future in the next 10 years.

This talk is for anyone interested in helping to shape Joomla, and in trying to answer: What do we as a community want to solve and build next and how will it shape us and the world we want to live in?

URL: https://www.joomladay.fr/replay-2022
Video: https://www.youtube.com/watch?v=_zi3Ndds_5Y

Johan Janssens

May 20, 2022
Tweet

More Decks by Johan Janssens

Other Decks in Technology

Transcript

  1. http://www.joomlatools.com/developer @joomlatools
    We shape the web, and the
    web shapes us.

    A story about how an idea I had a year ago.

    View Slide

  2. View Slide

  3. Standing on the shoulders of giants
    https://www.everythingisaremix.info

    View Slide

  4. ARPANET, the
    fi
    rst computer network
    https://spectrum.ieee.org/todays-internet-still-relies-on-an-arpanetera-protocol-the-request-for-comments

    View Slide

  5. In 1969 Thomas Merrill and Lawrence Roberts created the first computer
    network called ARPANET. The network consisted of three devices:
    one at the University of Utah, one at the Standford Research
    Institute, and one at the University of California. Today they are
    considered the first hosting in the world.
    When ARPANET started to use the TCP/IP protocol they changed the
    name from ARPANET into Internet.

    View Slide

  6. There are over 1 billion sites on the Internet: blogs, commercial sites,
    presentation sites, government sites and more, all dedicated to easier
    communication between people and all using a web hosting service.


    Thus, with the basics of solid web hosting, even in 2020 to have a
    functional site you must meet three basic conditions:


    • Have a hosting service


    • Have a domain on the internet


    • Create a website.


    View Slide

  7. 1991, the www is born ….

    View Slide

  8. 1990, the
    fi
    rst web server

    View Slide

  9. The first web page went live on August 6, 1991. It was dedicated to
    information on the World Wide Web project and was made by Tim
    Berners-Lee. It ran on a NeXT computer at the European Organization
    for Nuclear Research, CERN.


    The first web page address was http://info.cern.ch/hypertext/WWW/
    TheProject.html.


    View Slide

  10. http://info.cern.ch/hypertext/WWW/TheProject.html

    View Slide

  11. 1989, the GPL is released

    View Slide

  12. The GPL is not just a legal document, it’s much more, it’s a creativity
    manifesto embracing and perpetuating the idea that everything is a

    remix through the freedom of use, study modify and copy it provides.

    View Slide

  13. 1991, Linus Torvalds creates Linux

    View Slide

  14. “Linux took a rather more pragmatic approach to the code sharing
    notion - using the GPL, by believing in it as an engineering choice
    and as a way to allow people to improve and share rather than
    as a moral imperative” — Linux Torvalds

    View Slide

  15. Linux distros …

    View Slide

  16. Linux distros …

    View Slide

  17. The LAMP stack

    View Slide

  18. 1995, Apache released

    View Slide

  19. Originally based on the NCSA HTTPd server, development of Apache
    began in early 1995 after work on the NCSA code stalled.


    Apache played a key role in the initial growth of the World Wide
    Web, quickly overtaking NCSA HTTPd as the dominant HTTP server.


    In 2009, it became the first web server software to serve more than
    100 million websites.

    View Slide

  20. 1995, MySQL released….

    View Slide

  21. MySQL was created by a Swedish company, MySQL AB, founded by
    Swedes David Axmark, Allan Larsson and Finland Swede Michael
    "Monty" Widenius.


    Original development of MySQL by Widenius and Axmark began in
    1994. The first version of MySQL appeared on 23 May 1995.

    View Slide

  22. 1995, PHP/FI is announced….

    View Slide

  23. PHP development began in 1994 when Rasmus Lerdorf wrote
    several Common Gateway Interface (CGI) programs in C, which
    he used to maintain his personal homepage. He extended them to
    work with web forms and to communicate with databases, and
    called this implementation "Personal Home Page/Forms
    Interpreter" or PHP/FI.


    PHP/FI could be used to build simple, dynamic web applications.
    To accelerate bug reporting and improve the code, Lerdorf
    initially announced the release of PHP/FI as "Personal Home
    Page Tools (PHP Tools) version 1.0”.

    View Slide

  24. Webhosting

    View Slide

  25. GeoCities offered 1 MB disk space, Tripod – 2 MB, while Angelfire
    offered 35 KB with their plans.


    These values appear laughable now, but back then sites were usually pure
    text/html and didn't need lots of space. With the rising popularity of rich
    media websites nowadays, hosting plans providing 100 GB.

    View Slide

  26. Shared hosting uses only 1% of
    Linux true potential.

    View Slide

  27. A custom LA(M)P stack

    View Slide

  28. Going cloud native with Joomla

    View Slide

  29. 2013, Docker released….
    https://firecracker-microvm.github.io/

    View Slide

  30. Docker was created by Solomon Hykes and first released in 2013.


    Docker is an open source containerization platform. It enables
    developers to package applications into containers—standardized
    executable components combining application source code with the
    operating system (OS) libraries and dependencies required to run that
    code in any environment.


    In Linux Docker uses OverlayFS, union mount filesystem developed in
    2009 and merged in the Kernel in 2014. It was improved in version
    4.0, bringing improvements necessary for e.g. the overlay2 storage
    driver for Docker.
    https://www.docker.com/

    View Slide

  31. 2013, Docker released….

    View Slide

  32. Firecracker is a VMM (Virtual Machine Manager), announced in 2018
    and built by developers at Amazon Web Services to enable services
    such as AWS Lambda and AWS Fargate. It’s one of AWS first true OS
    projects.
    At AWS re:Invent 2018 Amazon announced the
    release of Firecracker, an open source
    virtualization technology that is purpose-built for
    "creating and managing secure, multi-tenant
    containers and functions-based services".
    Firecracker is a fork of Chromium OS's Virtual
    Machine Monitor (crosvm), an open source VMM
    written in Rust, and the technology is used behind
    the scenes to power Amazon's AWS Fargate and
    AWS Lambda services.
    https://
    fi
    recracker-microvm.github.io/

    View Slide

  33. 2020, Fly.io
    https://
    fl
    y.io/

    View Slide

  34. Introducing Joomlatools Server
    A cloud native LA(M)P stack and web application server, for local
    development, and/or production deployment either using Docker or
    Firecracker.


    Offers out of the box support for Fly.io, allowing to deploy a Joomla
    site in less than 5min.


    Comes with batteries includes:


    • OpenMetrics / Grafana support


    • OpenTracing / Sentry support


    • Build in HTTP API to manage the server remotely

    View Slide

  35. Joomlatools Server - Architecture
    Joomlatools Server can run multiple sites and Linux services as a
    multi-process Docker container.


    Custom services are build in PHP with OpenSwoole. Compared with
    other async programming frameworks or software such as Node.js, Go,
    Python, ... Open Swoole is a complete async solution that has built-in
    support for async programming via coroutines.


    https://openswoole.com

    View Slide

  36. Swoole Performance vs PHP frameworks

    View Slide

  37. Swoole Performance vs Nodejs and Go

    View Slide

  38. View Slide

  39. 2
    Grafana https://grafana.com

    View Slide

  40. Sentry Tracing https://sentry.io

    View Slide

  41. Sentry Tracing https://sentry.io

    View Slide

  42. Grafana Logs https://grafana.com

    View Slide

  43. Johan Janssens

    Joomla Co-Founder / Former Lead Developer
    http://about.me/johanjanssens
    @johanjanssens
    johanjanssens
    johanjanssens

    View Slide

  44. More Info
    http://twitter.com/joomlatools
    http://github.com/joomlatools
    http://facebook.com/joomlatools
    http://developer.joomlatools.com

    View Slide