Advancing through the Fog
After continuing on the project I’ve been in, I’ve realized several things, one, people are stubborn, when given the chance to use something they know, even if it is a really, really bad choice, they will do it, and that more often than not, create more work for everyone, including themselves, instead of using a single tool that handles optimization of code for web applications, some people choose to use a myriad of tools to handle each subtask, that is the wrong way to go about things, it forces everyone to learn all those tools, and because they are so many, everyone only learns enough to get over small obstacles, putting more and more garbage on the way, half-assing everything, without thinking of the future work they’re not only making harder for others, but for themselves too, by using these tools without really knowing them, you open a small path, that gets darker and darker the further you advance, until you, or someone else in the team gets to a point where he in becomes impeded by a necessary change that one of the tools doesn’t handle well (or at all), and because no one knows the tool well enough to fix the problem, it may force everyone to stop, to help find a solution, and sometimes even change the toolset being used, which results in more time not advancing the project, but rather training (again half-assedly) on learning the new toolset, so don’t focus on learning a lot of tools only well enough to get over small obstacles, learn to use a few tools, and really master their usage, if they’re the type of tool that you don’t need to run too often, document its usage, do not think that because you spent some time reading it in the past you’ve mastered it, or that you won’t need to get back to it, you need to use it, again and again until you don’t need to look at a reference to use it, and then, review, because that’s still not mastering it.
Another thing I've learned, is that people will work in ways that make their work look complicated, to look professional, even if what would actually show mastery of their craft is actually making it look simple, this is also wrong, because it creates more work, case in point, git rebase is better than git merge, but because people don’t want to deal with merge conflicts (even though they are really simple to solve), they will use merge everywhere, create more work for everyone, and make the git log history look convoluted, messy and maybe, to their minds 'professional'.
tl;dr version
git merge < git rebase #dealwithit
