Development: Doing More by Doing Less
This post originally appeared on the Pyxl Blog.
From zombies to political dramas, I’m hooked on good television. This week it’s House of Cards, the sit-on-the-edge-of-your-seat drama that makes you rethink everything you thought you might know about the White House. In the show, Frank Underwood said, “There are two kinds of pain. The sort of pain that makes you strong, or useless pain. The sort of pain that’s only suffering. I have no patience for useless things.” This is exactly how I feel about development. There are times when trying to solve a problem keeps you in the office well after every one has gone home, struggling to find the answer and after hours of despair, the answer finally hits you and everything falls into place. These are the moments of pain that create a better developer. The useless pain for a developer is struggling through a problem when someone else has already solved it. At Pyxl, this is why we love development frameworks. By starting with a baseline of code, it prevents recreating the wheel for the 100th time. An application framework provides functions for database management, templating, user management, and other libraries that are commonly used in applications (think of this as the CMS for a web application). We most commonly use MVC (model-view-controller) frameworks in a variety of languages in order to speed up the initial overhead of creating a custom web app. An MVC framework runs by the model accessing the database and sending the data to the controller, the controller manipulating the data for the user and sending it to the view (what you see on your screen), the view collecting information from the user (clicks or forms) and sending it back to the controller, which handles the data and sends it back to the model for insertion into the database, completing the circle. We avoid the useless pain by using starting with a framework, so we do less work up front in order to be able to do more later. When we aren’t wasting time on those useless tasks, we are able to fit in more application time for the “meat” of the application and reduce the cost for the customer. Just remember when you are at the office until 2AM and dead tired: “I never make such big decisions so long after sunset and so far from dawn.”
From zombies to political dramas, I’m hooked on good television. This week it’s House of Cards, the sit-on-the-edge-of-your-seat drama that makes you rethink everything you thought you might know about the White House. In the show, Frank Underwood said, “There are two kinds of pain. The sort of pain that makes you strong, or useless pain. The sort of pain that’s only suffering. I have no patience for useless things.” This is exactly how I feel about development. There are times when trying to solve a problem keeps you in the office well after every one has gone home, struggling to find the answer and after hours of despair, the answer finally hits you and everything falls into place. These are the moments of pain that create a better developer. The useless pain for a developer is struggling through a problem when someone else has already solved it. At Pyxl, this is why we love development frameworks. By starting with a baseline of code, it prevents recreating the wheel for the 100th time. An application framework provides functions for database management, templating, user management, and other libraries that are commonly used in applications (think of this as the CMS for a web application). We most commonly use MVC (model-view-controller) frameworks in a variety of languages in order to speed up the initial overhead of creating a custom web app. An MVC framework runs by the model accessing the database and sending the data to the controller, the controller manipulating the data for the user and sending it to the view (what you see on your screen), the view collecting information from the user (clicks or forms) and sending it back to the controller, which handles the data and sends it back to the model for insertion into the database, completing the circle. We avoid the useless pain by using starting with a framework, so we do less work up front in order to be able to do more later. When we aren’t wasting time on those useless tasks, we are able to fit in more application time for the “meat” of the application and reduce the cost for the customer. Just remember when you are at the office until 2AM and dead tired: “I never make such big decisions so long after sunset and so far from dawn.”