Posts

Showing posts with the label programming

What are Unit Tests and Why Should You Write Them?

Image
  Unit tests are simple scripts that check whether a given unit—class, function, module, etc. is working as expected.  They are meant to be simple, to cover the happy path of the code plus a few edge cases. They contribute to the long-term success of a project because of the reasons I discuss below.  As your code grows in size and complexity, tests will force you to break it into manageable pieces. Tests will become an additional resource for the next person working the code to figure out what it’s doing. As a junior programmer, you might be confused by unit tests. To make things worse, tests used as examples often make their purpose more unclear. When you see stuff like you are right to doubt whether there is a solid reason to spend any time writing them. Below, I show my reasons for writing unit tests. # What are unit tests? Unit tests are simple scripts that check whether a given unit—class, function, module, etc.—is working as expected. They are meant to be rather sim...

Understanding Open Source Software

Image
  Do you want to know more about how the internet works? Do you want to learn how to choose the right (open source) software for your business or website, and learn some nerd history along the way? Or how about just reading some dated and obscure cultural references? Most importantly,  do you want to learn more about the software that already helps you and your website make money every day,  without you even realizing it? If you answer “yes” to any of those questions, I’m your guy, and this is definitely the article for you. My bosses at Website Planet  made a terrible mistake  – uh, I mean, graciously gave me the opportunity to write at length about open source software, often referred to as OSS. If you surf the web in any fashion, then you use OSS every day, directly and indirectly. Because it’s  everywhere  on the internet, OSS and the community around it affect your bottom line, one way or another.  The more you know about the software your bu...