mythhabit
Joined 3 years ago
Joined 3 years ago
The alternative, would have been to use something else than kilo, mega ect., that represented the base 2 magnitudes. It would be awkward to say you have 8.306.688 bytes of ram if you need to be exact.
1. Develop a system where you can turn codepaths on and off with a toggle.
2. Become better at architecture. Learning to split a task into smaller chunks that are easier to reason about, both overall and individually.
3. Learn to do multi phase increment.
4. Develop an automatic deploy/rollback system.
All are good practices, and essential if you need HA. It also gets the velocity into your daily work, so if you need to deploy extra logging, a bugfix ect, you can do it in minuts and not hours/days/weeks.Can you do all of that and ship on a weekly basis? Absolutely, I just haven't met anyone that do that.
Children are too, but somewhere along growing up, many unlearn that.
But just doing it with minimal preparation... That's bad parenting. I doubt that experience alone is the reason for being fiercely independent - that usually (and unfortunately) comes from the person being unable to rely on their care takes for their needs as children.
Type B on the other hand far more about understanding. You will never understand the theory of a mathematical space and how to apply it, by simple repetition. That is a far more theoretical and creative endeavour. You need to learn it and apply it to understand it. I suppose you could call the process of applying it some kind of repetition, but in my opinion the insights comes from applying it to concepts you already know.
A formal learning path is a very good idea, because people with more knowledge know what order you can progress in, in such a way that you actually apply your knowledge in a natural way and build on previous learnings. And it is definitely a huge help that teachers can help you guide your learning when you are stuck.
Obviously, when reading the rest of the papers, they are clear on the fact, that it is the specifications that the programmer have developed for, that should be tested. That was at the time, synonyms with individual sub routines, and as such it was both the smallest unit and a logical testable unit at the same time. Since then, we've come a long way with programming smaller units with better composability.
I'm not sure I agree that the original meaning of a unit test was lost. Perhaps, only one part of the definition was carried over to modern development practices. In any case, I always stand by the fact that long term value is in tests of the "API". Everything else is implementation details.
In todays development world, the unittest is primarily a developer tool to help speed up development. One should not be afraid to delete unittests if they are doing refactorings. But the long term value is always in the integration tests.