Updates to right ways/wrong ways
This commit is contained in:
parent
cc6ce748b8
commit
5346f340d2
@ -225,33 +225,33 @@ And, as we shall see, sometimes it's beneficial to do something the wrong way.
|
|||||||
|
|
||||||
Very wrongs ways are very wrong because not only do they not work, they take other things down with them.
|
Very wrongs ways are very wrong because not only do they not work, they take other things down with them.
|
||||||
|
|
||||||
\paragraph{It doesn't work and it breaks things in weird places.}
|
\paragraph{It doesn't work and it breaks things in weird places.} You may wonder why this is worse than ``It doesn't work and it breaks almost everything else'' but for me the answer is simple: it can be terribly difficult to find those weird places. When I say ``weird'' I mean that they may be obscure places that nobody looks, they may be distant from the current situation and apparently unconnected,\footnote{But nothing is \textit{truly} disconnected from anything else.}, or they may be things that you don't have to rely on very often, so you may not discover that they are broken until days, weeks, or even months later.
|
||||||
|
|
||||||
\paragraph{It doesn't work and it breaks almost everything else.}
|
\paragraph{It doesn't work and it breaks almost everything else.} This is bad, but it is not bad as the previous example, because it has two advantages. First, because almost everything is breaking, those breaks are pretty obvious. Second, because almost everything is breaking, this provides you an opportunity to look at the overall structure of your project and examine how all the different parts are connected. There may be connections that you weren't aware of. You may realize that some things are connected that shouldn't be or that some things aren't connected that should be. Sometimes it takes a real disaster to point out the strengths and weaknesses of your system.
|
||||||
|
|
||||||
\paragraph{It doesn't work and it still manages to break a few local things.}
|
\paragraph{It doesn't work and it still manages to break a few local things.} No complaints here. You have to undo what you did and maybe fix a few things, but you probably don't have a whole lot more to think about here.
|
||||||
|
|
||||||
\section*{Wrong Ways}
|
\section*{Wrong Ways}
|
||||||
|
|
||||||
Wrong ways may work, but they break other things along the way. As we shall see, this is not always a bad thing.
|
Wrong ways may work, but they break other things along the way. As we shall see, this is not always a bad thing.
|
||||||
|
|
||||||
\paragraph{It works, but it breaks things in weird places.}
|
\paragraph{It works, but it breaks things in weird places.} Again, the main issue here is that those weird places may not be obvious at first. You might use this technique, and it looks like it's working fine, but suddenly there is a person in Germany whose toilet no longer flushes properly. Or it works fine for you now, but in ten months \textit{your} toilet no longer flushes properly. And because these two things are so separated in place (in the former case) or time (in the latter case) it can be difficult to connect the two things, and we might end up spending a lot of time going down rabbit holes when the real solution is right in front of us the entire time. We waste time and effort.
|
||||||
|
|
||||||
\paragraph{It works, but it breaks almost everything else.}
|
\paragraph{It works, but it breaks almost everything else.} This is almost exactly like ``It doesn't work and it breaks almost everything else'' except that your solution \textit{does} work. You just need to look at your overall system and figure out why everything else is going into meltdown mode.
|
||||||
|
|
||||||
\paragraph{It works, but it still manages to break a few local things.} Even though this is listed as a wrong way---you are still breaking things, after all---this is not always a bad outcome to experience. It's possible that those few things that are breaking are breaking because they are weak. If you strengthen those items and then apply this technique, it turns out that this isn't actually wrong after all, it only seemed wrong at the time. In the end, you have a much project that is much less fragile overall.
|
\paragraph{It works, but it still manages to break a few local things.} Even though this is listed as a wrong way---you are still breaking things, after all---this is not always a bad outcome to experience. It's possible that those few things that are breaking are breaking because they are weak. If you strengthen those items and then apply this technique, it turns out that this isn't actually wrong after all, it only seemed wrong at the time. In the end, you have a much project that is much less fragile overall.
|
||||||
|
|
||||||
\section*{Wrong\textit{ish} Ways}
|
\section*{Wrong\textit{ish} Ways}
|
||||||
|
|
||||||
\paragraph{It works in this specific instance, but not in all instances.} It works, so why is this way still wrong? Because it's not \textit{universal} for all situations.
|
\paragraph{It works in this specific instance, but not in all instances.} It works, so why is this way still wrong? Because it's not \textit{universal} for all similar situations. If it works in \textit{this one particular instance} but not similar instances, and you don't know why, then there is something about this particular instance that you are not aware of. This is not a bad thing if you're willing to chase down that unknown thing; it's potentially disastrous if you are not.
|
||||||
|
|
||||||
\paragraph{It works, but it's far more work than it should be.}
|
\paragraph{It works, but it's far more work than it should be.} This is often a case of not having the right tools, or having the right tools but not knowing how to use them. If you need to dig a ditch, a shovel will work, but a backhoe works much better. All that time you spent working with a shovel is time you could have spent doing something else.
|
||||||
|
|
||||||
\section*{Right\textit{ish} Ways}
|
\section*{Right\textit{ish} Ways}
|
||||||
|
|
||||||
\paragraph{It works, but you have no idea why.} I was very tempted to put this in the wrong\textit{ish} section, and in some cases it may certainly belong there. Quite frankly, you should know why a technique works. Not knowing why can be dangerous, because you assume too much about this particular technique. That may cause you to be a bit overconfident with it, and use it in a situation that doesn't really warrant its use.
|
\paragraph{It works, but you have no idea why.} I was very tempted to put this in the wrong\textit{ish} section, and in some cases it may certainly belong there. Quite frankly, you should know why a technique works. Not knowing why can be dangerous, because you assume too much about this particular technique. That may cause you to be a bit overconfident with it, and use it in a situation that doesn't really warrant its use.
|
||||||
|
|
||||||
\paragraph{It works, but it requires you to rework some other parts of the project.}
|
\paragraph{It works, but it requires you to rework some other parts of the project.} I admit, I was at a lost as to where to put this one. And I guess it depends if you are using a kludge or a best practice, so I'm going to assume you are using a best practice. In which case, this shows you places that you were possibly \textit{not} using something which is a best practice, and now you need to make those things better.
|
||||||
|
|
||||||
\paragraph{It works, but it's a bit of a kludge.} A kludge is not always a bad thing (sometimes you have to work with what you have) but they are at best, inelegant, and at worst weighty and ugly. But they work for now, they don't break things, and they will last until you learn or can afford a better way.
|
\paragraph{It works, but it's a bit of a kludge.} A kludge is not always a bad thing (sometimes you have to work with what you have) but they are at best, inelegant, and at worst weighty and ugly. But they work for now, they don't break things, and they will last until you learn or can afford a better way.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user