Server Check.in case study - Drupal and Node.jsJeff Geerling
Server Check.in is a simple, inexpensive website and server monitor. See how Server Check.in was built, and how it uses Drupal and Node.js together to build an easy-to-use and powerful web application. See more at https://servercheck.in/
"Drupal is always so fast!" ... said no one, ever.
Drupal has a reputation as being a slow CMS, but that reputation is undeserved; there are many small things that impact a Drupal site's performance in sometimes substantial ways. This session will highlight many 'quick wins' that will get your site performing like a champ in no time!
Then we'll take a demonstration site that has many elements of real-world 'slow' Drupal sites, show how to do a quick performance evaluation/triage, and change the site from loading in 4-5 seconds to loading in less than a second, and maxing out at 2 requests per second to a speedy 4,000+ requests per second!
The session will also discuss the importance of a plan, benchmarking, and assumptions when you do performance work on your own Drupal site.
Ansible 101 - Presentation at Ansible STL MeetupJeff Geerling
Jeff Geerling, author of Ansible for DevOps, demonstrates basic Ansible usage on the Dramble, a cluster of six Raspberry Pi 2 computers.
This presentation was delivered on July 8, 2015, at the Ansible St. Louis meetup, at Riot Games in Clayton, MO.
Masterin Large Scale Java Script ApplicationsFabian Jakobs
Writing large desktop-like web applications is a challenge. Adapting such an application to different markets, languages or brands is even more of a challenge. This talk shows how the open source JavaScript framework qooxdoo can be leveraged to build such a rich internet application. As a real-life example the free web mail client gmx.com is used. This talk discusses the development model, customization and deployment of such an application.
Learn how JavaScript applications of this size and complexity are fundamentally different from classic web applications, and what issues come up when building fast, multi-language, multi-brand JavaScript applications.
JavaScript Service Worker Design Patterns for Better User Experiencereeder29
Not just for offline, JavaScript Service Workers give your web app a snappy response and predictable behavior. Your web app “feels like an app” to your more-satisfied users and stakeholders.
Server Check.in case study - Drupal and Node.jsJeff Geerling
Server Check.in is a simple, inexpensive website and server monitor. See how Server Check.in was built, and how it uses Drupal and Node.js together to build an easy-to-use and powerful web application. See more at https://servercheck.in/
"Drupal is always so fast!" ... said no one, ever.
Drupal has a reputation as being a slow CMS, but that reputation is undeserved; there are many small things that impact a Drupal site's performance in sometimes substantial ways. This session will highlight many 'quick wins' that will get your site performing like a champ in no time!
Then we'll take a demonstration site that has many elements of real-world 'slow' Drupal sites, show how to do a quick performance evaluation/triage, and change the site from loading in 4-5 seconds to loading in less than a second, and maxing out at 2 requests per second to a speedy 4,000+ requests per second!
The session will also discuss the importance of a plan, benchmarking, and assumptions when you do performance work on your own Drupal site.
Ansible 101 - Presentation at Ansible STL MeetupJeff Geerling
Jeff Geerling, author of Ansible for DevOps, demonstrates basic Ansible usage on the Dramble, a cluster of six Raspberry Pi 2 computers.
This presentation was delivered on July 8, 2015, at the Ansible St. Louis meetup, at Riot Games in Clayton, MO.
Masterin Large Scale Java Script ApplicationsFabian Jakobs
Writing large desktop-like web applications is a challenge. Adapting such an application to different markets, languages or brands is even more of a challenge. This talk shows how the open source JavaScript framework qooxdoo can be leveraged to build such a rich internet application. As a real-life example the free web mail client gmx.com is used. This talk discusses the development model, customization and deployment of such an application.
Learn how JavaScript applications of this size and complexity are fundamentally different from classic web applications, and what issues come up when building fast, multi-language, multi-brand JavaScript applications.
JavaScript Service Worker Design Patterns for Better User Experiencereeder29
Not just for offline, JavaScript Service Workers give your web app a snappy response and predictable behavior. Your web app “feels like an app” to your more-satisfied users and stakeholders.
Quick and Easy Development with Node.js and Couchbase ServerNic Raboy
Build an API driven Node.js application that uses Couchbase for its NoSQL database and AngularJS for its front-end. Presented by Nic Raboy, Developer Advocate at Couchbase.
Michael North "Ember.js 2 - Future-friendly ambitious apps, that scale!"Fwdays
Ember.js is being adopted more and more broadly as time passes, and is an excellent choice for highly complex data-driven UIs. With the recent release of the "2.0" version of the framework, things are faster, smarter, and easier than ever. With a focus on productivity and reducing the number of trivial decisions developers must make while building an app, it's astonishing how quickly one can get up and running, and how well the abstractions hold up as the codebase scales in size and complexity.
I'd like to give a general overview of Ember, and pause to reflect on some important differences that may be important when considering what the best tool is for your project.
Adobe AEM overview for Business Heads. How to build a team, What are the phases of development, Tools and technologies, Team composition, Estimations, Deployment and Migration, Sizing - Presented at Adobe Bangalore
Using Packer to Migrate XenServer Infrastructure to CloudStackTim Mackey
When adopting IaaS cloud solutions, one of the biggest challenges will be template management. Creating that first template can easily be more challenging that deploying the cloud software itself. In this presentation two options are presented for template creation, using a kickstart file or cloning a running VM with Packer from packer.io as the core framework.
This presentation was delivered at CloudStack Days 2015 in Austin Texas. Two demos were given. The first demo used an existing XenServer environment to create a golden master from ISO and kickstart file, then automatically upload it to a CloudStack management server for deployment. The second demo cloned a running VM and created a template which was then uploaded to CloudStack. In the case of the running VM, migration occurred without any user interruption. The VM in question was a CentOS 7 image, and the hypervisor for both source infrastructure and CloudStack compute was XenServer based
Sharing my slides on a talk I held at the Berlin-based FullStack JS meetup. Tips and tricks how I reduced our build time (full / incremental) from 60s / 4s to 8s / 300ms.
Full config:
https://gist.github.com/trueter/0e861403e59a9e27a476f3ad7ada1a89
Give us a visit at http://www.pixsy.com
SenchaCon 2016: Building a Faceted Catalog of Video Game Assets Using Ext JS ...Sencha
At Ubisoft Technology Group, we've created a platform for video game production to share game assets, in-game footage, and animations across the entire company. Ease of search and good UX were incredibly important for an audience of artists and creative types. This is where the Web and a powerful JavaScript framework came in; we chose Ext JS for its robustness and scalability. In this session, we'll showcase two different applications and dive into the technical aspects of designing the UI for a faceted search based on Elasticsearch.
How to use WP-CLI to manage your WordPress site via the command line. From basic management like installing & updating plugins and themes, to scripting a installation workflow, this tool is a WordPress DevOps' best friend.
Aos canadian tour (YOW) @energizedtech - Manage AzureRM with powershellSean Kearney
Slidedeck from Ottawa, Ontario for Azure Office 365 SharePoint Tour - Managing AzureRM Resources with Windows PowerShell
Sample resources are on the last slide and downloadable from OneDrive
User Transparent Service Migration to the CloudTim Mackey
While creating a cloud such as OpenStack is fairly easy, template management is more challenging. In this session we discuss how systems engineering and tooling can be combined to allow legacy infrastructure and virtual machines to be converted to templates without downtime. These templates can then be deployed within the cloud and users migrated with minimal interruption. This deck is as delivered at CloudOpen 2015 in Seattle.
[Elio Struyf] We all have these daily tasks that can be automated. Like checking if the backup job of your site completed, or looking how many times a file has been accessed, etc. These kinds of tasks are great to be automated by an Azure Functions. In this session, you will get an overview of what Azure Functions can do for you. With some demos, we go step by step through the creation, debugging and deployment process of these functions.
Quick and Easy Development with Node.js and Couchbase ServerNic Raboy
Build an API driven Node.js application that uses Couchbase for its NoSQL database and AngularJS for its front-end. Presented by Nic Raboy, Developer Advocate at Couchbase.
Michael North "Ember.js 2 - Future-friendly ambitious apps, that scale!"Fwdays
Ember.js is being adopted more and more broadly as time passes, and is an excellent choice for highly complex data-driven UIs. With the recent release of the "2.0" version of the framework, things are faster, smarter, and easier than ever. With a focus on productivity and reducing the number of trivial decisions developers must make while building an app, it's astonishing how quickly one can get up and running, and how well the abstractions hold up as the codebase scales in size and complexity.
I'd like to give a general overview of Ember, and pause to reflect on some important differences that may be important when considering what the best tool is for your project.
Adobe AEM overview for Business Heads. How to build a team, What are the phases of development, Tools and technologies, Team composition, Estimations, Deployment and Migration, Sizing - Presented at Adobe Bangalore
Using Packer to Migrate XenServer Infrastructure to CloudStackTim Mackey
When adopting IaaS cloud solutions, one of the biggest challenges will be template management. Creating that first template can easily be more challenging that deploying the cloud software itself. In this presentation two options are presented for template creation, using a kickstart file or cloning a running VM with Packer from packer.io as the core framework.
This presentation was delivered at CloudStack Days 2015 in Austin Texas. Two demos were given. The first demo used an existing XenServer environment to create a golden master from ISO and kickstart file, then automatically upload it to a CloudStack management server for deployment. The second demo cloned a running VM and created a template which was then uploaded to CloudStack. In the case of the running VM, migration occurred without any user interruption. The VM in question was a CentOS 7 image, and the hypervisor for both source infrastructure and CloudStack compute was XenServer based
Sharing my slides on a talk I held at the Berlin-based FullStack JS meetup. Tips and tricks how I reduced our build time (full / incremental) from 60s / 4s to 8s / 300ms.
Full config:
https://gist.github.com/trueter/0e861403e59a9e27a476f3ad7ada1a89
Give us a visit at http://www.pixsy.com
SenchaCon 2016: Building a Faceted Catalog of Video Game Assets Using Ext JS ...Sencha
At Ubisoft Technology Group, we've created a platform for video game production to share game assets, in-game footage, and animations across the entire company. Ease of search and good UX were incredibly important for an audience of artists and creative types. This is where the Web and a powerful JavaScript framework came in; we chose Ext JS for its robustness and scalability. In this session, we'll showcase two different applications and dive into the technical aspects of designing the UI for a faceted search based on Elasticsearch.
How to use WP-CLI to manage your WordPress site via the command line. From basic management like installing & updating plugins and themes, to scripting a installation workflow, this tool is a WordPress DevOps' best friend.
Aos canadian tour (YOW) @energizedtech - Manage AzureRM with powershellSean Kearney
Slidedeck from Ottawa, Ontario for Azure Office 365 SharePoint Tour - Managing AzureRM Resources with Windows PowerShell
Sample resources are on the last slide and downloadable from OneDrive
User Transparent Service Migration to the CloudTim Mackey
While creating a cloud such as OpenStack is fairly easy, template management is more challenging. In this session we discuss how systems engineering and tooling can be combined to allow legacy infrastructure and virtual machines to be converted to templates without downtime. These templates can then be deployed within the cloud and users migrated with minimal interruption. This deck is as delivered at CloudOpen 2015 in Seattle.
[Elio Struyf] We all have these daily tasks that can be automated. Like checking if the backup job of your site completed, or looking how many times a file has been accessed, etc. These kinds of tasks are great to be automated by an Azure Functions. In this session, you will get an overview of what Azure Functions can do for you. With some demos, we go step by step through the creation, debugging and deployment process of these functions.
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...Amazon Web Services
Organizations around the globe are leveraging the cloud to accomplish world-changing missions. This session will address how AWS can help organizations put more money toward their mission and scale outreach and operations to achieve more with less. Hear some of AWS’s most advanced customers on how their organizations handle DevOps, continuous integration and deployment. Learn how these practices allow them to rapidly develop, iterate, test and deploy highly-scalable web applications and core operational systems on AWS. The discussion will focus on best practices, lessons learned, and the specific technologies and services they use.
AWS as platform for scalable applicationsRoman Gomolko
Introduction to Amazon Web Services that allow to concentrate on your application rather then concentrating on infrastructure needed to run. Following services are briefly exposed Beanstalk, RDS, DynamoDB, DynamoDB streams, Kinesis, SQS, Lambda, S3, CloudFront.
SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe Sencha
Have you ever heard the phrase: "Everything works fine on my machine?" Docker is here to rescue you. Running your toolchain, Ext JS application, back-end server, and even your database - all in a standardized container format that can be transported and reused, throughout your process. In this session, you will learn how to automate a typical workflow, including developing, testing, and deploying, by using Docker containers and common continuous integration solutions.
Stas Ivaschenko (Senior Operations Analyst/DevOps engineer at Provectus, Inc)
Senior DevOps engineer, more than 10 years in IT.
AWS, Chef, Ansible, Kubernetes, Docker, Hadoop.
Best customers: Symantec, CloudMade
Kubernetes is up and running, what's next? We will talk about recent experience with Kubernetes-centric Serverless technologies. Concepts, overview of 2 frameworks: funktion from RedHat's Fabric8 and Kubeless. How they stand against AWS Lambda and how they rely on Kubernetes internals to do what they are doing.
CouchDB for Web Applications - Erlang Factory London 2009Jason Davies
CouchDB is built "of the Web" and it's very exciting to convert the immense
power that CouchDB provides into a usable, real-world Web application. In this
talk I cover case studies of real-world applications that use CouchDB,
including some that can be served from CouchDB itself, and how CouchDB can
shape your Web applications to be highly scalable and flexible by embracing
HTTP philosophies, JavaScript and schemaless documents.
The options for hosting ruby web application are plentiful, all with different advantages and disadvantages, options, limitations. How to start, how to grow, what are the pitfalls?
With this talk I’d first like to give a short overview of several cloud hosting alternatives such as plain VPS, AWS, EngineYard, Heroku, and provide some insights based on my experience with them – beyond just somehow getting it to run, but also how to handle continuous deployment, how to maintain and scale them.
While Rails already comes with many best practices build in, there are still plenty enough traps for you. We definitely had our fair share, and I’d like to share some of them for your entertainment and learning.
SenchaCon 2016: A Look Ahead: Survey Next-Gen Modern Browser APIs - Shikhir S...Sencha
Using modern browsers, developers can now create web apps with capabilities that were only possible in native or hybrid apps. Web apps can now access hardware devices such as microphones, cameras, GPS, accelerometers, VR displays, and many others, without using any plugins. Using Web Bluetooth, web app developers can now communicate with nearly any type of hardware device. In this session, we’ll survey a sample of the W3C standards that give developers access to next-gen capabilities via web apps. Topics will include Service Worker, Push API, WebRTC, Web Bluetooth, Web Crypto, Web Speech, Web Notifications, and others.
Containerisation Hack of a Legacy Software Solution - Alex Carter - CodeMill ...CodeMill digital skills
Details
Alexandra Carter - Callcredit, Numero and Microsoft: Containerisation Hack of a Legacy Software Solution
This is the story of how we took a legacy solution and pushed it into containers on windows in just three days. This was also a great chance to work with Microsoft at the cutting edge of their work on containerisation, VSTS and Azure. Moving on from our Hackathon, we have continued adding new components, experimenting with orchestration and showcasing our work. I’ll talk you through the prep work, the 3 day hack and the subsequent work; what it means for the product roadmap, the experimentation we have done and how stakeholders are responding. Finally, we’ll look ahead to next steps.
Case study: https://microsoft.github.io/techcasestudies/devops/2017/06/16/Callcredit_DevOps.html
Alex Carter
"I have worked in IT, Marketing, Software Support and Software Delivery before moving into my current System Build (DevOps) role within Callcredit. I live and breathe DevOps and am currently focussing on anything around containerisation in Windows. A day without Metal and motor racing is a dull one."
@smileandeliver (https://twitter.com/smileandeliver)
From CodeMill digital skills meetup https://www.meetup.com/CodeMill-Digital-Skills/events/243110732/
Configuring and maintaining a continuous integration environment is quite a bit of work. It requires ongoing resources both in terms of manpower and hardware infrastructure. As an application evolves so does the number of ongoing projects. The challenge is creating a scalable continuous integration environment which does not impede development and can handle the complexities of Java EE testing. This session covers how to setup and configure a cloud-based continuous integration environment for Java EE applications.
The presentation will focus on demonstrating how to use Atlassian Bamboo running on AWS to build and test a Maven/Gradle Java EE project that uses Arquillian for testing. Topics that will be covered include creating a custom AWS VM for use with Bamboo, creating an Amazon VPC (Virtual Private Cloud) along with test database using Amazon RDS. The presentation will delve into the specifics of testing EJBs, WebSocket endpoints, RESTful web services, as well as performing load testing in this environment. Security, cost control, and build monitoring will be covered as well.
Code First with Serverless Azure FunctionsJeremy Likness
Learn about the new trend in cloud computing called serverless. See how it is implemented using Azure Functions and Logic Apps, advanced monitoring with Application Insights, and examples written in Node.js.
Similar to Back to the 90s' - Revenge of the static website (20)
Io t privacy and security considerationsYves Goeleven
In this session I discuss some of my thoughts on privacy and security considerations that threathen and are raised by the upcoming internet of things. Warning, you may leave with more questions than answers
In this session I show together with Jan Tielens how you can integrate the physical world and the virtual together by using sensors, netduino, microsoft azure,
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
By Design, not by Accident - Agile Venture Bolzano 2024
Back to the 90s' - Revenge of the static website
1.
2. Yves Goeleven
Solution Architect & Azure MVP
• Particular Software / NServiceBus
• Side projects
• MessageHandler: Event stream processing & event sourcing framework
• Dish: Static site generator
• ClubManagement.io: Progressive Web Apps for managing sports clubs
• Azure MVP since 2010
• Co-founder & board member @ AZUG.be
• Board member @ Basket Lummen
This means I’m
old & develop
software
3.
4. Web development
A brief history with major milestones
1993 Today1995
First browser war!
Client side incompatibilities, but
you could standardize on IE
1996 2004
Second browser war!
More browsers,
more incompatibilities
20092007
Third browser war!
Battle against mobile leads to standardization
2012
39. Dynamic content
Not all content is equal
Change rate vs
user expectations
Real Time Delay Stale
No changes Manual publishing Manual publishing Manual publishing
Occasional On every request Automated publishing Manual publishing
Frequent On every request Automated publishing Manual publishing
In a static site context
• On every request: API call with client side rendering
• Manual publishing: Update the site and publish
• Automated publishing: Plug the publishing process into your business
processes
40. Managing the site content
Dynamic
content
Static Site
Generation
Local
Experience
Publishing
Process
41. Static site generator
An essential tool in the publishing process
• Renders a website from content files
• Content files in appropriate format
• Text: markdown
• Config: Yaml
• Templates: Handlebars
• A multistep build pipeline (chain of responsibility)
• Read files
• Preprocessing steps
• Rendering
• Postprocessing steps
• Most popular ones: Jekyll, Hexo, Hugo, …
42. Introducing DISH
Why I built my own static site generator
• A library
• .Net core
• Plug into my business logic
• Full control of the pipeline
• E.g. publish to azure storage static websites
43.
44. Managing the site content
Dynamic
content
Static Site
Generation
Local
Experience
Publishing
Process
45. Local Experience
Requires a command line tool
• Write a console app using the library
• Main generation methods
• Run: generates the site
• Serve: generates & hosts the site locally in Kestrel
• Publish: generates & uploads the site to azure storage static websites
46.
47. Managing the site content
Dynamic
content
Static Site
Generation
Local
Experience
Publishing
Process
48. Publishing process
End to end process
Sources in
github
Pull
Run site
generation
Publish Purge CDN
Yes, some
parents do
submit PR’s
Dish
Manual or
Microsoft.Azure.
Management.Cdn
Manual or
invocation from
code using
octokit
52. How it works when offline
Service Worker intercepts and serves from IndexedDB
Browser
Services
X
53. Service Worker
Background worker for a web pages
• Also runs when browser is closed!
• Available events
• Install: Fired whenever the worker gets installed (happens only once)
• Activate: Fired whenever a loaded page connects to the worker
• Fetch: Fired every time a connected client performs a request
• Message: Communication between frontend thread and background worker
• Sync: Fired after device comes online
• Push: Fired when device receives a push notification
• But you need to write code to handle all those events
self.addEventListener('install', function(event){
// your code here
});
54. Google workbox
A set of common patterns for Service Worker
• A javascript library on top of indexed DB & cache storage responding to service worker events
• Available modules
• Precaching: preload files on install
• Routing: configure how to handle specific web requests
• Strategies: caching strategies
• Expiration: remove cached entries
• BackgroundSync: resubmit commands after coming online
• …
importScripts('https://storage.googleapis.com/workbox-cdn/releases/3.6.1/workbox-sw.js');
workbox.core.setCacheNameDetails({
prefix: 'clubmgmt-fundraising-checkin-cache’,
suffix: ‘1.0.0.0’
});
56. App Shell pattern
‘Installation’ of all files of the web app
• Service worker ‘Install’ event
• All essential files for the app will be downloaded and cached
• Route with a ‘Cache-first’ policy: Cache Falling Back to Network
• Files must be versioned
• Revision hashes generated by Dish postprocessing step
• Embed hashes, service worker file must change for changes to take effect
• Your app shell can run offline now, future pages served from cache
workbox.precaching.precacheAndRoute(self.__precacheManifest || []);
self.__precacheManifest = [
{ url:’/index.html', revision: '16a3cdb338289d….74564ccd3db2430bac’ },
{ url:'/css/bootstrap.min.css', revision: '5a3d8c05785485d3….8b5bd7b0f3168fff1bd9a' },
{ url:'/css/console.css', revision: '900797671c753ea9b421….f1db2874f32d6264996801' },
….
]
64. Install on desktop
Progressive Web App behaves like a mobile or desktop app
• Install experience
• Desktop
• Mobile
• Home screen / desktop icon
• Minimal requirements
• Manifest.json file
• HTTPS
• Service Worker
69. Conclusion
Static websites provide a great client development platform
• It’s cheap!
• It’s simple!
• Single codebase for any app (PWA)
• Web, desktop & mobile apps!
• Offline