To keep on top of your game as a developer it is important to work on projects that challenge you and provide opportunities to use new technologies. Coming up with ideas for a project can often be difficult though, and when you get one, starting a new project requires setup work before you can get to the interesting part of the problem. I found a great way of getting over these hurdles: plugins and add-ons. Here are a few of my favourite big wins.
Working with programs, often there is a task that we need to do but the tools we have aren’t quite right. Either there is a key function that isn’t there, or there is a flakey work around that doesn’t feel right. This is a great source of ideas as user story and the functionality are already defined when you reach the problem, giving a clear goal to work towards.
Get to the point
At the beginning of a project, with fresh ideas flowing, you want to get to solving the problem so you can get into your coding environment of your choice. The first thing you have to do is lay the groundwork for the project, get tests to make sure its solid, debug fundamental functionality, all before you’ve started to tackle the actual question. This process is made more daunting if you want to start using new technologies.
Plugins and add-ons are already in a mature environment with functionality to see what is going on. There are also helper functions that help process common types of information that the program deals with, indicate states within the environment, and provide a good skeleton on which to hang your own project.
Working with a program means that there are probably other people who are creating functionality for that program as well. Being able to see how other people have approached problems helps inform your own direction. Also, if you have questions, you can directly link it to a common environment that the community is familiar with, making it easier to frame the question and accurately convey the problem at hand.
Make work easier
A big selling point at the end is the idea you have had probably has come from a tool that you use all the time, meaning what you have added will improve your experience of the product, whether it is doing something that was otherwise not possible or cringe slightly less when your asked to do something. Finally, every time that you use the functionality you can be proud that you made that happen.
Blog Post written by Stuart Charters