It may be tempting to dismiss last week's problem as trivial, and argue that one should simply be able to construct a bunch of test cases and be done with it. However, it may not be easy to determine the correct results.
If your fitness-tracking device has a GPS, you might not appreciate people being able to find your whereabouts.
The guys over at Parallax (the people who became famous for making the Basic Stamp) rolled out an innovative CPU a few years back called the Propeller.
Last week, I stated that software is hard to develop. This week, I would like to concentrate on two of the reasons why.
Unlike fixing a TV that used to work, if you have a fresh PC board with a new design, anything could be wrong.
BigDecimal a bit harder to use than either Java's
double primitive type or
Software is hard to develop for many reasons: We must figure out what to do, do it, and ensure that we have done it correctly.
If you compare my code with Dijkstra's original solution, you will see that in an odd way they are nearly logical duals of each other.
It seemed a waste to put an I/O board in the system just for one switch closure reading.
Because it is so often abstracted, people don't always make smart choices about selecting and specifying CRCs.