I often come across user posts in programming forums asking for a software idea that they can code, either for learning projects, or just out of boredom. Anyway I have decided to list some small coding project ideas. The idea is they are small and simple enough to be completed in a short time-frame, but they offer some real world value.

If you have an idea you would like to see listed here leave a comment and I'll add it if I think it fits the theme. Also if you do undertake one of the projects let me know so I can post it here.


Project Ideas

1. Commit a small fix to Libre Office ( formally OpenOffice)

Type: Bug Fix /Open Source contribution/ Office Suite

Language: C++, Perl or Other

Suitable for: Those who know a moderate amount of C++, or a scripting Language such as Perl. This is a good opportunity to add an open source project to your resume. There is a wide variety of beginners task so why not take a look.

Idea: Take a look a the entry level tasks here.


2. Implement an OpenGL extension in Mesa3D

Type: OpenGL, Linux, BSD, Device Driver

Language: C/C++

Suitable for: Those interested in Graphics programming and operating systems. Can be low level so you will need relatively good experience in this area.

Idea: Mesa is the Open Source project that implements OpenGL for Linux and BSD. Currently the project lags behind in features compared to proprietary drivers. This is a great project for anyone interested in the computer graphics and operating systems, and would make an ideal addition to a resume for anyone working in the field to have a Mesa contribution on their CV.

I have a partially complete introduction to Mesa. There is also some information on the Mesa website for new contributors.

Just pick an extension that needs to be implemented and go for it. You may want to check on the mailing list first if the extension is being worked on.


3. Create a fix for a One Hundred PaperCuts Ubuntu bug

Type: Bug Fix /Open Source contribution/ Operating System

Language: C/C++, Java, Scripts, Perl or Other

Suitable for: If you have ever wanted to contributed to Linux this is one of the best places to start. The idea of the One Hundred PaperCuts project is to fix small usability issues with Linux applications and with the desktop environment itself. This makes them ideal quick fix bugs for beginners and those just wanting to fill in some time while learning something new. You will quickly learn how the development processes works in Linux and get to know the inner working of many different projects that make up a Linux Operating System. This is another good opportunity to add an open source project to your resume.

Idea: Take a look a One Hundred PaperCut Project here.


Completed Project Ideas

1. Website nag bar for Windows/Mac users to promote Linux

Link to Project: Linux Promotional Plugin

Type: WordPress plugin

Language: PHP, JavaScript/HTML

Suitable for: Those learning PHP or WordPress plugin development, also bored WordPress developers.

Idea: The idea is based around the nag bar plugins that exist for WordPress that encourages users to upgrade from IE6 to a newer internet browser see: No more IE6 plugin

In its full form it would ideally have options for who to show the nag to e.g. option to select WindowsXP, Vista, 7 or all. The link should take the user to the promotional page of the Linux flavour being promoted e.g Ubuntu.