Programming Theory

Best practices, structuring of code, dissecting algorithms and talking about the “Why?”

Comparators in Java (Prepare to Compare)

Damn! I just can't get that linkedlist to sort! What did I ever do to deserve this? Why god why!!!!!!! Ok, maybe I am being a bit over dramatic and lets face it, I think I have only gotten to the point where God and I were sharing code frustrations only a few times in my entire life. When code is not cooperating and deadlines are looming, you and the ...

What is all the “fuzz”ing about?

Fuzz...no not the stuff growing on your vegetables in the fridge but the data kind. Data fuzz is rumored to be behind the successful crack of the iPhone in recent months. However, some people in the industry may have not heard of the term "Data fuzz". So in a short entry I will discuss what it is, how it can relate to blackbox testing and how it can make your ...

Sieve of Eratosthenes in Java / C#

Eratosthenes, what an egg head huh? I wonder if he could have coded his own algorithm in Java or C#. Would he have known what a class, helper method, and a delegate is? The ancient Greeks had the math world pretty much locked up for their time... except that whole world at the center of the universe thing and that the heavens were in perfectly circular orbits. Whoa were ...

Caught in Pascal’s Triangle

Earth has the Bermuda Triangle, Space has black holes, and humanity has my crazy mind. All of these things are largely unexplained phenomena and so I figured, why not throw out one for the programming world? If Bermuda can have a triangle, dangit we are going to have one too! Introducing Pascal's triangle.... on this episode of the Programmer's Underground! Pascal's triangle has been studied around the world for hundreds of ...

The Mysteries of Data Flow Diagrams

You can probably guess what a Data Flow Diagram might mean. It has something to do with Data from Star Trek and his schematics right? No no... while he kicks ass on the Enterprise, Data Flow Diagrams kick ass in system design. You might not be able to build a robot with artificial intelligence and calculates at teraflops a second, but you can dramatically improve your skills of converting a ...