Submit Search
Upload
Coding Dojo - Refactoring Tennis Kata
•
Download as ODP, PDF
•
0 likes
•
476 views
Alin Pandichi
Follow
Coding Dojo - Refactoring Tennis Kata
Read less
Read more
Technology
Report
Share
Report
Share
1 of 11
Download now
Recommended
Slides from Coding Dojo at Agile Testing Days 2013.
Refactoring the Tennis Kata (2013)
Refactoring the Tennis Kata (2013)
Peter Kofler
Slides from Coding Dojo at Agile Testing Days 2013.
Designing Test Cases for the Gilded Rose Kata (2013)
Designing Test Cases for the Gilded Rose Kata (2013)
Peter Kofler
Coding Dojo: Adding Tests to Legacy Code (2014)
Coding Dojo: Adding Tests to Legacy Code (2014)
Peter Kofler
Talk at Ruby User Group Linz (RUGL) Meetup #14 20.5.2015
Pair Programming (2015)
Pair Programming (2015)
Peter Kofler
The Brutal Refactoring Game (2013)
The Brutal Refactoring Game (2013)
Peter Kofler
Coding Dojo/Coding Workshop at ITAKE unconference 2017.
Brutal Coding Constraints (ITAKE 2017)
Brutal Coding Constraints (ITAKE 2017)
Peter Kofler
Code Retreat Graz, Austria 2013
Code Retreat Graz, Austria 2013
Peter Kofler
Introduction to Coding Dojo refactoring exercise with a few slides of Refactoring Theory and constraints to use no mouse.
Refactoring the Tennis Kata v2 (2016)
Refactoring the Tennis Kata v2 (2016)
Peter Kofler
Recommended
Slides from Coding Dojo at Agile Testing Days 2013.
Refactoring the Tennis Kata (2013)
Refactoring the Tennis Kata (2013)
Peter Kofler
Slides from Coding Dojo at Agile Testing Days 2013.
Designing Test Cases for the Gilded Rose Kata (2013)
Designing Test Cases for the Gilded Rose Kata (2013)
Peter Kofler
Coding Dojo: Adding Tests to Legacy Code (2014)
Coding Dojo: Adding Tests to Legacy Code (2014)
Peter Kofler
Talk at Ruby User Group Linz (RUGL) Meetup #14 20.5.2015
Pair Programming (2015)
Pair Programming (2015)
Peter Kofler
The Brutal Refactoring Game (2013)
The Brutal Refactoring Game (2013)
Peter Kofler
Coding Dojo/Coding Workshop at ITAKE unconference 2017.
Brutal Coding Constraints (ITAKE 2017)
Brutal Coding Constraints (ITAKE 2017)
Peter Kofler
Code Retreat Graz, Austria 2013
Code Retreat Graz, Austria 2013
Peter Kofler
Introduction to Coding Dojo refactoring exercise with a few slides of Refactoring Theory and constraints to use no mouse.
Refactoring the Tennis Kata v2 (2016)
Refactoring the Tennis Kata v2 (2016)
Peter Kofler
Presentation held at the Agile Slovenia 2015 conference
Deliberate Practice (Agile Slovenia 2015)
Deliberate Practice (Agile Slovenia 2015)
Peter Kofler
Software Craftsmanship Journeyman Tour (2013)
Software Craftsmanship Journeyman Tour (2013)
Peter Kofler
Slides from Coding Dojo at Agile Testing Days 2013.
TDD as if You Meant It (2013)
TDD as if You Meant It (2013)
Peter Kofler
Introduction to the Coding Dojo with focus on testing asynchronous behaviour.
Coding Dojo: Asynchronous Clock-In (2016)
Coding Dojo: Asynchronous Clock-In (2016)
Peter Kofler
Revised slides of the Coding Dojo "Designing Test Cases for the Gilded Rose" with extra content on Clean, Readable and Expressive Tests.
Designing Test Cases for the Gilded Rose Kata v3 (2016)
Designing Test Cases for the Gilded Rose Kata v3 (2016)
Peter Kofler
Overview of rules of Object Orientation with an exercise Object Calisthenics.
Coding Dojo Object Calisthenics (2016)
Coding Dojo Object Calisthenics (2016)
Peter Kofler
Idiomatic R for Rosetta Code (2013)
Idiomatic R for Rosetta Code (2013)
Peter Kofler
Short iIntroduction to Mob Programming.
Mob Programming (2016)
Mob Programming (2016)
Peter Kofler
Coding Dojo. See http://blog.ninjaferret.co.uk/2015/06/05/Introducing-Functional-Calisthenics.html
Coding Dojo: Functional Calisthenics (2016)
Coding Dojo: Functional Calisthenics (2016)
Peter Kofler
Introduction slides of my workshop "Creating Clean, Readable and Expressive Executable Specifications" at European Testing Conference 2016.
Clean Readable Specifications (ETC 2016)
Clean Readable Specifications (ETC 2016)
Peter Kofler
Coding Dojo with constraint Cyclomatic Complexity One, which is suited as exercise for functional programming with computational chains (aka streams).
Coding Dojo: Data Munging (2016)
Coding Dojo: Data Munging (2016)
Peter Kofler
Slides from the Coderetreat in Venice, Italy in May 2016.
Code Retreat Venice (2016)
Code Retreat Venice (2016)
Peter Kofler
Introduction for GDCR15 in Las Palmas, Gran Canaria
GDCR15 in Las Palmas, Gran Canaria
GDCR15 in Las Palmas, Gran Canaria
Peter Kofler
Code Quality Assurance v4 (2013)
Code Quality Assurance v4 (2013)
Peter Kofler
My GeeCON 2016 Workshop: "Unit Testing with JUnit - a Beginner's Boot Camp"
JUnit Boot Camp (GeeCON 2016)
JUnit Boot Camp (GeeCON 2016)
Peter Kofler
A Leaderboard shows score of each team. Commit and push green increments to score points. Repeat: Push as often as possible! Try to perform maximum number of smallest steps and test runs.
Coding Dojo: Baby Steps Push Challenge (2021)
Coding Dojo: Baby Steps Push Challenge (2021)
Peter Kofler
Coding Dojo with focus on naming. Rules of the dojo are Pair Programming & TDD. Constraints are challenges during the dojo. Moving to the extreme is a way of learning. We are coding the game of Tic-Tac-Toe and everything - but the names of test methods - is named using random dices. Specifically using these random dices with enterprise-y useless names.
Coding Dojo: Naming with Dices (2021)
Coding Dojo: Naming with Dices (2021)
Peter Kofler
Session 20150428 #CodingDojoVie
Coding Dojo: Bank OCR Outside-In (2015)
Coding Dojo: Bank OCR Outside-In (2015)
Peter Kofler
Coding Dojo: Mars Rover (2014)
Coding Dojo: Mars Rover (2014)
Peter Kofler
Slides for my workshop about code smells and the Extract Method Refactoring using PHPStorm.
Extract Method Refactoring Workshop (2016)
Extract Method Refactoring Workshop (2016)
Peter Kofler
Προσβαση σε ΑΕΙ-ΤΕΙ
Προσβαση σε ΑΕΙ-ΤΕΙ
Προσβαση σε ΑΕΙ-ΤΕΙ
Upper High And Beyond
Sentrifugo HRMS is a solution for all startups and organisation who want to manage there employees or organisation in an efficient way from attendance to leave tracking.Sentrifugo 2.1 opensource HRMS is a full featured web application/software which will solve all your Human resource needs of managing your employees.
Sentrifugo user guide 2.1
Sentrifugo user guide 2.1
Sentrifugo open source HRMS
More Related Content
What's hot
Presentation held at the Agile Slovenia 2015 conference
Deliberate Practice (Agile Slovenia 2015)
Deliberate Practice (Agile Slovenia 2015)
Peter Kofler
Software Craftsmanship Journeyman Tour (2013)
Software Craftsmanship Journeyman Tour (2013)
Peter Kofler
Slides from Coding Dojo at Agile Testing Days 2013.
TDD as if You Meant It (2013)
TDD as if You Meant It (2013)
Peter Kofler
Introduction to the Coding Dojo with focus on testing asynchronous behaviour.
Coding Dojo: Asynchronous Clock-In (2016)
Coding Dojo: Asynchronous Clock-In (2016)
Peter Kofler
Revised slides of the Coding Dojo "Designing Test Cases for the Gilded Rose" with extra content on Clean, Readable and Expressive Tests.
Designing Test Cases for the Gilded Rose Kata v3 (2016)
Designing Test Cases for the Gilded Rose Kata v3 (2016)
Peter Kofler
Overview of rules of Object Orientation with an exercise Object Calisthenics.
Coding Dojo Object Calisthenics (2016)
Coding Dojo Object Calisthenics (2016)
Peter Kofler
Idiomatic R for Rosetta Code (2013)
Idiomatic R for Rosetta Code (2013)
Peter Kofler
Short iIntroduction to Mob Programming.
Mob Programming (2016)
Mob Programming (2016)
Peter Kofler
Coding Dojo. See http://blog.ninjaferret.co.uk/2015/06/05/Introducing-Functional-Calisthenics.html
Coding Dojo: Functional Calisthenics (2016)
Coding Dojo: Functional Calisthenics (2016)
Peter Kofler
Introduction slides of my workshop "Creating Clean, Readable and Expressive Executable Specifications" at European Testing Conference 2016.
Clean Readable Specifications (ETC 2016)
Clean Readable Specifications (ETC 2016)
Peter Kofler
Coding Dojo with constraint Cyclomatic Complexity One, which is suited as exercise for functional programming with computational chains (aka streams).
Coding Dojo: Data Munging (2016)
Coding Dojo: Data Munging (2016)
Peter Kofler
Slides from the Coderetreat in Venice, Italy in May 2016.
Code Retreat Venice (2016)
Code Retreat Venice (2016)
Peter Kofler
Introduction for GDCR15 in Las Palmas, Gran Canaria
GDCR15 in Las Palmas, Gran Canaria
GDCR15 in Las Palmas, Gran Canaria
Peter Kofler
Code Quality Assurance v4 (2013)
Code Quality Assurance v4 (2013)
Peter Kofler
My GeeCON 2016 Workshop: "Unit Testing with JUnit - a Beginner's Boot Camp"
JUnit Boot Camp (GeeCON 2016)
JUnit Boot Camp (GeeCON 2016)
Peter Kofler
A Leaderboard shows score of each team. Commit and push green increments to score points. Repeat: Push as often as possible! Try to perform maximum number of smallest steps and test runs.
Coding Dojo: Baby Steps Push Challenge (2021)
Coding Dojo: Baby Steps Push Challenge (2021)
Peter Kofler
Coding Dojo with focus on naming. Rules of the dojo are Pair Programming & TDD. Constraints are challenges during the dojo. Moving to the extreme is a way of learning. We are coding the game of Tic-Tac-Toe and everything - but the names of test methods - is named using random dices. Specifically using these random dices with enterprise-y useless names.
Coding Dojo: Naming with Dices (2021)
Coding Dojo: Naming with Dices (2021)
Peter Kofler
Session 20150428 #CodingDojoVie
Coding Dojo: Bank OCR Outside-In (2015)
Coding Dojo: Bank OCR Outside-In (2015)
Peter Kofler
Coding Dojo: Mars Rover (2014)
Coding Dojo: Mars Rover (2014)
Peter Kofler
Slides for my workshop about code smells and the Extract Method Refactoring using PHPStorm.
Extract Method Refactoring Workshop (2016)
Extract Method Refactoring Workshop (2016)
Peter Kofler
What's hot
(20)
Deliberate Practice (Agile Slovenia 2015)
Deliberate Practice (Agile Slovenia 2015)
Software Craftsmanship Journeyman Tour (2013)
Software Craftsmanship Journeyman Tour (2013)
TDD as if You Meant It (2013)
TDD as if You Meant It (2013)
Coding Dojo: Asynchronous Clock-In (2016)
Coding Dojo: Asynchronous Clock-In (2016)
Designing Test Cases for the Gilded Rose Kata v3 (2016)
Designing Test Cases for the Gilded Rose Kata v3 (2016)
Coding Dojo Object Calisthenics (2016)
Coding Dojo Object Calisthenics (2016)
Idiomatic R for Rosetta Code (2013)
Idiomatic R for Rosetta Code (2013)
Mob Programming (2016)
Mob Programming (2016)
Coding Dojo: Functional Calisthenics (2016)
Coding Dojo: Functional Calisthenics (2016)
Clean Readable Specifications (ETC 2016)
Clean Readable Specifications (ETC 2016)
Coding Dojo: Data Munging (2016)
Coding Dojo: Data Munging (2016)
Code Retreat Venice (2016)
Code Retreat Venice (2016)
GDCR15 in Las Palmas, Gran Canaria
GDCR15 in Las Palmas, Gran Canaria
Code Quality Assurance v4 (2013)
Code Quality Assurance v4 (2013)
JUnit Boot Camp (GeeCON 2016)
JUnit Boot Camp (GeeCON 2016)
Coding Dojo: Baby Steps Push Challenge (2021)
Coding Dojo: Baby Steps Push Challenge (2021)
Coding Dojo: Naming with Dices (2021)
Coding Dojo: Naming with Dices (2021)
Coding Dojo: Bank OCR Outside-In (2015)
Coding Dojo: Bank OCR Outside-In (2015)
Coding Dojo: Mars Rover (2014)
Coding Dojo: Mars Rover (2014)
Extract Method Refactoring Workshop (2016)
Extract Method Refactoring Workshop (2016)
Viewers also liked
Προσβαση σε ΑΕΙ-ΤΕΙ
Προσβαση σε ΑΕΙ-ΤΕΙ
Προσβαση σε ΑΕΙ-ΤΕΙ
Upper High And Beyond
Sentrifugo HRMS is a solution for all startups and organisation who want to manage there employees or organisation in an efficient way from attendance to leave tracking.Sentrifugo 2.1 opensource HRMS is a full featured web application/software which will solve all your Human resource needs of managing your employees.
Sentrifugo user guide 2.1
Sentrifugo user guide 2.1
Sentrifugo open source HRMS
โรงเรียนรัตนบุรี5
โรงเรียนรัตนบุรี5
witsanukongkam
Outlining ADVA Optical Networking and Spirent Communication's Mobile World Congress demonstration, this slide deck reveals the role NFV plays in automated activation testing and in-service monitoring at cell sites.
Revolutionary Approach to Cell Site Activation
Revolutionary Approach to Cell Site Activation
ADVA
Solo Repertoire List
Solo Repertoire List
Brandon Hamilton
Μεταλυκειακες Σπουδες
Μεταλυκειακες Σπουδες
Μεταλυκειακες Σπουδες
Upper High And Beyond
Sentrifugo USer Guide for version 1.1.7v Those people who have already installed the old version of Sentrifugo Open source HRMS here is the user guide for them which can give you the detailed view of Application For any support please contact us at :support@sentrifugo.com
Sentrifugo user guide 1.1.7v
Sentrifugo user guide 1.1.7v
Sentrifugo open source HRMS
Here is the installation Guide of Sentrifugo-Open HRMS Software online These Installation guide explains you the detailed process of how to install new version 2.0 beta which has many extra features than the previous one It could be suitable for Windows,MAC,Android OS For any support please mail us at : support@sentrifugo.com
Sentrifugo user guide 2.0beta
Sentrifugo user guide 2.0beta
Sentrifugo open source HRMS
Clase 15 esporotricosis y cromoblastomicosis 2015
Clase 15 esporotricosis y cromoblastomicosis 2015
Clase 15 esporotricosis y cromoblastomicosis 2015
Ras
MIS presentation on Skype business model
MIS presentation on Skype business model
MIS presentation on Skype business model
Amit Tiwari
Clase 16 lobomicosis y rinosporidiosis prothotecosis y microsporidiosis 2015
Clase 16 lobomicosis y rinosporidiosis prothotecosis y microsporidiosis 2015
Clase 16 lobomicosis y rinosporidiosis prothotecosis y microsporidiosis 2015
Ras
At MPLS + NFV +SDN World 2016, Anthony Magee addresses the key challenges operators now face to evolve their networks to 5G.
5G: Why Wait? - 5G Observatory 2016
5G: Why Wait? - 5G Observatory 2016
ADVA
Clase 20 cryptococosis, candidiasis, trichosporonosis y malasseziosis 2015
Clase 20 cryptococosis, candidiasis, trichosporonosis y malasseziosis 2015
Clase 20 cryptococosis, candidiasis, trichosporonosis y malasseziosis 2015
Ras
herencia poligenica, multifactorial
Herencia poligenica
Herencia poligenica
Lizette Sandoval Marin
Clase 19 aspergilosis y neumocystosis 2015
Clase 19 aspergilosis y neumocystosis 2015
Clase 19 aspergilosis y neumocystosis 2015
Ras
Viewers also liked
(15)
Προσβαση σε ΑΕΙ-ΤΕΙ
Προσβαση σε ΑΕΙ-ΤΕΙ
Sentrifugo user guide 2.1
Sentrifugo user guide 2.1
โรงเรียนรัตนบุรี5
โรงเรียนรัตนบุรี5
Revolutionary Approach to Cell Site Activation
Revolutionary Approach to Cell Site Activation
Solo Repertoire List
Solo Repertoire List
Μεταλυκειακες Σπουδες
Μεταλυκειακες Σπουδες
Sentrifugo user guide 1.1.7v
Sentrifugo user guide 1.1.7v
Sentrifugo user guide 2.0beta
Sentrifugo user guide 2.0beta
Clase 15 esporotricosis y cromoblastomicosis 2015
Clase 15 esporotricosis y cromoblastomicosis 2015
MIS presentation on Skype business model
MIS presentation on Skype business model
Clase 16 lobomicosis y rinosporidiosis prothotecosis y microsporidiosis 2015
Clase 16 lobomicosis y rinosporidiosis prothotecosis y microsporidiosis 2015
5G: Why Wait? - 5G Observatory 2016
5G: Why Wait? - 5G Observatory 2016
Clase 20 cryptococosis, candidiasis, trichosporonosis y malasseziosis 2015
Clase 20 cryptococosis, candidiasis, trichosporonosis y malasseziosis 2015
Herencia poligenica
Herencia poligenica
Clase 19 aspergilosis y neumocystosis 2015
Clase 19 aspergilosis y neumocystosis 2015
Similar to Coding Dojo - Refactoring Tennis Kata
Coding Dojo - Golden Master Technique - Approval Tests - Gilded Rose Kata
Coding Dojo - Golden Master Technique - Approval Tests - Gilded Rose Kata-
Coding Dojo - Golden Master Technique - Approval Tests - Gilded Rose Kata-
Alin Pandichi
Extreme programming
What is xp
What is xp
Simone Federici
Writing clean scientific software
Writing clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancoding
saber tabatabaee
Pair programming explanation and some advises about how to success doing it.
Pair programming
Pair programming
Gabriel Moral
Presented at Chester Devs 06/02/2013
Legacy code rehab.
Legacy code rehab.
johnnonolan
Legacy code, that old piece of software no one wants to touch, no one knows who wrote it and everyone’s afraid to replace it. Every developer has experienced that gut wrenching feeling of having to dig into an old code component to extend it or fix a bug. Best case scenario it’s an obscure piece of code that’s responsible for a minor part of your product, worst case, it’s the core of your business. In this CODE Components Meetup, Roman Labunsky talks about Code Rewriting vs. Code Refactoring and explain the pros and cons of each method and when to use each.
Code Refactoring or Rewrite: How to Properly Dispose of Legacy Code
Code Refactoring or Rewrite: How to Properly Dispose of Legacy Code
Roman Labunsky
No matter what level of development we are at in our careers we all face a daily battle to write good code for ourselves and others, deliver finished applications fast to satisfy business, and ensure everything is tested to prevent end-user fails. In this talk we will discuss what “clean application development” is, and how it can help us win those battles. The talk will provide practical and usable examples to take with you, integrate into your workflow, and continue to grow into good habits.
Clean application development (talk)
Clean application development (talk)
Adam Culp
testmon for Python concepts and IndieGoGo campaign. Slides for presentation on a local Ruby and Python meet-up.
testmon for Python
testmon for Python
tib0r
Changing Legacy code can cause it to come back to life and bite you in the APP! Learn the symptoms and techniques to write testable code
Test driven development - Zombie proof your code
Test driven development - Zombie proof your code
Pascal Larocque
Agile_SDLC_Node.js@Paypal_ppt
Agile_SDLC_Node.js@Paypal_ppt
Hitesh Kumar
How to improve software design by using UX mindset, techniques and practices, given that the user of software design is the developer.
Usable Software Design
Usable Software Design
Alexandru Bolboaca
What we have learn the last year while developing ClouDesire, presented at an Apericoder event organized by Coders TUG in Pisa.
Introduction to Continuous Delivery
Introduction to Continuous Delivery
Giovanni Toraldo
This is an introductory lecture on C++, suitable for first year computing students or those doing a conversion masters degree at postgraduate level.
CPP11 - Function Design
CPP11 - Function Design
Michael Heron
Based on Michael C. Feathers book "Working with Legacy Code"
Working With Legacy Code
Working With Legacy Code
Andrea Polci
There is not enough knowledge of programming languages to be good developers nowadays. It is important to understand the processes of continually improving the quality of the code and its performance. The ability to configure the development processes in a team more valuable than just writing code. To do this, you need to start using new tools or improve existing ones. We will go through all stages of development and find out what can be done better.
Dmytro Dziubenko "Developer's toolchain"
Dmytro Dziubenko "Developer's toolchain"
Fwdays
The slides for my "Power of Refactoring" talk as done at the php|tek conference in Chicago.
The Power Of Refactoring (php|tek 09)
The Power Of Refactoring (php|tek 09)
Stefan Koopmanschap
Research and guidance for educing software development risk and cost while improving speed, quality and maintainability by applying review at all levels.
Software Defect Prevention via Continuous Inspection
Software Defect Prevention via Continuous Inspection
Josh Gough
One of the main hindrances to teams being able to respond rapidly to new features are technical problems resulting from bad coding practices, also known as technical debt. Melissa and Brett will cover Agile tools and practices that help development teams write better code and increase maintainability. Topics that will be covered include: Pair programming Automated Unit Testing Refactoring Test-Driven Development Agile Architecture
Keeping code clean
Keeping code clean
Brett Child
Talk given at GURUPI/PUG-PI.
Functional programming 101
Functional programming 101
Marcle Rodrigues
Second "code school lesson" for Eurosport's developers. 1. Refactoring : when? why? how? 2. Single Responsability 3. Practical case : clean architecture.
Eurosport's Kodakademi #2
Eurosport's Kodakademi #2
Benjamin Baumann
Similar to Coding Dojo - Refactoring Tennis Kata
(20)
Coding Dojo - Golden Master Technique - Approval Tests - Gilded Rose Kata-
Coding Dojo - Golden Master Technique - Approval Tests - Gilded Rose Kata-
What is xp
What is xp
Writing clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancoding
Pair programming
Pair programming
Legacy code rehab.
Legacy code rehab.
Code Refactoring or Rewrite: How to Properly Dispose of Legacy Code
Code Refactoring or Rewrite: How to Properly Dispose of Legacy Code
Clean application development (talk)
Clean application development (talk)
testmon for Python
testmon for Python
Test driven development - Zombie proof your code
Test driven development - Zombie proof your code
Agile_SDLC_Node.js@Paypal_ppt
Agile_SDLC_Node.js@Paypal_ppt
Usable Software Design
Usable Software Design
Introduction to Continuous Delivery
Introduction to Continuous Delivery
CPP11 - Function Design
CPP11 - Function Design
Working With Legacy Code
Working With Legacy Code
Dmytro Dziubenko "Developer's toolchain"
Dmytro Dziubenko "Developer's toolchain"
The Power Of Refactoring (php|tek 09)
The Power Of Refactoring (php|tek 09)
Software Defect Prevention via Continuous Inspection
Software Defect Prevention via Continuous Inspection
Keeping code clean
Keeping code clean
Functional programming 101
Functional programming 101
Eurosport's Kodakademi #2
Eurosport's Kodakademi #2
More from Alin Pandichi
It's time to be honest with ourselves and admit that we do not treat our frontend code the same way we treat our backend code. And it shows. But what's wrong with our frontend code, you ask? Well, not surprisingly, the same things that we usually recognize as Bad Things™ for backend: duplication, coupling, clutter, lack of unit tests, bad naming, etc. Let's take a closer look at some of these anti-patterns showing up in our frontend code and how we can avoid them.
[Codecamp] The sorry state of frontend code
[Codecamp] The sorry state of frontend code
Alin Pandichi
React and Redux took the world by storm. These JavaScript libraries allow you to write applications consisting of reusable components while avoiding bugs related to side-effects. But I suspect that developers do not unit test their React/Redux code. Or at least not as much as they could. During this talk, I will showcase the unit tests we have written for our eventriX product. These tests run fast and cover the most important aspects of our client-side code running in the browser. These practical real-world examples could inspire you to write more and better unit tests for your own React/Redux application.
Unit Testing your React / Redux app (@BucharestJS)
Unit Testing your React / Redux app (@BucharestJS)
Alin Pandichi
A C++ programming exercise where we write the firmware for a learning remote control. The exercise is derived from a real firmware project written in C. Kata details: http://codewars.com/kata/learning-remote-control/
Coding Dojo - The learning remote control
Coding Dojo - The learning remote control
Alin Pandichi
It's time to be honest with ourselves and admit that we do not treat our frontend code the same way we treat our backend code. And it shows. But what's wrong with our frontend code, you ask? Well, not surprisingly, the same things that we usually recognize as Bad Things™ for backend: duplication, coupling, clutter, lack of unit tests, bad naming, etc. Let's take a closer look at some of these anti-patterns showing up in our frontend code and how we can avoid them.
The sorry state of frontend code [a talk @ Softbinator]
The sorry state of frontend code [a talk @ Softbinator]
Alin Pandichi
BDD has got a bit conflated with acceptance testing in the PHP community because of tools like Behat and Codeception. BDD is more about workflow and mindset rather than tooling. To understand BDD, we must go back to its origins and see how it evolved out of the need to fix common problems in TDD.
Behavior driven development - a recap (@ Symfony Bucharest Meetup)
Behavior driven development - a recap (@ Symfony Bucharest Meetup)
Alin Pandichi
It's time to be honest with ourselves and admit that we do not treat our frontend code the same way we treat our backend code. And it shows. But what's wrong with our frontend code, you ask? Well, not surprisingly, the same things that we usually recognize as Bad Things™ for backend: duplication, coupling, clutter, lack of unit tests, bad naming, etc. Let's take a closer look at some of these anti-patterns showing up in our frontend code and how we can avoid them.
The sorry state of frontend code
The sorry state of frontend code
Alin Pandichi
React and Redux took the world by storm. These JavaScript libraries allow you to write applications consisting of reusable components while avoiding bugs related to side-effects. But I suspect that developers do not unit test their React/Redux code. Or at least not as much as they could. During this talk, I will showcase the unit tests we have written for our eventriX product. These tests run fast and cover the most important aspects of our client-side code running in the browser. These practical real-world examples could inspire you to write more and better unit tests for your own React/Redux application.
How to unit test your React/Redux app
How to unit test your React/Redux app
Alin Pandichi
While merrily browsing the Internet and reading technical articles about programming, you may encounter the terms of "covariance" and "contravariance." These sound spooky enough to make you consider closing the tab and forgetting all about it, as if it were a bad dream. It doesn't have to be that way! These two terms are actually abstract mathematical concepts that are used in probability theory, statistics, theoretical physics, category theory and (you guessed it!) computer science. Each aforementioned field has a certain definition regarding what covariance / contravariance is. Each definition may or may not have a degree of similarity to the other definitions in the other fields. During this talk, we'll try to make sense of these things, together. We'll lightly touch upon what covariance and contravariance means in a couple of applied mathematical scenarios (Don't worry, we won't be talking about functors!). Then, we'll see how these concepts are used to describe subtyping relationships in programming languages such as Java and C#. There will be code examples, of course!
Covariance and contravariance. Say what?! (Agile Talks #22)
Covariance and contravariance. Say what?! (Agile Talks #22)
Alin Pandichi
A Coding Dojo is a team practice format that accelerates knowledge transfer and sharing skills between team members. With an experienced facilitator, it is also a way of learning by applying various techniques.
Coding Dojo - Berlin Clock - TDD
Coding Dojo - Berlin Clock - TDD
Alin Pandichi
Avatar.js - Server-side JavaScript for the JVM
Avatar.js
Avatar.js
Alin Pandichi
Software development - the java perspective
Software development - the java perspective
Software development - the java perspective
Alin Pandichi
Java 8 - Lambdas, default methods, streams API, method references
Java 8 - Lambdas and much more
Java 8 - Lambdas and much more
Alin Pandichi
More from Alin Pandichi
(12)
[Codecamp] The sorry state of frontend code
[Codecamp] The sorry state of frontend code
Unit Testing your React / Redux app (@BucharestJS)
Unit Testing your React / Redux app (@BucharestJS)
Coding Dojo - The learning remote control
Coding Dojo - The learning remote control
The sorry state of frontend code [a talk @ Softbinator]
The sorry state of frontend code [a talk @ Softbinator]
Behavior driven development - a recap (@ Symfony Bucharest Meetup)
Behavior driven development - a recap (@ Symfony Bucharest Meetup)
The sorry state of frontend code
The sorry state of frontend code
How to unit test your React/Redux app
How to unit test your React/Redux app
Covariance and contravariance. Say what?! (Agile Talks #22)
Covariance and contravariance. Say what?! (Agile Talks #22)
Coding Dojo - Berlin Clock - TDD
Coding Dojo - Berlin Clock - TDD
Avatar.js
Avatar.js
Software development - the java perspective
Software development - the java perspective
Java 8 - Lambdas and much more
Java 8 - Lambdas and much more
Recently uploaded
The presentation explores the development and application of artificial intelligence (AI) from its inception to its current status in the modern world. The term "artificial intelligence" was first coined by John McCarthy in 1956 to describe efforts to develop computer programs capable of performing tasks that typically require human intelligence. This concept was first introduced at a conference held at Dartmouth College, where programs demonstrated capabilities such as playing chess, proving theorems, and interpreting texts. In the early stages, Alan Turing contributed to the field by defining intelligence as the ability of a being to respond to certain questions intelligently, proposing what is now known as the Turing Test to evaluate the presence of intelligent behavior in machines. As the decades progressed, AI evolved significantly. The 1980s focused on machine learning, teaching computers to learn from data, leading to the development of models that could improve their performance based on their experiences. The 1990s and 2000s saw further advances in algorithms and computational power, which allowed for more sophisticated data analysis techniques, including data mining. By the 2010s, the proliferation of big data and the refinement of deep learning techniques enabled AI to become mainstream. Notable milestones included the success of Google's AlphaGo and advancements in autonomous vehicles by companies like Tesla and Waymo. A major theme of the presentation is the application of generative AI, which has been used for tasks such as natural language text generation, translation, and question answering. Generative AI uses large datasets to train models that can then produce new, coherent pieces of text or other media. The presentation also discusses the ethical implications and the need for regulation in AI, highlighting issues such as privacy, bias, and the potential for misuse. These concerns have prompted calls for comprehensive regulations to ensure the safe and equitable use of AI technologies. Artificial intelligence has also played a significant role in healthcare, particularly highlighted during the COVID-19 pandemic, where it was used in drug discovery, vaccine development, and analyzing the spread of the virus. The capabilities of AI in healthcare are vast, ranging from medical diagnostics to personalized medicine, demonstrating the technology's potential to revolutionize fields beyond just technical or consumer applications. In conclusion, AI continues to be a rapidly evolving field with significant implications for various aspects of society. The development from theoretical concepts to real-world applications illustrates both the potential benefits and the challenges that come with integrating advanced technologies into everyday life. The ongoing discussion about AI ethics and regulation underscores the importance of managing these technologies responsibly to maximize their their benefits while minimizing potential harms.
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
With more memory available, system performance of three Dell devices increased, which can translate to a better user experience Conclusion When your system has plenty of RAM to meet your needs, you can efficiently access the applications and data you need to finish projects and to-do lists without sacrificing time and focus. Our test results show that with more memory available, three Dell PCs delivered better performance and took less time to complete the Procyon Office Productivity benchmark. These advantages translate to users being able to complete workflows more quickly and multitask more easily. Whether you need the mobility of the Latitude 5440, the creative capabilities of the Precision 3470, or the high performance of the OptiPlex Tower Plus 7010, configuring your system with more RAM can help keep processes running smoothly, enabling you to do more without compromising performance.
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Principled Technologies
Effective data discovery is crucial for maintaining compliance and mitigating risks in today's rapidly evolving privacy landscape. However, traditional manual approaches often struggle to keep pace with the growing volume and complexity of data. Join us for an insightful webinar where industry leaders from TrustArc and Privya will share their expertise on leveraging AI-powered solutions to revolutionize data discovery. You'll learn how to: - Effortlessly maintain a comprehensive, up-to-date data inventory - Harness code scanning insights to gain complete visibility into data flows leveraging the advantages of code scanning over DB scanning - Simplify compliance by leveraging Privya's integration with TrustArc - Implement proven strategies to mitigate third-party risks Our panel of experts will discuss real-world case studies and share practical strategies for overcoming common data discovery challenges. They'll also explore the latest trends and innovations in AI-driven data management, and how these technologies can help organizations stay ahead of the curve in an ever-changing privacy landscape.
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc
The value of a flexible API Management solution for Open Banking Steve Melan, Manager for IT Innovation and Architecture - State's and Saving's Bank of Luxembourg Apidays New York 2024: The API Economy in the AI Era (April 30 & May 1, 2024) ------ Check out our conferences at https://www.apidays.global/ Do you want to sponsor or talk at one of our conferences? https://apidays.typeform.com/to/ILJeAaV8 Learn more on APIscene, the global media made by the community for the community: https://www.apiscene.io Explore the API ecosystem with the API Landscape: https://apilandscape.apiscene.io/
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
apidays
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
This presentation explores the impact of HTML injection attacks on web applications, detailing how attackers exploit vulnerabilities to inject malicious code into web pages. Learn about the potential consequences of such attacks and discover effective mitigation strategies to protect your web applications from HTML injection vulnerabilities. for more information visit https://bostoninstituteofanalytics.org/category/cyber-security-ethical-hacking/
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
Boston Institute of Analytics
Abhishek Deb(1), Mr Abdul Kalam(2) M. Des (UX) , School of Design, DIT University , Dehradun. This paper explores the future potential of AI-enabled smartphone processors, aiming to investigate the advancements, capabilities, and implications of integrating artificial intelligence (AI) into smartphone technology. The research study goals consist of evaluating the development of AI in mobile phone processors, analyzing the existing state as well as abilities of AI-enabled cpus determining future patterns as well as chances together with reviewing obstacles as well as factors to consider for more growth.
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
debabhi2
Enterprise Knowledge’s Urmi Majumder, Principal Data Architecture Consultant, and Fernando Aguilar Islas, Senior Data Science Consultant, presented "Driving Behavioral Change for Information Management through Data-Driven Green Strategy" on March 27, 2024 at Enterprise Data World (EDW) in Orlando, Florida. In this presentation, Urmi and Fernando discussed a case study describing how the information management division in a large supply chain organization drove user behavior change through awareness of the carbon footprint of their duplicated and near-duplicated content, identified via advanced data analytics. Check out their presentation to gain valuable perspectives on utilizing data-driven strategies to influence positive behavioral shifts and support sustainability initiatives within your organization. In this session, participants gained answers to the following questions: - What is a Green Information Management (IM) Strategy, and why should you have one? - How can Artificial Intelligence (AI) and Machine Learning (ML) support your Green IM Strategy through content deduplication? - How can an organization use insights into their data to influence employee behavior for IM? - How can you reap additional benefits from content reduction that go beyond Green IM?
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
Enterprise Knowledge
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
The Digital Insurer
Slides from the presentation on Machine Learning for the Arts & Humanities seminar at the University of Bologna (Digital Humanities and Digital Knowledge program)
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
Maria Levchenko
Created by Mozilla Research in 2012 and now part of Linux Foundation Europe, the Servo project is an experimental rendering engine written in Rust. It combines memory safety and concurrency to create an independent, modular, and embeddable rendering engine that adheres to web standards. Stewardship of Servo moved from Mozilla Research to the Linux Foundation in 2020, where its mission remains unchanged. After some slow years, in 2023 there has been renewed activity on the project, with a roadmap now focused on improving the engine’s CSS 2 conformance, exploring Android support, and making Servo a practical embeddable rendering engine. In this presentation, Rakhi Sharma reviews the status of the project, our recent developments in 2023, our collaboration with Tauri to make Servo an easy-to-use embeddable rendering engine, and our plans for the future to make Servo an alternative web rendering engine for the embedded devices industry. (c) Embedded Open Source Summit 2024 April 16-18, 2024 Seattle, Washington (US) https://events.linuxfoundation.org/embedded-open-source-summit/ https://ossna2024.sched.com/event/1aBNF/a-year-of-servo-reboot-where-are-we-now-rakhi-sharma-igalia
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
Igalia
Copy of the slides presented by Matt Robison to the SFWelly Salesforce user group community on May 2 2024. The audience was truly international with attendees from at least 4 different countries joining online. Matt is an expert in data cloud and this was a brilliant session.
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
If you are a Domino Administrator in any size company you already have a range of skills that make you an expert administrator across many platforms and technologies. In this session Gab explains how to apply those skills and that knowledge to take your career wherever you want to go.
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Gabriella Davis
Discover the advantages of hiring UI/UX design services! Our blog explores how professional design can enhance user experiences, boost brand credibility, and increase customer engagement. Learn about the latest design trends and strategies that can help your business stand out in the digital landscape. Elevate your online presence with Pixlogix's expert UI/UX design services.
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
Pixlogix Infotech
Tech Trends Report 2024 Future Today Institute
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
hans926745
This project focuses on implementing real-time object detection using Raspberry Pi and OpenCV. Real-time object detection is a critical aspect of computer vision applications, allowing systems to identify and locate objects within a live video stream instantly.
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
Khem
Imagine a world where information flows as swiftly as thought itself, making decision-making as fluid as the data driving it. Every moment is critical, and the right tools can significantly boost your organization’s performance. The power of real-time data automation through FME can turn this vision into reality. Aimed at professionals eager to leverage real-time data for enhanced decision-making and efficiency, this webinar will cover the essentials of real-time data and its significance. We’ll explore: FME’s role in real-time event processing, from data intake and analysis to transformation and reporting An overview of leveraging streams vs. automations FME’s impact across various industries highlighted by real-life case studies Live demonstrations on setting up FME workflows for real-time data Practical advice on getting started, best practices, and tips for effective implementation Join us to enhance your skills in real-time data automation with FME, and take your operational capabilities to the next level.
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
Presentation from Melissa Klemke from her talk at Product Anonymous in April 2024
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
Product Anonymous
In this session, we will delve into strategic approaches for optimizing knowledge management within Microsoft 365, amidst the evolving landscape of Copilot. From leveraging automatic metadata classification and permission governance with SharePoint Premium, to unlocking Viva Engage for the cultivation of knowledge and communities, you will gain actionable insights to bolster your organization's knowledge-sharing initiatives. In this session, we will also explore how to facilitate solutions to enable your employees to find answers and expertise within Microsoft 365. You will leave equipped with practical techniques and a deeper understanding of how there is more to effective knowledge management than just enabling Copilot, but building actual solutions to prepare the knowledge that Copilot and your employees can use.
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
Recently uploaded
(20)
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Coding Dojo - Refactoring Tennis Kata
1.
Coding Dojo Refactoring Tennis Kata @AlinPandichi
2.
Coding Dojo Expectations?
3.
Coding Dojo Mindset ● We are here to learn ● Safe place outside of work ●
Need to slow down ● Focus on doing it right ● Noncompetitive, collaborative, fun environment
4.
Practice session ● One laptop with a functional dev. env. is connected to a projector ● Two developers pair program on the laptop. The others are watching the code changes. ●
Every 7 minutes, one developer leaves the laptop and the next one from the room takes his place.
5.
4 rules of simple design ● Passes the tests ● No duplication ●
Reveals intention ● Fewer elements
6.
Code smells “A surface indication that usually corresponds to a deeper problem in the system” Quick to spot: ● bad names ● long method, does too much ●
duplication ● dead code, etc.
7.
Refactoring “A technique for restructuring an existing body of code, altering its internal structure without changing its external behavior”
8.
Small transformations ● Transformations preserving behavior ● Small, less likely to go wrong ●
System is fully working after each change ● Verified by working tests ● Sequence of transformations produce a significant restructuring
9.
Tennis Refactoring Kata https://github.com/emilybache/ TennisRefactoringKata
10.
Retrospective ● What did you learn today? ● What happened as expected? ●
What surprised you? ● What do you plan to use at work?
11.
Thank you!
Download now