blog.wingman-sw.comJames Grenning's Blog | Blogging about Agile Development, especially embedded. Follow me on twitter

blog.wingman-sw.com Profile

Blog.wingman-sw.com is a subdomain of wingman-sw.com, which was created on 2013-01-03,making it 11 years ago.

Discover blog.wingman-sw.com website stats, rating, details and status online.Use our online tools to find owner and admin contact info. Find out where is server located.Read and write reviews or vote to improve it ranking. Check alliedvsaxis duplicates with related css, domain relations, most used words, social networks references. Go to regular site

blog.wingman-sw.com Information

HomePage size: 109.785 KB
Page Load Time: 0.518048 Seconds
Website IP Address: 34.174.26.195

blog.wingman-sw.com Similar Website

Especially Yours | Our Blog
blog.especiallyyours.com
Blogging On The Knob - Advice on how to get started with blogging (and avoiding some common webstore
blogging.ontheknob.com
Achieving Business Agility and Agile Planning | Scaled Agile
staging.scaledagile.com
Embedded Software Development Services - Developex - Embedded Software Development Company
embedded.developex.com
Alex Devero Blog - Learn about development, and programming, especially in JavaScript, TypeScript an
blog.alexdevero.com
Agile India 2018 – Asia's largest Agile and Lean Conference
2018.agileindia.org
Twitter Fiction on Thaumatrope: The Twitter Fiction E-zine of Science Fiction, Fantasy, & Horror
thaumatrope.greententacles.com
Top 11 Sports News Sites & Twitter Accounts to Follow in 2023
fantasy-basketball.alltop.com
Twitter for Business | Twitter tips, tools, and best practices
business.twitter.com
Twitter Feed : feed your blog to twitter
help.twitterfeed.com
BioTuring's Blog - Data analysis made easy. For biologists, especially.
blog.bioturing.com
Automated Digital Follow Up by LinkU - The Ultimate Follow
photos.linkurealty.com
Jeff Reifman's Twitter Archive - Tweets from @reifman Jeff Reifman's Twitter Archive
twitter.jeffreifman.com
Agile Modeling Home - The Agile Modeling (AM)
mail.agilemodeling.com

blog.wingman-sw.com PopUrls

James Grenning's Blog | Blogging about Agile Development, …
https://blog.wingman-sw.com/
Physics of Test Driven Development | James Grenning's Blog
http://blog.wingman-sw.com/physics-of-test-driven-development
Thoughts on TDD (After almost 20 years) | James Grenning's Blog
http://blog.wingman-sw.com/thoughts-on-tdd
Self-Paced Training: TDD for Embedded C/C++ | James …
http://blog.wingman-sw.com/self-paced-training-tdd-for-embedded-c-cpp
Planning Poker Party (The Companion Games) | James …
http://blog.wingman-sw.com/archives/36
Deep Agile Panel Questions – Change | James Grenning's Blog
https://blog.wingman-sw.com/archives/43
James Grenning's Blog
https://blog.wingman-sw.com/page/2
Code Coverage’s Mixed Message | James Grenning's Blog
https://blog.wingman-sw.com/archives/273
James Grenning's Blog
https://blog.wingman-sw.com/page/3
Engineers and Programmers, Stop Writing So Much Firmware
https://blog.wingman-sw.com/archives/458
automation | James Grenning's Blog
https://blog.wingman-sw.com/archives/category/automation
Is Software like Building? | James Grenning's Blog
https://blog.wingman-sw.com/archives/487
Story Weight Reduction Toolkit | James Grenning's Blog
http://blog.wingman-sw.com/archives/48
TDD and the Real-World | James Grenning's Blog
https://blog.wingman-sw.com/archives/330
January | 2020 | James Grenning's Blog
https://blog.wingman-sw.com/archives/date/2020/01

blog.wingman-sw.com Httpheader

Server: nginx
Date: Sun, 12 May 2024 01:43:51 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Vary: Accept-Encoding
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Link: http://blog.wingman-sw.com/wp-json/; rel="https://api.w.org/", https://wp.me/7KFOs; rel=shortlink
Set-Cookie: PHPSESSID=bc7ebf6b1bff6eeda284623d8bdea0c1; path=/, wassup745d65abd6e2aab6b2e7c6d8f540c5ce=MGJfNzBlNDUwNDU5NTc5NzA2NGNmOTBjOWM0NDdiMzNhNmYjIzE3MTU0ODA5MzEjIyMjNzQuNDguMTYwLjE2MyMjOTkuMjE5LjE3OC4xNzAtZGVkaWNhdGVkLm11bHRhY29tLmNvbSMj; path=/
X-Httpd: 1
Host-Header: 6b7412fb82ca5edfd0917e3957f05d89
X-Proxy-Cache: MISS
X-Proxy-Cache-Info: 0 NC:000000 UP:SKIP_CACHE_SET_COOKIE

blog.wingman-sw.com Meta Info

charset="utf-8"/
content="width=device-width" name="viewport"/
content="max-image-preview:large" name="robots"/
content="WordPress 6.5.3" name="generator"/
content="website" property="og:type"/
content="James Grenning's Blog" property="og:title"/
content="Blogging about Agile Development, especially embedded. Follow me on twitter: jwgrenning" name="og:description"/
content="http://blog.wingman-sw.com/" property="og:url"/
content="James Grenning's Blog" property="og:site_name"/
content="https://s0.wp.com/i/blank.jpg" property="og:image"/
content="en_US" property="og:locale"/

blog.wingman-sw.com Ip Information

Ip Country: United States
City Name: Dallas
Latitude: 32.7797
Longitude: -96.8022

blog.wingman-sw.com Html To Plain Text

: jwgrenning James Grenning’s Blog Blogging about Agile Development, especially embedded. Follow me on twitter: jwgrenning SearchHome Post navigation ← Older posts Fake News: Test-Driven Development has no Design! Posted on January 16, 2024 by jwgrenning Reply Even if this was true, Test-Driven Development would be useful for realizing an up-front design. Humans make so many mistakes coding, the feedback loop of TDD helps you find those mistakes in the most efficient way I’ve ever seen (but I’ve only seen what I have seen). Certainly Test-First Programming (TFP) more effective than predominant programming practice, Debug Later Programming. TDD is much more than TFP. Let me debunk this fake news. My First 2 decades of development For about the first twenty years of my programing career, I pursued big design up-front (BDUF). Teams I led got pretty good with with BDUF. We would collect requirements for months on end. Get customers approval, then hide and do our design work, implement the system and go to the lab. We had specs, diagrams, text, pseudo code, and reviewed it all. It was an improvement over the chaos approach before BDUF. Our cycle time was an impressive 6 to 12 months (ahem). Sometimes we even made the deadline. I worked mostly in embedded systems. When we finally got hardware, with anticipation we fired up the system somehow expecting it to work. Guess what? The system crashed. Now, late in the development cycle we had to deal with the mistakes, wrong requirements, untried hardware, unconfirmed design ideas and assumptions made to get to this point. With reality setting in, we were forced to the iterative and incremental process we all know too well, debugging. A Chage of Course in 1999 Thankfully my path changed in 1999. I attended the first Extreme Programming Immersion in the suburbs of Chicago at Object Mentor, my employer at the time. Kent and the crew described problems with development that I was all too familiar with: Late delivery, no warning of coming problems, defects delivered to customers, deteriorating design, and on top of that the burned out developers suffering through a death-march. Kents 12 practices of XP seemed to address many of the problems. The techniques did not require a long explanations and a long time to payback. The logic-chain from problem to solution was made of only a few links. The discrete practices supported each other. We could try the ideas pretty easily and find out for ourselves. I’d say at the time, XP was light on design advice. That was OK, because many of us early learners had already invested a lot in learning design. Robert Martin’s Object Mentor taught design and coined the term SOLID. We knew our way around upfront design. XP does not prescribe how much design upfront is needed because each system has different needs. A small team needs less formal design than someone on a large multi-team effort. It is easy and ego building to over-engineer and design up-front. It is harder to do just enough design, just in time. We have to take a more humble attitude, we can’t get it all right up-front. Iterate to good design was a major insight by Kent, Ward, Ron, Martin and others that I am grateful to have heard about in 1999. TDD Ecosystem What experienced Test-Driven Developers simply call TDD today is more of an ecosystem than simply the application of one XP practice with a new name (the old name was TFP). Kent Beck originally used the term metaphor to describe design. It was confusing to me, but included having a system of names and conventions to navigate the design. Recalling what Ron Jeffries told me back in 1999… design is so important, we do it everyday. When we discover something new about the need, the environment, or the existing system, consider the design impact. Design is not an isolated activity we can do once. Do design every day. Little things matter, and they scale. Ron said Modularity works!”. TDD encourages modularity. TDD provides subtle pressure on a design to improve cohesion and coupling. These responsibility assignment choices happen at many levels everyday. For me, design is creating a vision of the overall structure of the system. Design is never done, at least not until you stop supporting the system. Imagine a map of the United States, it’s made up of individual states connected through an interstate highway system. The states are also grouped into regions with different cultures, like Midwest, New England, the Southeast…. The country is sliced north to south into timezones. To navigate this system, diagrams, patterns and naming conventions really help. I want that help. The TDD ecosystem includes applying design principles and having a vision of how the pieces are connected, how they are grouped and how they interact with each other. How formal does the design need to be? That depends on your situation. Considering the needs continue to evolve, it is silly to think design happens only in the beginning. Nothing new here. We discovered this while we tried to do BDUF/waterfall in the late 80s. Did we give up on BDUF and waterfall? No. We started a number of little waterfalls. This helped, but we never would have had the insight to get to something like TDD and XP’s iterative and incremental engineering techniques. Design is hard, learn from those before us To be good at software development you need a lot of design insight and tools at your disposal. TDD is one of those tools. TDD helps you see your poor design decisions. Added complexity in tests, hard to use interfaces, complex initializations are some of the early warnings. What are some of the other design principles and concepts the test-driven developer needs to understand and apply: Principle of Least Knowledge. Separation of Concerns (SoC) SOLID DRY DAMP GRASP ZOMBIES FIRST DDD BDD Design Patterns Hexagonal architecture (ports and adaptors) Recognizing code smells Envisioning a better design Refactorings and incremental improvement Law of Demeter (LoD) Conclusion There is plenty of design in the TDD ecosystem. Design is so important, do it all the time. BTW: you don’t have to learn TDD. Find another fast-feedback way to work. I would love to hear about it. Here are a couple of other articles, from 2012 ,on the topic of TDD has no design. TDD ignores the design” No it doesn’t” Yes it does” – Part 1 TDD ignores the design” No it doesn’t” Yes it does” – Part 2 Posted in Uncategorized | Leave a reply Self-Paced Training: TDD for Embedded C/C++ Posted on January 2, 2020 by jwgrenning 2 Hello Friends I am developing a series of self-paced training modules for Test-Driven Development for Embedded C and C++. The training modules will have exercises to cement the learning. I’ll offer them individually or in a couple bundles. Each module will take six or more hours to complete. The modules follow the flow of my on-site and live-via-the-web formats found on wingman-sw . Continue reading → Posted in Agile Embedded , Embedded TDD , Legacy C , Refactoring C , SOLID , TDD , TDD C , Test Driven Development | 2 Replies Wrestle Legacy C and C++ into a Test Harness – Linker Errors Posted on September 11, 2019 by jwgrenning Reply Getting started with TDD in C and C++ is challenging. On top of that, you have your whole product’s code base to start adding tests to. You don’t have time to stop all development and add tests to your code, so you need a pragmatic approach. As you drag your legacy code, kicking and screaming into a test harness, take your time and solve one problem at a time. It is the fast way. This article is about getting past a boat-load of C and C++ linker errors. I’ve got a method and a tool to help get through that challenging step. You can find the tool, gen-xfakes , here on my GitHub account. Continue reading → Posted in Embedded TDD , Legacy C , TDD , TDD C , Test Driven Development , Unit Testing | Leave a reply Responsibilities of the...

blog.wingman-sw.com Whois

Domain Name: WINGMAN-SW.COM Registry Domain ID: 1770740772_DOMAIN_COM-VRSN Registrar WHOIS Server: whois.fastdomain.com Registrar URL: http://www.fastdomain.com Updated Date: 2023-12-19T16:20:05Z Creation Date: 2013-01-03T15:19:08Z Registry Expiry Date: 2025-01-03T15:19:08Z Registrar: FastDomain Inc. Registrar IANA ID: 1154 Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited Name Server: NS-1190.AWSDNS-20.ORG Name Server: NS-1934.AWSDNS-49.CO.UK Name Server: NS-351.AWSDNS-43.COM Name Server: NS-591.AWSDNS-09.NET DNSSEC: unsigned >>> Last update of whois database: 2024-05-17T14:37:18Z <<<