Are you over 18 and want to see adult content?
More Annotations
![A complete backup of bryantparkhotel.com](https://www.archivebay.com/archive2/0b361b0f-e40b-4c61-85db-c8c0c874b463.png)
A complete backup of bryantparkhotel.com
Are you over 18 and want to see adult content?
![A complete backup of portarthur.org.au](https://www.archivebay.com/archive2/4d731bf2-7dcf-477b-babe-6540a91aa7a6.png)
A complete backup of portarthur.org.au
Are you over 18 and want to see adult content?
![A complete backup of adrianautobody.com](https://www.archivebay.com/archive2/3dfe76c2-e7c1-4655-8e59-3827926239b5.png)
A complete backup of adrianautobody.com
Are you over 18 and want to see adult content?
![A complete backup of designbundles.net](https://www.archivebay.com/archive2/f1e761af-be53-4de8-809b-5c342f8b56f2.png)
A complete backup of designbundles.net
Are you over 18 and want to see adult content?
![A complete backup of johnbarry.org.uk](https://www.archivebay.com/archive2/1ed22edc-f192-4fbd-8a2b-8e447c95117c.png)
A complete backup of johnbarry.org.uk
Are you over 18 and want to see adult content?
Favourite Annotations
![A complete backup of studiodimedicinaestetica.it](https://www.archivebay.com/archive2/142542e9-34a1-4caa-8d0c-930cd33075f4.png)
A complete backup of studiodimedicinaestetica.it
Are you over 18 and want to see adult content?
![A complete backup of 1stmotiliumnow.com](https://www.archivebay.com/archive2/f4a99c44-16da-4502-ab86-a514ed8e83bb.png)
A complete backup of 1stmotiliumnow.com
Are you over 18 and want to see adult content?
![A complete backup of candelwarmers.com](https://www.archivebay.com/archive2/ae5268fd-e0ca-4c20-982f-c42c57a3c0a0.png)
A complete backup of candelwarmers.com
Are you over 18 and want to see adult content?
Text
THE CODE WHISPERER
From Zero To NUnit With Visual Studio Code. Articles. 4: 15: April 7,2021
ARCHIVE - THE CODE WHISPERER Clean Up Those Nasty Junk Drawers October 4, 2014. Surviving Legacy Code with Golden Master and Sampling September 28, 2014 · updated December 8, 2017. "I Like Mocks, But I Distrust Spies" September 15, 2014. Let Code Flow Towards Better Design August 22, 2014. Abstraction: The Goal of Modular Design August 1, 2014. INTEGRATED TESTS ARE A SCAM But the integrated tests scam will almost certainly still be a problem, whenever I finally sit down to do that. I still believe that. On March 1, 2010 I changed the phrase “integration tests” to “integrated tests” in this article. Integrated tests are a scam—a self-replicating virus that threatens to infect your codebase, your
FROM ZERO TO NUNIT WITH VISUAL STUDIO CODE YOUR CONSTRUCTORS ARE COMPLETELY IRRATIONAL HOW NOT TO WRITE GOLDEN MASTER TESTSTERMS OF SERVICE
We discuss lightweight approaches to building software YOU DON'T HATE MOCKS; YOU HATE SIDE-EFFECTS You don’t hate mocks; you hate side-effects. When a mock annoys you, it realizes its purpose, showing you where a side-effect is getting in your way. If you refactor away from the side-effect, then you eliminate the mock. Please don’t blame the poor mock for doing itsjob.
THE CODE WHISPERERPAST ARTICLESJUNIT ON ONE PAGEA NATURAL MICROFLOW IN TDDRENAMING MAGICALLY WITH ZMV March 14, 2021 Integrated Tests Are a Scam. Programmers get into trouble when they try to use one set of tests to check their code and someone else’s framework. Clarifying the intention of the tests and isolating these two kinds of behavior from each other tends to SERIES - THE CODE WHISPERER The Myth of Advanced TDD November 16, 2017. Guard Rails, Not Prison Bars August 18, 2017. When Subclasses Are Ready To Die May 10, 2017. Taking a Pragmatic View of Isolated Tests March 17, 2017. No More Boilerplate Code October 9, 2016. Tests Don'tTHE CODE WHISPERER
From Zero To NUnit With Visual Studio Code. Articles. 4: 15: April 7,2021
ARCHIVE - THE CODE WHISPERER Clean Up Those Nasty Junk Drawers October 4, 2014. Surviving Legacy Code with Golden Master and Sampling September 28, 2014 · updated December 8, 2017. "I Like Mocks, But I Distrust Spies" September 15, 2014. Let Code Flow Towards Better Design August 22, 2014. Abstraction: The Goal of Modular Design August 1, 2014. INTEGRATED TESTS ARE A SCAM But the integrated tests scam will almost certainly still be a problem, whenever I finally sit down to do that. I still believe that. On March 1, 2010 I changed the phrase “integration tests” to “integrated tests” in this article. Integrated tests are a scam—a self-replicating virus that threatens to infect your codebase, your
FROM ZERO TO NUNIT WITH VISUAL STUDIO CODE YOUR CONSTRUCTORS ARE COMPLETELY IRRATIONAL HOW NOT TO WRITE GOLDEN MASTER TESTSTERMS OF SERVICE
We discuss lightweight approaches to building software YOU DON'T HATE MOCKS; YOU HATE SIDE-EFFECTS You don’t hate mocks; you hate side-effects. When a mock annoys you, it realizes its purpose, showing you where a side-effect is getting in your way. If you refactor away from the side-effect, then you eliminate the mock. Please don’t blame the poor mock for doing itsjob.
THE CODE WHISPERER
From Zero To NUnit With Visual Studio Code. Articles. 4: 15: April 7,2021
SERIES - THE CODE WHISPERER The Myth of Advanced TDD November 16, 2017. Guard Rails, Not Prison Bars August 18, 2017. When Subclasses Are Ready To Die May 10, 2017. Taking a Pragmatic View of Isolated Tests March 17, 2017. No More Boilerplate Code October 9, 2016. Tests Don't CHOOSING TOOLS FOR TEST DOUBLES Choosing Tools for Test Doubles. April 8, 2020 Simple Design, Test Doubles. When I teach evolutionary design, participants still often ask me which tools they ought to use to introduce test doubles into their projects. Yes, I nudge them gently in the direction of focusing on principles and techniques and away from fixating on tools, but they ABSTRACT TEST CASES, 20 YEARS LATER Abstract Test Cases, 20 Years Later. February 23, 2021 Integrated Tests Are a Scam. While writing something else entirely, I stumbled upon one of my earliest contributions to the evolutionary design/TDD community. I called them abstract test cases at the time, but today we know them as contract tests. Has much changed in the 20 years since I TOO MANY IFS? MAYBE. Complicated code only creates problems when humans try to change it. When we try to change code, we spend energy understanding it, and so we label code “complicated” when it feels like it requires “too much” energy to understand. That’s why we design software: we organize code in a way that reduces the cost of understanding it. “Too many” if conditions represents just one way toTERMS OF SERVICE
We discuss lightweight approaches to building software FAQ - THE CODE WHISPERER This is a Civilized Place for Public Discussion. Please treat this discussion forum with the same respect you would a public park. We, too, are a shared community resource — a place to share skills, knowledge and interests through ongoing conversation. YOU DON'T HATE MOCKS; YOU HATE SIDE-EFFECTS You don’t hate mocks; you hate side-effects. When a mock annoys you, it realizes its purpose, showing you where a side-effect is getting in your way. If you refactor away from the side-effect, then you eliminate the mock. Please don’t blame the poor mock for doing itsjob.
CLEARING UP THE INTEGRATED TESTS SCAM Clearing Up the Integrated Tests Scam. No matter what one writes, no matter how carefully one tries to articulate it, a non-trivial segment of the readership will interpret it differently from what one intended. So it has gone with “Integrated Tests are a Scam”. I’d HOW NOT TO WRITE GOLDEN MASTER TESTS The commented-out @Test annotation makes me nervous. 1 This means that a programmer needs to. Switch annotations in order to run “generate golden master” when the golden master needs to change. Run all the tests—or worse, choose to run a single test just this once—in order to generate a new golden master. Remember to switch the THE CODE WHISPERERPAST ARTICLESJUNIT ON ONE PAGEA NATURAL MICROFLOW IN TDDRENAMING MAGICALLY WITH ZMV March 14, 2021 Integrated Tests Are a Scam. Programmers get into trouble when they try to use one set of tests to check their code and someone else’s framework. Clarifying the intention of the tests and isolating these two kinds of behavior from each other tends to SERIES - THE CODE WHISPERER The Myth of Advanced TDD November 16, 2017. Guard Rails, Not Prison Bars August 18, 2017. When Subclasses Are Ready To Die May 10, 2017. Taking a Pragmatic View of Isolated Tests March 17, 2017. No More Boilerplate Code October 9, 2016. Tests Don't ARCHIVE - THE CODE WHISPERER Clean Up Those Nasty Junk Drawers October 4, 2014. Surviving Legacy Code with Golden Master and Sampling September 28, 2014 · updated December 8, 2017. "I Like Mocks, But I Distrust Spies" September 15, 2014. Let Code Flow Towards Better Design August 22, 2014. Abstraction: The Goal of Modular Design August 1, 2014. ABSTRACT TEST CASES, 20 YEARS LATER Abstract Test Cases, 20 Years Later. February 23, 2021 Integrated Tests Are a Scam. While writing something else entirely, I stumbled upon one of my earliest contributions to the evolutionary design/TDD community. I called them abstract test cases at the time, but today we know them as contract tests. Has much changed in the 20 years since I FROM ZERO TO NUNIT WITH VISUAL STUDIO CODE INTEGRATED TESTS ARE A SCAM But the integrated tests scam will almost certainly still be a problem, whenever I finally sit down to do that. I still believe that. On March 1, 2010 I changed the phrase “integration tests” to “integrated tests” in this article. Integrated tests are a scam—a self-replicating virus that threatens to infect your codebase, your
THE MYTH OF ADVANCED TDD The Myth of Advanced TDD. “I want to get a lot of wisdom on TDD techniques”. Many people ask me about this, especially when they sign up for my mailing list. They want the “advanced stuff”. I have good news and bad news for them: I don’t believe in “advanced TDD”. If you want advanced testing techniques, then you’reprobably
YOU DON'T HATE MOCKS; YOU HATE SIDE-EFFECTS You don’t hate mocks; you hate side-effects. When a mock annoys you, it realizes its purpose, showing you where a side-effect is getting in your way. If you refactor away from the side-effect, then you eliminate the mock. Please don’t blame the poor mock for doing itsjob.
TERMS OF SERVICE
We discuss lightweight approaches to building software YOUR CONSTRUCTORS ARE COMPLETELY IRRATIONAL THE CODE WHISPERERPAST ARTICLESJUNIT ON ONE PAGEA NATURAL MICROFLOW IN TDDRENAMING MAGICALLY WITH ZMV March 14, 2021 Integrated Tests Are a Scam. Programmers get into trouble when they try to use one set of tests to check their code and someone else’s framework. Clarifying the intention of the tests and isolating these two kinds of behavior from each other tends to SERIES - THE CODE WHISPERER The Myth of Advanced TDD November 16, 2017. Guard Rails, Not Prison Bars August 18, 2017. When Subclasses Are Ready To Die May 10, 2017. Taking a Pragmatic View of Isolated Tests March 17, 2017. No More Boilerplate Code October 9, 2016. Tests Don't ARCHIVE - THE CODE WHISPERER Clean Up Those Nasty Junk Drawers October 4, 2014. Surviving Legacy Code with Golden Master and Sampling September 28, 2014 · updated December 8, 2017. "I Like Mocks, But I Distrust Spies" September 15, 2014. Let Code Flow Towards Better Design August 22, 2014. Abstraction: The Goal of Modular Design August 1, 2014. ABSTRACT TEST CASES, 20 YEARS LATER Abstract Test Cases, 20 Years Later. February 23, 2021 Integrated Tests Are a Scam. While writing something else entirely, I stumbled upon one of my earliest contributions to the evolutionary design/TDD community. I called them abstract test cases at the time, but today we know them as contract tests. Has much changed in the 20 years since I FROM ZERO TO NUNIT WITH VISUAL STUDIO CODE INTEGRATED TESTS ARE A SCAM But the integrated tests scam will almost certainly still be a problem, whenever I finally sit down to do that. I still believe that. On March 1, 2010 I changed the phrase “integration tests” to “integrated tests” in this article. Integrated tests are a scam—a self-replicating virus that threatens to infect your codebase, your
THE MYTH OF ADVANCED TDD The Myth of Advanced TDD. “I want to get a lot of wisdom on TDD techniques”. Many people ask me about this, especially when they sign up for my mailing list. They want the “advanced stuff”. I have good news and bad news for them: I don’t believe in “advanced TDD”. If you want advanced testing techniques, then you’reprobably
YOU DON'T HATE MOCKS; YOU HATE SIDE-EFFECTS You don’t hate mocks; you hate side-effects. When a mock annoys you, it realizes its purpose, showing you where a side-effect is getting in your way. If you refactor away from the side-effect, then you eliminate the mock. Please don’t blame the poor mock for doing itsjob.
TERMS OF SERVICE
We discuss lightweight approaches to building software YOUR CONSTRUCTORS ARE COMPLETELY IRRATIONAL ABSTRACT TEST CASES, 20 YEARS LATER Abstract Test Cases, 20 Years Later. February 23, 2021 Integrated Tests Are a Scam. While writing something else entirely, I stumbled upon one of my earliest contributions to the evolutionary design/TDD community. I called them abstract test HOW TO RECOVER FROM THE INTEGRATED TESTS SCAM A Twitter follower asked me how to recover from feeling overwhelmed by too many integrated tests, calling it “a common struggle of mine”. If you haven’t seen this video (64 minutes), then you might not quite know what I mean by “integrated tests”.. If a test passes or fails based on the behavior of many “interesting” bits of behavior, then I call it an integrated test. GETTING STARTED WITH CONTRACT TESTS Step Away From the Tools. I would recommend that you just start writing Contract Tests as best you can. Follow these simple rules: If Client A stubs B.foo () to return value X, then write a Contract Test for B that shows when to expect (foo ()).toEqual (X) . If Client A expects (should receive) B.foo (a, b, c), then write a Contract Testfor B
SIMULATING FAILURE IN COLLABORATION TESTS Simulating Failure in Collaboration Tests. Limiting beliefs and unstated assumptions interfere with our performance. This is not a trifling matter. Here is yet another story of how that happens. We often test a module by connecting it to a lightweight implementation of one of its collaborators, such as in-memory persistence. YOU DON'T HATE MOCKS; YOU HATE SIDE-EFFECTS You don’t hate mocks; you hate side-effects. When a mock annoys you, it realizes its purpose, showing you where a side-effect is getting in your way. If you refactor away from the side-effect, then you eliminate the mock. Please don’t blame the poor mock for doing itsjob.
TOO MANY IFS? MAYBE. Complicated code only creates problems when humans try to change it. When we try to change code, we spend energy understanding it, and so we label code “complicated” when it feels like it requires “too much” energy to understand. That’s why we design software: we organize code in a way that reduces the cost of understanding it. “Too many” if conditions represents just one way to DESIGNING THE ENTRY POINT The entry point. Sometimes it’s main (). Sometimes it’s an extension point in some complicated framework. Most importantly, it is the border where Their Stuff runs Your Stuff. When I see entry points in other applications, I don’t see a lot of evidence of having thought about the design much. It becomes a kind of junk drawer forcode.
NO MORE BOILERPLATE CODE The name template method is a perfect example of a structural name: it describes the implementation rather than the meaning or purpose. This is what happens when programmers name things. The Problem We have standard workflows in our systems that programmers copy and paste from module to module in order to achieve some kind of standard behavior. PUTTING AN AGE-OLD BATTLE TO REST Putting An Age-Old Battle To Rest. So maybe not an epic, age-old battle, but a battle nonetheless. The battle over the correct ordering of the Four Elements of Simple Design. A battle that I’ve always known I’d won, but until recently, could never justify to others. I can finally declare victory and bestow upon you the One True Sequence. REMOVING RVM COMPLETELY I made a silly mistake installing rvm on my new Linux laptop. I should mention that I don’t really know Linux yet, so that makes me susceptible to making this kind of silly mistake.THE CODE WHISPERER
YOUR CODE IS TRYING TO TELL YOU SOMETHING.* Ask Me a Question
* Past Articles
* Integrated Tests are a Scam* On-Site Training
* Online Training
* JUnit on One Page
* GitHub
* Stack Overflow
* RSS
Start The World's Best Introduction to TDD... free! HOW TO WRITE TESTS FOR FRAMEWORK EXTENSIONS? March 14, 2021 Integrated Tests Are a Scam Comments Programmers get into trouble when they try to use one set of tests to check their code and someone else’s framework. Clarifying the intention of the tests and isolating these two kinds of behavior from each other tends to lead to better results overall.Read on →
ABSTRACT TEST CASES, 20 YEARS LATER February 23, 2021 Integrated Tests Are a Scam Comments Revised one of my earliest contributions to the evolutionary design community: abstract test cases and their evolution into contract testsRead on →
11TY BY INTENTION
February 15, 2021 Adventures in 11ty, Simple Design Comments I started out by wanting a Nunjucks filter to reverse a collection of posts, from which I would later “take 10”, but then I realized I could simply program _by intention_.Read on →
REMOVING DUPLICATION DEFTLY 1 February 8, 2021 Simple Design, Refactoring, Removing DuplicationDeftly Comments
We removed duplication as part of fixing a defect. Doing this helped us see more clearly both how to understand and fix the defect.Read on →
DECIPHERING AN 11TY ERROR MESSAGE February 1, 2021 Adventures in 11ty, Refactoring Comments In the process of refactoring an 11ty configuration, I ran into an error message that I had to work hard to understand. Fortunately, microcommitting made it relatively easy to diagnose and fix theproblem.
Read on →
TOO MANY IFS? MAYBE. January 20, 2021 Not Just Coding, Simple Design Comments Writing “too many” if conditions can cause problems in code, but I think we’d all feel better understanding why this might be the case, rather than merely repeating received wisdom.Read on →
SIMULATING FAILURE IN COLLABORATION TESTS December 17, 2020 Integrated Tests Are a Scam, Test Doubles, Not JustCoding Comments
The production implementation of an interface can fail, but the lightweight implementation that you use for testing can’t fail in the same way. How do you check that the client is handling that kind of failure? Use another kind of test double.Read on →
A NATURAL MICROFLOW IN TDD August 3, 2020 Comments To some it feels a bit wrong, but it feels quite natural to me: I often need to refactor just before writing the next failing test. Indeed, that seems like a good practice on its face!Read on →
BREAKING THROUGH YOUR REFACTORING RUT May 13, 2020 Simple Design, Microtechniques, Refactoring Comments You understand the benefits of refactoring, but you still feel a strong impulse to rewrite larger pieces of your system. You believe that refactoring would be safer and more effective, but it feels too slow for you to choose to do it under the pressure of an industrial-strength situation. What does that mean? What can you do?Read on →
YOU DON'T HATE MOCKS; YOU HATE SIDE-EFFECTS May 2, 2020 Test Doubles, Simple Design, Integrated Tests Are a ScamComments
If you read enough articles on TDD and testing, you’ll find authors who view mocks with significant suspicion. I think that they criticize the symptom and not the cause. If you count yourself among these people, then you don’t hate mocks, you hate side-effects. I don’t _hate_ side-effects, but I feel glad that I’ve learned how to refactor away from them.Read on →
CHOOSING TOOLS FOR TEST DOUBLES April 8, 2020 Simple Design, Test Doubles Comments If you’re wondering about whether you should hand-roll your test doubles (mock objects) or use a library, then this article will helpyou.
Read on →
WHERE THE HELL IS MY PORT?! AN ADVENTURE IN ELM January 30, 2020 Simple Design Comments When trying to write code incrementally in Elm, I ran into a problem because Elm tries not to generate Javascript for Elm code not (yet) inuse.
Read on →
Older Posts
Copyright © 2009–2021 — J. B. Rainsberger — Powered by Jekyll Design credit: Shashank MehtaDetails
Copyright © 2024 ArchiveBay.com. All rights reserved. Terms of Use | Privacy Policy | DMCA | 2021 | Feedback | Advertising | RSS 2.0