4 ms·
Following some or all of those rules would be wise to be used by any developer, especially Web developers. That would eliminate a number of bugs. Bugs, that see
by PinguTS 11y ago
Following some or all of those rules would be wise to be used by any developer, especially Web developers. That would eliminate a number of bugs. Bugs, that seems get fixed over and over again.
- TickleSteve 11y agoexactly... higher level s/w has a lot to learn from embedded techniques regarding performance & reliability.
- eterm 11y agoAt a higher level, especially in web development, readability is often more important than performance & reliability. Time to market and how easy it is for a new team member to pick up the code is more important than catching every bug or sub-par performance because patching and deployment is relatively cheap.
- falcolas 11y agoFollowing these rules will improve the code readability as a side effect of being safer - all of the constructs will be simpler, which makes the constructs easier to understand.
- TickleSteve 11y agoreadbility (and more importantly, understandability) is critical in these systems, this is one of the things that higher level languages can learn. Higher level s/w has piled on the abstraction layers and that hides what is really happening on the h/w level. Web s/w has gone in direction of simplicity-by-increasing-abstraction. Embedded s/w gains simplicity by removing it. Of course, some knowledge of the h/w is necessary for this, but thats a prerequisite to performant systems anyway.
- sacado2 11y agoThis. The very fact that lower-level, famously unsafe languages (namely C) can actually deliver guarantees that no higher-language can offer was kind of an epiphany.
- TickleSteve 11y agoexactly... unfortunately (IMHO) the s/w world is moving in the wrong direction... Abstractions need to be appropriate (and shallow in order to be be easily analysable). A degree of 'mechanical-sympathy' is needed.
- mannykannot 11y agoWhen readability is preferred over reliability, the path of least resistance is to omit error checking and security. Even if you achieve readability, that is not the most useful thing when your code is silently wandering off into obscure, unintended states and keeps on going as if nothing is wrong.
- kazinator 11y agoGood luck developing the Web with no dynamic allocation after initialization. A lot of web programming takes place in languages in which constructor expressions implicitly allocate memory. No Python, Ruby, Lisp, Lua, PHP, Perl or anything for you. Not to mention JS on the client side or any other side. Giving loops a fixed upper bound? "Sorry, you have 13729 widgets in your basket, but we can only display 1000 due to a limit on the number of iterations in the loop!"