The document discusses the history and principles of Extreme Programming (XP). It traces XP back to its origins on the Chrysler Comprehensive Compensation System project in 1993. The core values of XP like communication, simplicity, feedback and courage are explained. Fundamental XP practices like pair programming, planning game, test-driven development and continuous integration are also outlined. The document then considers how technology advances since XP was first developed have changed how software teams work. It concludes by questioning how "extreme" software teams are willing to be in exposing themselves to achieve success for their customers, teams and society.
Tips sukses berkarir sebagai developer dan programmer 2021DicodingEvent
Tetap kembangkan skill mu di era pandemi. Jadikan hari-harimu lebih produktif dengan asah pengetahuan dan skill di Dicoding Event. Kali ini Dicoding LIVE disponsori oleh IDCamp dengan tema "Tips Sukses Berkarir sebagai Developer dan Programmer 2021"
Developer dan programmer kini menjadi salah satu pekerjaan yang paling diminati. Jadi, tidak heran jika banyak orang yang tertarik mencoba profesi ini untuk berkarir. Sayangnya masih banyak orang berpikir bahwa bekerja menjadi developer dan programmer hanya berhubungan dengan hal-hal yang bersifat technical, padahal tidak. Banyak hal yang harus dipersiapkan dan diketahui saat ingin mulai berkarier di dunia kerja seperti tools apa yang bisa membantu produktivitas, cara berkomunikasi dengan tim, sampai problem solving masalah dalam tim. Kali ini bersama dengan Andri Suranta Ginting (Mobile Engineer, Gojek) akan kita bahas tips dari pengalaman beliau dalam berkarir sebagai developer dan programmer juga menyiapkan hal technical dan non-technical untuk dikuasai di dunia kerja.
This document provides an overview of Agile and eXtreme Programming (XP), including the core values and principles of the Agile Manifesto, roles and practices in XP, and how to adopt and apply XP to projects. It discusses key aspects of XP like short iterations, user stories, frequent releases, test-driven development, refactoring, collective code ownership, and more. The goal is to give the reader a crash course in Agile and XP methodologies.
The document discusses 5 rules of software development that were made to be broken:
1. Do the simplest thing that could possibly work, but no simpler.
2. Design for reuse, but refactor for reuse.
3. Only hire the smartest engineers, but hire well-rounded teams.
4. Premature optimization is the root of all evil, but be mindful of performance.
5. The customer is always right, but delight customers with transparency and consistency.
The overall message is to be wary of rules in software engineering.
The document describes how an agile project team at ThoughtWorks refactored their process to address problems like long story card lifecycles, bugs, slow build times, and communication issues between distributed teams. They made changes such as having teams own story cards, using pairing and smaller co-located teams, emphasizing testing, creating visual boards, improving developer environments, and fostering more communication. These process changes have led to visible progress, higher customer trust, improved morale and productivity, and an overall more enjoyable work experience for the team.
Open Source Software Development Practices that WorksChoong Ping Teo
The document discusses open source software development practices that focus on being agile and iterative. Some key practices include using user stories instead of heavy documentation, delivering working software in short iterations, estimating tasks by breaking work down, respecting teammates, having daily standups, keeping to-do lists short, writing tests, holding retrospectives, and continuously improving through learning and adjustments. The overall message is that these agile practices work because they are simple, allow flexibility to adapt to changes, and focus on delivering working software.
A new Alexa skill is quickly built and certified at Amazon. Depending on its complexity, this process can be completed in a few weeks. The same applies to Google Actions. But some people put their hands in their laps afterwards and wonder why their new, innovative voice application does not go through the roof. History repeats itself: 25 years ago, with the advent of the World Wide Web, many HTML projects were published whose content was not updated for a long time. Today nobody would launch a website or a smartphone app and then leave it to itself. Why should it be different with an Alexa skill, a Google Action or a Bixby capsule? In this session you will learn about strategies and solutions to make your voice application up-to-date, interactive and interesting. Use the existing tools of the providers and make sure that your content can easily be kept up-to-date. We will also look at the insights and modernization measures from the three-year operation of one of the first German-speaking Alexa Skills.
The document discusses the history and principles of Extreme Programming (XP). It traces XP back to its origins on the Chrysler Comprehensive Compensation System project in 1993. The core values of XP like communication, simplicity, feedback and courage are explained. Fundamental XP practices like pair programming, planning game, test-driven development and continuous integration are also outlined. The document then considers how technology advances since XP was first developed have changed how software teams work. It concludes by questioning how "extreme" software teams are willing to be in exposing themselves to achieve success for their customers, teams and society.
Tips sukses berkarir sebagai developer dan programmer 2021DicodingEvent
Tetap kembangkan skill mu di era pandemi. Jadikan hari-harimu lebih produktif dengan asah pengetahuan dan skill di Dicoding Event. Kali ini Dicoding LIVE disponsori oleh IDCamp dengan tema "Tips Sukses Berkarir sebagai Developer dan Programmer 2021"
Developer dan programmer kini menjadi salah satu pekerjaan yang paling diminati. Jadi, tidak heran jika banyak orang yang tertarik mencoba profesi ini untuk berkarir. Sayangnya masih banyak orang berpikir bahwa bekerja menjadi developer dan programmer hanya berhubungan dengan hal-hal yang bersifat technical, padahal tidak. Banyak hal yang harus dipersiapkan dan diketahui saat ingin mulai berkarier di dunia kerja seperti tools apa yang bisa membantu produktivitas, cara berkomunikasi dengan tim, sampai problem solving masalah dalam tim. Kali ini bersama dengan Andri Suranta Ginting (Mobile Engineer, Gojek) akan kita bahas tips dari pengalaman beliau dalam berkarir sebagai developer dan programmer juga menyiapkan hal technical dan non-technical untuk dikuasai di dunia kerja.
This document provides an overview of Agile and eXtreme Programming (XP), including the core values and principles of the Agile Manifesto, roles and practices in XP, and how to adopt and apply XP to projects. It discusses key aspects of XP like short iterations, user stories, frequent releases, test-driven development, refactoring, collective code ownership, and more. The goal is to give the reader a crash course in Agile and XP methodologies.
The document discusses 5 rules of software development that were made to be broken:
1. Do the simplest thing that could possibly work, but no simpler.
2. Design for reuse, but refactor for reuse.
3. Only hire the smartest engineers, but hire well-rounded teams.
4. Premature optimization is the root of all evil, but be mindful of performance.
5. The customer is always right, but delight customers with transparency and consistency.
The overall message is to be wary of rules in software engineering.
The document describes how an agile project team at ThoughtWorks refactored their process to address problems like long story card lifecycles, bugs, slow build times, and communication issues between distributed teams. They made changes such as having teams own story cards, using pairing and smaller co-located teams, emphasizing testing, creating visual boards, improving developer environments, and fostering more communication. These process changes have led to visible progress, higher customer trust, improved morale and productivity, and an overall more enjoyable work experience for the team.
Open Source Software Development Practices that WorksChoong Ping Teo
The document discusses open source software development practices that focus on being agile and iterative. Some key practices include using user stories instead of heavy documentation, delivering working software in short iterations, estimating tasks by breaking work down, respecting teammates, having daily standups, keeping to-do lists short, writing tests, holding retrospectives, and continuously improving through learning and adjustments. The overall message is that these agile practices work because they are simple, allow flexibility to adapt to changes, and focus on delivering working software.
A new Alexa skill is quickly built and certified at Amazon. Depending on its complexity, this process can be completed in a few weeks. The same applies to Google Actions. But some people put their hands in their laps afterwards and wonder why their new, innovative voice application does not go through the roof. History repeats itself: 25 years ago, with the advent of the World Wide Web, many HTML projects were published whose content was not updated for a long time. Today nobody would launch a website or a smartphone app and then leave it to itself. Why should it be different with an Alexa skill, a Google Action or a Bixby capsule? In this session you will learn about strategies and solutions to make your voice application up-to-date, interactive and interesting. Use the existing tools of the providers and make sure that your content can easily be kept up-to-date. We will also look at the insights and modernization measures from the three-year operation of one of the first German-speaking Alexa Skills.
1) The document discusses the Minimum Viable Product (MVP) process which helps entrepreneurs test new products and gather feedback to make improvements.
2) An MVP is not a finished product but a process to validate critical assumptions as efficiently as possible to improve chances of success.
3) Common MVP methods mentioned include fake door product videos, landing pages, piecemeal launches, and the wizard of OZ technique.
Uxebu
-The Validation Board: was it useful to better understand our customers?
-Preparing a questionnaire: was that simple?
-What have we learned?
These were the slides I created for my talk at the Lean Startup Meetup, in Munich.
Too bad I didn’t publish them before!
GROWTH PRACTICES - Cracking the PM Career - CHAPTER 7Amir Shokri
This document provides guidance on growth practices for product managers. It discusses several approaches to test hypotheses quickly such as using prototypes and A/B tests. It also discusses designing for sticky usage through notifications, updates, and gamification. The document advises building a product mindset by focusing on the problem to be solved. It recommends prioritizing goals and developing a quality bar by choosing issues to fix while keeping costs in mind. Finally, it suggests considering more radical solutions by expanding perspectives on team size, deadlines, partnerships, and business models.
Support automation with chatbots | Erik Pfannmöller | Founder, Solvemate | DN18DataconomyGmbH
This document discusses lessons learned about developing chatbots for customer support. It covers the make vs buy decision and outlines 5 key lessons:
1) Not every organization qualifies for a chatbot solution.
2) Goals like reducing agent workload or growing revenue without hiring must be set.
3) ROI should be calculated based on setup costs, gains, and ongoing costs.
4) Integrations with other systems are important.
5) Solutions should go live quickly and iteratively to match user needs.
Developers often fail projects by starting from scratch each time, having a busy schedule leading to slow responsiveness, and underestimating tasks like testing, project management, and understanding requirements. Clients can fail by closing campaigns permanently after objections to cost and length. Responses to price objections include questioning the client's definition of expense, providing examples of satisfied clients, and proposing milestone-based development. Good sales tactics include providing mockups, wireframes, basic technology knowledge, consulting on technology choices, project examples, explaining the software development lifecycle, and collaborative tools.
The document provides tips for presentations and discusses outsourcing software development. It lists tasks for evaluating and implementing a new system in order. The tasks of identifying vendors and evaluating alternatives can be done together, as can preparing recommendations and system requirement documentation.
Presentation done in Jan at the Winnipeg Agile User Group about how to make your team more productive and communicate better developers, managers and business analysts.
Executable Specifications with FitNesse and SeleniumDawn Code
This document discusses using executable specifications with FitNesse and Selenium to minimize miscommunications between business and development teams. It introduces Dawn Cannan and describes the Test Automation Pyramid. Key points covered include defining examples as tests to get everyone on the same page early, preventing bugs, and challenges of test automation in the browser like locating elements and synchronization. The FitNesse framework is presented as a way to define Selenium tests in a wiki accessible to all team members.
Testing the Mysterious Sphere
This workshop helps testers get an overview of what to do and what not to do under different circumstances. Then it is observed how they react/respond in those situations from where the learnings are derived. It focusses on the key testing and consulting skills. They can tie it back to real time project experiences.
Through a series of interesting phases with role plays and activities the entire workshop duration is full of energy and interactions.
Delivered by - Anjali Wadhwa, Ashwini Ingle, Preeti Mishra at vodQA - Agile Testing, at ThoughtWorks, Pune on Sat, 9th Jan 2016
The prototype is all done and it seems to work well. Now, how do you get the prototype manufactured reliably and at a reasonable cost? If you're like a lot of small companies, this is not something you do all the time. Finish Line has done more than one thousand projects for more than 250 small companies and we have learned a few things in the process.
This document provides an overview of a workshop to build a virtual pet with JavaScript. The agenda includes reviewing starter code, learning key JavaScript concepts like variables and objects, building the app, and getting solutions. Students will create a pet object with properties like name, weight, and happiness and use functions and conditionals to update the pet's status. The workshop aims to help aspiring developers learn through a hands-on project with support from instructors and teaching assistants.
The grading rubric for a C++ programming assignment totals 100 points and evaluates submissions based on specifications (60 points), readability (10 points), reusability (5 points), documentation (10 points), delivery/timeliness (up to 15 points off for late submissions), and efficiency (15 points). The specifications criteria focuses on the program working correctly and meeting all requirements, while efficiency considers optimized code without sacrificing readability or error handling.
This document discusses the benefits of using mockups in communication, including reducing miscommunication and using less text. It lists several goals such as having everyone start using mockups and creating them quickly. It then provides examples of mockups demonstrating an edit profile form, indicators for cache status, and a margarita recipe. It also mentions resources for finding mockups and taking a mockup "master class." The overall message is that mockups can improve communication and work processes by making designs and workflows more visual and clear.
Website optimization through quality experimentation (2)wcto2017
I talk about quality experimentation methodology, overcoming fear and ideas about how to generate experiment ideas. My intended audience is small to medium size businesses with functioning sites that are looking to improve through increased conversion.
This document discusses an approach called "Legoizing Testing" which breaks testing into reusable "blocks" or components. It presents problems with traditional scripting approaches where changes require rewriting many steps. The Legoizing approach involves identifying atomic, reusable test blocks and allowing testers to assemble scripts by selecting relevant blocks. A demo of a Lego testing tool is provided, showing how it can generate scripts in minutes by selecting scenarios and matching blocks. Feedback indicates the tool has helped reduce scripting time and increased stakeholder satisfaction on one project. The presentation concludes by recommending that others identify reusable testing blocks and provide a self-service tool to build scripts from those blocks.
Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...eazynow
Here are the slides for the talk that myself (Erol Ziya - @eazynow) and Rob Baines (@telecoda) gave at the first Twiliocon Europe, providing tips for when moving from PoC to production based on our experiences in hibu labs. #twiliocon
GROWTH PRACTICES - Cracking the PM Career - CHAPTER 4Amir Shokri
The document discusses practices for product managers to cultivate growth. It recommends maintaining a beginner's mindset by watching new user sessions to understand their perspective. Product choices should be driven by customer insights, with a standardized process for gaining user feedback. Insights should be categorized by priority, balancing usability issues against tradeoffs and impact. Senior PMs evangelize insights through examples in meetings, research sharing, talks, and presentations to executives, surfacing the key insight that solves the problem by considering past and future implications.
Financial Services Executive Lunch: Finding The Missing MillennialsThoughtworks
Babs Ryan presented to Financial Services industry peers across Brisbane, Melbourne and Sydney on the topic "How global leaders are engaging a generation disinterested in Financial Services" She shared some thought-provoking examples of how global and local financial service organisations are inventing new, innovative approaches to engage millennials.
XConf Coimbatore 2016 - Through the eyes of an AnalystThoughtworks
In an agile environment a Business Analyst is bound to see what lies beyond the tangible. So what happens behind the scenes while trying to arrive at creative solutions?
1) The document discusses the Minimum Viable Product (MVP) process which helps entrepreneurs test new products and gather feedback to make improvements.
2) An MVP is not a finished product but a process to validate critical assumptions as efficiently as possible to improve chances of success.
3) Common MVP methods mentioned include fake door product videos, landing pages, piecemeal launches, and the wizard of OZ technique.
Uxebu
-The Validation Board: was it useful to better understand our customers?
-Preparing a questionnaire: was that simple?
-What have we learned?
These were the slides I created for my talk at the Lean Startup Meetup, in Munich.
Too bad I didn’t publish them before!
GROWTH PRACTICES - Cracking the PM Career - CHAPTER 7Amir Shokri
This document provides guidance on growth practices for product managers. It discusses several approaches to test hypotheses quickly such as using prototypes and A/B tests. It also discusses designing for sticky usage through notifications, updates, and gamification. The document advises building a product mindset by focusing on the problem to be solved. It recommends prioritizing goals and developing a quality bar by choosing issues to fix while keeping costs in mind. Finally, it suggests considering more radical solutions by expanding perspectives on team size, deadlines, partnerships, and business models.
Support automation with chatbots | Erik Pfannmöller | Founder, Solvemate | DN18DataconomyGmbH
This document discusses lessons learned about developing chatbots for customer support. It covers the make vs buy decision and outlines 5 key lessons:
1) Not every organization qualifies for a chatbot solution.
2) Goals like reducing agent workload or growing revenue without hiring must be set.
3) ROI should be calculated based on setup costs, gains, and ongoing costs.
4) Integrations with other systems are important.
5) Solutions should go live quickly and iteratively to match user needs.
Developers often fail projects by starting from scratch each time, having a busy schedule leading to slow responsiveness, and underestimating tasks like testing, project management, and understanding requirements. Clients can fail by closing campaigns permanently after objections to cost and length. Responses to price objections include questioning the client's definition of expense, providing examples of satisfied clients, and proposing milestone-based development. Good sales tactics include providing mockups, wireframes, basic technology knowledge, consulting on technology choices, project examples, explaining the software development lifecycle, and collaborative tools.
The document provides tips for presentations and discusses outsourcing software development. It lists tasks for evaluating and implementing a new system in order. The tasks of identifying vendors and evaluating alternatives can be done together, as can preparing recommendations and system requirement documentation.
Presentation done in Jan at the Winnipeg Agile User Group about how to make your team more productive and communicate better developers, managers and business analysts.
Executable Specifications with FitNesse and SeleniumDawn Code
This document discusses using executable specifications with FitNesse and Selenium to minimize miscommunications between business and development teams. It introduces Dawn Cannan and describes the Test Automation Pyramid. Key points covered include defining examples as tests to get everyone on the same page early, preventing bugs, and challenges of test automation in the browser like locating elements and synchronization. The FitNesse framework is presented as a way to define Selenium tests in a wiki accessible to all team members.
Testing the Mysterious Sphere
This workshop helps testers get an overview of what to do and what not to do under different circumstances. Then it is observed how they react/respond in those situations from where the learnings are derived. It focusses on the key testing and consulting skills. They can tie it back to real time project experiences.
Through a series of interesting phases with role plays and activities the entire workshop duration is full of energy and interactions.
Delivered by - Anjali Wadhwa, Ashwini Ingle, Preeti Mishra at vodQA - Agile Testing, at ThoughtWorks, Pune on Sat, 9th Jan 2016
The prototype is all done and it seems to work well. Now, how do you get the prototype manufactured reliably and at a reasonable cost? If you're like a lot of small companies, this is not something you do all the time. Finish Line has done more than one thousand projects for more than 250 small companies and we have learned a few things in the process.
This document provides an overview of a workshop to build a virtual pet with JavaScript. The agenda includes reviewing starter code, learning key JavaScript concepts like variables and objects, building the app, and getting solutions. Students will create a pet object with properties like name, weight, and happiness and use functions and conditionals to update the pet's status. The workshop aims to help aspiring developers learn through a hands-on project with support from instructors and teaching assistants.
The grading rubric for a C++ programming assignment totals 100 points and evaluates submissions based on specifications (60 points), readability (10 points), reusability (5 points), documentation (10 points), delivery/timeliness (up to 15 points off for late submissions), and efficiency (15 points). The specifications criteria focuses on the program working correctly and meeting all requirements, while efficiency considers optimized code without sacrificing readability or error handling.
This document discusses the benefits of using mockups in communication, including reducing miscommunication and using less text. It lists several goals such as having everyone start using mockups and creating them quickly. It then provides examples of mockups demonstrating an edit profile form, indicators for cache status, and a margarita recipe. It also mentions resources for finding mockups and taking a mockup "master class." The overall message is that mockups can improve communication and work processes by making designs and workflows more visual and clear.
Website optimization through quality experimentation (2)wcto2017
I talk about quality experimentation methodology, overcoming fear and ideas about how to generate experiment ideas. My intended audience is small to medium size businesses with functioning sites that are looking to improve through increased conversion.
This document discusses an approach called "Legoizing Testing" which breaks testing into reusable "blocks" or components. It presents problems with traditional scripting approaches where changes require rewriting many steps. The Legoizing approach involves identifying atomic, reusable test blocks and allowing testers to assemble scripts by selecting relevant blocks. A demo of a Lego testing tool is provided, showing how it can generate scripts in minutes by selecting scenarios and matching blocks. Feedback indicates the tool has helped reduce scripting time and increased stakeholder satisfaction on one project. The presentation concludes by recommending that others identify reusable testing blocks and provide a self-service tool to build scripts from those blocks.
Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...eazynow
Here are the slides for the talk that myself (Erol Ziya - @eazynow) and Rob Baines (@telecoda) gave at the first Twiliocon Europe, providing tips for when moving from PoC to production based on our experiences in hibu labs. #twiliocon
GROWTH PRACTICES - Cracking the PM Career - CHAPTER 4Amir Shokri
The document discusses practices for product managers to cultivate growth. It recommends maintaining a beginner's mindset by watching new user sessions to understand their perspective. Product choices should be driven by customer insights, with a standardized process for gaining user feedback. Insights should be categorized by priority, balancing usability issues against tradeoffs and impact. Senior PMs evangelize insights through examples in meetings, research sharing, talks, and presentations to executives, surfacing the key insight that solves the problem by considering past and future implications.
Financial Services Executive Lunch: Finding The Missing MillennialsThoughtworks
Babs Ryan presented to Financial Services industry peers across Brisbane, Melbourne and Sydney on the topic "How global leaders are engaging a generation disinterested in Financial Services" She shared some thought-provoking examples of how global and local financial service organisations are inventing new, innovative approaches to engage millennials.
XConf Coimbatore 2016 - Through the eyes of an AnalystThoughtworks
In an agile environment a Business Analyst is bound to see what lies beyond the tangible. So what happens behind the scenes while trying to arrive at creative solutions?
Some people have the misconception that design is just creating ‘pretty pictures’. This is not the case; there is a science to creating the right ‘pretty picture’.
This presentation is aimed at teams who either do not have the luxury of a designer on their team, or they have a designer that works in silo to their team. Small teams of developers, Business Analysts and Quality Analysts will benefit from understanding the finer details of design. Developers will gain empathy for design and a better understanding of how to display content. Quality Analysts will learn how to quickly notice problems with a design before release.
It also demonstrates how to ensure the product you are building is ‘on brand’ and ‘user-centric’, and why this is important to ensure the success of your product.
Agile Data Insights: Decisões de Negócios Guiadas por DadosThoughtworks
O documento discute como insights de dados podem guiar decisões de negócios de forma ágil. Apresenta exemplos de como a Amazon usa dados para antecipar necessidades de clientes e como pesquisas mostram que fatores sociais influenciam escolhas das pessoas. Também descreve níveis de maturidade em análise de dados e técnicas como árvores de decisão e redes neurais para gerar insights.
Recrutamento Ágil: Muito Além do SoftwareThoughtworks
O documento discute os princípios e práticas de recrutamento da ThoughtWorks, uma comunidade apaixonada por revolucionar o design e criação de software enquanto defende uma mudança social positiva. A ThoughtWorks enfatiza a colaboração, excelência técnica, entrega contínua e melhoria contínua ao invés de apenas seguir processos. O foco é recrutar pessoas e valorizar as interações entre elas.
ThoughtWorks Digital - Estratégia de DadosThoughtworks
A ThoughtWorks Brasil é uma empresa de tecnologia e inovação com mais de 20 anos de experiência e escritórios em diversos países da América Latina. A empresa ajuda outras empresas a se transformarem digitalmente e a lidarem com os desafios de um mundo em constante mudança e revolução industrial, oferecendo produtos, serviços e consultoria em novas tecnologias.
Platforms for growth retail executive breakfast: Connecting digital strategy ...Thoughtworks
The ThoughtWorks Retail team presented to Australia's top retailers across Melbourne, Sydney and Brisbane on the topic 'how to connect your digital strategy to technology'.
O documento discute cinco anti-padrões de integração contínua, incluindo o uso de branches de longa duração, desenvolvimento e testes em etapas separadas, builds demorados, check-ins em builds falhos e descaso com o processo de build. Ele também fornece dicas sobre como evitar esses anti-padrões através da disciplina e do uso de ferramentas de automação.
#DigitalNudge - Tendências entre Psicologia Cognitiva, Behavioral Economics e...Thoughtworks
Apresentação de Fabio Pereira no BINTECH (Banking and Insurance Technology Forum Brasil) 2016. Nessa apresentação, Fabio fala sobre economia comportamental, psicologia cognitiva e o que isso tem a ver com Transformação Digital e o setor de Seguros.
Veja mais conteúdos interessantes sobre Transformação Digital aqui: https://info.thoughtworks.com/liderando-a-revolucao-digital.html
Data Strategy - Enabling the Data-Guided EnterpriseThoughtworks
This document discusses how companies can develop an effective data strategy to become more data-driven. It emphasizes that a data strategy should target value proposition, culture, processes, people, and technology. It also stresses that successful companies set clear goals for how data will be used, define what success looks like, and ask the right questions of their data. The document provides examples of how companies like AutoTrader and Etsy have transformed their culture to be more data-guided in order to gain competitive advantages.
Strategy to Execution by Jonny Schneider - ThoughtWorksThoughtworks
Predicting the future is hard. Most software projects come in over budget. We need to stop predicting, and rather adapt. Using design thinking, lean and agile practices will help explore, test and build - the right thing.
ThoughtWorks Retail and Onefinestay - Business Model Innovation - Retail Week...Thoughtworks
Miranda Cresswell of Onefinestay and Mark Collin of ThoughtWorks Retail discussed 'Driving Business Model Innovation' at Retail Week Buzz 2016 in London
A Multi-Company Perspective: Enterprise Cloud and PaaSThoughtworks
Tech communities are always abuzz with the potential of Platform as a Service (PaaS). The promised ability to slash delivery times, allowing teams to iterate and release new features faster, has a growing number of organisations looking to implement PaaS in 2016.
In this presentation, industry leaders provide insights from the trenches by letting us enter the world of Cloud applications automation and PaaS. We also get a glimpse into why and how PaaS is widely adopted, as well as appreciate its constructs and challenges.
Further more, you can learn how build your delivery platform around AWS services, CloudFoundry or OpenShift and reflect on how best to create internal cloud and PaaS capabilities to change the way your organisation delivers software.
Demo the reactive jargons by Mushtaq Ahmed, ThoughtWorks presented at Pune Sc...Thoughtworks
Sync, Async, Blocking, Non-Blocking, Streaming are the buzzwords in the reactive programming world. This talk will attempt to attach some meaning to them. It will also demo the performance and resource consumption patterns for blocking-io, Scala Futures and RxJava Observables for comparable programs. Finally, a command line application that consumes twitter streams API will demo what is possible using the new reactive abstractions.
Liderança compartilhada - "pare de gerenciar pessoas"Thoughtworks
O documento discute a liderança compartilhada em organizações complexas, propondo um modelo de gestão baseado em autonomia, auto-organização e propósito evolutivo. Sistemas fractais descentralizados permitem que times se autogerenciem com autonomia e maestria, buscando um propósito comum de forma evolutiva.
The title of this presentation is taken from two quotes attributed to Colin Chapman, the founder of Lotus cars, who said: “adding power makes you faster on the straights; subtracting weight makes you faster everywhere”.
This same philosophy underlies principle 10 of the Manifesto for Agile Software Development. Simplicity – the art of maximising the work not done – is essential. Principle 10 is the most important and most misunderstood of the Agile principles. It stands out from the other 11 in a number of ways. It is the only one described as an art; the specific phrasing,“maximising the work not done”, is somewhat unusual; and it is the only one to be explicitly called out as essential.
The presentation introduces attendees to the idea that Principle 10 is essential because it underlies, supports and enables everything else and that without unwavering adherence to it, achieving agility in software development or anything else will be compromised.
This presentation teach will teach you to identify and evaluate opportunities for simplification and maximisation of work not done.
Olhares Diversos, Oportunidades Iguais | ThoughtWorks na HSMThoughtworks
O documento discute a diversidade e inclusão na ThoughtWorks. A empresa acredita que a diversidade de perspectivas leva a melhores soluções e busca promover igualdade de oportunidades. A ThoughtWorks tem mais de 20 anos de experiência em tecnologia e inovação e defende a justiça social em seus pilares.
Agile Methodologies And Extreme ProgrammingUtkarsh Khare
The document discusses Agile development and Extreme Programming (XP). It provides an overview of 12 key practices of XP, including planning games, small releases, test-driven development, pair programming, collective ownership, continuous integration and 40-hour work weeks. It also discusses how XP aims to solve software engineering problems through intensive teamwork, handling changes and staff turnover, and involving customers.
The document discusses essential skills that programmers need versus accidental skills. Essential skills are hard to acquire but long-lasting, including things like managing complexity, writing readable code, and limiting bugs. These skills separate good programmers from bad. Accidental skills like knowledge of a specific programming language are easier to obtain but have shorter usefulness. The document advocates spending time on design, planning, unit testing, discussing solutions with others, and considering alternative solutions rather than just focusing on writing code. Developing essential skills through these practices can help programmers continuously learn and improve over the course of their careers.
Agile Methodologies And Extreme Programming - Svetlin NakovSvetlin Nakov
1. Agile development and Extreme Programming (XP) are methodologies that focus on iterative development, collaboration, and adaptability.
2. XP consists of 12 key practices including simple design, test-driven development, pair programming, and small releases. It aims to improve quality, reduce risks, and adapt to changing requirements.
3. While XP works well for some projects and teams, its practices may not be suitable or flexible enough for all situations. Developers should understand the principles behind XP and tailor practices as needed for their specific projects.
This document outlines an agenda for a coderetreat event. It includes:
- An introduction that describes the event organizer and purpose of learning through sharing.
- An agenda with sessions on test-driven development, extreme programming, cost of change, simple design principles, and mechanics of TDD.
- Descriptions of pair programming, test-driven development, and the Game of Life cellular automaton that will be used in exercises.
- Logistical details like session structure, pairing rotations, and expectations around deleting code between sessions.
The document discusses test-driven development (TDD) and design-driven development (DDD). It advocates for writing tests before code using short iterative development cycles. TDD helps produce clean code that fulfills requirements by making developers think about required behavior, providing documentation, and improving quality. Common objections to TDD are addressed, noting that it forces understanding of code and tests, creates reusable modular code, and drives simplicity. Guidelines for effective TDD include writing small focused tests with descriptive intentions that are independent and repeatable.
This document discusses test-driven development (TDD). TDD involves writing tests before code in short cycles of writing tests, code to pass tests, and refactoring. Tests provide clarity about requirements and help discover edge cases early. Tests should be readable and organized with clear setup/teardown. Not all code needs 100% coverage but tests should cover fundamental behaviors. Mocks are used to isolate tests from external dependencies for performance. Behavior-driven development groups tests by behaviors and scenarios to connect similar functionality. The goals of TDD are for tests to be profitable, help maintainability, provide common understanding of behaviors, and ensure quality.
The View - Lotusscript coding best practicesBill Buchan
This document discusses best practices for LotusScript coding. It covers topics like code structure, using short logical functions, defensive programming, variable naming conventions, and ensuring variables only exist as long as needed. The goal is to write code that is maintainable, reusable, and robust. Testing practices like test-driven development and separating development, testing, and production environments are also recommended to improve quality.
WordCamp Nashville: Clean Code for WordPressmtoppa
Slides from my talk at WordCamp Nashville, including notes. Covers why clean code is important, and provides 10 tips to make your code cleaner, for WordPress and beyond
Дмитро Бузоверя
Директор Cloud Computing департаменту в компанії AMC Bridge
Agile підхід до управління проектами існує вже більше 15 років, він досі є об’єктом багатьох дискусій та вважається інноваційним у деяких областях.
Дмитро Бузоверя, зробить огляд методології Agile у розробці програмного забезпечення. Він розкаже про історію Agile, його принципи та більш детально зупиниться на різних методиках: Extreme Programming (XP), Scrum, Lean та Kanban.
Ця лекція допоможе зібрати пазл з Agile термінології в єдину картинку.
Test Driven Development Methodology and Philosophy Vijay Kumbhar
A technique for building software that guides software development by writing tests. This is the philosophy and state of mind that a developer should change and start following TDD
Mastering Agile Practices to Build High Performing TeamsAgileThought
These slides are from a talk that I gave to the Tampa Bay Agile Meetup on August 19, 2014. The talk was titled "Mastering Agile Practices to Build High Performing Teams". http://www.meetup.com/tampa-bay-agile/events/193898502/
Description:
You've read the books. You already know what your Agile team SHOULD be doing. Your Daily Standup meeting should be short and sweet. Your deployments should be automated. Your Sprint Retrospectives should inspire improvement.
So if you know what to do, why aren't you doing it?
The short answer is because Agile is hard. It takes real discipline and leadership to master even the most basic practices. Many teams have committed to adopting Agile, but they just don’t know how to get to the next level.
In this talk, I will share my real world experiences from years of coaching high performing Agile teams. I will discuss the key practices that must be mastered for a team to become great. Additionally, I will identify useful measurement techniques so that teams know if they are improving.
Extreme Programming practices for your teamPawel Lipinski
This document discusses Extreme Programming (XP) practices for software development teams. It begins by introducing Paweł Lipiński and his background in software development. It then discusses several key XP practices in more detail, including having short iterations of less than 4 weeks, testing features at the end of each iteration, prioritizing work based on business value, maintaining burn down charts, and having no project managers disrupting the team. Further sections provide more context on practices like test-driven development, pair programming, collective code ownership, continuous integration, refactoring, and having a 40-hour work week. The document emphasizes that XP is about creating fun, high-quality, efficient teams through these agile practices.
20 things I wish I had known about modern product development by Andy Birds -...Andy Birds
This document provides 20 tips for modern product development:
1. Focus on solving customer problems rather than talking about methodologies.
2. Dream long-term but plan and evaluate in shorter cycles. Continuously ship work.
3. Focus on outcomes that change customer behavior and drive business impact, not just outputs.
4. Thoroughly understand the problem before solving it. Get customer input to ensure solving the right problem.
The document discusses several important topics for software development including unit testing, clean coding principles, design patterns, and useful development tools. It emphasizes that tests are important for preventing bugs and should be included in all projects. Clean coding principles like DRY, KISS and SRP help produce code that is easier to read, change and maintain. Design patterns provide solutions to common problems and a shared vocabulary for developers. Useful tools include IDEs, version control systems, code analysis tools and text editors which can help programmers work more efficiently if used properly.
Stanly Lau is an agile coach and software developer based in Singapore who has worked with companies of various sizes in industries such as insurance, mobile safety, education, logistics, and banking. The document discusses legacy code and how to deal with it. Legacy code is defined as code without unit tests that is difficult to change and prone to bugs. It recommends adopting modern engineering practices like test-driven development and refactoring to incrementally add tests and make changes to legacy code.
[XPday.vn] Legacy code workshop (at) [XP Day Vietnam 2015]Agile đây Vietnam
Stanly Lau is an agile coach and software developer based in Singapore who has worked with companies of various sizes in industries such as insurance, mobile safety, education, logistics, and banking. The document discusses legacy code and provides tips on how to deal with it. Legacy code is defined as code without unit tests that is difficult to change and prone to bugs. It recommends adopting modern engineering practices like test-driven development and refactoring. It also outlines an approach for identifying change points, breaking dependencies, writing tests, and then making changes to legacy code in a safe manner.
Arch factory - Agile Design: Best PracticesIgor Moochnick
This document provides guidance on agile architecture and design principles. It emphasizes that agile design is about responding quickly to change for customers and teams through transparency, lightweight processes, and continuous learning. Key principles discussed include designing incrementally without large upfront design; getting early and continuous feedback; delaying commitment and complexity; and maximizing evolutionary design through reversibility and packaging. The document also covers topics like testing, distributed teams, and delivering frequently.
TDD and agile methods originated from attempts to manage large software projects more effectively. TDD involves writing automated tests before code to specify requirements and catch errors early. It helps avoid major redesigns later. Tests should fail initially and then code is written to pass the test, followed by refactoring. Patterns like starting simply, faking dependencies, and generalizing from examples help get code passing tests quickly. Pitfalls include not starting with a failing test or refactoring tests improperly. The session covered TDD history and techniques, with examples and opportunities for further learning.
This document provides an overview of agile methodology and several agile frameworks. It begins with a brief history of the traditional waterfall model and its limitations. It then introduces the agile manifesto and some core agile principles. Several agile frameworks are described at a high level, including scrum, kanban, extreme programming, and others. Key practices of scrum and extreme programming like iterations, user stories, stand-up meetings, and test-driven development are defined. The document aims to give the reader a broad understanding of agile concepts and some of the most commonly used agile frameworks and practices.
Software development is hard― keeping developers, testers, designers, product managers and other stakeholders in sync and working on the right things at the right time. Building the systems that customers care about and delivering high-quality code fast are challenges every development team faces. Just being agile isn’t enough; we need to actively think about how we can improve software development processes and techniques. Sven details Atlassian’s coding practices and team dynamics, which include: collaborating fast to develop ideas, helping QA with testing, avoiding meetings to get more work done, experimenting, tightening feedback loops to fail faster, shortening release cycles, and working together happily on different continents. He describes examples where Atlassian has failed, then tried a new concept and kicked ass. These practices make Atlassian developers among the most productive and satisfied in the industry. It's a great way to develop software, and Sven thinks it can work in your organization too.
Similar to XConf Coimbatore 2016 - Being a Developer Consultant (20)
Design System as a Product - Maria Elena Duenias, Esther Butcher
Design systems are a great example where web development and design meet. You can find innumerable resources on the internet, books and conferences on how to build them, and how they are exactly what your organization needs. But, building one requires a lot more than following a recipe. In this talk we are going to discuss how to build a design system as an internal product, and how it evolves to become what the users need.
Designers, Developers and Dogs: Finding the magic balance between product and tech - Charlotte Vorbeck, ShareNow and Sahil Bajaj
How can an agile delivery team become a successful product team? When does collaboration between product and tech succeed and when not? Why do people in some teams inspire each other while others in the same environment don't speak the same language? In this talk we want to share our learnings and experiences from rebuilding an internal tool for customer support at ShareNow. What could have been just another boring rewrite surprisingly became one of our best experiences in collaboration. We will look at how a joint discovery phase helped us to come up with a shared vision, how a better team setup enabled us to do the necessary work, how focusing on the customer kept us aligned during our journey, and also how we built upon existing collaborative techniques to achieve this new level of cooperation and trust.
During this presentation, Ward Coessens, ThoughtWorks' Consultant will share best practice insights from the Daimler partnership, helping the automotive group on their cloud innovation journey.
How to create more business impact with flexible teams - Jan Hegewald, Zalando & Rebekka Beels, Zalando
Usually, Software Engineering teams are organized around a fixed set of components which they develop further and maintain. Such component teams gain a high level of expert knowledge about their services. However, with agile product development, it often is difficult to implement the most important initiatives with such teams. This leads to a situation where the teams do not work on the most relevant business topics but on those for the respective team. At Zalando, we introduced a new model where we shape teams flexibly around business goals to create the highest impact. How we organize these teams and which challenges especially for the software quality need to be addressed, will be explored in this talk.
Amazon’s Culture of Innovation & The Working Backwards session
Working Backwards; leading organisations achieve growth by marrying customer-obsession with a modern technology strategy. Where do you begin? By focusing on the customer.
During this webinar, Amazon will discuss key innovation principles which have been instrumental in their continued success and their Working Backwards approach.
Dual-Track Agile for Discovery & Development - Adriana Katrandzhieva
The talk will focus on one of the ways teams can ensure continuous delivery and design in their projects. The so-called ‘Dual-track’ model shows the parallel tracks of discovery and development throughout the product design and delivery process. These continually feedback into each other informing new hypothesis that can be tested in order to be proven/disproven. This model is not always easy to implement out of the box and so I will share my own experiences in applying it in practice - what worked, what didn't and how the model can be adjusted to fit different teams and organisational environments.
This document discusses developer experience (DX) and how to design for it. It begins with introductions of the presenters and defines DX as the experience developers have when using a product. It then discusses understanding developer pain points and personas, designing the developer journey, and using different interfaces like APIs, portals, and CLIs. The document outlines challenges in the design process like getting buy-in and measuring DX metrics. It argues that improving DX benefits business goals like enabling experiments, increasing flexibility, and attracting talent. It concludes that developers are also users and designers, and that DX is important to consider for business reasons.
When we design together - Sabrina Mach, Ammara Gafoor and James Emmott
From three distinct perspectives, this talk will contend that design is an activity undertaken by everyone in a software development team. It occurs throughout the process of delivery — not only at the beginning or the end — and it is a powerful instrument for learning about and adapting to the problems our work seeks to solve, which is a shared responsibility. Making the best use of our multidisciplinary expertise in the activity of design requires forms of collaboration that are too often disrupted by the role-based silos that keep us separated and weaken the valuable contribution our diverse approaches could make to our collective efforts. If you care about accelerating time to market, improving customer experience, or building happy and productive teams, you will want to know why and how it matters that we believe ‘design is in everything that we do’.
Hardware is hard(er): designing for distributed user experiences in IoT - Claire Rowland, www.clairerowland.com
Designing connected devices and hardware-enabled services is significantly more complex than pure software. There are more devices on which code can run, connectivity and data sharing patterns to consider, and often multiple and varied touchpoints for users to interact with. Pulling this all together into a coherent experience involves strong collaboration between design and engineering, and a systems thinking approach to UX. In this talk, we’ll introduce what designers need to know about the tech, what engineers need to know about UX for IoT, and how to facilitate the whole-collaboration needed to create great products.
www.clairerowland.com
Customer-centric innovation enabled by cloudThoughtworks
Working Backwards - Leading organisations achieve growth by marrying customer-obsession with a modern technology strategy. In this upcoming webinar, we’ve partnered with AWS to bring you exclusive insights from one of the world’s most innovative companies, Amazon.
The document discusses Amazon's culture of innovation. It emphasizes starting with the customer and working backwards to develop solutions. Amazon focuses on small, autonomous teams that are nimble and own their work. The company's leadership principles guide decision-making and encourage inventiveness, customer obsession, high standards, and long-term thinking to solve customer problems.
The document discusses techniques for establishing shorter feedback loops between developing features and measuring user behavior, including:
1) Shadow traffic which runs new and old features simultaneously to get early feedback without users noticing a difference.
2) Visual reports which assess the quality of a feature through a report (e.g. HTML page) of key metrics.
3) A/B testing which statistically compares user behavior between a control and test group after exposing each to a different variant of a feature. Sample size considerations and statistical significance are discussed.
As a tech leader at ThoughtWorks, a large part of my job involves recommending practices to our clients so they can build and deliver good quality software faster. In doing so repeatedly for many clients I have created a toolkit that contains practical advice from being on the ground. This is what we do, we know it works. When Julius Caesar entered Rome with his army by crossing the river Rubicon, he did something that couldn’t be undone ever again. In your journey as a leader, avoid mistakes that are difficult to correct later. Here are a set of practices that you want to adopt as soon as possible.
Handling error conditions is a core part of the software we write. However, we often treat it as a second class citizen, obscuring our intent through abuse of null values and exceptions that make our code hard to understand and maintain. In the functional programming community, it is common to use datatypes such as Option, Either or Validated to make our intentions explicit when dealing with errors. We can leverage the compiler to verify that we are handling them instead of hoping for the best at runtime. This results in code that is clearer, without hidden path flows. We’ll show how we have been doing this in Kotlin, with the help of the Arrow library.
Mutation testing in software development surfaced in academia during the 70's and has recently seen a resurgence in popularity as a legitimate tool in your testing arsenal. In this session we review the conventional testing pyramid, modern approaches to testing software and look at how mutation testing can help fill in those blind spots.
The document discusses security challenges and best practices for Docker containers. It outlines risks at different stages of the container lifecycle from image development to deployment. Key risks include lack of isolation, complex ecosystems, and known vulnerabilities. The document recommends practices like using linting and scanning during development, restricting resources and access controls at deployment, and signing images from trusted sources to improve container security.
Mainframes handle 30 billion business transactions each day and 87% of all credit card transactions*, they are not traditionally associated with flexible, fail-fast development approaches. Can we bring the practices of agile, CI/CD and fully automated deployments to applications running on a mainframe? During our talk, we'll tell you a story about test automation; redefining the smallest testable unit of a program. And we'll discuss our learnings from introducing continuous integration and agile practices to the world of insurance and mainframes.
*9 Mainframe statistics that may surprise you
ThoughtWorks' Lucy Kurian, James Lewis & Kief Morris discuss tech trends in our latest Technology Radar, covering techniques, platforms, tools, languages and frameworks.
The document discusses the benefits of exercise for mental health. Regular physical activity can help reduce anxiety and depression and improve mood and cognitive functioning. Exercise boosts blood flow, releases endorphins, and promotes changes in the brain which help regulate emotions and stress levels.
The document discusses the benefits of exercise for mental health. Regular physical activity can help reduce anxiety and depression and improve mood and cognitive function. Exercise causes chemical changes in the brain that may help protect against mental illness and improve symptoms.
5th LF Energy Power Grid Model Meet-up SlidesDanBrown980551
5th Power Grid Model Meet-up
It is with great pleasure that we extend to you an invitation to the 5th Power Grid Model Meet-up, scheduled for 6th June 2024. This event will adopt a hybrid format, allowing participants to join us either through an online Mircosoft Teams session or in person at TU/e located at Den Dolech 2, Eindhoven, Netherlands. The meet-up will be hosted by Eindhoven University of Technology (TU/e), a research university specializing in engineering science & technology.
Power Grid Model
The global energy transition is placing new and unprecedented demands on Distribution System Operators (DSOs). Alongside upgrades to grid capacity, processes such as digitization, capacity optimization, and congestion management are becoming vital for delivering reliable services.
Power Grid Model is an open source project from Linux Foundation Energy and provides a calculation engine that is increasingly essential for DSOs. It offers a standards-based foundation enabling real-time power systems analysis, simulations of electrical power grids, and sophisticated what-if analysis. In addition, it enables in-depth studies and analysis of the electrical power grid’s behavior and performance. This comprehensive model incorporates essential factors such as power generation capacity, electrical losses, voltage levels, power flows, and system stability.
Power Grid Model is currently being applied in a wide variety of use cases, including grid planning, expansion, reliability, and congestion studies. It can also help in analyzing the impact of renewable energy integration, assessing the effects of disturbances or faults, and developing strategies for grid control and optimization.
What to expect
For the upcoming meetup we are organizing, we have an exciting lineup of activities planned:
-Insightful presentations covering two practical applications of the Power Grid Model.
-An update on the latest advancements in Power Grid -Model technology during the first and second quarters of 2024.
-An interactive brainstorming session to discuss and propose new feature requests.
-An opportunity to connect with fellow Power Grid Model enthusiasts and users.
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving
Manufacturing custom quality metal nameplates and badges involves several standard operations. Processes include sheet prep, lithography, screening, coating, punch press and inspection. All decoration is completed in the flat sheet with adhesive and tooling operations following. The possibilities for creating unique durable nameplates are endless. How will you create your brand identity? We can help!
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor IvaniukFwdays
At this talk we will discuss DDoS protection tools and best practices, discuss network architectures and what AWS has to offer. Also, we will look into one of the largest DDoS attacks on Ukrainian infrastructure that happened in February 2022. We'll see, what techniques helped to keep the web resources available for Ukrainians and how AWS improved DDoS protection for all customers based on Ukraine experience
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...Alex Pruden
Folding is a recent technique for building efficient recursive SNARKs. Several elegant folding protocols have been proposed, such as Nova, Supernova, Hypernova, Protostar, and others. However, all of them rely on an additively homomorphic commitment scheme based on discrete log, and are therefore not post-quantum secure. In this work we present LatticeFold, the first lattice-based folding protocol based on the Module SIS problem. This folding protocol naturally leads to an efficient recursive lattice-based SNARK and an efficient PCD scheme. LatticeFold supports folding low-degree relations, such as R1CS, as well as high-degree relations, such as CCS. The key challenge is to construct a secure folding protocol that works with the Ajtai commitment scheme. The difficulty, is ensuring that extracted witnesses are low norm through many rounds of folding. We present a novel technique using the sumcheck protocol to ensure that extracted witnesses are always low norm no matter how many rounds of folding are used. Our evaluation of the final proof system suggests that it is as performant as Hypernova, while providing post-quantum security.
Paper Link: https://eprint.iacr.org/2024/257
Dandelion Hashtable: beyond billion requests per second on a commodity serverAntonios Katsarakis
This slide deck presents DLHT, a concurrent in-memory hashtable. Despite efforts to optimize hashtables, that go as far as sacrificing core functionality, state-of-the-art designs still incur multiple memory accesses per request and block request processing in three cases. First, most hashtables block while waiting for data to be retrieved from memory. Second, open-addressing designs, which represent the current state-of-the-art, either cannot free index slots on deletes or must block all requests to do so. Third, index resizes block every request until all objects are copied to the new index. Defying folklore wisdom, DLHT forgoes open-addressing and adopts a fully-featured and memory-aware closed-addressing design based on bounded cache-line-chaining. This design offers lock-free index operations and deletes that free slots instantly, (2) completes most requests with a single memory access, (3) utilizes software prefetching to hide memory latencies, and (4) employs a novel non-blocking and parallel resizing. In a commodity server and a memory-resident workload, DLHT surpasses 1.6B requests per second and provides 3.5x (12x) the throughput of the state-of-the-art closed-addressing (open-addressing) resizable hashtable on Gets (Deletes).
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfChart Kalyan
A Mix Chart displays historical data of numbers in a graphical or tabular form. The Kalyan Rajdhani Mix Chart specifically shows the results of a sequence of numbers over different periods.
Fueling AI with Great Data with Airbyte WebinarZilliz
This talk will focus on how to collect data from a variety of sources, leveraging this data for RAG and other GenAI use cases, and finally charting your course to productionalization.
Essentials of Automations: Exploring Attributes & Automation ParametersSafe Software
Building automations in FME Flow can save time, money, and help businesses scale by eliminating data silos and providing data to stakeholders in real-time. One essential component to orchestrating complex automations is the use of attributes & automation parameters (both formerly known as “keys”). In fact, it’s unlikely you’ll ever build an Automation without using these components, but what exactly are they?
Attributes & automation parameters enable the automation author to pass data values from one automation component to the next. During this webinar, our FME Flow Specialists will cover leveraging the three types of these output attributes & parameters in FME Flow: Event, Custom, and Automation. As a bonus, they’ll also be making use of the Split-Merge Block functionality.
You’ll leave this webinar with a better understanding of how to maximize the potential of automations by making use of attributes & automation parameters, with the ultimate goal of setting your enterprise integration workflows up on autopilot.
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyScyllaDB
Freshworks creates AI-boosted business software that helps employees work more efficiently and effectively. Managing data across multiple RDBMS and NoSQL databases was already a challenge at their current scale. To prepare for 10X growth, they knew it was time to rethink their database strategy. Learn how they architected a solution that would simplify scaling while keeping costs under control.
Monitoring and Managing Anomaly Detection on OpenShift.pdfTosin Akinosho
Monitoring and Managing Anomaly Detection on OpenShift
Overview
Dive into the world of anomaly detection on edge devices with our comprehensive hands-on tutorial. This SlideShare presentation will guide you through the entire process, from data collection and model training to edge deployment and real-time monitoring. Perfect for those looking to implement robust anomaly detection systems on resource-constrained IoT/edge devices.
Key Topics Covered
1. Introduction to Anomaly Detection
- Understand the fundamentals of anomaly detection and its importance in identifying unusual behavior or failures in systems.
2. Understanding Edge (IoT)
- Learn about edge computing and IoT, and how they enable real-time data processing and decision-making at the source.
3. What is ArgoCD?
- Discover ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes, and its role in deploying applications on edge devices.
4. Deployment Using ArgoCD for Edge Devices
- Step-by-step guide on deploying anomaly detection models on edge devices using ArgoCD.
5. Introduction to Apache Kafka and S3
- Explore Apache Kafka for real-time data streaming and Amazon S3 for scalable storage solutions.
6. Viewing Kafka Messages in the Data Lake
- Learn how to view and analyze Kafka messages stored in a data lake for better insights.
7. What is Prometheus?
- Get to know Prometheus, an open-source monitoring and alerting toolkit, and its application in monitoring edge devices.
8. Monitoring Application Metrics with Prometheus
- Detailed instructions on setting up Prometheus to monitor the performance and health of your anomaly detection system.
9. What is Camel K?
- Introduction to Camel K, a lightweight integration framework built on Apache Camel, designed for Kubernetes.
10. Configuring Camel K Integrations for Data Pipelines
- Learn how to configure Camel K for seamless data pipeline integrations in your anomaly detection workflow.
11. What is a Jupyter Notebook?
- Overview of Jupyter Notebooks, an open-source web application for creating and sharing documents with live code, equations, visualizations, and narrative text.
12. Jupyter Notebooks with Code Examples
- Hands-on examples and code snippets in Jupyter Notebooks to help you implement and test anomaly detection models.
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
Skybuffer SAM4U tool for SAP license adoptionTatiana Kojar
Manage and optimize your license adoption and consumption with SAM4U, an SAP free customer software asset management tool.
SAM4U, an SAP complimentary software asset management tool for customers, delivers a detailed and well-structured overview of license inventory and usage with a user-friendly interface. We offer a hosted, cost-effective, and performance-optimized SAM4U setup in the Skybuffer Cloud environment. You retain ownership of the system and data, while we manage the ABAP 7.58 infrastructure, ensuring fixed Total Cost of Ownership (TCO) and exceptional services through the SAP Fiori interface.
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
12. 12
Figure out what test will
best move your code
towards completion.
Take as much time as
you need. This is the
hardest step for
beginners.
Design / Think
13. 13
Write a minimal test, not
more than five lines.
Run the tests and watch it
fail.
Write a Failing Test
14. 14
Again minimal code that
make the test pass.
Not to worry about design
purity or conceptual
elegance at this point.
Make it Pass