Profile

Cover photo
Andrew C. Greenberg
Attended Stetson University College of Law
Lives in 93 Fairways Drive, Napa, CA, United States
67 followers|6,871 views
AboutPostsPhotosYouTube

Stream

Andrew C. Greenberg

Shared publicly  - 
 
Opposing it "every step of the way " except for the last, when he signed it.  Interesting that Cruz blames the President for the initial classification, which he had nothing to do with, yet ignores the fact that the president signed the bill reclassifying it.  Hmmmm.
The senator claims on the campaign trail that he was the reason the Fort Hood soldiers shot in a 2009 attack were awarded Purple Hearts. Why that’s stretching the truth just a tad.
1
Add a comment...

Andrew C. Greenberg

commented on a video on YouTube.
Shared publicly  - 
 
DHH's example why TDD failed him in Basecamp was precisely a question of code coverage and lack of integration tests.  Perhaps he might reconsider the virtues of code coverage rather than abandon a useful programming practice.
3
Dan Caron's profile photomandokir's profile photo
2 comments
 
That's incorrect because you can have 100% unit test coverage and no integration tests.
Add a comment...

Andrew C. Greenberg

commented on a video on YouTube.
Shared publicly  - 
 
For another perspective, directed to a similar blog by DHH but about the same arguments, read: https://www.destroyallsoftware.com/blog/2014/tdd-straw-men-and-rhetoric

I think Gary has the better argument.  DHH claims that that "you don't need to diet, you look great just the way you are.  Just eat better, and you will be beautiful."  It's a happy dream that just isn't true.  You can't hit the delete key and suddenly have a buff body -- you need to diet, exercise and adopt healthier habits if you don't want to be fat and unhealthy.

Simply rewriting systems as the solution to flabby, fat and bad code -even if it is french poetry- is a fantasy, economically irresponsible and unprofessional.  When the proposed practice is being justified with straw men, four-letter words, Fox News-style claims that "some people say," and "I've looked a few times and every single time" arguments, it is suspect.

I think Gary made a sound, balanced argument.  It feels good to be told you aren't fat and don't need to diet.  But it isn't good, at least for me.  I am flabby, out-of-shape and the disciplines of Software Engineering made my code cleaner and better.  Maybe you are all buff coders, and good for you.  But is that also true of the rest of your team, the people you will hire to replace them?  Disciplines are good idea.  Just apply them correctly, and don't argue against them by making arguments that NOBODY who gets it really makes.
1
Add a comment...

Andrew C. Greenberg

Shared publicly  - 
 
Superheroic Bowling: The Classic Kata in AngularJS (Javascript Version Video 3/5) -- the Scoring Algorithm.
1
Add a comment...

Andrew C. Greenberg

Shared publicly  - 
 
Superheroic Bowling: The Classic Kata in AngularJS.  Video 1/5.  A five-video series showing a pure TDD development of a complete angularJS application patterned after the famous bowling kata.

http://youtu.be/pcXgJKiwZWgd
1
Add a comment...
Have him in circles
67 people
Anthony J's profile photo
Caitlin Potter's profile photo
Steve Bowen's profile photo
Bob Hearn's profile photo
Yerachmiel Altman's profile photo
Nick Lansbury's profile photo
Kevin Seghetti's profile photo
Shoshanna Greenberg's profile photo
Lee Vodra's profile photo

Andrew C. Greenberg

commented on a video on YouTube.
Shared publicly  - 
 
DHH is equating lines of code with productivity, repeatedly equating the number of lines of tests with "overtesting."  This makes no sense.  I do write more lines of test than production code, but I spend far, far, far less time writing my tests than I spend writing my production code.

The bottom line is that it is far easier to write a line of test code than production code.  To demonstrate the functionality required.  Sometimes a test is longer, sometimes shorter, but it takes almost no time to express it.  Then I write the production code, which takes far, far longer.  Often, because of the guidance of the tests, the code is tighter and more efficient, but the amount of time to write the code is always longer.

The point is that I also spend far, far less time debugging.

So yes, more lines of test than code in practice, far less time writing tests than code.  Which is the more important metric?
4
Dunets Nickolay's profile photo
 
What kind of software do you write? Tests might be faster to write than code they test if: inputs + outputs + dependencies + possible side effects + (everthying else that should be tested in scope of unit) are smaller than actual implementation. 

Which is hardly the case for boring enterprise software. OK, I can imagine you split your system into small classes and methods, tests are superfast to write/run. On granular level stuff is usually simple if not primitive which BTW makes 90% of it hardly worth testing but that's not the point. Point is - is complexity gone? No! It's been expelled from methods and objects but didn't disappear - now it's between the objects. 

The whole key to success is how you assemble your units into graph and how they collaborate, this is when things start to break. Most of unit tests about object collaboration which involves mocking/stubbing are tautological - they just repeat what's already in implementation only in less readable way i.e. have negative business value.
You can't escape considering the whole graph or at least big parts of it. Can you write quick, simple and valid tests for the big object graph? No. You can write integration tests (with some mocking) but they come at much higher cost and number of situations to tests grows exponentially. Anyway some integration tests are better than none.

By the end of day all you can rely upon is reasoning. If your design is very stateful, has too much side effects, tricky inheritance and polymorphysm - anything that makes it difficult to reason about it - then tests won't make your life much easier.

And TDD doesn't help you to come up with better design - even Kent Beck admits it in Part II.
Add a comment...

Andrew C. Greenberg

commented on a video on YouTube.
Shared publicly  - 
 
And yet another perspective by Uncle Bob Martin.  After respectfully acknowledging DHH, and without using a single four-letter word, he proposes a direct response to the straw men:  http://blog.8thlight.com/uncle-bob/2014/05/02/ProfessionalismAndTDD.html
1
Add a comment...

Andrew C. Greenberg

commented on a video on YouTube.
Shared publicly  - 
 
Wrong side of history much?
1
Paul Baclace's profile photo
 
Tis true that node.js bothers a lot of people. To me, it seems like the movie Being There and the illusion is not working on me.
Add a comment...

Andrew C. Greenberg

Shared publicly  - 
 
Superheroic Bowling: the Classic Kata in AngularJS.  (2/5)  A five-part video detailing and TDD development of a frontend application, patterned after the classic Bowling Kata.

Superheroic Bowling: The Classic Kata in AngularJS (2/5)
1
Andrew C. Greenberg's profile photoChrystal England's profile photo
2 comments
 
I like it!
Add a comment...
People
Have him in circles
67 people
Anthony J's profile photo
Caitlin Potter's profile photo
Steve Bowen's profile photo
Bob Hearn's profile photo
Yerachmiel Altman's profile photo
Nick Lansbury's profile photo
Kevin Seghetti's profile photo
Shoshanna Greenberg's profile photo
Lee Vodra's profile photo
Work
Occupation
Lawyer and Recovering Geek
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
93 Fairways Drive, Napa, CA, United States
Previously
3663 solano Avenue, Napa, Ca 94558 - 12 Golden Gate Circle, Napa, CA, United States
Links
Contributor to
Story
Tagline
In search of intelligent life...
Education
  • Stetson University College of Law
    Law, 1990 - 1993
  • Cornell University Graduate School
    Computer Science, 1980 - 1983
  • Cornell University College of Engiineering
    Operations Research and Enginering, 1979 - 1980
Basic Information
Gender
Male