My blog post about using Test-Driven Development for communication was created as part of a research paper I was writing. The paper in full has now been published in the IJCSE. The paper is titled "Communication in MVC Teams: A Test-Driven Approach", now available here.
Common wisdom says regarding the Repository and Unit of Work patterns in ASP.NET MVC to implement it on top of Entity Framework. This is supposed to make your code more testable and more decoupled, which is always desirable. Doing this, however, can be complicated. The general architecture of an application implementing these patterns (as seen on MSDN) is … Continue reading Making ASP.NET MVC code more testable using a Service Layer.
Communication in distributed teams can be difficult. This article suggests unit tests as a way to tell other team members, exactly what you need from them.
An old professor I had once said something incredibly profound that I had never considered despite my background in IT. He said that “Computerization adds transparency” in a business. His example was that when using physical books for accounting, which is often the case for many simple shops even today, humans can introduce inconsistencies in … Continue reading What is an ERP system and why they are important
When I google the phrase "types in Java" or "types in OOP", I am presented with a list of the primitive data types that have been a part of most programming languages forever. However, in an Object Oriented context, the word "type" refers to something a bit more abstract and a bit more interesting than … Continue reading What are “types” in OOP, really
<--PART 1. This is the continuation of the Learning Linux blog post. Click the link above for Part 1. If you're coming here directly, you might want to look at that first. We continue now our discussion of learning Linux and how it's different from Windows. As I mentioned in the previous post, Linux is … Continue reading Learning Linux, information and tutorial for newbies (Part 2)
This is a simple introduction to Linux for those who've never used it before but might need to quickly catch up on it for whatever reason. This post is anything but a comprehensive guide to everything Linux, but it should server as a good starting point for anyone that needs to learn it.
The Single Responsibility Principle, which is part of the set of "S.O.L.I.D" principles laid out by Robert Martin, is a simple yet very effective strategy to make software development easier, because it reduces the chances of making huge mistakes and makes figuring out and debugging the program a lot easier. Not only that, but the … Continue reading Why the Single Responsibility Principle is awesome.
Note: All the code used here is available in a github repo HERE. Django bills itself as a framework for "Web Developers with deadlines". This is absolutely true. With the ease of python and Django's "batteries included" philosophy, you can get an incredible amount of stuff done in a short amount of time and have … Continue reading Combining different forms in Django, the proper way.