Things that suck: All testing frameworks ever created, and all build tools. Never met one that was easy to use or set up, and for what they do -- throw exceptions, and install dependencies/move files/run commands -- they are worse than doing it by hand. I could copy files easily when I was 10. Using a build tool? Takes me an hour to figure out how to do it, and I still don't understand how to do it in the future. Fucking retarded. Docker can suck it too.
Things that don't suck: Underscore. jQuery. npm. Backbone. Constants. Error handling ('cause isn't it nice when the server messes up and you display a nice informative message?). async.js.(<- GENIUS). HTML templating engines with enough features to actually reduce the amount of code you have to write. I don't like Handlebars, but the competitors seem to suck so bad that it's good by comparison.
Facts of life: Vi.
Once you go Backbone, you never go back.
MVC is not the answer to everything, unless your goal is to write more code in more files.
Random Non-Programming Tip:
When making pies, keep in mind that pie pan sizes are not standardized in terms of depth. That means that the pie recipe may make too much filling for your pie pan, or not enough. You can measure the volume of the pan by pouring water into it, and also estimate the volume used by the filling, but since the latter is always an approximation (the crust takes up a variable amount of space, and the volume of the mixture will be different than the volume of the ingredients), the only thing to do is be very careful not to add too much filling into the pan, and then adjust future recipe sizes according to your pan size, if necessary.
Random Programming-Related Tips:
Treat the <a> tag with respect, even when writing a single-page application. It should still be used only when it represents a "different page" -- a different browser route -- and the href attribute should still be filled in with the full correct URL. Including the URL ensures that right-clicking on the element enables the user to open the link in a new window and copy the link location (and have it work).
class Me { static boolean getADate() { throw new UnsupportedOperationException("You wish."); } // Yay Java! Yay exceptions! }
angular.module('ComplicatedApp', ["ui.router", 'ngSanitize']) .config(function ($hate) { $scope.I = $hate("Angular");});