Extreme Programming (XP) is an agile software development methodology that focuses on rapid feedback, simplicity, communication, and responsiveness to change. The core values of XP are communication, simplicity, feedback, and courage. Some key XP practices include pair programming, test-driven development, planning games, daily standups, continuous integration, and on-site customers. XP aims to improve software quality and responsiveness through these values and iterative practices.
Introduction to Scrum presentation which outlines common issues in software development, what is Scrum, and an introduction to the Scrum framework. This presentation has been used for training and presentations to both technology and business audiences.
This presentation describes the basics of Agile methodologies and how it is differed from Waterfall. Then continues with the most famous Agile approach: Scrum
This slide share will help users to understand the agile software development methodology and how does it work. It also defines the whole process to implement scrum methodology.
Discover 12 principles for Agile Development created by @liquidconcept.
Liquid Concept is a swiss interactive communications agency. We share the values of our international clients: quality, user-friendliness, clarity and attention to detail
An overview of the Agile Manifesto and the principles and practices that define Agile software development. A comparison of Agile Development methodologies and an organisational culture that supports them
Introduction to Scrum presentation which outlines common issues in software development, what is Scrum, and an introduction to the Scrum framework. This presentation has been used for training and presentations to both technology and business audiences.
This presentation describes the basics of Agile methodologies and how it is differed from Waterfall. Then continues with the most famous Agile approach: Scrum
This slide share will help users to understand the agile software development methodology and how does it work. It also defines the whole process to implement scrum methodology.
Discover 12 principles for Agile Development created by @liquidconcept.
Liquid Concept is a swiss interactive communications agency. We share the values of our international clients: quality, user-friendliness, clarity and attention to detail
An overview of the Agile Manifesto and the principles and practices that define Agile software development. A comparison of Agile Development methodologies and an organisational culture that supports them
Periodic Table of Agile Principles and PracticesJérôme Kehrli
Recently I fell by chance on the Periodic Table of the Elements... Long time no see... Remembering my physics lessons in University, I always loved that table. I remembered spending hours understanding the layout and admiring the beauty of its natural simplicity.
So I had the idea of trying the same layout, not the same approach since both are not comparable, really only the same layout for Agile Principles and Practices.
The result is in this presentation: The Periodic Table of Agile Principles and Practices:
Tried putting things in the deck that I learnt about Extreme programming in XP Conference held in Bangalore. I have tried to keep it at very high level added with light moments, so that it doesn't getting boring and makes sense for most of us
Natural Language Processing using JavaScript "Natural" Library. This deck covers Natural Language Understanding using JavaScript "Natural" library in detail
Discussed in detail about how to design and develop custom skills (think custom apps) for Amazon Alexa Voice service.
Discusses how to design voice based experiences in detail.
Workflows are a key component of server side of IoT solution along with Analytics, Rule Engine and IoT device management. IoT focused Workflow tools draw their inspiration of classical workflow tools that exist in market, but focus more on IoT use cases. For example they are able to connect with IoT devices using IoT specific protocols like CoAP or MQTT. Node-RED is a visual tool for wiring together hardware devices, APIs and online services in new and interesting ways. It’s build by IBM Emerging Technology team from group for IoT, though it’s not limited only to IoT.
Using Swift for all Apple platforms (iOS, watchOS, tvOS and OS X)Aniruddha Chakrabarti
Swift has gained widespread popularity in just an year. So much so that Swift have emerged as the de-facto standard programming language for all Apple platforms including iOS, watchOS, tvOS and OS X. Apple also open sources Swift and soon after IBM ported Swift to Linux. Swift incorporates the language innovations that have happened in the last two decades. Swift is a compiled programming language and belongs to the ‘C’ family of languages similar to C++, Java, C#, Objective-C and D. Swift is influenced by dynamic programming languages like Python, Ruby and functional programming languages like Haskell.
Future of .NET - .NET on Non Windows Platforms. .NET has been so far targeted towards Windows only. Now Microsoft created a subset of .NET called .NET Core that would run on Linux and OS X apart from Windows.
High level overview of CoAP or Constrained Application Protocol. CoAP is a HTTP like protocol suitable for constrained environment like IoT. CoAP uses HTTP like request response model, status code etc.
memcached Distributed Cache. memcached is the most popular cache solution for low latency high throughput websites. improves the read timings drastically.
Provides an overview of Redis which is a Key Value NoSQL database and the different data types it supports. Also shows how to use Redis Client API from node.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
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.
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/
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
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.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
Agile Practices - eXtreme Programming
1. 1 Extreme Programming How Agile Practices can make the difference AniruddhaChakrabarti Sr. Solution Architect
2. 2 Agenda Agile Methodology Agile Manifesto & Agile Philosophy Different Agile methodologies Extreme Programming/XP Brief History of XP XP Values, Principles and Practices Core XP Values XP Principles Different XP Practices
3. 3 Agile Methodology Definition of Agile: Characterized by quickness, lightness, and ease of movement; nimble. Mentally quick or alert: an agile mind. Agile Methodology promotes: Project management process that encourages frequent inspection and adaptation; Leadership philosophy that encourages team work, self-organization and accountability; Set of engineering best practices that allow for rapid delivery of high-quality software; Business approach that aligns development with customer needs and company goals.
4. 4 Agile Philosophy: Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactionsoverprocesses and tools Working softwareovercomprehensive documentation Customer collaborationover contract negotiation Responding to changeoverfollowing a plan That is, while there is value in the items on the right, we value the items on the left more. Kent Beck Mike Beedle Arie van Bennekum Alistair Cockburn Ward Cunningham Martin Fowler James Grenning Jim Highsmith Andrew Hunt Ron Jeffries Jon Kern Brian Marick Robert C. Martin Steve Mellor Ken Schwaber Jeff Sutherland Dave Thomas www.AgileManifesto.org, http://AgileManifesto.org/history.html
5. 5 Agile Philosophy Individuals and interactions over processes and tools Software without documentation is a disaster. Code is not the ideal medium for communicating the rationale and structure of a system However, too much documentation is worse than too little. Huge software documents take a great deal of time to produce, and even more time to keep in sync with the code. Working software over comprehensive documentation Software without documentation is a disaster. Code is not the ideal medium for communicating the rationale and structure of a system However, too much documentation is worse than too little. Huge software documents take a great deal of time to produce, and even more time to keep in sync with the code. Customer collaboration over contract negotiation Responding to change over following a plan
6. 6 Different Agile Methodologies Extreme Programming / XP (Kent Beck, Ward Cunningham, Martin Fowler, Ron Jeffries) Scrum (Ken Schwaber, Jeff Sutherland) Crystal (Alistair Cockburn) DSDM Lean Software Development Feature Driven Development / FDD (Peter Coad) XBreed Adaptive Software Development / ASD (Jim Highsmith)
7. 7 What is Extreme Programming (XP) XP is actually a deliberate and disciplined approach to software development. Discipline of software development based on Values of simplicity, communication, feedback, and courage. Works by - Bringing the whole team together in the presence of simple practices Enough feedback to enable the team to see where they are and to tune the practices to their unique situation. Proven at companies like Bayerische Landesbank, Credit Swiss Life, DaimlerChrysler, First Union National Bank, Ford Motor Company and UBS. Empowers developers to confidently respond to changing customer requirements, even late in life cycle.
8. 8 Agile & XP: A bit of History Agile software development evolved in mid-90s as part of a reaction against "heavyweight" methods. Initially they were called "lightweight methods”. In 2001, prominent members of the community met at Snowbird, Utah, and adopted the name "agile methods". Root of XP lies in Smalltalk community Early 90s: Kent Beck and Ward Cunningham came up with an approach to software development that made every thing simple and more efficient. Mar 96: Kent started Chrysler Comprehensive Compensation/C3) at DaimlerChrysler using new concepts in software development. The result was Extreme Programming (XP) methodology.
24. 11 Basic Fundamental Principles Rapid Feedback Assume Simplicity Make Incremental Change Embracing Change Quality Work www.AgileManifesto.org/principles.html http://en.csharp-online.net/Introducing_XP%E2%80%94Fifteen_XP_Principles
25. 12 Further Principles Teach Learning Make a Small Initial Investment Play to Win – do what is required to succeed Concrete Experiments – use proper reports Open, honest Communication Work with people's instincts - not against them Accepted Responsibility Local Adaptation / Accept as Necessary Travel Light Honest Measurement
31. 14 XP Practices: Planning User Stories Functionalities of the system are described using stories, short descriptions of customer-visible functionalities Planning Game/Release Planning Small & Short Releases Every release should be as small as possible, containing the most valuable business requirements. It is far better to plan a month or two at a time than six months or a year at a time Iterative Development Daily Standup meeting
44. 17 Daily Standup Meeting (Cont’d) Everyone answers three questions – What did I accomplish yesterday? What will I do today? What obstacles are impeding my progress? Focus on the Backlog Same Place, Same Time Who attends the daily stand-up? – All Hands Time-box the meeting Last Arrival Speaks First
45. 18 XP Practices: Designing Simple Design (avoid YAGNI) System Metaphor CRC Cards: Class, Responsibility, Collaborator Spike Solutions No functionality is added early Design Improvement / Refactoring Related Article: Is Design Dead? – Martin Fowler
46. 19 Simple Design Misconception about XP: XP advices to avoid design Truth: XP advices Avoid too much Up Front Design / extra design at early phase, as requirement is not clear – Evolutionary Approach Simple and elegant design Runs all the tests. Has no duplicated logic. Be wary of hidden duplication like parallel class hierarchies. States every intention important to the programmers. Has the fewest possible classes and methods. Avoid over design Avoid design that would not be required: YAGNI
47. 20 CRC Cards Used to identify Classes, Responsibilities and Collaborations between objects. Created from index cards with these info - Class name Its Super and Sub classes (if applicable) Responsibilities of the class. Names of other classes with which the class will collaborate to fulfill its responsibilities. Author Related Article: http://c2.com/doc/oopsla89/paper.html Using CRC cards – Alistair Cockburn http://www.extremeprogramming.org/rules/crccards.html
48. 21 XP Practices: Coding/Release Onsite Customer: Customer is always available Coding Standards Test Driven Development (TDD): code unit tests first Pair Programming Continuous Integration (CI) Ten-minute build Daily Deployment Collective Code Ownership Sustainable Pace: 40-hour week
49. 22 Continuous Integration (CI) Maintain a single source repository Automate the build Make your build self-testing Everyone commits every day Every commit should build the mainline on an Integration machine Keep the build fast Test in a clone of the production environment Make it easy for anyone to get the latest executable Everyone can see what's happening Automate deployment Related Article: Continuous Integration – Martin Fowler
50. Steps to do for CI with a Source Control 23 Dev begins by taking a copy of current integrated source onto local dev machine: Check out from Source Control Dev makes the necessary changes - It consist of both altering the code, and also adding or changing automated tests. Dev carries out an automated build on dev machine - takes source code in working copy, compiles and runs the automated tests. Update working copy with changes in Source Control and rebuild. If other’s changes clash with dev’s changes dev will fix this and repeat until he can build a working copy that is properly synchronized with the mainline. Once dev have made his own build of a properly synchronized working copy he can finally commit changes into the mainline Build again, but this time on an integration machine based on the mainline code. Only when this build succeeds can we say that my changes are done
51. 24 XP Practices: Testing All code should have Unit Tests All code must pass all unit tests before it can be released. When a bug is found tests are created. Unit Tests and Acceptance tests are run often and the score is published.
52. 25 XP Practices: Team & Human Seat together Whole team approach Informative workspace Energized Work Pair Programming Team Continuity
53. 26 Resources Extreme Programming Explained: Embrace Change – Kent Beck (Ver 1 and 2) Apress Pro .NET 2.0 Extreme Programming ebook Refactoring: Improving the Design of Existing Code - Matrin Fowler, Kent Beck … Agile Project Management with Scrum - Ken Schwaber www.ExtremeProgramming.org www.AgileManifesto.org http://www.xprogramming.com