Re: [testdrivendevelopment] "I think the community needs more explicit direction...."
"Avi Kessner" <[email protected]> Mon, 25 Nov 2019 19:16:39 +0200
| Newsgroups | gmane.comp.programming.test-driven-development |
|---|---|
| Message-ID | <CAGEhWpHNzHVvH8ZJ4BuLLnmJbrJmfq+SfR-_Or0W+_dHTTteMw@mail.gmail.com> |
--000000000000faf4d605982eed7e Content-Type: text/plain; charset="UTF-8" We hire a lot of developers straight out of school or working less than 3 years. From what I have seen, TDD is viewed as a skill used on Greenfield projects, and refactoring is seen as something you do with legacy code. (And still gets confused with 'throw it away and start over') I have to have more than one code review with them until it clicks that you do both together, always. On Mon, Nov 25, 2019, 15:05 Ron Jeffries <[email protected]> wrote: > Hi Roy, > > Good points! > > On Nov 25, 2019, at 4:20 AM, Roy Osherove <[email protected]> wrote: > > Teaching all three at the same time is hard. I've seen people try to just > jump into TDD in places and failing because climbing this wall is too high > in one go. > I've created courses separately for the design part and named them > "refactoring skills for TDD" because even in a 5 days class, teaching the > first two skills is difficult enough. > > > I particularly like this notion. We do encounter students who seem to lack > even elementary notions of code clarity and expressiveness. > > > I'm not including here the skill of refactoring LEGACY code into a > testable state. I do teach that stuff, but there seems to be a distinction, > at least to me between continuous refactoring during new code vs legacy > (not tests) refactoring which is a much more dangerous state and might even > require integration tests to begin. Perhaps we are really talking about 4 > skills and not three. > > > At least some important details, since Michael Feathers wrote a > million-page book on the topic. :) > > Ron Jeffries > ronjeffries.com > Impossible is not a fact. It is an opinion. -- Muhammad Ali > > P.S. For some reason my mails don't come thru. Probably my email addresses. > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#35771): https://groups.io/g/testdrivendevelopment/message/35771 Mute This Topic: https://groups.io/mt/61850834/3268755 Group Owner: [email protected] Unsubscribe: https://groups.io/g/testdrivendevelopment/leave/6156322/744556386/xyzzy [[email protected]] -=-=-=-=-=-=-=-=-=-=-=- --000000000000faf4d605982eed7e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"auto">We hire a lot of developers straight out of school or wor= king less than 3 years.<div dir=3D"auto"><br></div><div dir=3D"auto">From w= hat I have seen, TDD is viewed as a skill used on Greenfield projects, and = refactoring is seen as something you do with legacy code. (And still gets c= onfused with 'throw it away and start over')</div><div dir=3D"auto"= ><br></div><div dir=3D"auto">I have to have more than one code review with = them until it clicks that you do both together, always.</div></div><br><div= class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Mon, Nov 25= , 2019, 15:05 Ron Jeffries <<a href=3D"mailto:[email protected]" = rel=3D"noreferrer noreferrer" target=3D"_blank">[email protected]</a= >> wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0= 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span style=3D"color:#= 000000;font-family:ArialMT;font-size:18px">Hi Roy,</span> <div style=3D"color:#000000;font-family:ArialMT;font-size:18px">=C2=A0</di= v> <div style=3D"color:#000000;font-family:ArialMT;font-size:18px">Good point= s!<br> <div><br> <blockquote> <div>On Nov 25, 2019, at 4:20 AM, Roy Osherove <<a href=3D"mailto:roy@o= sherove.com" rel=3D"noreferrer noreferrer noreferrer" target=3D"_blank">roy= @osherove.com</a>> wrote:</div> <br> <div> <div style=3D"font-size:18px">Teaching all three at the same time is hard.= I've seen people try to just jump into TDD in places and failing becau= se climbing this wall is too high in one go.</div> <div style=3D"font-size:18px">I've created courses separately for the = design part and named them "refactoring skills for TDD" because e= ven in a 5 days class, teaching the first two skills is difficult enough.</= div> </div> </blockquote> <div>=C2=A0</div> I particularly like this notion. We do encounter students who seem to lack= even elementary notions of code clarity and expressiveness.<br> <blockquote> <div> <div style=3D"font-size:18px">=C2=A0</div> <div style=3D"font-size:18px">I'm not including here the skill of refa= ctoring=C2=A0LEGACY code into a testable state. I do teach that stuff, but = there seems to be a distinction, at least to me between continuous refactor= ing during new code vs legacy (not tests) refactoring which is a much more = dangerous state and might even require integration tests to begin. Perhaps = we are really talking about 4 skills and not three.</div> </div> </blockquote> </div> <div>=C2=A0</div> At least some important details, since Michael Feathers wrote a million-pa= ge book on the topic. :)<br> <div> <div style=3D"word-wrap:break-word;line-break:after-white-space"> <div style=3D"font-family:Helvetica;font-variant-ligatures:normal;font-var= iant-east-asian:normal;line-height:normal;text-align:-webkit-auto;word-wrap= :break-word;line-break:after-white-space"> <div style=3D"word-wrap:break-word;line-break:after-white-space"> <div><br>Ron Jeffries</div> <span style=3D"border-collapse:separate;font-variant-ligatures:normal;font= -variant-east-asian:normal;line-height:normal;text-align:-webkit-auto;borde= r-spacing:0px"><a href=3D"http://ronjeffries.com/" rel=3D"noreferrer norefe= rrer noreferrer" target=3D"_blank">ronjeffries.com</a></span></div> <div style=3D"word-wrap:break-word;line-break:after-white-space"> <div>Impossible is not a fact. It is an opinion. =C2=A0-- Muhammad Ali<br>= <br>P.S. For some reason my mails don't come thru. Probably my email ad= dresses.</div> </div> </div> </div> </div> </div> </p></p></blockquote></div> <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/testdrivendevelopment/mes= sage/35771">View/Reply Online (#35771)</a> | <a target=3D"_blank" href=3D"mailto:[email protected]?subj= ect=3DRe:%20Re%3A%20%5Btestdrivendevelopment%5D%20%22I%20think%20the%20comm= unity%20needs%20more%20explicit%20direction....%22">Reply To Group</a> | <a target=3D"_blank" href=3D"mailto:[email protected]?subject=3DPri= vate:%20Re:%20Re%3A%20%5Btestdrivendevelopment%5D%20%22I%20think%20the%20co= mmunity%20needs%20more%20explicit%20direction....%22">Reply To Sender</a> | <a target=3D"_blank" href=3D"https://groups.io/mt/61850834/3268755">Mu= te This Topic</a> | <a href=3D"https://groups.io/g/testdrivendevelopment/post">New Topic</a>= <br> <br> <a href=3D"https://groups.io/g/testdrivendevelopment/editsub/3268755">Your= Subscription</a> | <a href=3D"mailto:[email protected]">Contact Group Own= er</a> | <a href=3D"https://groups.io/g/testdrivendevelopment/leave/6156322/7445563= 86/xyzzy">Unsubscribe</a> [[email protected]]<br> <div width=3D"1" style=3D"color:white;clear:both">_._,_._,_</div> --000000000000faf4d605982eed7e--