Don't Use MongoDB For The Wrong Things
- 3 minutes - Apr 7, 2015
- #javascript#design-patterns#web-development
The early phases of a greenfield project always seem to conjure up grand ideas of how to use the hottest new technologies to accomplish your goals. Many times, these grandiose plans give way to a more level-headed design discussion where more realistic technologies are adopted. However, there are a few times where the developer with the idea to use the hottest new technology is the one in charge, and ends up getting his way.
Read MoreWrite Software for People, Not Computers
- 2 minutes - Jul 16, 2014
- #javascript#rant#design-patterns#web-development
Throughout a normal day, I end up reading a lot of information about current issues in technology, and today is no different. There was a debate raging about whether or not high-level math was required for programmers that was sparked by this article by Sarah Mei Programming is not math . While it is an interesting topic, and, surprisingly, I mostly agree with Sarah on this issue, that is not the most important portion of her post.
Read MoreAlways Use Automated Integration Testing
- 3 minutes - Jul 8, 2014
- #javascript#microsoft#design-patterns#teams#testing
QA or Quality Assurance of a software project is often the area of software development that is most neglected. Typically developers avoid software testing like their lives depended on it. While a basic level of testing is required for a single scenario to validate that your code “works”, the level of testing that is required to ensure that all users have a good user experience across all targeted platforms is something that a developer seems to think is beneath them.
Read MoreCode Style Guides - Consistency is King
- One minute - Jun 12, 2014
- #rant#design-patterns
There have been countless flame wars online about the details of the guidelines that appear in various Code Style Guides. Some of the most famous are the tabs versus spaces arguments, whether or not to put curly brackets {} each on their own line, whether you should even use the curly brackets {} for one line actions in if statements. I am here to say that the only thing that matters in the style of your source code, other than syntactically correct code, is consistency.
Read MoreDefensive Development Failure
- 2 minutes - Jun 11, 2014
- #javascript#design-patterns
In the past, I have argued that devensive development is a useful tool to ensure unexpected exceptions are not introduced into a piece of software as well as ensuring that the error conditions are handled in an appropriate manner. Unfortunately, if defensive development is implemented poorly, it achieves none of its goals and can cause errors and exceptions to occur. One example that I found while reviewing some code recently is below:
Read MoreDefensive Development - Fail Fast or Go Home
- 2 minutes - Jun 2, 2014
- #magento#javascript#design-patterns#management
Defensive Development is a programming practice that is frequently misunderstood, but is nevertheless a critical practice to follow when working in many environments. I have seen articles written that argue that defensive development simply causes nonsensical null checks to be written, and as a result of seeing people writing bad code defensively, argues that no one should practice defensive development. There are other articles that, like many things in software development, argue that you should always use defensive development for everything.
Read MoreAlways Namespace Variable Names in JavaScript
- 2 minutes - Apr 30, 2014
- #javascript#design-patterns
After running into a few issues with variable naming collisions over the past few days, it drives home how much we all should be namespacing our variable names in JavaScript. When writing JavaScript code that is only in use on your own website, you should still always namespace your variables. If you are writting a JavaScript library that will be in use on any website a user puts it on, namespacing your variable names is a minimum requirement.
Read More