Archive for the Software Development Category

Self Improvement - 12 Week Plan for Coding Speed

Posted on October 19, 2011 by

Over the past few years, I’ve spent a lot of time learning about architecture, software development methodologies, and new technologies and I’ve realized that some of my most basic skills have gone rusty. Mainly, I think my speed for solving simple algorithmic problems can be improved. My plan to become a faster coder: 12 weeks [...]

Continue Reading

Garbage Collection FAQ

Posted on October 8, 2011 by

While written from the perspective of a C# developer, this article pertains to java as well. How does garbage collection work? Model as a directed graph Each object instance is a vertex Each reference to an instance is an edge (So if one object references another, then there is a directed edge from one to [...]

Continue Reading

Stock Options Manager Mobile Web App Released

Posted on September 23, 2011 by

Options Manager is a free mobile web app that retrieves and displays multiple stock option price quotes for different stocks. This allows investors to easily track options they own without having to browse through several different option chains.   Start Using Options Manager   Supported Platforms iPhone Android 2.1+ Although Options Manager is meant to [...]

Continue Reading

3 Key Rules for SDK/API Design

Posted on August 25, 2011 by

One of my side projects involved designing a framework & sdk* for 3rd party programmers (programmers that cannot easily get a quick answer from me). In this case, there is a lot more pressure on the design than with a proprietary program since original design decisions have to be supported indefinitely. *Note: I will [...]

Continue Reading

Pyramid js: A dependency manager to load/combine web development files

Posted on August 14, 2011 by

Pyramid js is a javascript library for managing dependencies. While there are a few javascript dependency managers, Pyramid has some unique features: It handles any file type (js, css, html, myFileType, …) and lets you define how it should be included/rendered. During development, it can automatically insert the contents of a file. Now you can [...]

Continue Reading

Essential Tools for *Advanced Javascript Programs

Posted on August 6, 2011 by

Lately, I have been doing a lot of javascript work for some mobile phone projects and webpages. There are a lot of reasons as to why people might want to use javascript for tasks that are more complicated than just input validation and display style updates. The scope of my recent projects has giving me [...]

Continue Reading

MVVM vs MVP vs MVC: The differences explained

Posted on May 6, 2011 by

Those who know me know that I have a passion for software architecture and after developing projects using Model-View-ViewModel (MVVM), Model-View-Presenter (MVP), and Model-View-Controller (MVC), I finally feel qualified to talk about the differences between these architectures. The goal of this article is to clearly explain the differences between these 3 architectures. Common Elements First, the [...]

Continue Reading

Burn Down Chart Tutorial: Simple Agile Task Tracking

Posted on November 13, 2010 by

Eventually I became frustrated with Gantt charts. Sure, they had served me reasonably well for a number of years but I had a few problems with them. First, I found them time consuming to maintain whenever changes to a task’s timeline occurred. Second, the charts require tasks to be put in some sort of order [...]

Continue Reading

5 Second Book Reviews: Design Patterns, Head First Series, OOA&D, Software Dev, PMP, etc

Posted on November 13, 2010 by

Here are some 5 second reviews of the books I’ve been reading lately. When reading for fun, I tend to focus on books that are fun, quick to read, and easy to remember. Head First Design Patterns - Fantastic! Unlike most development books, this is fun to read and easy to remember, and gives a [...]

Continue Reading

Code Maintenance: Avoiding Special Cases

Posted on January 1, 2010 by

I ran into a simple problem today at work that turned out to have some significant implications in terms of maintenance. The issue was that I found a “special case” that required developers to remember to repeatedly include specific code to limit a user’s abilities every time new unrelated features were added. The moral of [...]

Continue Reading