This talk was held at WordCamp Frankfurt on Sep. 4, 2016 (https://2016.frankfurt.wordcamp.org/session/the-secret-sauce-for-writing-reusable-code/)
There’s an (on-going) series of complimentary blog posts:
https://www.alainschlesser.com/config-files-for-reusable-code/
"Everyone knows that you need to write reusable code to be able to grow as a developer, right?
However, most developers struggle to understand how to split up their code to make it truly reusable, so they end up copy-pasting parts of code and modifying as needed, instead of effectively reusing the code that was already written, without a single change.
This session explains the concept of Config files and how they allow you to cleanly separate reusable code from project-specific code."
2016 WordCamp Frankfurt - The Secret Sauce For Writing Reusable CodeAlain Schlesser
Everyone knows that you need to write reusable code to be able to grow as a developer, right?
However, most developers struggle to understand how to split up their code to make it truly reusable, so they end up copy-pasting parts of code and modifying as needed, instead of effectively reusing the code that was already written, without a single change.
This session explains the concept of Config files and how they allow you to cleanly separate reusable code from project-specific code.
2016 WordCamp Frankfurt - The Secret Sauce For Writing Reusable CodeAlain Schlesser
Everyone knows that you need to write reusable code to be able to grow as a developer, right?
However, most developers struggle to understand how to split up their code to make it truly reusable, so they end up copy-pasting parts of code and modifying as needed, instead of effectively reusing the code that was already written, without a single change.
This session explains the concept of Config files and how they allow you to cleanly separate reusable code from project-specific code.
Podcasten ist Bloggen, nur mit der Stimme, WordCamp Nürnberg 2016djrewerb
Im Vortrag erfährst du, wie du mit einem Podcast selbst auf Sendung gehst. Vielleicht produzierst du bessere Inhalte, wenn du über deine Themen sprichst, statt zu schreiben.
Klicke hier für ausführliche Notizen und einen Videomitschnitt http://www.rewerb.com/blog/podcasten-bloggen-stimme-vortrag-folien-video.html
Als Wordpress-Nutzer bist du nur ein Plugin davon entfernt deine Webseite in eine Sendeanstalt für Podcasts zu verwandeln.
Podcasts sind regelmäßig erscheinende Audio-Beiträge die von den Hörern meist mit ihrem Smartphone gehört werden. Eine Podcast-Sendung lässt sich wunderbar nebenbei konsumieren. Dabei vermittelt das Audioformat ein gefühlte Nähe zum Sprecher, die sich mit keinem anderen Medium erreichen lässt. Wer sonst darf sich deinen Hörern bis auf wenige Millimeter ans Trommelfell nähern? Die Hörer nehmen dich sogar mit ins Bett.
Thorsten Weber gibt seine langjährige Erfahrung weiter, für welche Themen ein Podcast das richtige Medium ist. Der wichtigste Punkt ist jedoch die Scheu vor dem Klang der eigenen Stimme zu verlieren. Denn in der Aufnahme empfindet man seine eigene Stimme immer als schrecklich.
Außerdem behandelt der Vortrag die technischen Grundlagen, von der Audioaufnahme, über den Schnitt und das Audio-Mastering bis zur Verbreitung des RSS-Feeds über iTunes und Google Play Music.
In der anschließenden Diskussion können wir alle Fragen besprechen, zum Beispiel wie sich Hörer in Kunden verwandeln lassen und wie schwierig das sein kann.
Im Vergleich zu Blogposts und Youtube-Videos ist die Konkurrenz bei Podcasts überschaubar. Dabei stehen wir in Deutschland noch vor dem Durchbruch dieses Mediums. Zukünftig plant Google Play Music auch Podcasts zu unterstützen. Dann bekommen 80 % der deutschen Mobilfunknutzer mit Android-Geräten einen einfachen Zugang zu Podcasts.
Thorsten Weber aka DJ Rewerb | DJ, Podcaster und Blogger
Thorsten Weber veröffentlicht jede Woche eine DJ-Mix-Show namens Houseschuh als Podcast.
Unter seinem Künstlernamen DJ Rewerb legt er am Wochenende als Discjockey auf. Als Resident-DJ begeistert er regelmäßig das Publikum im Terminal90 in Nürnberg. Außerdem ist er als Booking-DJ bis nach Berlin sowie Graz und Ibiza unterwegs. Ein paar Mal spielte DJ Rewerb sogar während der Winter Music Conference in Miami.
Seit mehreren Jahren bloggt Thorsten Weber über das Auflegen auf seiner DJ-Webseite Rewerb.com. Mit dem Podcasting begann er vor zweieinhalb Jahren. Nach dem ersten Jahr des Houseschuh Podcasts startete der DJ einen Interview-Podcast sowie die Hochzeits-DJ Akademie als Co-Moderator.
WordPress ist eine gute Basis für optimierte Seiten. Allerdings gibt es auch hier einige Punkte, die sich negativ auf die Bewertung durch Suchmaschinen auswirken und die ihr korrigieren müsst. Zudem bietet WP unzählige Stellschrauben, mit denen ihr das Maximum aus eurem Content herausholt.
Wie Printformate auch in einer digitalen Welt überzeugenEhrhardt Heinold
Dieser Vortrag, gehalten auf der drupa 2012, diskutiert die Frage, welche Chancen gedruckte Zeitschriften im digitalen Zeitalter haben. Die Antwort lautet. Gute, wenn sie die Veränderungen positiv aufgreifen und sich als Medienmarken positionieren.
What makes a good website? What components are a must-have for an effective website? This WordCamp presentation from Jamie Smith discusses how to decide what pieces your website needs and provide tips for producing the best version of each component. This session is designed mostly for the company or organization that is creating their own website using WordPress, or at least is providing most of the content for a designer who is creating the website.
WordCamp Montreal 2015: Combining Custom Post Types, Fields, and Meta Boxes t...allilevine
Custom post types, fields, and meta boxes all offer powerful ways to transform WordPress sites, but when you use all three together, the impossible becomes possible. In this talk I’ll explore just how custom you can go by combining WordPress’ custom functions to solve a real-world problem. I’ll also cover custom taxonomies, custom templates, and leveraging some basic PHP, featured images, and existing plugin functionality to take your custom post type even further.
Blogi zyskują na popularności, konkurencja rośnie, a czytelnicy robią się coraz bardziej wygodni — dlatego warto o nich zadbać, aby spędzali na naszym blogu więcej czasu i chętniej zostawiali komentarze. Powszechność smartfonów sprawia, że responsywna wersja strony to już nie ukłon w stronę użytkownika, a zwyczajna konieczność. W każdej chwili jesteśmy w stanie sprawdzić co nowego na Facebooku, Instagramie czy przeczytać nowego posta na blogu, który śledzimy. Dlatego ważne jest aby szablon bloga nie utrudniał czytania. W swojej prezentacji, na podstawie analizy blogów takich jak JasonHunt.pl, Segritta.pl, Fashionelka.pl,wskazałam kilka kluczowych elementów z punktu widzenia UX, których prawidłowe działanie może zadecydować o zachowaniu czytelnika na stronie.
I have contributed since 2009 to WordPress and related projects. I have done some great things for WordPress like rewriting the image manipulation API and leading GlotPress for a long while. But It also lead to some disagreements which had an impact.
Learning java script and wordpress rest api by tom hermans wordcamp netherl...Tom Hermans
article + HTML slides :
http://tomhermans.com/blog/learning-javascript-wp-rest-api-talk-wordcamp-nl
TL;DR:
With the advent of the WordPress REST API many opportunities open up regarding building a site. And more importantly, decoupling your frontend from WordPress itself, making it a store or a platform for your data to communicate with with various tools, but mainly JavaScript. Consider this the tl;dr.
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.
Head in the Clouds: Testing Infra as Code - Config Management 2020Peter Souter
Infrastructure-as-code has been one of the key concepts within DevOps to allow the benefits of a full development cycle for infrastructure and allow better visibility of the operations process.
However, when we're writing and applying this IaC, we're often interacting with disparate systems, often geographically dispersed and with very different API's and responses. To further complicate things, different teams also have different concerns: Will this break prod? Will this cost too much? Will this comply with our policies?
We'll be discussing the different kinds of testing that organisations are doing, what tools are right for each job, and how to keep the various teams happy. To do that, we'll be giving some examples with most of the popular IaC tools, where policy fits in and even covering where testing blurs the lines with observability.
Podcasten ist Bloggen, nur mit der Stimme, WordCamp Nürnberg 2016djrewerb
Im Vortrag erfährst du, wie du mit einem Podcast selbst auf Sendung gehst. Vielleicht produzierst du bessere Inhalte, wenn du über deine Themen sprichst, statt zu schreiben.
Klicke hier für ausführliche Notizen und einen Videomitschnitt http://www.rewerb.com/blog/podcasten-bloggen-stimme-vortrag-folien-video.html
Als Wordpress-Nutzer bist du nur ein Plugin davon entfernt deine Webseite in eine Sendeanstalt für Podcasts zu verwandeln.
Podcasts sind regelmäßig erscheinende Audio-Beiträge die von den Hörern meist mit ihrem Smartphone gehört werden. Eine Podcast-Sendung lässt sich wunderbar nebenbei konsumieren. Dabei vermittelt das Audioformat ein gefühlte Nähe zum Sprecher, die sich mit keinem anderen Medium erreichen lässt. Wer sonst darf sich deinen Hörern bis auf wenige Millimeter ans Trommelfell nähern? Die Hörer nehmen dich sogar mit ins Bett.
Thorsten Weber gibt seine langjährige Erfahrung weiter, für welche Themen ein Podcast das richtige Medium ist. Der wichtigste Punkt ist jedoch die Scheu vor dem Klang der eigenen Stimme zu verlieren. Denn in der Aufnahme empfindet man seine eigene Stimme immer als schrecklich.
Außerdem behandelt der Vortrag die technischen Grundlagen, von der Audioaufnahme, über den Schnitt und das Audio-Mastering bis zur Verbreitung des RSS-Feeds über iTunes und Google Play Music.
In der anschließenden Diskussion können wir alle Fragen besprechen, zum Beispiel wie sich Hörer in Kunden verwandeln lassen und wie schwierig das sein kann.
Im Vergleich zu Blogposts und Youtube-Videos ist die Konkurrenz bei Podcasts überschaubar. Dabei stehen wir in Deutschland noch vor dem Durchbruch dieses Mediums. Zukünftig plant Google Play Music auch Podcasts zu unterstützen. Dann bekommen 80 % der deutschen Mobilfunknutzer mit Android-Geräten einen einfachen Zugang zu Podcasts.
Thorsten Weber aka DJ Rewerb | DJ, Podcaster und Blogger
Thorsten Weber veröffentlicht jede Woche eine DJ-Mix-Show namens Houseschuh als Podcast.
Unter seinem Künstlernamen DJ Rewerb legt er am Wochenende als Discjockey auf. Als Resident-DJ begeistert er regelmäßig das Publikum im Terminal90 in Nürnberg. Außerdem ist er als Booking-DJ bis nach Berlin sowie Graz und Ibiza unterwegs. Ein paar Mal spielte DJ Rewerb sogar während der Winter Music Conference in Miami.
Seit mehreren Jahren bloggt Thorsten Weber über das Auflegen auf seiner DJ-Webseite Rewerb.com. Mit dem Podcasting begann er vor zweieinhalb Jahren. Nach dem ersten Jahr des Houseschuh Podcasts startete der DJ einen Interview-Podcast sowie die Hochzeits-DJ Akademie als Co-Moderator.
WordPress ist eine gute Basis für optimierte Seiten. Allerdings gibt es auch hier einige Punkte, die sich negativ auf die Bewertung durch Suchmaschinen auswirken und die ihr korrigieren müsst. Zudem bietet WP unzählige Stellschrauben, mit denen ihr das Maximum aus eurem Content herausholt.
Wie Printformate auch in einer digitalen Welt überzeugenEhrhardt Heinold
Dieser Vortrag, gehalten auf der drupa 2012, diskutiert die Frage, welche Chancen gedruckte Zeitschriften im digitalen Zeitalter haben. Die Antwort lautet. Gute, wenn sie die Veränderungen positiv aufgreifen und sich als Medienmarken positionieren.
What makes a good website? What components are a must-have for an effective website? This WordCamp presentation from Jamie Smith discusses how to decide what pieces your website needs and provide tips for producing the best version of each component. This session is designed mostly for the company or organization that is creating their own website using WordPress, or at least is providing most of the content for a designer who is creating the website.
WordCamp Montreal 2015: Combining Custom Post Types, Fields, and Meta Boxes t...allilevine
Custom post types, fields, and meta boxes all offer powerful ways to transform WordPress sites, but when you use all three together, the impossible becomes possible. In this talk I’ll explore just how custom you can go by combining WordPress’ custom functions to solve a real-world problem. I’ll also cover custom taxonomies, custom templates, and leveraging some basic PHP, featured images, and existing plugin functionality to take your custom post type even further.
Blogi zyskują na popularności, konkurencja rośnie, a czytelnicy robią się coraz bardziej wygodni — dlatego warto o nich zadbać, aby spędzali na naszym blogu więcej czasu i chętniej zostawiali komentarze. Powszechność smartfonów sprawia, że responsywna wersja strony to już nie ukłon w stronę użytkownika, a zwyczajna konieczność. W każdej chwili jesteśmy w stanie sprawdzić co nowego na Facebooku, Instagramie czy przeczytać nowego posta na blogu, który śledzimy. Dlatego ważne jest aby szablon bloga nie utrudniał czytania. W swojej prezentacji, na podstawie analizy blogów takich jak JasonHunt.pl, Segritta.pl, Fashionelka.pl,wskazałam kilka kluczowych elementów z punktu widzenia UX, których prawidłowe działanie może zadecydować o zachowaniu czytelnika na stronie.
I have contributed since 2009 to WordPress and related projects. I have done some great things for WordPress like rewriting the image manipulation API and leading GlotPress for a long while. But It also lead to some disagreements which had an impact.
Learning java script and wordpress rest api by tom hermans wordcamp netherl...Tom Hermans
article + HTML slides :
http://tomhermans.com/blog/learning-javascript-wp-rest-api-talk-wordcamp-nl
TL;DR:
With the advent of the WordPress REST API many opportunities open up regarding building a site. And more importantly, decoupling your frontend from WordPress itself, making it a store or a platform for your data to communicate with with various tools, but mainly JavaScript. Consider this the tl;dr.
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.
Head in the Clouds: Testing Infra as Code - Config Management 2020Peter Souter
Infrastructure-as-code has been one of the key concepts within DevOps to allow the benefits of a full development cycle for infrastructure and allow better visibility of the operations process.
However, when we're writing and applying this IaC, we're often interacting with disparate systems, often geographically dispersed and with very different API's and responses. To further complicate things, different teams also have different concerns: Will this break prod? Will this cost too much? Will this comply with our policies?
We'll be discussing the different kinds of testing that organisations are doing, what tools are right for each job, and how to keep the various teams happy. To do that, we'll be giving some examples with most of the popular IaC tools, where policy fits in and even covering where testing blurs the lines with observability.
Supercharging WordPress Development in 2018Adam Tomat
Slide links:
- PHP-FIG: https://www.php-fig.org/psr
- Timber: https://www.upstatement.com/timber/
- Bedrock: https://roots.io/bedrock/
- Lumberjack: https://github.com/Rareloop/lumberjack
- Lumberjack Core: https://github.com/Rareloop/lumberjack-core
- Collections: https://laravel.com/docs/5.6/collections
- PHP-DI: http://php-di.org/
- Lumberjack Validation: https://github.com/Rareloop/lumberjack-validation
- Sessions: https://github.com/Rareloop/lumberjack-core/tree/ft-session
- Lumberjack Example Repo: https://github.com/Rareloop/lumberjack-example
- Laravel Responsable: https://laravel-news.com/laravel-5-5-responsable
Towards the end of 2015 Rareloop launched their WordPress starter theme Lumberjack, which built on open source tools such as Bedrock and Timber. We wanted to move Lumberjack forward inline with everything we have learnt over the years of using it - which meant completely re-writing it from the ground up. The new Lumberjack is now stable and ready for use!
This talk is aimed at anyone involved in working with WordPress, regardless of how technical you are. The beauty of Lumberjack is that you can use as much or as little as you like, so whether you’re new to web development or a seasoned software engineer there will be something here for you.
$kernel->infect(): Creating a cryptovirus for Symfony2 appsRaul Fraile
Slides for my presentation at the Symfony Valencia meetup on creating a cryptovirus for Symfony2 apps.
Video (in Spanish): http://www.youtube.com/watch?v=rLHzmA0UuIw
Adam has authored CodeIgniter 1.7 Professional Development; the first advanced CodeIgniter book, gives an overview of what's new with CodeIgniter 2.0, how to upgrade your applications and a detailed overview of how to create drivers.
RESTful APIs are useful when developing a modern web application since they allow for multiple possibilities for collaboration with third-party software as well as multiple types of front-ends, such as mobile apps and HTML5 web applications. The creation of RESTful API’s is facilitated using Laravel 4, a PHP 5.3 Framework that is rapidly growing in popularity. Laravel’s features such as the facade pattern allow for easy-to-read code and expressive ORM statements.
Tobias Nyholm "Deep dive into Symfony 4 internals"Fwdays
Symfony is a request and response framework. But what about all that magic that happens around your code? How does security work? Why isn’t autowring slowing things down? And how is it that symfony components can be so decoupled but still play so well together?
I will show you the symfony internals
This talk will go over the architecture of Symfony. We will follow the request and the response paths throw the framework. We will do some stops at the components that are more awesome than others.
This talk is perfect for those who's worked with Symfony or Laravel before. But if you've never touched a framework before, don't worry. You will still learn a lot from this talk.
Filesystem Management with Flysystem at PHP UK 2023Mark Niebergall
Reading and writing files locally comes with many nuances and difficulties. It becomes even more complex when files are hosted on external servers like SFTP, AWS S3, Azure, and other providers. Flysystem provides an abstraction layer between an application and interacting with the filesystems. Explore how to use Flysystem Adapters for seamless file management for writing, reading, moving, copying, deleting, and other file interactions. See how to set permissions, configure adapters, get file information, stream files, write unit tests, and more in this technical dive into file management with Flysystem.
Filesystem Management with Flysystem - php[tek] 2023Mark Niebergall
Reading and writing files locally comes with many nuances and difficulties. It becomes even more complex when files are hosted on external servers like SFTP, AWS S3, Azure, and other providers. Flysystem provides an abstraction layer between an application and interacting with the filesystems. Explore how to use Flysystem Adapters for seamless file management for writing, reading, moving, copying, deleting, and other file interactions. See how to set permissions, configure adapters, get file information, stream files, write unit tests, and more in this technical dive into file management with Flysystem.
Like many others, WordPress has been my personal blogging tool for a long time. A powerful tool for easy publishing! That is what everyone wants.
Large sites like TechCrunch and TheNextWeb use it exactly for that reason. And more enterprises seem to discover it as good solution to their too-expensive publication tools. But keeping those WordPress instances running requires skills and knowledge.
Because of WordPress extendibility and its very active community, you can do this too. This tutorial will teach you how use Ansible, Composer, WP-CLI, WP REST API, and Elasticsearch can push WordPress from a personal blogging tool into an enterprise-worthy level application. Out with FTP based SCM ... in with automated deployment, dependency management, and utterly fast search.
Similar to The Secret Sauce For Writing Reusable Code (20)
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteGoogle
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-pilot-review/
AI Pilot Review: Key Features
✅Deploy AI expert bots in Any Niche With Just A Click
✅With one keyword, generate complete funnels, websites, landing pages, and more.
✅More than 85 AI features are included in the AI pilot.
✅No setup or configuration; use your voice (like Siri) to do whatever you want.
✅You Can Use AI Pilot To Create your version of AI Pilot And Charge People For It…
✅ZERO Manual Work With AI Pilot. Never write, Design, Or Code Again.
✅ZERO Limits On Features Or Usages
✅Use Our AI-powered Traffic To Get Hundreds Of Customers
✅No Complicated Setup: Get Up And Running In 2 Minutes
✅99.99% Up-Time Guaranteed
✅30 Days Money-Back Guarantee
✅ZERO Upfront Cost
See My Other Reviews Article:
(1) TubeTrivia AI Review: https://sumonreview.com/tubetrivia-ai-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...informapgpstrackings
Keep tabs on your field staff effortlessly with Informap Technology Centre LLC. Real-time tracking, task assignment, and smart features for efficient management. Request a live demo today!
For more details, visit us : https://informapuae.com/field-staff-tracking/
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
Even though at surface level ‘java.lang.OutOfMemoryError’ appears as one single error; underlyingly there are 9 types of OutOfMemoryError. Each type of OutOfMemoryError has different causes, diagnosis approaches and solutions. This session equips you with the knowledge, tools, and techniques needed to troubleshoot and conquer OutOfMemoryError in all its forms, ensuring smoother, more efficient Java applications.
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
Understanding Globus Data Transfers with NetSageGlobus
NetSage is an open privacy-aware network measurement, analysis, and visualization service designed to help end-users visualize and reason about large data transfers. NetSage traditionally has used a combination of passive measurements, including SNMP and flow data, as well as active measurements, mainly perfSONAR, to provide longitudinal network performance data visualization. It has been deployed by dozens of networks world wide, and is supported domestically by the Engagement and Performance Operations Center (EPOC), NSF #2328479. We have recently expanded the NetSage data sources to include logs for Globus data transfers, following the same privacy-preserving approach as for Flow data. Using the logs for the Texas Advanced Computing Center (TACC) as an example, this talk will walk through several different example use cases that NetSage can answer, including: Who is using Globus to share data with my institution, and what kind of performance are they able to achieve? How many transfers has Globus supported for us? Which sites are we sharing the most data with, and how is that changing over time? How is my site using Globus to move data internally, and what kind of performance do we see for those transfers? What percentage of data transfers at my institution used Globus, and how did the overall data transfer performance compare to the Globus users?
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
The European Union Agency for Law Enforcement Cooperation (Europol) has suffered an alleged data breach after a notorious threat actor claimed to have exfiltrated data from its systems. Infamous data leaker IntelBroker posted on the even more infamous BreachForums hacking forum, saying that Europol suffered a data breach this month.
The alleged breach affected Europol agencies CCSE, EC3, Europol Platform for Experts, Law Enforcement Forum, and SIRIUS. Infiltration of these entities can disrupt ongoing investigations and compromise sensitive intelligence shared among international law enforcement agencies.
However, this is neither the first nor the last activity of IntekBroker. We have compiled for you what happened in the last few days. To track such hacker activities on dark web sources like hacker forums, private Telegram channels, and other hidden platforms where cyber threats often originate, you can check SOCRadar’s Dark Web News.
Stay Informed on Threat Actors’ Activity on the Dark Web with SOCRadar!
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
Listen to the keynote address and hear about the latest developments from Rachana Ananthakrishnan and Ian Foster who review the updates to the Globus Platform and Service, and the relevance of Globus to the scientific community as an automation platform to accelerate scientific discovery.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Globus
The U.S. Geological Survey (USGS) has made substantial investments in meeting evolving scientific, technical, and policy driven demands on storing, managing, and delivering data. As these demands continue to grow in complexity and scale, the USGS must continue to explore innovative solutions to improve its management, curation, sharing, delivering, and preservation approaches for large-scale research data. Supporting these needs, the USGS has partnered with the University of Chicago-Globus to research and develop advanced repository components and workflows leveraging its current investment in Globus. The primary outcome of this partnership includes the development of a prototype enterprise repository, driven by USGS Data Release requirements, through exploration and implementation of the entire suite of the Globus platform offerings, including Globus Flow, Globus Auth, Globus Transfer, and Globus Search. This presentation will provide insights into this research partnership, introduce the unique requirements and challenges being addressed and provide relevant project progress.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
2. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
NOTE:
This talk was held at WordCamp Frankfurt on Sep. 4, 2016.
There’s an (on-going) series of complimentary blog posts:
https://www.alainschlesser.com/config-files-for-reusable-code/
3. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
About The Person In Front Of You
Born in Luxembourg
Living in Germany
Working in the Cloud
Passionate about:
Code quality, software architecture, best
practices, principles, patterns, and
everything related.
4. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
What To Expect
1. General principle that makes
code reusable
2. Common way of
implementing this principle
5. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
The Problem With Reusable Code…
6. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Object-oriented syntax in and
of itself does not make your
code reusable.
7. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
So We Need To Rearrange This…
8. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
…Into This
9. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Design your code so that the
reusable parts and the project-
specific parts never intermingle.
10. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
This Easily Allows Us To Go From This…
11. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
…To This
12. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Example Code
Problem:
We want to have a reusable
Greeter class that can show
different greetings in different
projects.*
* Silly example that can still fit on slides
13. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
class Greeter {
/**
* @param string $name The name of the person to greet.
*/
public function greet( $name ) {
printf( 'Hello %2$s!', $name );
}
}
Mixed Code Types
14. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
class Greeter {
/**
* @param string $name The name of the person to greet.
*/
public function greet( $name ) {
printf( 'Hello %2$s!', $name );
}
}
= reusable code = project-specific code
Mixed Code Types
15. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
The reusable class should completely
ignore where it gets its business
logic from. It should act on
whatever gets passed to it.
à Injection
16. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
class ReusableGreeter {
/** @var ConfigInterface */
protected $config;
/**
* @param ConfigInterface $config The Config to use.
*/
public function __construct( ConfigInterface $config ) {
$this->config = $config;
}
/**
* @param string $name The name of the person to greet.
*/
public function greet( $name ) {
$greeting = $this->config->get( 'greeting' );
printf( '%1$s %2$s!', $greeting, $name );
}
}
17. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
class ReusableGreeter {
/** @var ConfigInterface */
protected $config;
/**
* @param ConfigInterface $config The Config to use.
*/
public function __construct( ConfigInterface $config ) {
$this->config = $config;
}
/**
* @param string $name The name of the person to greet.
*/
public function greet( $name ) {
$greeting = $this->config->get( 'greeting' );
printf( '%1$s %2$s!', $greeting, $name );
}
}
= reusable code = project-specific code
18. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Business-specific Code à Config File
ConfigFile
Reusable Class
Business Logic
19. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
<?php
// We return a standard PHP array as a result of including
// this Config file.
return [
'greeting' => 'Hello',
];
Basic Config File
20. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
<?php
// We return a standard PHP array as a result of including
// this Config file.
return [
'greeting' => 'Hello',
];
= reusable code = project-specific code
=>
Basic Config File
21. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Immediate Benefits
• Separate files
• Injection
• Type-hinting
• Validation
23. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Source Is Flexible
As the source should be irrelevant for the
classes that use the Config data, you can
combine several files into one, read them
from a database or network, build them at
run-time for unit tests, etc…
24. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
<?php
// We can prefix a section of a Config, so that one file
// can be used for multiple classes.
return [
'ReusableGreeter' => [
'greeting' => 'Hello',
],
];
Prefix For The Reusable Class
25. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
class Plugin {
/** @var ConfigInterface */
protected $config;
/**
* @param ConfigInterface $config The Config to use.
*/
public function __construct( ConfigInterface $config ) {
$this->config = $config;
}
public function run() {
$greeter = new ReusableGreeter(
$this->config->getSubConfig( 'ReusableGreeter' )
);
$greeter->greet( 'World' );
}
}
26. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
ConfigFile
Getting The Config File Into The Reusable Class
Reusable Class
Plugin ClassBusiness Logic
Business Logic
Business Logic
27. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
<?php
// We can prefix the entire Config, so that a single file
// can be shared across several plugins.
$reusable_greeter = [
'greeting' => 'Hello',
];
return [
'Example' => [
'Greeter' => [
'ReusableGreeter' => $reusable_greeter;
],
],
];
Prefix For Multiple Plugins
28. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
<?php
namespace ExampleGreeter;
$config = ConfigFactory::create( __DIR__ . 'config/defaults.php' );
$plugin = new Plugin( $config->getSubConfig( __NAMESPACE__ ) );
$plugin->run();
Prefix For Multiple Plugins
29. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Configs & Auto-wiring Injection
interface DatabaseConfig extends ConfigInterface { }
class Database {
/** @var DatabaseConfig */
protected $config;
/**
* @param DatabaseConfig $config The Config to use.
*/
public function __construct( DatabaseConfig $config ) {
$this->config = $config;
}
}
30. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Domain-Specific Language
Domain-specific language (noun):
a computer programming language of limited
expressiveness focused on a particular domain.
- Martin Fowler, ThoughtWorks
32. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Adapted Configs
Provide defaults and then overridewith differentConfigs …
• for different sites/apps (site_a.php)
• for different environments (site_a-development.php)
• for different contexts (unit-tests.php)
• for specific situations (run-backups.php)
• …
33. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Site/App-specific Configurations
config/defaults.php
config/dt.php
34. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
35. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
Config Library
https://github.com/brightnucleus/config
My own library:
Alternatives:
https://github.com/symfony/config
symfony/config
https://github.com/zendframework/zend-config
zendframework/zend-config
brightnucleus/config
36. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
“Can You Summarize, Please?”
• Design for reusability from the get-go
• Have a clean separation between
different types of code
• Config files provide a structured way of
injecting project-specific logic into
reusable classes
37. The Secret Sauce ForWriting Reusable Code – 4th September 2016– Alain Schlesser
The End
I’m Alain Schlesser.
Follow me on twitter:
@schlessera
Or visit my site:
www.alainschlesser.com