Do you want to be a Cloud Architect ? Are you stuck in a Sysadmin / DBA job ,and want to transition into the Cloud? Are you interested , but do not know how/where to start ? Then, you are in the right place . This is Part 1 of a 3-Part series , where I share the secret sauce how best to get started on the journey to become a Cloud Architect , and enhance your career.
Do you want to be a Cloud Architect ? Are you stuck in a Sysadmin / DBA job ,and want to transition into the Cloud? Are you interested , but do not know how/where to start ? Then, you are in the right place . This is Part 1 of a 3-Part series , where I share the secret sauce how best to get started on the journey to become a Cloud Architect , and enhance your career.
Do you want to be a Cloud Architect ? Are you stuck in a Sysadmin / DBA job ,and want to transition into the Cloud? Are you interested , but do not know how/where to start ? Then, you are in the right place . This is Part 1 of a 3-Part series , where I share the secret sauce how best to get started on the journey to become a Cloud Architect , and enhance your career.
Boston Ruby Meetup: The promise and peril of Agile and Lean practicesmtoppa
Why you may to consider adopting Agile or Lean practices, how they differ from each other, what benefits you can expect, and what obstacles you may face
WordCamp Nashville 2015: Agile Contracts for WordPress Consultantsmtoppa
When you develop a WordPress based project for a client in an Agile way, you deliver working features on a frequent basis, such as weekly, as you build out the project. This allows for review, feedback, and adapting to change. Evolving business requirements are welcome in an Agile process, instead of a source of frustration.
The problem is, even if clients think an Agile approach sounds good, they almost always have a preference for traditional Fixed Price, Fixed Scope contracts. These contracts, with detailed specifications, costs, and delivery dates, contradict the Agile approach, but they provide clients them with a sense of security and confidence that they will get what they want.
How do you convince them a traditional contract is actually riskier than they think, and persuade them to instead sign a contract that facilities Agile development? This is the most significant challenge facing consultants who want to follow Agile practices. At PromptWorks we use Time & Materials contracts with our clients, and we have signed over 30 of them in the past 2 years. In this talk we’ll discuss:
* What different types of contracts imply about the nature of the relationship with your client, and what it means for it to be a professional relationship of equals. Risk and reward should be shared, and the relationship should feel like a partnership.
* The persuasion and negotiation process for getting your prospective clients to sign a Time & Materials contract. We’ll discuss real-life situations from our experience at PromptWorks.
* PromptWorks’ typical project proposal, Master Service Agreement, and Scope of Work documents. We’ll highlight key aspects of our approach, and things to look out for if you have to use contract documents provided by your client.
Do you want to be a Cloud Architect ? Are you stuck in a Sysadmin / DBA job ,and want to transition into the Cloud? Are you interested , but do not know how/where to start ? Then, you are in the right place . This is Part 1 of a 3-Part series , where I share the secret sauce how best to get started on the journey to become a Cloud Architect , and enhance your career.
Do you want to be a Cloud Architect ? Are you stuck in a Sysadmin / DBA job ,and want to transition into the Cloud? Are you interested , but do not know how/where to start ? Then, you are in the right place . This is Part 1 of a 3-Part series , where I share the secret sauce how best to get started on the journey to become a Cloud Architect , and enhance your career.
Do you want to be a Cloud Architect ? Are you stuck in a Sysadmin / DBA job ,and want to transition into the Cloud? Are you interested , but do not know how/where to start ? Then, you are in the right place . This is Part 1 of a 3-Part series , where I share the secret sauce how best to get started on the journey to become a Cloud Architect , and enhance your career.
Boston Ruby Meetup: The promise and peril of Agile and Lean practicesmtoppa
Why you may to consider adopting Agile or Lean practices, how they differ from each other, what benefits you can expect, and what obstacles you may face
WordCamp Nashville 2015: Agile Contracts for WordPress Consultantsmtoppa
When you develop a WordPress based project for a client in an Agile way, you deliver working features on a frequent basis, such as weekly, as you build out the project. This allows for review, feedback, and adapting to change. Evolving business requirements are welcome in an Agile process, instead of a source of frustration.
The problem is, even if clients think an Agile approach sounds good, they almost always have a preference for traditional Fixed Price, Fixed Scope contracts. These contracts, with detailed specifications, costs, and delivery dates, contradict the Agile approach, but they provide clients them with a sense of security and confidence that they will get what they want.
How do you convince them a traditional contract is actually riskier than they think, and persuade them to instead sign a contract that facilities Agile development? This is the most significant challenge facing consultants who want to follow Agile practices. At PromptWorks we use Time & Materials contracts with our clients, and we have signed over 30 of them in the past 2 years. In this talk we’ll discuss:
* What different types of contracts imply about the nature of the relationship with your client, and what it means for it to be a professional relationship of equals. Risk and reward should be shared, and the relationship should feel like a partnership.
* The persuasion and negotiation process for getting your prospective clients to sign a Time & Materials contract. We’ll discuss real-life situations from our experience at PromptWorks.
* PromptWorks’ typical project proposal, Master Service Agreement, and Scope of Work documents. We’ll highlight key aspects of our approach, and things to look out for if you have to use contract documents provided by your client.
EventStorming was born as a massively in-person workshop to discover and model complex businesses and design event-driven software. But the old ways are no longer viable. After one year of experiments and discoveries in a forced-remote setting we know a lot more about what is still working and what is not.
Cosa abbiamo scoperto in questi 20 anni? Che cercare di cambiare il mondo focalizzandoci su un singolo aspetto, il processo, il TDD, il clean code, non porta da nessuna parte. I veri cambiamenti avvengono quando scopriamo le reali interazioni tra le parti, quando lasciamo la specializzazione e cominciamo a vedere il vero quadro d'insieme.
In questo talk vedremo come scelte architetturali apparentemente innocue, finiscano per impattare il processo, ed in generale di come processi, pratiche, architetture, persone e scelte di business non possano essere considerate come elementi disaccoppiati tra loro.
This is the presentation handout from my recorded session at the 2016 Learning Solutions Conference. This version includes speaker notes, since the live one was mostly pictures.
Surviving the Hype: An Experimental Framework for Scaling Enterprise Design T...uxpin
You'll learn:
- How to sustain design thinking beyond the workshop
- How to use “design interventions” to create long-term impact in enterprises
- Best practices for evangelizing enterprise UX based on SAP’s experiments
There are some recurring themes in Domain-Driven Design applications, and distant domains show more similarities that differences, especially when you start taking into account peculiarities of specific Bounded Contexts. This is where a different type of design could happen.
When going into the development of a software product, a possible source of mistake is the incorrect evaluation of the complexity that lies behind an idea , as well as a clutter coming from the massive amounts of technologies enabled. This presentation explains a possible way to deal with such issues.
Democratizing Online Controlled Experiments at Booking.com - Lukas VermeerSavage Marketing
There is extensive literature about online controlled experiments, both on the statistical methods available to analyze experiment results as well as on the infrastructure built by several large scale Internet companies but also on the organizational challenges of embracing online experiments to inform product development.
At Booking.com we have been conducting evidenced based product development using online experiments for more than ten years. Our methods and infrastructure were designed from their inception to reflect Booking.com culture, that is, with democratization and decentralization of experimentation and decision making in mind.
In this presentation, Lukas will explain how building a central repository of successes and failures to allow for knowledge sharing, having a generic and extensible code library which enforces a loose coupling between experimentation and business logic, monitoring closely and transparently the quality and the reliability of the data gathering pipelines to build trust in the experimentation infrastructure, and putting in place safeguards to enable anyone to have end to end ownership of their experiments have allowed such a large organization as Booking.com to truly and successfully democratize experimentation.
Software Development Life CyclesPresented byBrenda Reynold.docxrosemariebrayshaw
Software Development Life Cycles
Presented by
Brenda Reynolds
In association with
Matt Henwood and the University of Phoenix Systems Analysis & Development Department
September 13, 2019
We Love Video, Inc.
Welcome to the presentation guys, have a seat anywhere you’d like and help yourselves to some coffee and pastries. This is my bribe to you so you like me and pay close attention to the details I’m about to give you. Your fabulous company has decided to put a CRM in place for you guys, does anyone know what that is?
Kelsey: A What?
C.R.M. it’s one of many acronyms people in IT use.
Robin: Something about Customer Management?
Yes, can anyone elaborate?
Jesse: Customer Relationship Management, I used Salesforce at my last job. I have to tell you guys if this is what they’re doing for us, you’re going to notice a huge difference in how easy it is to find what you need on any customer.
Me: Well thank you for making my job a little easier.
<Audience Laughter>
I’ve done this a whole lot, so I already have a CRM in mind, and yes it will be Salesforce. I love that software for many many amazing reasons. What I want to educate you guys on today is the Software Development Life Cycle and of course there are multiples of those too. I’m going to fill you in on two SDLC’s, how they work, and why we will be using the one that we’ll be using. This is important because it involves you and how you’re going to help us integrate the new CRM into your every day processes.
1
Waterfall SDLC
See how this water looks like it’s on a mission to rush down those steps? Keep this in mind while I describe the Waterfall SDLC, more acronyms, I know. With the waterfall model we have some typical phases that comprise an entire systems project. Makes it easy, right? Just follow the waterfall down and you’ll get to the completed CRM. The reason I say ‘rushing’ is because the waterfall model is focused on getting the project done, get the requirements, get it done and get outta there.
On the next slide we’re gonna see what these steps look like, but does anyone want to take a stab at the first step?
Alyssa: Get the band back together and write down a plan. I can’t imagine computer nerds do this stuff without first knowing what the finished product is supposed to look like.
Me: YES! First and foremost we have to Plan. If we don’t have a plan, what are we building? Not even the best of the best “computer nerds” should start working on something like this for a company without a plan.
2
The typical phases that comprise an entire systems project
Agile
SDLC
Who can tell me what these guys are doing?
Robert: PARKOUR!!
Me: Wow, you must like the thrill of being able to do this stuff. What word would you use to describe someone who has the ability to do this?
Robert: Adventurous, thrill seeker, well trained
Alyssa: Dare devil
Me: This is awesome! What about flexibility?
Audience: yes, that works, of course, yeah…
<Click>
Remember we’re talking about soft.
EventStorming was born as a massively in-person workshop to discover and model complex businesses and design event-driven software. But the old ways are no longer viable. After one year of experiments and discoveries in a forced-remote setting we know a lot more about what is still working and what is not.
Cosa abbiamo scoperto in questi 20 anni? Che cercare di cambiare il mondo focalizzandoci su un singolo aspetto, il processo, il TDD, il clean code, non porta da nessuna parte. I veri cambiamenti avvengono quando scopriamo le reali interazioni tra le parti, quando lasciamo la specializzazione e cominciamo a vedere il vero quadro d'insieme.
In questo talk vedremo come scelte architetturali apparentemente innocue, finiscano per impattare il processo, ed in generale di come processi, pratiche, architetture, persone e scelte di business non possano essere considerate come elementi disaccoppiati tra loro.
This is the presentation handout from my recorded session at the 2016 Learning Solutions Conference. This version includes speaker notes, since the live one was mostly pictures.
Surviving the Hype: An Experimental Framework for Scaling Enterprise Design T...uxpin
You'll learn:
- How to sustain design thinking beyond the workshop
- How to use “design interventions” to create long-term impact in enterprises
- Best practices for evangelizing enterprise UX based on SAP’s experiments
There are some recurring themes in Domain-Driven Design applications, and distant domains show more similarities that differences, especially when you start taking into account peculiarities of specific Bounded Contexts. This is where a different type of design could happen.
When going into the development of a software product, a possible source of mistake is the incorrect evaluation of the complexity that lies behind an idea , as well as a clutter coming from the massive amounts of technologies enabled. This presentation explains a possible way to deal with such issues.
Democratizing Online Controlled Experiments at Booking.com - Lukas VermeerSavage Marketing
There is extensive literature about online controlled experiments, both on the statistical methods available to analyze experiment results as well as on the infrastructure built by several large scale Internet companies but also on the organizational challenges of embracing online experiments to inform product development.
At Booking.com we have been conducting evidenced based product development using online experiments for more than ten years. Our methods and infrastructure were designed from their inception to reflect Booking.com culture, that is, with democratization and decentralization of experimentation and decision making in mind.
In this presentation, Lukas will explain how building a central repository of successes and failures to allow for knowledge sharing, having a generic and extensible code library which enforces a loose coupling between experimentation and business logic, monitoring closely and transparently the quality and the reliability of the data gathering pipelines to build trust in the experimentation infrastructure, and putting in place safeguards to enable anyone to have end to end ownership of their experiments have allowed such a large organization as Booking.com to truly and successfully democratize experimentation.
Software Development Life CyclesPresented byBrenda Reynold.docxrosemariebrayshaw
Software Development Life Cycles
Presented by
Brenda Reynolds
In association with
Matt Henwood and the University of Phoenix Systems Analysis & Development Department
September 13, 2019
We Love Video, Inc.
Welcome to the presentation guys, have a seat anywhere you’d like and help yourselves to some coffee and pastries. This is my bribe to you so you like me and pay close attention to the details I’m about to give you. Your fabulous company has decided to put a CRM in place for you guys, does anyone know what that is?
Kelsey: A What?
C.R.M. it’s one of many acronyms people in IT use.
Robin: Something about Customer Management?
Yes, can anyone elaborate?
Jesse: Customer Relationship Management, I used Salesforce at my last job. I have to tell you guys if this is what they’re doing for us, you’re going to notice a huge difference in how easy it is to find what you need on any customer.
Me: Well thank you for making my job a little easier.
<Audience Laughter>
I’ve done this a whole lot, so I already have a CRM in mind, and yes it will be Salesforce. I love that software for many many amazing reasons. What I want to educate you guys on today is the Software Development Life Cycle and of course there are multiples of those too. I’m going to fill you in on two SDLC’s, how they work, and why we will be using the one that we’ll be using. This is important because it involves you and how you’re going to help us integrate the new CRM into your every day processes.
1
Waterfall SDLC
See how this water looks like it’s on a mission to rush down those steps? Keep this in mind while I describe the Waterfall SDLC, more acronyms, I know. With the waterfall model we have some typical phases that comprise an entire systems project. Makes it easy, right? Just follow the waterfall down and you’ll get to the completed CRM. The reason I say ‘rushing’ is because the waterfall model is focused on getting the project done, get the requirements, get it done and get outta there.
On the next slide we’re gonna see what these steps look like, but does anyone want to take a stab at the first step?
Alyssa: Get the band back together and write down a plan. I can’t imagine computer nerds do this stuff without first knowing what the finished product is supposed to look like.
Me: YES! First and foremost we have to Plan. If we don’t have a plan, what are we building? Not even the best of the best “computer nerds” should start working on something like this for a company without a plan.
2
The typical phases that comprise an entire systems project
Agile
SDLC
Who can tell me what these guys are doing?
Robert: PARKOUR!!
Me: Wow, you must like the thrill of being able to do this stuff. What word would you use to describe someone who has the ability to do this?
Robert: Adventurous, thrill seeker, well trained
Alyssa: Dare devil
Me: This is awesome! What about flexibility?
Audience: yes, that works, of course, yeah…
<Click>
Remember we’re talking about soft.
We want code that is easy to understand, re-usable, and flexible. But we are always up against deadlines, so we rush, and end up with code that is messy, buggy, hard to maintain, and makes us go slower even though we’re trying to go faster.
What is clean code? In this talk I’ll provide some answers to this question, and introduce you to 10 good habits that will help keep your code clean, such as the use of meaningful names for your variables and functions, and following the “Boy Scout Rule” (leave the code cleaner than you found it). I will even try to persuade you that using a lot of code comments is a sign that there are problems with your code.
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...NETWAYS
DevOps has always been about dramatic changes to improve IT. You don’t only need to use a different set of tools, you need to change your entire IT culture! It’s all exhausting, really. Worse, this imperative to change never goes away. Will we ever actually be done and “be like Google”? Instead of carrying the flag of “change or die,” this talk proposes an alternate, more practical, sustainable, and comforting approach to improving: IncrativeOps.
Wait A Moment? How High Workload Kills Efficiency! - Roman PicklPROIDEA
Join me in this talk about why high workload leads to increasing waiting times and is detrimental to your project’s efficiency. We will not only talk about queueing theory and capacity management, but also about strategies to cope with high utilization and how to start a virtuous circle.
Test-Driven Developments are Inefficient; Behavior-Driven Developments are a ...Abdelkrim Boujraf
In summary, we have presented here a method for efficiently testing large parts of web-based software by using elements of code generation to generate automatable tests, and by using BDD concepts to model tests for non-generated screens and non-generated business actions. Further, we have described a method for context-based unit
testing that, when combined with generated code and tests, yields an acceptable trade-off between development efficiency and time spent on testing
There's an old joke that goes, “The two hardest things in programming are cache invalidation, naming things, and off-by-one errors.” In this talk, we'll discuss the subtle art of naming things – a practice we do every day but rarely talk about.
Get hands-on advice for rapid Agile prototyping in a product team.
You'll learn:
- How to determine the right depth and breadth for MVP prototypes.
- How to prioritize use cases for prototyping.
- How to elicit the right stakeholder and user feedback.
- How to correctly annotate prototypes for dev and QA.
How to Ship in 8 Weeks or Less (via Cross-Functional Teams)QuekelsBaro
Get you clued up on what the development methodology Shape Up looks like in practice and sneak-peak into what we do at Process Street as our EPD team shares their secrets.
Key Elements of Successful New Executive Onboarding (Tips & Best Practices) LizzyManz
Why is executive onboarding important to all stakeholders in the executive search process, & how retained search firms can bridge the gap between recruiting, hiring, and onboarding executive placements.
5 Factors That Will Help Your Company Win the War for TalentLizzyManz
In this post for Process Street, We’ll explore this phenomenon affecting the working world and look at some ways your business can continue to onboard top talent despite the shortages of workers.
Prevent Employee Churn & Ensure New Hires Don’t Regret Their Decision LizzyManz
This Process Street post will cover why churn happens — specifically among Millennials and Gen Z in the post-pandemic job market — and what you can do to prevent it.
Level up Your Teamwork: Introducing Process Street for Microsoft Teams LizzyManz
If Microsoft Teams is your hub for collaboration and teamwork, you can now easily stay informed and take action on all of your Process Street workflows right where your team already operates: Welcome to Process Street for Microsoft Teams.
4 Ways to Optimize Your Internal Mobility Program for Employee RetentionLizzyManz
From cost-saving to fostering a diverse workforce, it’s no surprise that career mobility should be your priority. So, how do you optimize your internal mobility program and what can you get from such optimization?
Process Design Masterclass: Top Tips from a Process Design Expert LizzyManz
Anne Perry, Process Street's resident process design expert, shares how we've built processes for hundreds of teams to help make work fun, fast, and faultless.
Employee Metrics: 9 Essential Data Points to Track in 2022 LizzyManz
There are ton of metrics you could measure as a People and Talent lead at a fast-growth company. But tracking them all simply isn’t valuable. Instead, you should be economical and focus on a few metrics that can tell you the most about your function, keeping the rest in the background until you need to delve a bit deeper.
Noise is everywhere, and it affects every decision we make. We all know to check our biases when it comes to important decisions, but how often do you check your noise?
Masters of Process Episode 1: On Deck with Michael Gill and Curtis CummingsLizzyManz
Masters of Process brings you the no-code revolution in full. Join us as we meet with top innovators in the space and explore how they are reinventing the way a modern business operates. Brought to you by industry insiders from No Code Ops and Process Street, each half hour episode is a goldmine of productivity, products, and scaling.
How to Create a Runbook: A Guide for Sysadmins & MSPsLizzyManz
A runbook is a set of standardized documents, references and procedures that explain common recurring IT tasks. Instead of figuring out the same problem time and time again, you can refer to your runbook for an optimal way to get the work done.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Knowledge engineering: from people to machines and back
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
1. 1/9
August 13, 2021
“Don’t Repeat Yourself”: 4 Process Street Features to
Keep Work DRY
process.st/dont-repeat-yourself-dry
Leks Drakos
August 13, 2021
Unless you work with small children or large animals, the expectation of staying dry at work
is pretty high. I know my workstation is very not water-resistant.
So when Blake Thorne (our product marketing manager) pitched me an article about DRY, I
had no idea what he was talking about. According to our three wise men in engineering,
that’s to be expected. The DRY principle is almost exclusively used in software development;
those of us outside don’t have much cause to consider it.
Or do we?
And this is what Blake wanted to get at. “It’s the principle of ‘don’t repeat yourself,’” he
explained. “Cut out all the unnecessary, repetitious code.”
“But one of our values is to overcommunicate,” I countered. “Everything. Twice, even. Don’t
those two concepts cancel each other out?”
2. 2/9
“Maybe,” he conceded. “But what if they actually don’t?”
I am a sucker for a good what-if.
Here I’ll go over the principle of DRY – plus WET and AHA (oh, those rascally devs) – and
how here at Process Street we manage to overcommunicate without repeating ourselves.
Because I’m such a nice guy, I’ll also point out the 4 best features to get you on the same path.
Let’s get to it!
The 3 principles of programming (when you’re not a programmer)
Why, oh why, Leks, do we care about programming principles if we’re not programmers?
That’s a good question. The answer is pretty simple. Whatever our knowledge niches and
specialized lingo, we’re all trying to do the same thing: work smarter.
Take me and my pal, Herbie, for example. He turns gobbledygook code into very cool things
like the Slack app or our global search feature. I turn boring, technical concepts into
scintillating and informative blog posts. The processes we each use, fundamentally, aren’t
that different. (And no, not just because we both spend endless hours staring at a screen.)
Building an app or writing an article are both about taking an intangible, abstract concept
and creating something concrete for people to hold in their hands.
Maybe that’s too esoteric.
Software development is about solving problems. You encounter a roadblock; you create a
way around it.
Now think about your position. What do you spend most of your workday doing? At any
given time, I’m willing to put good money on that fact that you’re either:
Trying to solve a problem;
Figuring out how you can solve future problems faster.
And that is why we’re talking about these three programming principles. Each one – in its
own way – is about finding better solutions and methods to work smarter.
Who doesn’t want that?
Let’s take a closer look at these three principles:
3. 3/9
Don’t repeat yourself (DRY)
Andy Hunt and Dave Thomas are credited with coining the specific acronym for DRY,
though, like most things, the idea was around long before someone put a name to it. This is
how they define the idea:
“Every piece of knowledge must have a single, unambiguous, authoritative representation
within a system.” – Andy Hunt & Dave Thomas, The Pragmatic Programmer
Cool, right? Yeah, it took me a minute to get it, too, and I have a whole degree in words. Let
me give you a practical example.
Look at the subheader for this section. In it is a piece of knowledge (don’t repeat yourself)
and a representation (DRY). Every time I write DRY throughout this post, you’re going to
know I mean “don’t repeat yourself.”
Later, I decide I want DRY to mean something else. Don’t ride yaks, for example. I don’t have
to go through the entire post and change all 25 times I use DRY, though; I only have to
change it once, in this subheader. Anyone who reads it after will associate DRY with “don’t
ride yaks.” They may think that doesn’t make a lot of sense, but DRY will still be about riding
yaks for those readers.
Write everything twice (WET)
4. 4/9
As you might imagine, the WET principle is meant to be the exact opposite of DRY. WET was
suggested by software engineer Conlin Durbin as a response to those who took the DRY
principle to the extreme and viewed it as an irrefutable law of programming.
Durbin defined his new rule is:
“You can ask yourself “Haven’t I written this before?” two times, but never three.”
Basically, if you repeated something twice – no biggie. If you repeated it a third time, it’s time
to look at what you’re doing and see if there’s a better way.
The benefit of WET over DRY is that it prevents what Durbin calls “premature optimization.”
I’ll delve into the idea of over-optimizing when I talk about conditional logic a little later, but
suffice it to say, there is such a thing as too much optimization.
Avoid hasty abstractions (AHA)
First things first, for the other non-devs in the room:
“[A]n abstraction will simplify a process […] by providing what you really need, and hiding the
useless details you don’t care [about].” – Matthieu Cneude, “What Are Abstractions in
Software Engineering with Examples”
AHA exists because, surprise surprise, some took the WET principle to the extreme and
viewed it as an irrefutable law of programming.
Haven’t we been here before? 🤔
According to Kent C. Dodds (who first wrote about it) this principle is based on two main
ideas:
Duplication is better (and cheaper) than the wrong abstraction.
Optimize for change first.
The first point is a continuation of Durbin’s concept of “premature optimization.” So if you
jump the gun and try to fix a repetition without first understanding the context, you either
have to undo your original fix or you end up with something that doesn’t work properly.
Either way, it costs more than leaving the duplication alone in the first place.
The second point says that it’s better to create something flexible because we can’t accurately
predict what future needs will be. A product that sits on top of the world today can easily
become obsolete tomorrow if it isn’t able to meet changing demand.
Dodds hopes for AHA to remain undogmatic, despite its predecessors’ trajectory, and
emphasizes that, rather than strictly adhering to hard and fast rules, it’s more efficient and
more effective to make the best decision for each circumstance.
5. 5/9
Process Street’s DRY-est features
Sure it has its pros and cons, but at heart, the DRY principle is about removing unnecessary
repetition. Process Street is all about automating repetitive tasks.
I mean, it seems like there’s something there, right?
As it turns out, Process Street’s workflows follow the DRY ethos in many ways. I’ve picked
out the 4 workflow features that really demonstrate the idea of reducing redundancies and
simplifying processes.
They also happen to be 4 of my favorite features, but that’s totally a coincidence.
Let me set up the scenario:
A new campaign has landed your company a number of new clients that all need to be
onboarded ASAP. Anyone else might panic, but you use Process Street workflows for all your
onboarding needs, so you’ve got everything under control.
Check out how Payroll Processors uses Process Street for their client onboarding in the video
below:
Conditional logic
Not all of your new clients have the same needs or wants. Some of your competitors offer
standard packages of different features, but these clients came to because of your bespoke
offerings.
Creating and running a different onboarding workflow for each specific case would be both
time-consuming and impractical. Fortunately, you can use the same workflow for every
client with conditional logic.
With conditional logic, you’re able to create branching pathways that can cover a variety of
situations. Your representative can select which services the client wants, which triggers the
relevant tasks to appear as part of the workflow. Any task that isn’t needed, stays hidden.
That almost sounds like an abstraction. Hm.
Check out this short video for a quick overview of what conditional logic can do with
branching pathways:
Conditional logic is without a doubt my favorite feature. That said, it’s very easy to fall into
the rabbit hole of All Possible Scenarios. This is that over-optimization thing I mentioned
earlier.
6. 6/9
I’ve found myself buried in potential pathways more than once because I was trying to
account for every exception that might happen. Yes, you can pretty much do exactly that with
conditional logic, but trust me, you’ll make yourself loopy in the process.
This works best if you list out the most common occurrences and focus on those. Sure, that
one in a million thing might happen one day, but your time is better spent on the five things
that happen most days.
Plus, updating your workflow is really simple if you need to add or change one of your
branches.
Workflow updates
Halfway through onboarding all of these new clients, one of your reps points out that the
workflow is still using old documentation for a recently updated service. You currently have
hundreds of workflow runs in progress, which makes changing each one individually – well,
not impossible, but definitely not preferable.
That’s not a problem, though. You go into your Process Street library, add the new
documentation to your workflow template, and save the changes. Immediately, an option
pops up to update all live instances of that workflow as well.
One click and every client currently being onboarded has their workflow run updated with
the most current information.
Variables
7. 7/9
It literally took me until this very moment to realize that variables are the epitome of DRY.
That really does prove that sometimes what you’ve been looking for is right in front of you
the whole time.
Cliff is one of your new clients. Because of reasons, his email is needed at various points
during the onboarding process for setting up credentials, sending confirmations, etc.
You could have a form field to input his email address every single time you need it.
Or you could use variables.
So if Cliff’s email is a piece of knowledge, a variable is the representation. Don’t ride
yaks, remember?
In your workflow, you have one field labeled, “Client Contact Email.” That label becomes
what we call a variable, which can be used in later tasks to automatically fill in Cliff’s email.
Not only do you only have to input Cliff’s email address once during the onboarding process,
but if Cliff comes back a few weeks later with a different address he wants to use, you only
have to change it once, too.
Approvals
Throughout the onboarding process, various departments are involved in getting everything
set up for each client. Sales is processing payments and handing off documents to the CS
team. Tech support is making sure the client has all the right equipment and software. Legal
is going over contracts.
8. 8/9
It’s a lot of moving parts, and several different departments have to give their stamp of
approval before all is said and done. Our approvals feature takes what could be a clunky,
drawn-out process and streamlines it.
First, documents don’t have to be passed around to be approved. All the tasks and data that
need approval are collected in the approvals task where the decision-maker can easily review
them and either approve or reject on the same screen.
If multiple people need to authorize a task, they don’t have to wait for someone to give
approval and pass it on to the next person. Each one can access the same task and give their
approval at the same time, regardless of where they are.
At the risk of repeating myself…
So what happened with me, Blake, and overcommunication? Well, as it turns out, staying
DRY is a principle that’s built into every aspect of our workflows here at Process Street. As
one of our core values, overcommunication is embedded into every one of our interactions.
Despite seeming to contradict each other, the two ideas are actually quite symbiotic.
DRY is about repetition: repeating the exact same thing more than is necessary. Sure, in
some cases, repetition can be a good thing. If you’re learning a new skill, watching your
favorite movie, or eating your favorite meal, that’s some pretty good repetition.
If you’re constantly repeating yourself during a process, though, it’s probably time to
introduce some Automations into your workflow. That’s all that DRY is meant to say: Do you
really need to do Thing A again?
Overcommunication isn’t about repetition at all; it’s about conveying useful, relevant
information so the recipient can do the thing they need to do in the best way possible. In fact,
when you get right down to it, the purpose of overcommunication is to prevent repetition and
redundancies. By overcommunicating with my colleagues – that is, giving them every single
piece of information they need to perform a particular task – they can simply complete the
task.
Since we document all of these information exchanges in workflows, which also record who is
responsible for what and when it should be finished, we all stay on the same page with how a
project is progressing. There’s no hunting around for scattered documents, trawling through
email chains, or Person A forgetting to update Person B that something’s changed.
It’s all right there, in one place, for everyone to access.
In a sense, each Process Street workflow is a single, unambiguous, authoritative
representation of a piece of knowledge within a system. Imagine that.
(Don’t tell Blake he was right all along. I’ll never hear the end of it. 🤫)
9. 9/9
Are you DRY, WET, or AHA? Let us know how you use these principles in your day-to-day!