Yana Lysa "Best practices of building good manual test suits"Fwdays
Sometimes you read test case and understand, that something is wrong with it, but you can't understand what exactly. I want to share with you a list of pitfalls, that should be avoided during test suits preparation. There is a list of test design patterns, which I want to propose you to use to avoid making mistakes when writing manual test cases.
This talk answers questions asked about unit testing by attendees at ALE 2013.
It was created in two hours, starting from an open space session where we gathered the questions.
Evolutionary Design seems to be one of the black arts of software development. Test Driven Development brought the need of understanding how to evolve the code in order to solve a problem. Evolving the code is not done by magic, we evolve the code, the programmers. And we need specific techniques for that.
This talk will be an interactive one, presenting some of the most useful refactoring techniques for Evolutionary Design.
Unit testing is an essential part of software design and development. But somehow it is considered as testing and its value is not known to majority of the software teams. This presentation tries to show the value of unit testing.
Yana Lysa "Best practices of building good manual test suits"Fwdays
Sometimes you read test case and understand, that something is wrong with it, but you can't understand what exactly. I want to share with you a list of pitfalls, that should be avoided during test suits preparation. There is a list of test design patterns, which I want to propose you to use to avoid making mistakes when writing manual test cases.
This talk answers questions asked about unit testing by attendees at ALE 2013.
It was created in two hours, starting from an open space session where we gathered the questions.
Evolutionary Design seems to be one of the black arts of software development. Test Driven Development brought the need of understanding how to evolve the code in order to solve a problem. Evolving the code is not done by magic, we evolve the code, the programmers. And we need specific techniques for that.
This talk will be an interactive one, presenting some of the most useful refactoring techniques for Evolutionary Design.
Unit testing is an essential part of software design and development. But somehow it is considered as testing and its value is not known to majority of the software teams. This presentation tries to show the value of unit testing.
Code retreat @AgileWorks Bucharest 7 September 2013Adi Bolboaca
Slides for a coderetreat I facilitated in Buchaers in the AgileWorks community. The problem is poker and the sessions are quite different than the usual ones.
Becoming a Software Craftsman takes a lot of practice. Using Code Katas in Coding Dojos is an excellent way to get that practice in a low stress fun way. Discover how to do that.
Bye Bye Cowboy-Coder days! by Vytautas Dagilis.
„Working Effectively with Legacy Code“- one of the best books which talks about Unit testing and TDD. Presentation covers best practices listed in the book as well as shows which of them were successfully implemented in practice. You will find out how to commit changes and be sure that they work even without running and testing application itself.
Many developers know that they should be writing tests for their apps. However, it’s often hard to know how to get started or to convince your manager that you should be spending half of your time writing and maintaining test code. In this talk, you will learn how you can integrate testing into your day-to-day workflow and you’ll learn why a good test suite will not cost you a lot of time. Instead, it should end up saving you time. And as you know, the manager loves it when you manage to save time. You will understand how TDD works, how to integrate the important bits of TDD and how to build a high-quality test suite that is a pleasure to maintain. To round things out, you will also learn about Xcode 11’s new test plans feature and how you can use it to make your test suite even better!
Code retreat @AgileWorks Bucharest 7 September 2013Adi Bolboaca
Slides for a coderetreat I facilitated in Buchaers in the AgileWorks community. The problem is poker and the sessions are quite different than the usual ones.
Becoming a Software Craftsman takes a lot of practice. Using Code Katas in Coding Dojos is an excellent way to get that practice in a low stress fun way. Discover how to do that.
Bye Bye Cowboy-Coder days! by Vytautas Dagilis.
„Working Effectively with Legacy Code“- one of the best books which talks about Unit testing and TDD. Presentation covers best practices listed in the book as well as shows which of them were successfully implemented in practice. You will find out how to commit changes and be sure that they work even without running and testing application itself.
Many developers know that they should be writing tests for their apps. However, it’s often hard to know how to get started or to convince your manager that you should be spending half of your time writing and maintaining test code. In this talk, you will learn how you can integrate testing into your day-to-day workflow and you’ll learn why a good test suite will not cost you a lot of time. Instead, it should end up saving you time. And as you know, the manager loves it when you manage to save time. You will understand how TDD works, how to integrate the important bits of TDD and how to build a high-quality test suite that is a pleasure to maintain. To round things out, you will also learn about Xcode 11’s new test plans feature and how you can use it to make your test suite even better!
Triggers for Admins: A Five-step Framework for Creating TriggersSalesforce Developers
Have you felt intimidated by the thought of writing code? Are you an experienced Salesforce Administrator and would like to take the leap into writing your own Apex triggers? Join us to gain the tools and confidence to write your first trigger. Using specific examples and real-life scenarios, we'll walk through a concrete framework to approach the process of planning, designing, and coding a trigger.
Pragmatic Introduction to Python Unit Testing (PyDays 2018)Peter Kofler
We will start with a few best practises for unit testing followed by an interactive, hands-on tour through the main features of Python unit testing framework(s). You will learn while writing tests.
Coderetreat is a one day intense workshop for software developers for imporving their development skills by practicing. This is the material I presented at the beginning of coderetreat I facilitated on May 2014.
Similar to Coderetreat Slides on the Global Day of Coderetreat, Bucharest, December 2013 (20)
Evolutionary Design - NewCrafts Paris 18 May 2018Adi Bolboaca
Evolutionary Design: “The art of growing a system by observing its naturaltraits and then normalizing and optimizing its growth” Evolutionary Design seems to be one of the black arts of software development.
Evolution = transformation Evolving the code is not done by magic, we the programmers evolve the code,. And we need specific techniques for that. When we evolve, we transform the code to something else. We will talk about some of these transformations, when to use each one and why.
Simplicity We work feature by feature and not layer by layer. All the development is done on a vertical thin slice through all the layers. We use evolutionary refactoring with many design principles in our mind, but not with a predefined design. We respect the principles, but focus on finding the simplest solution for the problem.
Focus on the problem, not the solution We want to rather focus on the problem and not the solution, rather than when we know the solution, but we just find the fastest way to implement it. When we know the solution, the question is: can it be improved; is it worth it? We will talk about some heuristics of “good enough”.
This talk will be an interactive one, presenting some of the most useful techniques for Evolutionary Design.
You can learn why task switching is bad for you and how to plan your day better so that you can be more productive and less tired.
I worked with many teams and most of them say that task switching (multi-tasking is another term, not that correct) is a good and useful way of working.
There are many Agile practices around there. But most of them have some reasons that are not very well known. The talk is about cross-functional teams, hand-offs, communication biases and new hypes.
Architecture for Disaster Resistant Systems @I TAKE Unconference 29 05 2015Adi Bolboaca
Aviation has learned how to deal with risks and we can learn from their experience in Software. This talk is about how to apply some of the Aviation concepts into Software Architecture.
Refactoring Dojo @AgileWorks Bucharest 21 May 2014Adi Bolboaca
These are the slides for a 2-3 hour session.
Take a code base with full test coverage
Watch me refactor for a while
Start refactoring the code base
Use pair-programming
Discuss the refactoring
Commit often
Sherlock Holmes and Pairing @Romanian Testing Conference 2014 05 15Adi Bolboaca
How is Sherlock Holmes pairing with Dr. Watson. Their actions facilitate learning. This presentation is for you to find out how you can use pairing to teach and learn from your peers.
Sherlock Holmes and Pairing @Bucharest JUG 2013 11 21Adi Bolboaca
Even Sherlock Holmes was pairing. Are you? Let's find some good practices!
During my work I am used to pair with my colleagues on basically anything. I do pair-programming when I develop software, we use pairing when we deliver trainings or when we write articles. I often do remote pair-programming with strangers. The most things I learned during the last years were by working in pair with someone I barely knew.
Pairing for me has the following main advantages:
- I learn a lot from my pair
- I extend my confort zone and I collaborate better with anyone
- the product we work together is a lot better because four eyes are better than two
I will give examples from the activities of the well-known fictional character Sherlock Holmes on how his pair Dr. Watson helps him become better and finding the answer to their riddles.
Sherlock Holmes and Pairing @Wlidcard Conference 2013 09 13Adi Bolboaca
During my work I am used to pair with my colleagues on basically anything. I do pair-programming when I develop software, we use pairing when we deliver trainings or when we write articles. I often do remote pair-programming with strangers. The most things I learned during the last years were by working in pair with someone I barely knew.
Pairing for me has the following main advantages:
I learn a lot from my pair.
I extend my confort zone and I collaborate better with anyone.
The product we work together is a lot better because four eyes are better than two.
I will give examples from the activities of the well-known fictional character Sherlock Holmes on how his pair Dr. Watson helps him become better and finding the answer to their riddles.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
4. How?
1 day of coding
Choose a simple problem
6 pairing partners
On average 135 minutes of coding
6 different constraints
A lot of fun!
www.mozaicworks.com
5. How it started
CodeMash conference 2009
Gary Bernhardt
Patrick Welsh
Nayan Hajratwala
Corey Haines
www.mozaicworks.com
7. Day structure
15' introduction
3 sessions of 45' coding + 15' retro&break
1h lunch
3 sessions of 45' coding + 15' retro&break
15' closing circle
www.mozaicworks.com
8. Principles
Language agnostic
Do not try to finish the problem
Delete the code after each session
Focus on practicing
Experiment each session
Have fun!
www.mozaicworks.com
10. The four elements of simple design
1) Passes its tests
2) Minimizes duplication
3) Maximizes clarity
4) Has fewer elements
www.mozaicworks.com
11. Conway's game of life
Having an infinite 2D orthogonal universe
Being given an initial generation called a seed
The following rules are applied simultaneously
A live cell having less than 2 live neighbors dies
A live cell having 2 or 3 live neighbors lives
A live cell having more than 3 neighbors dies
A dead cell having 3 neighbors becomes alive
www.mozaicworks.com
13. Conway's game of life
Having an infinite 2D orthogonal universe
Being given an initial generation called a seed
The following rules are applied simultaneously
A live cell having less than 2 live neighbors dies
A live cell having 2 or 3 live neighbors lives
A live cell having more than 3 neighbors dies
A dead cell having 3 neighbors becomes alive
www.mozaicworks.com
14. Programming by Wishful Thinking
1.Find a real-life scenario from top to bottom
2.Write an acceptance test on the scenario
3.Write the first unit test at the top
4.Whenever your test or implementation needs something, create a
stub
5.Go on writing next test until you reach the bottom layer
6.Only implement the stubs that you need for your vertical slice
7.Make the real-life scenario test pass
8.Write the next real-life scenario
www.mozaicworks.com
15. Only one decision at a time
1.Introduce only one notion at a time
2.Write down what notions you introduced
3.Note down the steps/tests you took
4.Write down which were the decisions you needed to revert from
www.mozaicworks.com
17. Tell don't ask
The internal state of a class is not accessible
A method call sends all the data needed to retrieve an
answer
Each class computes the output using only its internal
state
www.mozaicworks.com
18. Focus on refactoring
Use naming that reveals intent
Rename concepts to improve naming (use domain
language)
Extract duplicate identical chunks of code
Extract methods having the same noun into their class
Split methods containing Or, And in their names
www.mozaicworks.com
19. Code retreat
Choose your own practice
Decide with your pair in the first 5 minutes
www.mozaicworks.com
20. Closing circle
1) How did you feel?
2) What did you learn today?
3) What will you do differently tomorrow?
www.mozaicworks.com
21. Code retreat
Why?
Learn through pairing
Extend your comfort zone
Practice
Experiment
Learn new practices
www.mozaicworks.com
22. Contact me
●
Remote pair-programming
●
Unit testing workshop
●
Test driven development workshop
●
Clean code workshop
●
Refactoring workshop
●
Legacy code retreat
●
●
Working FAST and Safe with existing
code
Code retreat
www.mozaicworks.com
23. Code retreat
Extend your mentoring & training
capacity
Accelerate learning through
communities of practice
Grow your functional leaders and
top talents
http://www.mozaicworks.com
adrian.bolboaca@mozaicworks.com
@adibolb