Programming – Where To Begin?

Whenever a new project appears, as excited as we may get as developers, we have to pause for a minute and think about what this actually means. This means that we have to start planning and taking a closer look at the project as a whole. This means looking closely at the requirements, developing a plan, assigning resources, and delegating work among other things. Today I’ll be touching on some of the things we consider when getting a project off the ground.

First of all, everyone has to closely examining the requirements. Before actually starting a project, it’s a good idea to re-examine the requirements. By this stage you will have most likely already examined the requirements but this will be your final opportunity to go through everything with a fine tooth comb in order to raise any concerns or to point out potential improvements to the client. Before jumping into something that can take hundreds of hours of development time, it is better to be safe than sorry. Missing something at the beginning can lead to unnecessary expenses later on.

Now that you have looked at the requirements and you know exactly what you are dealing with, you have to decide on which technologies you are going to use. Maybe Microsoft .NET is the best fit, it could be Java or PHP. What type of JavaScript library is best suited for the task at hand? What sort of server environment would offer the best platform for this project? What about support, how far backwards will you be required to go? If you are only going to be supporting the latest web browsers and operating systems, which libraries will be the most useful? What sort of potential mobile device considerations should you keep in mind? These are a lot of questions but they are all crucial in determining what kind of technologies you put to use. Sometimes your preferred package isn’t the best option and you may have to step out of your comfort zone.

After all necessary concerns, requests, and concerns have been dealt with and decided upon; it’s time to make a project plan. This is usually when an experienced developer will develop a timeline based on how long it should take to complete certain tasks and milestones. This plan acts as a sort of map. If followed, it will give you a rough idea of where you should be at which point in time. This also helps to delegate resources. Since individual tasks are usually assigned a developer on this plan, it allows you to see at a glance who is tasked with how much work. This in turn allows you to balance the workload evenly on your employees.

There are other concerns as well. Things such as database architecture, project structure, code libraries and repositories, as well as other functional and management details. Fortunately, here at Palm Beach Software, we take great pride in our ability to identify and discuss requirements, examine all avenues, and develop a thorough and well thought out plan. All of this helps to develop our projects foundation so that we can provide you with the highest quality software package.