Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to apply agile to personal projects? [closed]

Tags:

agile

After learning about source control the first thing I did is do a project with svn. After learning about git I used it in a personal project. After learning about UML/Design Patterns/Design Principles/TDD I applied them to a personal project. How can I do the same to agile development? Is agile just for teams and big projects? How do I set up these iteration things?

like image 209
kthakore Avatar asked Jun 12 '09 17:06

kthakore


People also ask

Can Agile be used for individual projects?

Personal scrum is an agile methodology that adapts and applies scrum practices to one- person projects. It promotes personal productivity through observation, adaptation, progressive elaboration, prioritizing and sizing work, and time-boxing.

Can you use Agile for non-software projects?

Agile project management, although originally intended for software development in uncertain and dynamic environments, can also be used for non-software projects such as manufacturing, support, marketing or supply chain management.


Video Answer


2 Answers

I think Agile is definitely not just for team projects. Agile advocates a set of values that apply equally well to many types of projects, even personal ones. I was in exactly your situation a while ago, trying to apply agile development to a personal university project, and learned a lot in the process. Some useful things that the agile mindset can give you include:

  • Work on stuff that adds value to the final product. Make yourself a backlog of features and prioritize them as though you were the customer. Then discipline yourself to work on features based on their value to the product rather than what you want to do right now. This might save you from a lot of unnecessary, over-designed code that you won't use. If you have a deadline, it's even more important.

  • Have an evolutionary design: start with The Simplest Thing That Could Possibly Work and Refactor Mercilessly.

  • Postpone decisions until the Last Responsible Moment.

  • Timebox yourself into sprints or iterations (VERY important on university projects).

  • ...

If you go over some of the agile methodologies again, I think you'll find plenty of values and practices that you could apply by yourself.

While writing this answer, at least 3 other answers came up and beat me to it. I agree with all of them. :)

like image 130
Avish Avatar answered Nov 02 '22 01:11

Avish


Make list of tasks and features that you want in your application. Take those tasks and put them on a card wall.

You can't really have a meeting by yourself, but in the morning decide what you will do for the day and what you successfully did yesterday. Take those tasks, do them and then move to the next. Make sure at every point you are delivering continuously integrated, working software and you update your backlog. You might have "bug bash days" where you just fix bugs. That would be a one man scrum. :)

like image 21
JP Alioto Avatar answered Nov 02 '22 03:11

JP Alioto