![]() ![]() Software requirements vary significantly in terms of difficulty involved in implementing them, but they still are often treated as beans of the same type. ![]() Not everyone agrees that this presumption is a problem. In Chapter 2, Brooks states, the now famous quote, "The man-month as a unit for measuring the size of a job is a dangerous and deceptive myth." He adds, "The man-month is a fallacious and dangerous myth, for it implies that men and months are interchangeable" (Chapter 18, 2.6). Brooks, Jr.'s software development management classic The Mythical Man-Month. The consequences of the terrible assumption that all developers are the same quality "bean" is one of the core covered topics in Frederick P. This is absurd except for on the most trivial of projects. The idea is that any developer can be plugged into an position interchangeably with any other developer. There is little concern about the differences in experience, skill, and skill set between developers. To the bean counter, developers are resources that are easily switched as needed. Not all lines of code are created equal and any presumption of such is folly.Īnother area in which the bean counters like to count "beans" even when it makes little sense to do so is in terms of staffing. The paradox is that fewer lines of code may require more time to write (though often less time to maintain). In other words, it may take me longer to write fewer, more concise lines than it does to write longer verbose code. I have often found that fewer lines of code can be a little more challenging to write than a greater number of lines of code that do the same thing. Tactics such as trying to only compares lines of code for the same language or same team of developers might help, but the truth of it is that lines of code will always remain only useful in a very large macro perspective. One programming language may be more difficult to write in then another, one developer make write faster than another, one piece of code is more difficult to write than another, and so on. The "bean" assumption is that all lines of code are equally difficult to write and maintain. There can be some value to measuring lines of code in a large aggregated sense, but any value in this metric is lost as the numbers of lines of code is reduced. The reason this is such a terrible metric is that it presumes that every line of source code is a bean that can be counted. ![]() I have blogged previously on the unintended consequences associated with counting lines of code. Perhaps the most misleading and falsely assuring software development metric of all time is the infamous line of code. In this post, I look at some of the ways that software development managers attempt to count "beans" that are not really there or are not really indicative of what they're actually trying to measure. Attempting to count beans to measure productivity or estimate future work often leads to disappointment and unsatisfied expectations. In software development, bean counting is often particularly ineffective. One of the negative connotations often associated with the term "bean counter" is that these folks are incapable of looking past quantitative measures to look into alternative measures that are more qualitative and/or intangible. The count depends on the component pitch, which the user can configure.The term bean counter is often used with a negative connotation. The IR sensors count the holes in the tape reel, and then a Microchip ATtiny861V 8-bit microcontroller does a little math to determine the parts count. Counting happens with two IR photointerrupters. While an external 3V supply can power it, most users will appreciate that it also runs from a single CR2032 coin-cell battery. The pocket-sized device measures 25 by 117 millimeters and weighs only 50 grams. "Whether you’re making a few widgets for fun, throwing together badges for a con, or stocking your online shop, you have better ways to spend your time than counting grains of rice." - Great Big Factory To address this challenge, Great Big Factory is launching a Crowd Supply campaign for an open sourced surface-mount component reel counter called BeanCounter. Engineers affectionately refer to these parts as "jelly beans." From hobbyists doing one-off builds up to houses doing full production runs, one challenge for everyone is keeping track of reels of those jelly bean parts. Commodity parts like ceramic capacitors, resistors, LEDs, and discrete transistors cover circuit boards and seemingly overtake the expensive ICs they support. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |