Re: [extremeprogramming] What has changed for you over the past 20 years?
"James Grenning" <[email protected]> Thu, 05 Dec 2019 09:23:55 -0500
| Newsgroups | gmane.comp.programming.extreme-programming |
|---|---|
| Message-ID | <[email protected]> |
--=_MailMate_663AD482-9492-4656-A48E-517ACB2EF038_= Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit This happens next to hardware: 1) test drive to the spec off the target hardware. (getting it almost right) 2) integrate with the hardware and find the places you got it wrong. 3) run the off-target tests to see in your tests what you got wrong 4) make the tests match the world -------------------------------------------------------------------------- James Grenning - Author of TDD for Embedded C - wingman-sw.com/tddec wingman-sw.com wingman-sw.com/blog twitter.com/jwgrenning facebook.com/wingman.sw On 5 Dec 2019, at 8:45, Steve Gordon wrote: > There are 3 distinct cases in my mind: > > 1. Trivial bug - it is obvious what we did wrong and we just correct > it. > That case might involved fixing a few unit tests, but does not involve > TDD. > > 2. What we did was wrong. - Rip out the wrong code and tests and start > over > with the right functional test. This involves redoing the development > using TDD, but TDD is no more or less useful that it is for normal > development. > > 3. What we did was right, but we were missing a requirement - > formulate a > new user story and implement it. This again involves TDD, but still > in the > ordinary way. > > Saying "TDD works great here" implies a non-existent difference with > how > TDD works in normal development. > > > On Thu, Dec 5, 2019 at 6:19 AM Ron Jeffries <[email protected]> > wrote: > >> FWIW I [almost] never debug. In most languages I don't even know how >> to >> run the debugger. Once in a while, rarely, I'll stuff in a print. >> Generally, I just write a test that fails. >> >> On Dec 5, 2019, at 8:11 AM, Phil Goodwin <[email protected]> >> wrote: >> >> Right. There's a step zero involving good old fashioned debugging to >> find >> the root cause, but then it makes sense to test drive the solution >> for all >> the trains it makes sense to TDD in the first place. >> >> >> >> Ron Jeffries >> ronjeffries.com >> Whenever I feel discouraged, I remember the words of my then-3 yr old >> after she puked carrots on the floor: āIām gonna need more >> carrots.ā >> ā @JessicaValenti >> >> >> >> > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#160431): https://groups.io/g/extremeprogramming/message/160431 Mute This Topic: https://groups.io/mt/39418691/2417047 Group Owner: [email protected] Unsubscribe: https://groups.io/g/extremeprogramming/leave/4902963/619838065/xyzzy [[email protected]] -=-=-=-=-=-=-=-=-=-=-=- --=_MailMate_663AD482-9492-4656-A48E-517ACB2EF038_= Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <!DOCTYPE html> <html> <head> <meta http-equiv=3D"Content-Type" content=3D"text/xhtml; charset=3Dutf-8"> </head> <body> <div style=3D"font-family:sans-serif"><div style=3D"white-space:normal"> <p dir=3D"auto">This happens next to hardware:</p> <p dir=3D"auto">1) test drive to the spec off the target hardware. (gettin= g it almost right)<br> 2) integrate with the hardware and find the places you got it wrong.<br> 3) run the off-target tests to see in your tests what you got wrong<br> 4) make the tests match the world</p> <hr style=3D"background:#333; background-image:linear-gradient(to right, #= ccc, #333, #ccc); border:0; height:1px" height=3D"1"> <p dir=3D"auto">James Grenning - Author of TDD for Embedded C - wingman-sw= .com/tddec<br> wingman-sw.com<br> wingman-sw.com/blog<br> twitter.com/jwgrenning<br> facebook.com/wingman.sw</p> <p dir=3D"auto">On 5 Dec 2019, at 8:45, Steve Gordon wrote:</p> </div> <div style=3D"white-space:normal"></div> <blockquote style=3D"border-left:2px solid #777; color:#777; margin:0 0 5p= x; padding-left:5px"><div id=3D"6F194398-672F-4C4E-BF0E-F12441131B0D"><div = dir=3D"ltr"><div>There are 3 distinct cases in my mind:</div><div><br></div= ><div>1. Trivial bug - it is obvious what we did wrong and we just correct = it.=C2=A0 That case might involved fixing a few unit tests, but does not in= volve TDD.</div><div><br></div><div>2. What we did was wrong. - Rip out the= wrong code and tests and start over with the right functional test.=C2=A0 = This involves redoing the development using TDD, but TDD is no more or less= useful that it is for normal development.</div><div><br></div><div>3. What= we did was right, but we were missing a requirement - formulate a new user= story and implement it.=C2=A0 This again involves TDD, but still in the or= dinary way.</div><div><br></div><div>Saying "TDD works great here"= ; implies a non-existent difference with how TDD works in normal developmen= t.</div><div>=C2=A0<br></div></div><br><div class=3D"gmail_quote"><div dir= =3D"ltr" class=3D"gmail_attr">On Thu, Dec 5, 2019 at 6:19 AM Ron Jeffries = <<a href=3D"mailto:[email protected]">[email protected]</a= >> wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px= 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><di= v style=3D"overflow-wrap: break-word;">FWIW I [almost] never debug. In most= languages I don't even know how to run the debugger. Once in a while, = rarely, I'll stuff in a print. Generally, I just write a test that fail= s.<br><div><br><blockquote type=3D"cite"><div>On Dec 5, 2019, at 8:11 AM, P= hil Goodwin <<a href=3D"mailto:[email protected]" target=3D"_blank"= >[email protected]</a>> wrote:</div><br><div><span style=3D"font-fa= mily:ArialMT;font-size:18px;font-style:normal;font-variant-caps:normal;font= -weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-= transform:none;white-space:normal;word-spacing:0px;text-decoration:none;flo= at:none;display:inline">Right. There's a step zero involving good old f= ashioned debugging to find the root cause, but then it makes sense to test = drive the solution for all the trains it makes sense to TDD in the first pl= ace.</span></div></blockquote></div><br><div> <div style=3D"color:rgb(0,0,0);letter-spacing:normal;text-align:start;text= -indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><div s= tyle=3D"color:rgb(0,0,0);font-family:Arial;font-size:16px;font-style:normal= ;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-ali= gn:start;text-indent:0px;text-transform:none;white-space:normal;word-spacin= g:0px"></div><br>Ron Jeffries<br><a href=3D"http://ronjeffries.com" target= =3D"_blank">ronjeffries.com</a><br>Whenever I feel discouraged, I=C2=A0rem= ember the words of my=C2=A0then-3 yr old after she puked=C2=A0carrots on th= e floor: =E2=80=9CI=E2=80=99m gonna=C2=A0need more carrots.=E2=80=9D<br>=E2= = =80=94 @JessicaValenti</div> </div> <br></div> <p></p><p></p></blockquote></div> </div></blockquote> <div style=3D"white-space:normal"> <blockquote style=3D"border-left:2px solid #777; color:#777; margin:0 0 5p= x; padding-left:5px"> </blockquote></div> <div style=3D"white-space:normal"> </div> </div> </body> </html> <div width=3D"1" style=3D"color:white;clear:both">_._,_._,_</div> <hr> Groups.io Links:<p> You receive all messages sent to this group. <p> <a target=3D"_blank" href=3D"https://groups.io/g/extremeprogramming/messag= e/160431">View/Reply Online (#160431)</a> | <a target=3D"_blank" href=3D"mailto:[email protected]?subject= = =3DRe:%20Re%3A%20%5Bextremeprogramming%5D%20What%20has%20changed%20for%20y= ou%20over%20the%20past%2020%20years%3F">Reply To Group</a> | <a target=3D"_blank" href=3D"mailto:[email protected]?subject=3DP= rivate:%20Re:%20Re%3A%20%5Bextremeprogramming%5D%20What%20has%20changed%20f= or%20you%20over%20the%20past%2020%20years%3F">Reply To Sender</a> | <a target=3D"_blank" href=3D"https://groups.io/mt/39418691/2417047">Mu= te This Topic</a> | <a href=3D"https://groups.io/g/extremeprogramming/post">New Topic</a><br= > <br> <a href=3D"https://groups.io/g/extremeprogramming/editsub/2417047">Your Su= bscription</a> | <a href=3D"mailto:[email protected]">Contact Group Owner<= /a> | <a href=3D"https://groups.io/g/extremeprogramming/leave/4902963/619838065/= xyzzy">Unsubscribe</a> [[email protected]]<br> <div width=3D"1" style=3D"color:white;clear:both">_._,_._,_</div> --=_MailMate_663AD482-9492-4656-A48E-517ACB2EF038_=--