The document discusses thinking like a programmer and preparing to program. It begins by having the reader share their initial thoughts on programming and notes that learning to program can take years and involves learning new languages. It distinguishes between high-level programming languages like Swift, C#, Java, and C++ and scripting languages like Python, Ruby, and JavaScript. The document emphasizes that preparing to program involves regular practice of tutorials and training, remembering to write clean and concise code, making programming friends, and citing references as learning programming takes time and wrestling with concepts.
This document provides instructions for using a PowerPoint template for a dominoes starter activity in class. The template allows teachers to place different content in color-coded boxes for students to match up by color, providing a way to review vocabulary or concepts while taking attendance. The dominoes activity can be adapted for various grade levels.
Programming is a difficult task that is often misunderstood. It requires extensive thinking and problem-solving abilities. No program is ever completely bug-free as programmers cannot think of every possible scenario or error. Experience is important for programmers to get better at their craft and continue improving their skills at building software.
Coding Dojos are meetings where programmers gather to work on programming challenges together. They involve short timed sessions where pairs of programmers take turns writing code at a shared computer while others observe. Common formats include Randori, where pairs rotate frequently, and Prepared Kata, where one programmer demonstrates a solution. The goals are to learn, have fun, and improve coding skills in a social environment through practices like test-driven development. Effective Coding Dojos require advance planning of the space, equipment, exercises, and group agreements.
How to deliver the right software (Specification by example)Asier Barrenetxea
Talk about Specification by Example. What's the problems it tries to tackle and how to solve them.
I gave this talk at Thoughtworks on a "lunch and learn" meeting for the company.
This is a new version of my previous presentation about "Specification by example"
https://www.slideshare.net/AsierBarrenetxea1/spec-byexample-v2
This document provides an introduction to coding and the Codesters coding platform. It explains that coding is a fundamental literacy that impacts how we understand the world, and that coding allows students to be creative problem solvers. The document then outlines the core reasons for teaching coding, including critical thinking, literacy, citizenship, and career opportunities. It introduces the Codesters coding environment and how it allows students to get feedback on their programs. Students are then instructed to create their first program and share it with others. The document encourages signing up for a free Codesters account and walking through creating a screen name and accessing lesson plans to understand how the platform works from both a student and teacher perspective.
The document discusses thinking like a programmer and preparing to program. It begins by having the reader share their initial thoughts on programming and notes that learning to program can take years and involves learning new languages. It distinguishes between high-level programming languages like Swift, C#, Java, and C++ and scripting languages like Python, Ruby, and JavaScript. The document emphasizes that preparing to program involves regular practice of tutorials and training, remembering to write clean and concise code, making programming friends, and citing references as learning programming takes time and wrestling with concepts.
This document provides instructions for using a PowerPoint template for a dominoes starter activity in class. The template allows teachers to place different content in color-coded boxes for students to match up by color, providing a way to review vocabulary or concepts while taking attendance. The dominoes activity can be adapted for various grade levels.
Programming is a difficult task that is often misunderstood. It requires extensive thinking and problem-solving abilities. No program is ever completely bug-free as programmers cannot think of every possible scenario or error. Experience is important for programmers to get better at their craft and continue improving their skills at building software.
Coding Dojos are meetings where programmers gather to work on programming challenges together. They involve short timed sessions where pairs of programmers take turns writing code at a shared computer while others observe. Common formats include Randori, where pairs rotate frequently, and Prepared Kata, where one programmer demonstrates a solution. The goals are to learn, have fun, and improve coding skills in a social environment through practices like test-driven development. Effective Coding Dojos require advance planning of the space, equipment, exercises, and group agreements.
How to deliver the right software (Specification by example)Asier Barrenetxea
Talk about Specification by Example. What's the problems it tries to tackle and how to solve them.
I gave this talk at Thoughtworks on a "lunch and learn" meeting for the company.
This is a new version of my previous presentation about "Specification by example"
https://www.slideshare.net/AsierBarrenetxea1/spec-byexample-v2
This document provides an introduction to coding and the Codesters coding platform. It explains that coding is a fundamental literacy that impacts how we understand the world, and that coding allows students to be creative problem solvers. The document then outlines the core reasons for teaching coding, including critical thinking, literacy, citizenship, and career opportunities. It introduces the Codesters coding environment and how it allows students to get feedback on their programs. Students are then instructed to create their first program and share it with others. The document encourages signing up for a free Codesters account and walking through creating a screen name and accessing lesson plans to understand how the platform works from both a student and teacher perspective.
Test driven development_and_puppet-cfgmgmtcamp_eu-20140402Johan De Wit
The slides of the talk i did on cfgmgmtcamp.eu, frebruary 4th 2014, looking at test driven development. This part is focused on the development of a custom puppet type
A presentation made by eXo Platform SEA.
Presentation introduce and demo about Coding Dojo, a methodology enhance the coding skills of attendees by doing some very small exercices in a funny atmosphere. This is like when you want to practice a sport like Judo, you need to practice some basic exercices with some judo masters before doing serious business like competitions.
There are usually two styles of exercices :
- Kata prepared by someone before the session and executed in front of the public or
Randori, a more exploraty form of a Kata where the whole group participates.
Coding Dojo: Fun with Tic-Tac-Toe (2014)Peter Kofler
This document summarizes a coding dojo event focused on tic-tac-toe. The event introduces pair programming and test-driven development techniques. Attendees work in pairs to implement tic-tac-toe under constraints, such as writing the worst code possible initially and then refactoring without talking. The goal is to learn through challenges and reflection on how to write better code.
The document discusses concepts in agile development and extreme programming (XP), focusing on pair programming, test-driven development (TDD), and continuous integration (CI). It defines pair programming as two developers working together on a single task, switching roles frequently between driver and navigator. Benefits include better design, knowledge sharing, and code quality. TDD involves writing tests before code to drive design and ensure code quality. CI aims to integrate code changes frequently to catch errors early.
Agile Wednesday Coding Dojo am 12.03.2014Lars Hüper
Am 12.03. trafen wir uns auf der CeBIT in Halle 6 auf dem Edelstall-Stand zum Coding-Dojo. Wir nahmen uns das Spiel Yahtzee als Übungsaufgabe vor, um testgetrieben im Pairprogramming mit 3 Teams eine Software zu implementieren, die zu einem Wurf die Wertungen entsprechend den Yahtzee-Regeln vornimmt.
Hier findet Ihr die Folien, die wir zur Einführung gezeigt haben.
The essentials of the IT industry or What I wish I was taught about at Univer...Equal Experts
Version control systems like Git allow developers to work collaboratively by tracking changes to source code over time. Automated testing is important and comes in many forms like unit, integration, and acceptance testing. Code quality tools enforce standards, measure test coverage, and help find bugs. Developers should try various programming languages and integrated development environments to expand their skills and perspectives. Cloud hosting, containers using Docker, and continuous integration/deployment pipelines are important architectures and concepts in today's IT industry. Personal projects allow experimenting with new technologies outside of work.
This document provides guidance for coaches and mentors for the First Lego League competition. It outlines the goals of providing information to prepare coaches and pointers on expectations. It describes what First Lego League is and the responsibilities of coaches. It provides a schedule, requirements for teams, and suggestions for the project sequence, robot preparation, programming, and competition day. The overall message is that the most important goals are for students to have fun, be inclusive, and learn through the process.
Xconf 2014 - Contributing to Open SourceParas Narang
This document provides guidance on contributing to open source projects. It begins by discussing the authors' initial misconceptions that contributing only involved finding bugs and submitting patches. The document then outlines important steps like knowing your interests, choosing an accessible project, understanding the codebase and community, and dedicating regular time. Key advice includes starting with beginner tasks, getting familiar with code review processes, and iterating on patches with testing. Overall, the document advocates learning about open source through practical involvement and recommends the authors' experiences contributing to projects like Sketch-UI, Mozilla and KDE.
Right foot forward
Left foot forward
Right foot forward
Left foot forward
T: “Great job! Now let’s program our robot to jump. How do we jump?” (Accept
responses like bend our knees and push off with our feet)
T: “So we need to tell our robot to bend its knees and push off with its feet.
What commands should we write?”
Write the commands on the board:
Bend knees
Push off with feet
T: “Now we have programmed our robot to walk forward and jump. But
remember, computers follow the sequence exactly as written. So we need to
put our commands in the right order. What order should we put them
The document provides an overview of Nick Murphy's background and work on the PlasmaPy open source software project. Some key points:
- Nick Murphy grew up in Michigan and has a background in astronomy, having done his graduate work simulating magnetic reconnection.
- PlasmaPy is an open source Python software ecosystem for plasma research and education. It includes core functionality, affiliated packages, educational resources, and an active community.
- The talk outlines best practices for writing clean, readable scientific software, including using descriptive names, comments, functions, tests, and separating high-level and low-level code. The goal is to make software more reusable, understandable, and to improve the research experience.
Ace the Tech Interviews - www.hiredintech.comAnton Dimitrov
Are you scared of programming interviews at top tech companies like Google, Microsoft, Amazon and Facebook?
If you feel nervous or don't know how to solve hard problems, our team has answers for you.
We worked at several top tech companies like Google, Microsoft and Nvidia. Learn more about us and our services at www.hiredintech.com
This is a presentation we gave to students from Berkeley University, Santa Barbara University, University of Edinburg, EPFL - Switzerland and others. It covers things from building a perfect resume, through getting more interview invites to answering technical and non-technical question at the interviews at top software companies.
Let us know what you think or if you have any questions.
Approaches to teaching primary computingJEcomputing
The document discusses pedagogical approaches for teaching primary computing. It provides objectives around the primary computing curriculum and computational thinking concepts. It then describes several unplugged activities that can be used to develop computational thinking without computers, such as writing algorithms for making sandwiches or drawing characters. Finally, it discusses strategies for teaching computing, including developing independence, paired programming, debugging, differentiation, and assessment.
Pair programming has benefits such as less bugs, better code quality, spreading knowledge across teams, and creating a learning environment through improved communication. Developers should pair when working on complex, critical, or new features, or when a team has a new member. Techniques like driver-navigator and ping-pong pairing help structure the process, with the driver writing code and the navigator providing guidance, reviews, and testing. Regularly switching roles and keeping an open dialogue are important for effective pairing.
This document provides tips and guidelines for participating in a hackathon event. It explains that a hackathon is a timed event where participants work in teams to build working prototypes of software or digital products. The goals are to learn new skills, solve problems creatively, and have fun. Key advice includes scoping your project idea narrowly, planning your work in sprints or chunks, prioritizing functionality over polish, and taking breaks to stay productive throughout the event.
Exploring alternatives is part of the design process.
TDD is a way to do incremental design, or design while you write code.
So can we use TDD to explore design alternatives?
Turns out, I've seen a lot of design exploration during the 30+ code retreats I facilitated and attended. While I don't have a definite proof, it seems that TDD could be used for this purpose.
This document summarizes a workshop on Behavior-Driven Development (BDD) for Rich Internet Applications (RIAs) with JavaScript. It outlines the BDD process, which involves specifying user stories and acceptance criteria, writing scenarios to define desired behavior, and using an outside-in approach with test-driven development. It emphasizes writing unit tests with test doubles before integrating components. The workshop includes exercises for connecting a business API to a service with unit tests, connecting the UI to the service, implementing the service and interactor, and implementing a textbox widget with integration tests. It also discusses architecture patterns like passive view and reviewing non-functional requirements.
This document discusses mob programming, an agile development technique where the entire team works together on the same task using one computer. It describes mob roles like driver, navigator, and facilitator. The driver focuses on typing code while listening to the navigator, who formulates ideas for the team. Roles rotate every few minutes. Guidelines are provided for mitigating emotions and ensuring visibility when mobbing with many developers. Mob programming aims to improve collaboration, knowledge sharing, and code quality.
The document provides advice on learning programming languages and approaches to learning. It recommends having a good attitude and letting go of preconceived notions. Any programming language can be learned as they all share basic concepts of syntax, execution, and purpose. The document suggests starting simply by creating small projects to understand how a language works before reviewing official documentation. It also advises finding a learning approach that works for you, whether through books, blogs, or a teacher, and giving each concept sufficient time to understand it fully.
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemPeter Muessig
Learn about the latest innovations in and around OpenUI5/SAPUI5: UI5 Tooling, UI5 linter, UI5 Web Components, Web Components Integration, UI5 2.x, UI5 GenAI.
Recording:
https://www.youtube.com/live/MSdGLG2zLy8?si=INxBHTqkwHhxV5Ta&t=0
Test driven development_and_puppet-cfgmgmtcamp_eu-20140402Johan De Wit
The slides of the talk i did on cfgmgmtcamp.eu, frebruary 4th 2014, looking at test driven development. This part is focused on the development of a custom puppet type
A presentation made by eXo Platform SEA.
Presentation introduce and demo about Coding Dojo, a methodology enhance the coding skills of attendees by doing some very small exercices in a funny atmosphere. This is like when you want to practice a sport like Judo, you need to practice some basic exercices with some judo masters before doing serious business like competitions.
There are usually two styles of exercices :
- Kata prepared by someone before the session and executed in front of the public or
Randori, a more exploraty form of a Kata where the whole group participates.
Coding Dojo: Fun with Tic-Tac-Toe (2014)Peter Kofler
This document summarizes a coding dojo event focused on tic-tac-toe. The event introduces pair programming and test-driven development techniques. Attendees work in pairs to implement tic-tac-toe under constraints, such as writing the worst code possible initially and then refactoring without talking. The goal is to learn through challenges and reflection on how to write better code.
The document discusses concepts in agile development and extreme programming (XP), focusing on pair programming, test-driven development (TDD), and continuous integration (CI). It defines pair programming as two developers working together on a single task, switching roles frequently between driver and navigator. Benefits include better design, knowledge sharing, and code quality. TDD involves writing tests before code to drive design and ensure code quality. CI aims to integrate code changes frequently to catch errors early.
Agile Wednesday Coding Dojo am 12.03.2014Lars Hüper
Am 12.03. trafen wir uns auf der CeBIT in Halle 6 auf dem Edelstall-Stand zum Coding-Dojo. Wir nahmen uns das Spiel Yahtzee als Übungsaufgabe vor, um testgetrieben im Pairprogramming mit 3 Teams eine Software zu implementieren, die zu einem Wurf die Wertungen entsprechend den Yahtzee-Regeln vornimmt.
Hier findet Ihr die Folien, die wir zur Einführung gezeigt haben.
The essentials of the IT industry or What I wish I was taught about at Univer...Equal Experts
Version control systems like Git allow developers to work collaboratively by tracking changes to source code over time. Automated testing is important and comes in many forms like unit, integration, and acceptance testing. Code quality tools enforce standards, measure test coverage, and help find bugs. Developers should try various programming languages and integrated development environments to expand their skills and perspectives. Cloud hosting, containers using Docker, and continuous integration/deployment pipelines are important architectures and concepts in today's IT industry. Personal projects allow experimenting with new technologies outside of work.
This document provides guidance for coaches and mentors for the First Lego League competition. It outlines the goals of providing information to prepare coaches and pointers on expectations. It describes what First Lego League is and the responsibilities of coaches. It provides a schedule, requirements for teams, and suggestions for the project sequence, robot preparation, programming, and competition day. The overall message is that the most important goals are for students to have fun, be inclusive, and learn through the process.
Xconf 2014 - Contributing to Open SourceParas Narang
This document provides guidance on contributing to open source projects. It begins by discussing the authors' initial misconceptions that contributing only involved finding bugs and submitting patches. The document then outlines important steps like knowing your interests, choosing an accessible project, understanding the codebase and community, and dedicating regular time. Key advice includes starting with beginner tasks, getting familiar with code review processes, and iterating on patches with testing. Overall, the document advocates learning about open source through practical involvement and recommends the authors' experiences contributing to projects like Sketch-UI, Mozilla and KDE.
Right foot forward
Left foot forward
Right foot forward
Left foot forward
T: “Great job! Now let’s program our robot to jump. How do we jump?” (Accept
responses like bend our knees and push off with our feet)
T: “So we need to tell our robot to bend its knees and push off with its feet.
What commands should we write?”
Write the commands on the board:
Bend knees
Push off with feet
T: “Now we have programmed our robot to walk forward and jump. But
remember, computers follow the sequence exactly as written. So we need to
put our commands in the right order. What order should we put them
The document provides an overview of Nick Murphy's background and work on the PlasmaPy open source software project. Some key points:
- Nick Murphy grew up in Michigan and has a background in astronomy, having done his graduate work simulating magnetic reconnection.
- PlasmaPy is an open source Python software ecosystem for plasma research and education. It includes core functionality, affiliated packages, educational resources, and an active community.
- The talk outlines best practices for writing clean, readable scientific software, including using descriptive names, comments, functions, tests, and separating high-level and low-level code. The goal is to make software more reusable, understandable, and to improve the research experience.
Ace the Tech Interviews - www.hiredintech.comAnton Dimitrov
Are you scared of programming interviews at top tech companies like Google, Microsoft, Amazon and Facebook?
If you feel nervous or don't know how to solve hard problems, our team has answers for you.
We worked at several top tech companies like Google, Microsoft and Nvidia. Learn more about us and our services at www.hiredintech.com
This is a presentation we gave to students from Berkeley University, Santa Barbara University, University of Edinburg, EPFL - Switzerland and others. It covers things from building a perfect resume, through getting more interview invites to answering technical and non-technical question at the interviews at top software companies.
Let us know what you think or if you have any questions.
Approaches to teaching primary computingJEcomputing
The document discusses pedagogical approaches for teaching primary computing. It provides objectives around the primary computing curriculum and computational thinking concepts. It then describes several unplugged activities that can be used to develop computational thinking without computers, such as writing algorithms for making sandwiches or drawing characters. Finally, it discusses strategies for teaching computing, including developing independence, paired programming, debugging, differentiation, and assessment.
Pair programming has benefits such as less bugs, better code quality, spreading knowledge across teams, and creating a learning environment through improved communication. Developers should pair when working on complex, critical, or new features, or when a team has a new member. Techniques like driver-navigator and ping-pong pairing help structure the process, with the driver writing code and the navigator providing guidance, reviews, and testing. Regularly switching roles and keeping an open dialogue are important for effective pairing.
This document provides tips and guidelines for participating in a hackathon event. It explains that a hackathon is a timed event where participants work in teams to build working prototypes of software or digital products. The goals are to learn new skills, solve problems creatively, and have fun. Key advice includes scoping your project idea narrowly, planning your work in sprints or chunks, prioritizing functionality over polish, and taking breaks to stay productive throughout the event.
Exploring alternatives is part of the design process.
TDD is a way to do incremental design, or design while you write code.
So can we use TDD to explore design alternatives?
Turns out, I've seen a lot of design exploration during the 30+ code retreats I facilitated and attended. While I don't have a definite proof, it seems that TDD could be used for this purpose.
This document summarizes a workshop on Behavior-Driven Development (BDD) for Rich Internet Applications (RIAs) with JavaScript. It outlines the BDD process, which involves specifying user stories and acceptance criteria, writing scenarios to define desired behavior, and using an outside-in approach with test-driven development. It emphasizes writing unit tests with test doubles before integrating components. The workshop includes exercises for connecting a business API to a service with unit tests, connecting the UI to the service, implementing the service and interactor, and implementing a textbox widget with integration tests. It also discusses architecture patterns like passive view and reviewing non-functional requirements.
This document discusses mob programming, an agile development technique where the entire team works together on the same task using one computer. It describes mob roles like driver, navigator, and facilitator. The driver focuses on typing code while listening to the navigator, who formulates ideas for the team. Roles rotate every few minutes. Guidelines are provided for mitigating emotions and ensuring visibility when mobbing with many developers. Mob programming aims to improve collaboration, knowledge sharing, and code quality.
The document provides advice on learning programming languages and approaches to learning. It recommends having a good attitude and letting go of preconceived notions. Any programming language can be learned as they all share basic concepts of syntax, execution, and purpose. The document suggests starting simply by creating small projects to understand how a language works before reviewing official documentation. It also advises finding a learning approach that works for you, whether through books, blogs, or a teacher, and giving each concept sufficient time to understand it fully.
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemPeter Muessig
Learn about the latest innovations in and around OpenUI5/SAPUI5: UI5 Tooling, UI5 linter, UI5 Web Components, Web Components Integration, UI5 2.x, UI5 GenAI.
Recording:
https://www.youtube.com/live/MSdGLG2zLy8?si=INxBHTqkwHhxV5Ta&t=0
Most important New features of Oracle 23c for DBAs and Developers. You can get more idea from my youtube channel video from https://youtu.be/XvL5WtaC20A
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesQuickdice ERP
Explore the seamless transition to e-invoicing with this comprehensive guide tailored for Saudi Arabian businesses. Navigate the process effortlessly with step-by-step instructions designed to streamline implementation and enhance efficiency.
E-commerce Application Development Company.pdfHornet Dynamics
Your business can reach new heights with our assistance as we design solutions that are specifically appropriate for your goals and vision. Our eCommerce application solutions can digitally coordinate all retail operations processes to meet the demands of the marketplace while maintaining business continuity.
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j
Dr. Jesús Barrasa, Head of Solutions Architecture for EMEA, Neo4j
Découvrez les dernières innovations de Neo4j, et notamment les dernières intégrations cloud et les améliorations produits qui font de Neo4j un choix essentiel pour les développeurs qui créent des applications avec des données interconnectées et de l’IA générative.
Takashi Kobayashi and Hironori Washizaki, "SWEBOK Guide and Future of SE Education," First International Symposium on the Future of Software Engineering (FUSE), June 3-6, 2024, Okinawa, Japan
Using Query Store in Azure PostgreSQL to Understand Query PerformanceGrant Fritchey
Microsoft has added an excellent new extension in PostgreSQL on their Azure Platform. This session, presented at Posette 2024, covers what Query Store is and the types of information you can get out of it.
WhatsApp offers simple, reliable, and private messaging and calling services for free worldwide. With end-to-end encryption, your personal messages and calls are secure, ensuring only you and the recipient can access them. Enjoy voice and video calls to stay connected with loved ones or colleagues. Express yourself using stickers, GIFs, or by sharing moments on Status. WhatsApp Business enables global customer outreach, facilitating sales growth and relationship building through showcasing products and services. Stay connected effortlessly with group chats for planning outings with friends or staying updated on family conversations.
What is Master Data Management by PiLog Groupaymanquadri279
PiLog Group's Master Data Record Manager (MDRM) is a sophisticated enterprise solution designed to ensure data accuracy, consistency, and governance across various business functions. MDRM integrates advanced data management technologies to cleanse, classify, and standardize master data, thereby enhancing data quality and operational efficiency.
DDS Security Version 1.2 was adopted in 2024. This revision strengthens support for long runnings systems adding new cryptographic algorithms, certificate revocation, and hardness against DoS attacks.
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsPeter Muessig
The UI5 tooling is the development and build tooling of UI5. It is built in a modular and extensible way so that it can be easily extended by your needs. This session will showcase various tooling extensions which can boost your development experience by far so that you can really work offline, transpile your code in your project to use even newer versions of EcmaScript (than 2022 which is supported right now by the UI5 tooling), consume any npm package of your choice in your project, using different kind of proxies, and even stitching UI5 projects during development together to mimic your target environment.
8 Best Automated Android App Testing Tool and Framework in 2024.pdfkalichargn70th171
Regarding mobile operating systems, two major players dominate our thoughts: Android and iPhone. With Android leading the market, software development companies are focused on delivering apps compatible with this OS. Ensuring an app's functionality across various Android devices, OS versions, and hardware specifications is critical, making Android app testing essential.
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
1. Coding Dojo @ Adpack
Having fun by learning together!
2. Purposes
● Spread the knowledge.
● Sharpen skills.
● Practice in order to make it automatic.
● Practice communication and describing your thoughts.
● Practice pair programming.
● Practice TDD and baby steps (the minimal amount of
code you can write to satisfy a condition).
● Non-competitive, collaborative, fun environment.
● Safe to try new ideas.
● Have fun coding and learning something together! :)
3. Rules
● Sessions with 10 minutes each.
● 5 minutes for each person as pilot/co-pilot.
● The pilot writes the implementation/tests.
● The co-pilot watches and guides the pilot in the right direction.
● The co-pilot needs to communicate clearly what he wants.
● When tests are green everyone can participate with
suggestions (syntax, clean code, etc.).
● When tests are red everyone must wait until they become
green.
● Everyone must pay attention and understand what is being
done.
● If someone does not understand he/she should say it.
4. Katas
● A kata is an exercise in karate where you repeat a form
many, many times, making little improvements in each.
● In Coding Dojos we do Coding Katas to exercise one
small problem.
● Each one is a short exercise (perhaps 30 minutes to an
hour long).
5. Retrospective What did you like in this Dojo?
What did you not like and how
can we improve it?
6. “Stay Hungry. Stay Foolish.”
Try it yourself!
git clone git@github.com:rhpaiva/coding-dojos.git
- Steve Jobs