1,936 reputation
613
bio website apokalypsesoftware.com
location Crawfordville, FL
age 50
visits member for 4 years, 2 months
seen Aug 11 at 18:49

Seer. Founder/Pres, Apokalypse Software Corp., Publisher of Productivity Software.


May
21
comment I am making 4-5x more story points than average, but producing bugs at half the rate. Graphs say it's 2x more bugs, how to deal with that?
@GlenH7- Again, programmers have trouble with clear reasoning. A line of buggy code is several times more expensive than one which is bug-free. Managers grok this. Look at GM's defective ignition fiasco, and grok this. You cannot reasonably spew lines of code thinking testers and maintainers will clean it up afterwards. Just quit spewing out junk from the get-go.
May
18
comment I am making 4-5x more story points than average, but producing bugs at half the rate. Graphs say it's 2x more bugs, how to deal with that?
This answer, and the community's support of it, is a great example of the muddled thinking rampant in our industry, that software is terribly written because programmers have such difficulty with logic and clear reasoning. "If anything, higher productivity means you'll have more time at the end of the project to hunt those bugs down or the developer will be faster in finding the bugs they created." That's insane. "Let's first add all the features, and we'll debug afterwards. Then we'll show how fast we code, and how fast we debug, etc. It's much easier fixing bugs when they're all present!"
Apr
7
comment How does fair use apply to code snippets?
Programmers are bad enough at their job that it is apparent to anyone else that you guys aren't qualified to expound on the law. Copying snippets of code from a program to put into another program is using it for the same purpose for which it was originally written, and doesn't fall under fair use. The snippets would need to be rewritten to be substantially different from the source to be legally protected from copyright liability. The fact that there is no specific numeric guideline means it is subjective, and a court may judge against its use. The only sure legal way is to redo the code.
Jun
20
comment Are null references really a bad thing?
Both null references (with its catch-all characteristic) and exceptions (with its lose-all characteristic) are terrible craftsmanship. Your code will lack the level of detail necessary to help expose and isolate bugs, and provide the user alternatives when things fail.
Jun
6
comment Are null references really a bad thing?
@greenoldman, you continue to prove the point that primitive types are inadequate for modeling. First it was over negative numbers. Now it's over the division operator when zero is the divisor. If you know you can't divide by zero then you can predict the outcome isn't going to be pretty, and are responsible for ensuring you test for, and provide the appropriate "valid" value for that case. Software developers are responsible for knowing the parameters in which their code operates, and coding appropriately. It's what distinguishes engineering from tinkering.
Jun
6
comment Are null references really a bad thing?
@dash-tom-bang, creating your own type isn't helpful for semantically modeling data to match the domain? You're actually claiming that? Software developers are the only ones who can ensure the system performs according to needed tolerances. Adding a test to your class for the occasions in which the right side is greater than the left side, and determining the proper course of action on those occasions is precisely what you're supposed to do, and the domain-specific class is where you do it.
May
26
comment Are there any unions for software developers?
Of course the AMA and ABA are unions. Examine the functions of any union near you and you'll see how similar the AMA and ABA are in function to them. The fact those organizations also lobby doesn't diminish the rest of their functions; after all, unions also lobby the lawmakers. And though unions might bargain for members at a particular company, the AMA & ABA bargain for their members before lawmakers. Even employers lobby lawmakers. The only ones who don't lobby are software professionals because they don't want to have a union. How naive!
May
26
comment Are null references really a bad thing?
@greenoldman, your example is doubly effective to demonstrate our point in that the use of primitive types (whether null or integers) as semantic models is poor practice. If you have a type for which negative numbers isn't a valid answer, you should create a new class of types to implement the semantic model with that meaning. Now all the code to handle the modeling of that non-negative type is localized to its class, isolated from the rest of the system, and any attempt to create a negative value for it can be caught immediately.
May
26
comment Are null references really a bad thing?
@dash-tom-bang, of course removing null refs changes the class of errors: the semantics in the system have changed. When devs no longer resort to null as a valid value in code they must pick another means of expressing their intent, but whatever it is, it won't be the same value throughout the system. Try it in your own code and you'll see.
May
26
comment Are null references really a bad thing?
@greenoldman, you are incorrect. NullObject is the standard answer in an object-oriented system. It is null reference which is not a remedy. Use of null reference will cost more in maintenance and debugging effort. By eliminating the use of, and testing for, null references in our code we simplify the logic and code flow. We also restrict the special cases to the null object. So we'll always know the current situation because an instance of the correct class is handling it.
May
18
comment Are there any unions for software developers?
You are entirely incorrect in your assertion that there are no professional associations for doctors, lawyers and engineers. In the USA there is the American Medical Association, the American Bar Association and the IEEE. Architects, accountants, and even beauticians also have their "unions". In addition to the professional code of ethics David Thornley pointed out, they define standards of practice (methodologies), conduct studies and research for the field, and even lobby lawmakers for their professions. They also are prohibited from setting wages.
Jul
1
comment How to REALLY start thinking in terms of objects?
@dsimcha, algorithms shouldn't be dependent on the data type. That's the point behind OOD. The numerics framework sends messages that describe the desired (in this case understood) behavior of mathematical functions. The type will determine how to interpret that message in a way appropriate for the data. Contrary to @Kamil's comment, OO actually decouples behavior (interfaces actually) and data whereas procedural code is dependent on them. OOD reduces dependency on what the data is, focusing instead on what your procedures need to do.
Jul
1
comment At what point do immutable classes become a burden?
luis, have you noticed how the well-written, pragmatically correct answers written with an explanation of simple yet sound engineering principles tend not to get as many votes as those using state-of-the-art coding fads? This is a great, great answer.
Jun
8
comment How do you get better working conditions?
I'm a business owner and software process management practitioner. That's hardly considered qualification to be a union flunkie. Boeing's management problems and scandals are well known in the industry and used as business cases for management schools. Your veneration of Boeing might not permit you to weigh their management practices objectively, let alone pay attention to the scandals. Regardless of the depth of your experience in software development, this question and my answer needs expertise in management & labor relations which you obviously lack.
Jun
8
comment How do you get better working conditions?
You're unfamiliar with labor practices generally, in sports and other professional associations in particular, and managing companies. You don't know what you're talking about. Baseball players don't work as their own companies. They are unionized. As are basketball and football players. Your examples are not universally applicable no matter how much you claim them to be. Boeing suffers major financial losses due to poor management. Get the facts, because you're seriously out of touch.
Jun
5
comment How do you get better working conditions?
You give one negative industry example to counter my three positives and that's supposed to be the definitive answer? That's ridiculous. Here are three more examples of professionals with established associations which improve their industries' workplaces: accountants, athletes, Disney character performers.
Jun
3
comment How do you get better working conditions?
Professional occupations that employ collective bargaining strategically actually improve the quality of the work and the workplace. The American Institute of Architects, the American Medical Association, the American Society of Mechanical Engineers, to name a few. However, given the anti-social nature of programmers who are overwhelmed when dealing with strangers and avoid large organizations because of the politics involved and the realization they're not as intelligent when up against professionals, it's no wonder the most-effective route to better working conditions is the least popular.
Apr
13
comment What's your strongest opinion against functional programming?
There's no requirement that a language's runtime system lack transparent memory management (with garbage collection) in order to fit the "procedural" label, so it's ironic you phrased your second sentence that way. BASIC is one such language.
Mar
18
comment Code Smell: Inheritance Abuse
@flamingpenguin, I have done so.
Mar
5
comment Dealing with inflexible programmers
Please use the book's title in the link instead of "this book". It's one less step for those who readers to decide whether to click or not. Especially those who've previously read it.