When your getting ready to start doing the tasks at hand you will have to start organizing the different tasks and prioritizing these tasks.
The easiest way of doing this is by using a Todolist application, there are a lot of different strategies of getting more productive but most of these ways and ideas are to get organized by using todo lists.
The main advantages of Todolists
- Support: Getting Things Done (GTD)
- Making it possible to plan things in a simple fashion
- Centralizing information and tracking of progress
- Organize tasks into projects and break down tasks into manageable chunks
Getting things done
Getting things done is a famous book and is also very much something you will want to study as a developer.
It makes heavy use of lists to organize the things you need to do.
Getting to stress-free productivity, from wikipedia:
The notion of stress-free productivity starts with off-loading what needs to get done from one's head, capturing everything that is necessary to track, remember, or act on in what Allen calls a bucket: a physical inbox, an email inbox, a tape recorder, a notebook, a PDA, or any combination of these. The idea is to get everything out of one's head and into a collection device, ready for processing. All buckets should be emptied (processed) at least once per week.
A developers view of this methodology:
The Joy of Freeing Up Mental RAM
10 Practical Tips on Freeing up Mental RAM
Getting started with GTD
How to get yourself to actually do the things on the list.
The different options in Todo lists
Offline todo lists
Use Visual Studio's task list option, you can also utilize it through your code.
The Outlook task list option this one has it's own blog there is even a sidebar gadget.
If you practicly live in one of those applications it's nice to be able to use them as your todo list tool of choice.
Abstract spoon has made a very nice todo list application you can download the source code and read a codeproject page about it.
Online todo lists
Simple shareable lists
Tadalist: You can't get any simpler, the application which caused
Blablalist: My current choice of todolist
More advanced lists
Todoist: Todo lists on steroids with repeating items, scheduling reminders, keyboard accelerators etc.
Remember the milk: meta data, integration into a lot of different things, twitter, Google agenda and more.
Voo2do: mixing simple time tracking and todo lists.
With an organized overview of tasks and source control set up we are totally ready to start with development.
Well ok you do actually have to set up your development environment.
If you want help or direction in other things getting started please leave a comment and perhaps I can write another article about that.
This will hopefully be the start of a series of posts / articles about the basic information/skills needed for different software development.
Source control is one of the things you need to set up before starting to do the actual development.
Before creating things of value it's wise to make sure that your investment is guarded.
Source control is there for this need.
Not only can it be used to keep your source code and files safe but it will also allow you to keep different revisions of files available so you can revert to any other version of the files.
This can be great for going back to the way things worked in version x or the way things looked in version y.
More information on Source control / Revision control.
Source Control: Tutorials / Lingo
Since this is very nicely explained by others I will just link to some tutorials by others:
Different Source Control providers
There are a lot of different source control system a brief overview:
- Visual Sourcesafe: free solution by Microsoft, this one is not really recommended by most people
- Sourcegear Vault: commercial solution created by Sourcegear to be Sourcesafe done right.
- SVN: Free open source source control and the default Source Control solution nowadays
- Git: The new source control kid on the block
For me the most interesting source control solutions at the moment are:
SVN / Git
So I will go into these options some more but first lets have a look at a comparison between SVN and Git.
How to set it up on windows.
How to use it on a daily basis.
A free book about SVN.
Daily usage of Git.
Git commit policies.
Source control hosting options
If you want to get started with source control but you don't want to take ages to set up a server and things like that there is also the option, for going for a hosted option.
There are a lot of different hosting options for SVN, there are also a lot of options coming up for Git hosting.
Some are free others aren't the ones I've tried:
And all looked well.
Here is also a comparsion list of different Source control hosters.
Source Control should be the first thing you think of before starting to develop, with this article I hope to have given the readers a head start on how to go about actually using it in a correct way and getting started.