This document provides an overview of trunk-based development. It begins with defining continuous integration, delivery, deployment, and release. It then discusses branching strategies like GitFlow and the problems with pull requests. Trunk-based development is presented as pushing code directly to the main branch, along with practices like pairing, feature flags, and continuous delivery pipelines. The document stresses trunk-based development is about more than just the branch - it requires risk management, delivering value, and technical excellence. It provides advice on when not to use it and how to start implementing it.
Tired of doing upfront test script creation in your testing efforts? Feeling bad for demotivating your testers? Want something to replace this sickening approach to software testing? This presentation outlines why test scripts are not useful, and how test ideas are the new way forward to better testing. Coverage, traceability, reporting, automation and skills are all covered. Take a quick look and see if you can see there is another way to do software testing that is actually pure common sense.
Being Agile without Continuous Anything - does that make sense?Markus Jansen
While the short answer to the title question is "No. Most probably not.", the presentation explains various areas of Continuous Delivery and DevOps for a first overview. By introducing the Continuous Delivery Maturity Model from Praqma A/S, it offers incremental ways to improve a given engineering environment in detail.
When you're responsible for testing, it's almost a given that you will find yourself in a situation in which you feel alone and out in the cold. Management’s commitment for testing might be lacking, your colleagues in the project might be ignoring you, your team members might lack motivation, or the automated testing you had planned is more complicated and difficult than you anticipated. You feel you can't test enough, and you will be blamed for post-release quality problems. Hans Buwalda shares a number of chilly situations and offers suggestions for overcoming them, based on his experiences worldwide in large projects. Specifically, Hans focuses on management commitment, politics, project dependencies, managing expectations, motivating team members, testing and automation difficulties, and dealing with overwhelming numbers of day-to-day problems. Take away more than forty-five tips and approaches to use when temperatures drop on you.
An overview about Continuous Delivery. What is it? Why should you care about it? See how your team can implement Continuous Delivery in order to deliver business value in a sustainable yet efficient way.
Tired of doing upfront test script creation in your testing efforts? Feeling bad for demotivating your testers? Want something to replace this sickening approach to software testing? This presentation outlines why test scripts are not useful, and how test ideas are the new way forward to better testing. Coverage, traceability, reporting, automation and skills are all covered. Take a quick look and see if you can see there is another way to do software testing that is actually pure common sense.
Being Agile without Continuous Anything - does that make sense?Markus Jansen
While the short answer to the title question is "No. Most probably not.", the presentation explains various areas of Continuous Delivery and DevOps for a first overview. By introducing the Continuous Delivery Maturity Model from Praqma A/S, it offers incremental ways to improve a given engineering environment in detail.
When you're responsible for testing, it's almost a given that you will find yourself in a situation in which you feel alone and out in the cold. Management’s commitment for testing might be lacking, your colleagues in the project might be ignoring you, your team members might lack motivation, or the automated testing you had planned is more complicated and difficult than you anticipated. You feel you can't test enough, and you will be blamed for post-release quality problems. Hans Buwalda shares a number of chilly situations and offers suggestions for overcoming them, based on his experiences worldwide in large projects. Specifically, Hans focuses on management commitment, politics, project dependencies, managing expectations, motivating team members, testing and automation difficulties, and dealing with overwhelming numbers of day-to-day problems. Take away more than forty-five tips and approaches to use when temperatures drop on you.
An overview about Continuous Delivery. What is it? Why should you care about it? See how your team can implement Continuous Delivery in order to deliver business value in a sustainable yet efficient way.
Luiz Fernando Testa Contador - Aplicando DevOps em grandes corporaçõesAgile Trends
Assunto que será abordado:
Por onde e como começar aplicar DevOps em grandes corporações?
Diferenças entre DevOps para Start-Ups vs Grandes Corporações
Principais barreiras a serem quebradas
Mudança de MindSet Corporativo
Principais ganhos para a corporação
This lecture was created by Mashro3na team in PiTechnologies.
Session aims to illustrate common mistakes, problems and drawbacks in graduation projects with the expected reasons and the recommended solutions
Agility and planning : tools and processesJérôme Kehrli
In this presentation, I intend to present the fundamentals, the roles, the processes, the rituals and the values that I believe a team would need to embrace to achieve success down the line in Agile Software Development Management - Product Management, Team Management and Project Management - with the ultimate goal of making planning and forecasting as simple and efficient as it can be.
Developing great products is hard. Using dual-track Agile dramatically improves the likelihood of success. But getting products off the ground requires some up-front thinking. Rackspace uses a number of tools to design and build the right product, not just build the product right. This presentation offers four of those tools.
Lean-Agile Development with SharePoint - Bill AyersSPC Adriatics
SharePoint gives us a great platform for developing sophisticated intranet portals and collaboration sites and many other workloads. But it can also be a challenge to use modern software development frameworks like Scrum and XP. Wouldn’t it be great if we could get all the benefits of Agile practices – faster development, predictable deliveries, better quality, less stress and happy stakeholders? In this session we will cover the definitions of Lean, Agile, Scrum, Kanban, XP, and TDD. Then we will look at the specific challenges around Agile SharePoint development and some development techniques to overcome these obstacles. This talk covers both project delivery and engineering. We’ll look at unit tests, integration tests, UI tests, continuous integration and, of course, test-driven development (TDD) with practical experiences from real-life Agile SharePoint projects.
As Agile become mainstream increasingly organizations are looking to double down on the role of the Product Owner encouraging them to manage the intersection between technology and the business. But Product Ownership is a difficult role as it tries to balance the needs of the business with the reality of software delivery. Also, for many organizations there is some ‘confusion’ with existing roles of business analyst, product manager or even project manager. What does the product owner do anyway?
In this talk Dave West, Product Owner and CEO Scrum.org, the home of Scrum and Professional Scrum Trainer with Prowareness Rob van Lanen describe the genesis of the Product Owner role and how many organizations are dealing with the challenges of slotting this key role into existing product, project and release roles. They will introduce some techniques such as user centric design, and hypophysis based development and describe how approaches such as Lean Startup and pragmatic marketing are providing product owners with a tool box to do their job.
Recorded Webinar can be found at :-https://www.scrum.org/resources/who-product-owner-anyway
Test Driven Development su iOS è possibile e persino utile.
Invece di leggere blog post che sottointendono che TDD su iOS sia difficile e inutile venite a vedere chi lo usa sul serio e ha il coraggio di programmare ad una conferenza davanti ad altre persone.
Avvertenze:
questo talk non contiene paternali sul perché si dovrebbe (o non si dovrebbe) fare TDD
in questo talk non verranno usati strumenti complicati
in questo talk verrà scritto ed eseguito codice dal vivo
Dopo una brevissima introduzione passerò a sviluppare guidato dai test una semplice applicazione per iPhone.
What is Agile Development? From the historic point of viewDotinum
Before agile, a waterfall model was the most common approach to software development. The growth of the agile approach has officially started with the Agile Manifesto in 2001.
Don't Suck at Building Stuff - Mykel Alvis at Puppet Camp AltantaPuppet
"Don't Suck at Building Stuff" by Mykel Alvis of MomentumSI. Talk given at Puppet Camp Atlanta 2013. Learn about upcoming Puppet Camps at http://puppetlabs.com/community/puppet-camp/
Luiz Fernando Testa Contador - Aplicando DevOps em grandes corporaçõesAgile Trends
Assunto que será abordado:
Por onde e como começar aplicar DevOps em grandes corporações?
Diferenças entre DevOps para Start-Ups vs Grandes Corporações
Principais barreiras a serem quebradas
Mudança de MindSet Corporativo
Principais ganhos para a corporação
This lecture was created by Mashro3na team in PiTechnologies.
Session aims to illustrate common mistakes, problems and drawbacks in graduation projects with the expected reasons and the recommended solutions
Agility and planning : tools and processesJérôme Kehrli
In this presentation, I intend to present the fundamentals, the roles, the processes, the rituals and the values that I believe a team would need to embrace to achieve success down the line in Agile Software Development Management - Product Management, Team Management and Project Management - with the ultimate goal of making planning and forecasting as simple and efficient as it can be.
Developing great products is hard. Using dual-track Agile dramatically improves the likelihood of success. But getting products off the ground requires some up-front thinking. Rackspace uses a number of tools to design and build the right product, not just build the product right. This presentation offers four of those tools.
Lean-Agile Development with SharePoint - Bill AyersSPC Adriatics
SharePoint gives us a great platform for developing sophisticated intranet portals and collaboration sites and many other workloads. But it can also be a challenge to use modern software development frameworks like Scrum and XP. Wouldn’t it be great if we could get all the benefits of Agile practices – faster development, predictable deliveries, better quality, less stress and happy stakeholders? In this session we will cover the definitions of Lean, Agile, Scrum, Kanban, XP, and TDD. Then we will look at the specific challenges around Agile SharePoint development and some development techniques to overcome these obstacles. This talk covers both project delivery and engineering. We’ll look at unit tests, integration tests, UI tests, continuous integration and, of course, test-driven development (TDD) with practical experiences from real-life Agile SharePoint projects.
As Agile become mainstream increasingly organizations are looking to double down on the role of the Product Owner encouraging them to manage the intersection between technology and the business. But Product Ownership is a difficult role as it tries to balance the needs of the business with the reality of software delivery. Also, for many organizations there is some ‘confusion’ with existing roles of business analyst, product manager or even project manager. What does the product owner do anyway?
In this talk Dave West, Product Owner and CEO Scrum.org, the home of Scrum and Professional Scrum Trainer with Prowareness Rob van Lanen describe the genesis of the Product Owner role and how many organizations are dealing with the challenges of slotting this key role into existing product, project and release roles. They will introduce some techniques such as user centric design, and hypophysis based development and describe how approaches such as Lean Startup and pragmatic marketing are providing product owners with a tool box to do their job.
Recorded Webinar can be found at :-https://www.scrum.org/resources/who-product-owner-anyway
Test Driven Development su iOS è possibile e persino utile.
Invece di leggere blog post che sottointendono che TDD su iOS sia difficile e inutile venite a vedere chi lo usa sul serio e ha il coraggio di programmare ad una conferenza davanti ad altre persone.
Avvertenze:
questo talk non contiene paternali sul perché si dovrebbe (o non si dovrebbe) fare TDD
in questo talk non verranno usati strumenti complicati
in questo talk verrà scritto ed eseguito codice dal vivo
Dopo una brevissima introduzione passerò a sviluppare guidato dai test una semplice applicazione per iPhone.
What is Agile Development? From the historic point of viewDotinum
Before agile, a waterfall model was the most common approach to software development. The growth of the agile approach has officially started with the Agile Manifesto in 2001.
Don't Suck at Building Stuff - Mykel Alvis at Puppet Camp AltantaPuppet
"Don't Suck at Building Stuff" by Mykel Alvis of MomentumSI. Talk given at Puppet Camp Atlanta 2013. Learn about upcoming Puppet Camps at http://puppetlabs.com/community/puppet-camp/
Managing a team and project are quite synonymous. Especially, teams require effective distribution of responsibility / roles. Once that is setup, a proper process guides people to make progress. All this fits into a product lifecycle, which is essential to develop the right product, in the right way, and deliver it at the right time.
Measuring the Productivity of Your Engineering Organisation - the Good, the B...Marin Dimitrov
High-performing engineering teams regularly dedicate time on measuring the performance & quality of the systems and applications they’re building or on measuring & improving the various aspects of the development lifecycle. High-performing product companies are also data-driven when it comes to measuring the impact of new features & products in terms of business KPIs and Northstar metrics.
Can a data-driven approach be applied to measuring the performance, maturity and continuous improvement of an engineering team or the whole engineering organisation? In this discussion we’ll cover various important topics related to quantifying the performance of an engineering organisation
Tenants for Going at DevSecOps Speed - LASCON 2023Matt Tesauro
You’re tasked with ‘doing DevSecOps’ for your company and you’ve got more apps and issues than you know how to deal with. How do you make sense of the different tool outputs for all your different apps let alone shrink the pile of work already on your plate? In this talk, we’ll discuss the key decision points and requirements to set up a program that moves as fast as it needs to without your team burning out. Learn how to keep moving forward while keeping your sanity.
After learning to be nimble from dealing with teams that are doing 75 production deployments per week, the surviving ideas have been distilled into a collection of tenants. We’ll cover: How to handle CI/CD tests versus traditional security assessments? How to best manage SLAs? How to keep data for auditors and regulatory requirements while also doing continuous testing? Understanding health checks versus continuous testing versus manual testing. How to deal with false positives, risk acceptances and the lifecycle of a security issue? By using these tenants, security assessments at one company grew from 44 to 414 in 2 years or 9.4 times all while losing some headcount. Time to turn chaos into calm and distress into success.
A brief history of automation in Software EngineeringGeorg Buske
In this talk we will discuss different levels of automation and what automation has in common with DevOps, Product Maturity and Machine learning. We will show how automation enables fast feedback and finally, while looking at an example of an observable and continuous deployable system we will show how automation can make your team more productive (while delivering more stable software and decrease time to market).
The Final Frontier, Automating Dynamic Security TestingMatt Tesauro
This is not your normal DevSecOps presentation. We’re going to take on the most difficult aspect of security automation, the dreaded and pitfall prone, dynamic testing. You want to shift left and automate all the things, but DAST specifically has many thorns. How do you ensure what you’re testing matches production? Do devs own the environment? On metal, docker, kubernetes, or docker-compose? Test coverage? Balancing all these elements and more is not easy. Especially if you want to create a single, scalable, standard for your entire org. In this talk, we’ll cover what is needed to start automating your dynamic security testing, how to navigate the trade-offs you’ll have to consider, and finally how best to fit automated DAST testing into your software delivery pipelines. We’ll discuss simple and easy steps to gain efficiency and how to scale to mature pipelines that require little to no human intervention.
Embracing Culture, Sharing, and Systems from Employee 1.
Reference Article: https://rickmanelius.com/article/employee-1-and-beyond-system-set-checklist
Presented at the Boulder DevOps Presentation Meetup on 11/2019
What Are the Basics of Product Manager Interviews by Google PMProduct School
Ankit walked through an intro to the Product Manager role, the skills needed, and how the role differs between small and large companies. He wrapped up with some advice that's helped him in his Product Manager interviews over the years.
He gave a structured approach to thinking about what a Product Manager actually does (structured, meaning no "top 10" lists) and what are the skills you need to do well as a Product Manager.
After decades of development, in 2022, AI systems achieved a new level of popularity with the emergence of Generative AI, which is capable of producing high-quality images, texts, and speech from text-based prompts. OpenAI's ChatGPT product captured the imaginations of consumers and business alike, and seemed poised to change everything.
In this webinar, we will be exploring the fundamentals of AI's impact on content marketing, what (if anything) has actually changed, and how to harness AI as a strategic advantage in your content process.
To watch the recording of the webinar, visit: https://my.demio.com/recording/J7GlZKRv
Break Up the Monolith- Testing Microservices by Marcus MerrellSauce Labs
Microservices is more than a buzzword: it’s an industry-wide tidal wave. Companies are spending millions to break up monoliths and spin up microservices, but they usually only involve QA at the very end. This talk by Marcus Merrell centers around real-world experiences and will pose questions that attendees can ask their developers/product people, and offer solutions for teams to help make your service more discoverable, more testable, and easier to release.
How to Position Your Globus Data Portal for Success Ten Good PracticesGlobus
Science gateways allow science and engineering communities to access shared data, software, computing services, and instruments. Science gateways have gained a lot of traction in the last twenty years, as evidenced by projects such as the Science Gateways Community Institute (SGCI) and the Center of Excellence on Science Gateways (SGX3) in the US, The Australian Research Data Commons (ARDC) and its platforms in Australia, and the projects around Virtual Research Environments in Europe. A few mature frameworks have evolved with their different strengths and foci and have been taken up by a larger community such as the Globus Data Portal, Hubzero, Tapis, and Galaxy. However, even when gateways are built on successful frameworks, they continue to face the challenges of ongoing maintenance costs and how to meet the ever-expanding needs of the community they serve with enhanced features. It is not uncommon that gateways with compelling use cases are nonetheless unable to get past the prototype phase and become a full production service, or if they do, they don't survive more than a couple of years. While there is no guaranteed pathway to success, it seems likely that for any gateway there is a need for a strong community and/or solid funding streams to create and sustain its success. With over twenty years of examples to draw from, this presentation goes into detail for ten factors common to successful and enduring gateways that effectively serve as best practices for any new or developing gateway.
top nidhi software solution freedownloadvrstrong314
This presentation emphasizes the importance of data security and legal compliance for Nidhi companies in India. It highlights how online Nidhi software solutions, like Vector Nidhi Software, offer advanced features tailored to these needs. Key aspects include encryption, access controls, and audit trails to ensure data security. The software complies with regulatory guidelines from the MCA and RBI and adheres to Nidhi Rules, 2014. With customizable, user-friendly interfaces and real-time features, these Nidhi software solutions enhance efficiency, support growth, and provide exceptional member services. The presentation concludes with contact information for further inquiries.
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.
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?
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/
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns
Unlocking Business Potential: Tailored Technology Solutions by Prosigns
Discover how Prosigns, a leading technology solutions provider, partners with businesses to drive innovation and success. Our presentation showcases our comprehensive range of services, including custom software development, web and mobile app development, AI & ML solutions, blockchain integration, DevOps services, and Microsoft Dynamics 365 support.
Custom Software Development: Prosigns specializes in creating bespoke software solutions that cater to your unique business needs. Our team of experts works closely with you to understand your requirements and deliver tailor-made software that enhances efficiency and drives growth.
Web and Mobile App Development: From responsive websites to intuitive mobile applications, Prosigns develops cutting-edge solutions that engage users and deliver seamless experiences across devices.
AI & ML Solutions: Harnessing the power of Artificial Intelligence and Machine Learning, Prosigns provides smart solutions that automate processes, provide valuable insights, and drive informed decision-making.
Blockchain Integration: Prosigns offers comprehensive blockchain solutions, including development, integration, and consulting services, enabling businesses to leverage blockchain technology for enhanced security, transparency, and efficiency.
DevOps Services: Prosigns' DevOps services streamline development and operations processes, ensuring faster and more reliable software delivery through automation and continuous integration.
Microsoft Dynamics 365 Support: Prosigns provides comprehensive support and maintenance services for Microsoft Dynamics 365, ensuring your system is always up-to-date, secure, and running smoothly.
Learn how our collaborative approach and dedication to excellence help businesses achieve their goals and stay ahead in today's digital landscape. From concept to deployment, Prosigns is your trusted partner for transforming ideas into reality and unlocking the full potential of your business.
Join us on a journey of innovation and growth. Let's partner for success with Prosigns.
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/
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
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.
Cyaniclab : Software Development Agency Portfolio.pdfCyanic lab
CyanicLab, an offshore custom software development company based in Sweden,India, Finland, is your go-to partner for startup development and innovative web design solutions. Our expert team specializes in crafting cutting-edge software tailored to meet the unique needs of startups and established enterprises alike. From conceptualization to execution, we offer comprehensive services including web and mobile app development, UI/UX design, and ongoing software maintenance. Ready to elevate your business? Contact CyanicLab today and let us propel your vision to success with our top-notch IT solutions.
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.
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
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.
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
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.
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
8. What is Trunk-Based Development about?
Just always push directly to your
main (and only) branch
Easy-peasy!!
9.
10. Agenda
● Continuous X
● Basic branching strategies & Pull/Merge Requests
● “Why” and “what for”: SW development principles
● Trunk-Based Development for the win!
● My personal experience
● When NOT to use it
● How to start with TBD
● Recommended people, books and resources
● Q&A
12. Continuous Integration
“Integrate and test changes after no more than a couple of hours.”
“The integration step is unpredictable, but can easily take more time than the
original programming.”
“Continuous integration should be complete enough that the eventual first
deployment of the system is no big deal”
(“Extreme Programming Explained, Second Edition”, Kent Beck - 2005)
14. Continuous Delivery
“Software delivers no revenue until it is in the hands of its users”
“How long would it take your organization to deploy a change that involves
just one single line of code?”
“Branching should, in most circumstances, be avoided”
(“Continuous Delivery: Reliable Software Releases through Build, Test, and
Deployment Automation”, Jez Humble and David Farley - 2010)
15. Continuous Deployment
Every change/push goes through the pipeline and automatically gets put into
production.
● Continuous Delivery is a prerequisite
● No human intervention
You need:
● Great safety net (different kind of automated tests, statics analysis,
monitoring, etc.)
● You will certainly need feature flags (plus other parallel changes
techniques)
● Easy way to rollback
17. Continuous Release
DEPLOYMENT != RELEASE
● Released: visible to the users
● Deployed: the code is “put” in the Production systems, maybe not visible.
○ With a feature toggle, or an unknown URL or a hidden HTML element or
● Decouple “deployment” and release!
18. Continuous Release
Deploying to Production (without releasing) has value in itself:
● The whole pipeline works fine (e.g. tests, infrastructure, etc.)
● You check that nothing breaks (even not being active).
● You might want to partially activate it (e.g. with feature toggles/flags).
● You learn about the HOW.
19. How often is“continuous enough”?
Online browser editor which triggers the deployment pipeline after clicking a
specific button… why not? 😊
● E.g. Dark
○ “A holistic programming language, editor and infrastructure for serverless backends”
○ “Deployless means that anything you type is instantly deployed and immediately
usable in production.”
○ Native Continuous Delivery, using feature flags
○ https://darklang.com/
○ https://medium.com/darklang/how-dark-deploys-code-in-50ms-771c6dd60671
20. Source Code Management (SCM) tools
1. No Version Control System (VCs) at all.
2. Floppy disks.
3. CVS (no branches at all)
4. SubVersion
a. Creating a branch was highly costly
5. Git
a. Feature branching: https://martinfowler.com/bliki/FeatureBranch.html
b. GitFlow
i. Master, Develop, Feature, Release and Hotfix branches
21. Branching strategies (over-simplified)
● Feature branching
○ One branch per feature (sometimes it means per developer)
● GitFlow
● Other combined strategies
○ Feature + Main + Release branches
○ Release trains
24. Why do people do Pull/Merge Requests?
● For feeling safer
○ Peer review: Someone else can take a look to it and detect problems
● For rising the code quality (e.g. design solution)
● For sharing/spreading knowledge
● For getting the control:
○ "Safe" way to accept contributions from other people/teams
○ Final review centralized in a few people (e.g. QA, PM, committee, etc.)
25. Problems with Pull/Merge Requests
● It completely breaks the flow
○ Increased lead time: no Continuous Delivery/Deployment
○ You better wait for that PR to be merged before creating a new one… or fight with Git
● Increased risk
○ It’s too late: someone already worked several hours (days?) on it…. Waste.
○ More probability of things breaking or not fitting… or not being needed anymore.
26. Problems with Pull/Merge Requests (cont.)
● Code reviews:
○ you don’t have the context of the person for every decision made.
○ tenths/hundreds of lines changed... are you kidding?
SOURCE OF INEFFICIENCIES AND HUMAN CONFLICTS
27.
28. (IMO) When do pull/merge requests make sense?
● Distributed team with very different time zones
○ Not really possible to do pair programming
● OSS: very async, worldwide distributed people
● Contributions between teams inside a company
○ Though, even better: pair with someone from the other team
● For some exceptional reason, someone worked on their own
31. Why and what for do we develop software professionally?
● From an individual/personal level: para ganarnos la vida, para
divertirnos, para sentirnos útiles, para evitar el horror vacui vital...
● From a company perspective: to earn money, to “make the world
a better place” (Silicon Valley dixit)
Para resolver problemas que no resulta igual de
óptimo/eficiente resolver sin software
32.
33. ● “Early and continuous”
○ How “early”?
○ How “continuous”? (“... from a
couple of weeks…”)
● “Working software” + “Valuable
software”
○ Does it break?
○ Fits business requirements?
○ Is it used?
○ Does it satisfy the customer/user?
○ Does it generate “profit”?
34. “agile”is about… <insert here your opinion>
● Focus on people
○ Communication
○ Needs and expectations
● Risk management
○ “Short” feedback cycles, in order to improve in either:
■ Business (WHAT): user feedback
■ Technology (HOW): system feedback
○ Learn fast (not “fail fast”)
35. Which branching strategy
would“better”fit with
reducing the risk management,
continuous learning and the
continuous delivery of value?
(and less people suffering!!)
42. Trunk-Based Development is about… (cont.)
+
Pair/mob programming
+
Parallel changes techniques
+
TDD (or at least “test first”, including baby commits)
+
A proper product management vision
43. Trunk-Based Development is about… (cont.)
A “safe”, easy and automated deployment/release pipeline (CD)
+
Easy way to rollback
+
“Loosely-coupled” teams/services
+
An engineering culture which supports it
+
etc...
44. “A proper product management vision”
● Product Manager working in the day by day with the rest of the team
● Vertical slicing:
○ Simplified and small end-to-end chunks
○ Business (user stories): GREAT (release) > we learn the WHAT
○ Technical: good (deployment) > we learn the HOW
● Continuous prioritization
● Focus on value (aligned with “higher company goals”)
○ Measure the “value” delivered
● Pull system (keep it flowing!!)
○ Guided by the system/team capacity + JIT (last responsible moment)
45. Some other IMPORTANT practices (not only) for TBD
● Canary releases
○ https://martinfowler.com/bliki/CanaryRelease.html
○ First, deployed only to some representative environment
● Feature toggles (a.k.a “feature flags”)
○ https://martinfowler.com/articles/feature-toggles.html
● Other parallel changes techniques
○ https://martinfowler.com/bliki/ParallelChange.html
○ Branch by abstraction
○ Postel’s law: “Be conservative in what you do, be liberal in what you accept from others”
○ Strangler Application
○ Anti-Corruption Layer
46. What if I can not do ALL of that?
● Keep calm and do not push to master (yet)
● It is sometimes a sign of deeper inefficiencies and improvement
opportunities, it just makes them “explicit” (if we have enough self-critic
and humility)
Congratulations! We have a great opportunity of improvement ahead!
47. If TBD is not about“pushing to master”...what is it
about?
● Lean Product Management
○ Risk management
○ “Fast” feedback
● REALLY continuous and sustainable delivery of value
● Technical excellence (e.g. many XP/DevOps principles and practices)
48. We want a feedback cycle“as short as possible”
Longer delay
between
deployments
https://www.goodreads.com/book/show/34695798-release-it
Higher risk of
bugs and
downtime
More changes in
each deployment
Review
processes
A great vicious cycle
49. Another way of saying it...
Reduce your lead time: from a customer making a request to the customer
being satisfied.
Reduce your product delivery lead time: from code committed to code
successfully running in production.
https://www.goodreads.com/book/show/35747076-accelerate
52. Code is not an asset,it is liability!
● The best line of code is the one not written.
○ “Fewest elements”: https://martinfowler.com/bliki/BeckDesignRules.html
● Code needs to be maintained.
● Code needs to be tested.
● Code needs to be understood.
● A line of code is one more possible point of failure.
● Software has a COST.
https://wiki.c2.com/?SoftwareAsLiability
Dan North: Microservices software that fits in your head
53. Code is not an asset,it is liability!
“Between the time a developer commits code to the repository and the time it
runs in production, code is a pure liability. Undeployed code is unfinished
inventory. It has unknown bugs. It may break scaling or cause production
downtime. It might be a great implementation of a feature nobody wants.”
(“Release it! Second Edition”, Michael T. Nygard - 2018)
54. Does it require to work with monorepo?
NOT at all
Previous session in this Meetup: Monorepo: uno para gobernarlos a todos
55. My personal experience
● Two full years at Alea Soluciones
○ TDD + pairing + feature toggles + vertical slicing simplification (EVERYDAY)
○ Canary releases
○ Multiple services (multirepo)
○ TBD was the way to work (only a couple of branches for spikes or something like that)
○ Lucky me, I forgot how to use Git beyond commit, pull and push
● Six months at Spotify
○ Context: pure backend. People working with PRs all the time.
○ I started introducing TDD + pairing + baby-commits. No need for feature toggles.
○ That enabled to start experimenting TBD in a a couple of simple services (not too
critical).
56. My personal experience
● Currently (last 3 months)
○ TDD + pair/mob + baby-commits + vertical slicing + TBD (EVERYDAY)
○ … but still not released to users (client needs).
○ Hopefully we’ll start with Continuous Delivery
57. When NOT to do TBD?
Any time where you don’t follow “all” of the practices mentioned:
● pair/mob programming
● parallel changes techniques
● TDD (or at least “test first”)
● A proper product management vision
○ Simplified end-to-end “user stories”
○ Vertical slicing: small end-to-end chunks
■ Business: GREAT
■ Technical: good
○ Business ability to move in baby steps
58. When NOT to do TBD?
● Spikes
○ After the spike, start from scratch in the main branch
● Most OSS projects (super-async, no pairing, distributed timezones…)
● When someone worked on their own (no pair/mob)
● When the team can not work quite “independently” from other teams
○ 'No Man is an Island' (by John Donne)
● When the team doesn’t feel “comfortable enough”
○ Really hard to achieve if nobody in the team has previous experience.
59. How to start? (I)
● Get help (hire people with experience in this approach)
● Work in pairs (so much as possible; even better: do mob!!)
● Write tests (isolated + sociable, aka “unit and integration”)
● Build a continuous integration server that can monitor the main
repository and run the tests automatically for every new commits pushed.
● Limit the work in progress a.k.a. WIP (e.g. half the number of developers)
60. How to start? (II)
● Automate your deployment to Production
● Get a staging/test server where to improve the safety net
○ Acceptance tests
○ End to end tests
○ Load tests, etc.
● Configure a release/deployment pipeline which breaks if the different
checks/validations do not pass (Andon a.k.a. “Stop the line”)
● Make your branches ages visible and limit it to 24 hours (e.g. with Panda
Pull Reminders)
61. How to start? (III)
● Start with TDD (again: get help)
● Improve your baby steps and baby commits skills
● Improve your vertical slicing and business simplification skills
● Reduce the branches lifetime to 2 hours.
● Reminder: this is not about tools or technologies!!
● Pick up a non-critical service (e.g. a simple API) and start trying
Continuous Delivery (push deploy to the staging environment).
In the “worst case scenario”, if TBD doesn’t “succeed”, you will have improved
in many other things!!!
62. Main key points
● TBD is much more than “pushing to master”
○ Risk management
○ Reduced lead time
■ continuously delivering value to the BUSINESS
■ Fast feedback (users and systems)
● TBD is a great excuse to detect many inefficiencies:
○ why wouldn’t you be able to start working like that?
○ What should be “fixed” or “improved” to achieve it?
○ Everything is “connected”!! (systems thinking)
63. Main key points
● It requires to live together with many other practices and principles
(not only technical ones, but also related with product management).
● Keep calm and start in baby steps… but start!
○ Probably your context or most of your activity is not “superexceptional”
○ Though often it requires a HUGE change in your engineering culture… everything is
connected!
64. Last reflection: renaming“master”?
Whatever your first or second thought is… give it a third 🙏
● IETF terminology proposal (from 2018):
https://tools.ietf.org/id/draft-knodel-terminology-00.html#rfc.section.1.1
● Probable naming origin: Bitkeeper and its master/slave
○ https://git-scm.com/book/en/v2/Getting-Started-A-Short-History-of-Git
● Easily rename your default branch from master to main
67. Resources (I)
● https://martinfowler.com/articles/branching-patterns.html
● https://martinfowler.com/articles/continuousIntegration.html
● https://martinfowler.com/bliki/ContinuousDelivery.html
● https://www.atlassian.com/continuous-delivery/principles/continuous-int
egration-vs-delivery-vs-deployment
● https://wiki.c2.com/?SoftwareAsLiability
● Dan North: Microservices software that fits in your head
68. Resources (II)
● Workshops about parallel changes:
○ http://www.eferro.net/2018/03/slides-taller-parallel-changes-we-code.html
○ https://paucls.wordpress.com/2020/02/26/ci-cd-non-breaking-changes-exercise/