Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Possible Duplicate:
What good book shoud I buy to learn Agile from scratch?

It seem that Agile for the solo developer is a good idea.

But how to learn it?

Is there any good book, web reference or course that a solo developer could start from?

share|improve this question
    
Just say "I'm driving" and start coding until your pair will not want to be the driver. –  Lorenzo Sep 27 '10 at 13:49
1  
@Lorenzo Pair? Which Pair? Being solo does not imply that I don't get any pair to argue with? –  DavRob60 Sep 27 '10 at 14:00
1  
I think the very nature of solo programming becomes an agile process. You are the sole developer, responsible for coding, testing, documentation, the works, so to keep up with the pace your development will need to be agile. Generally speaking agile is faster iterations, of the usual document, implement, test, push features, repeat until code base meets specifications. –  Chris Sep 27 '10 at 14:08
    
@Chris I know all that, I'm (probably) doing some king of Agile development right now. What I'm asking for is some reference so I could review my current practices and improves them. –  DavRob60 Sep 27 '10 at 15:27
    
Well any agile books would suffice, I doubt there is a agile development specifically geared towards individual developers. If there is I would be interested in reading it to see if there are any differences noted compared to agile development within a team environment. –  Chris Sep 27 '10 at 15:40
show 5 more comments

marked as duplicate by Mark Trapp Jul 30 '11 at 18:48

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

6 Answers

up vote 11 down vote accepted

If you have to purchase only ONE book.

Buy Practices of an Agile Developer.

alt text

share|improve this answer
2  
I love that cover! –  Mongus Pong Sep 27 '10 at 16:19
1  
pragprog needs customer reviews. I now fully refuse to buy books without a number of un-paid-for reviews for them. –  Steve Evers Sep 28 '10 at 15:57
    
Read them on Amazon: amazon.com/Practices-Agile-Developer-Pragmatic-Bookshelf/dp/… –  user2567 Sep 28 '10 at 16:09
2  
Explain why. –  user8 Oct 6 '10 at 0:10
1  
Mark, I've been reading almost everybook on Agile, I did all certifications I could, I went to gatherings, conferences, etc. This is the only reference book that did the wow effect on me. It is complete, well written, easy to understand and read. The book is divided into small sections that describe one particular problem and how agile can help –  user2567 Oct 6 '10 at 7:23
show 1 more comment

Daily scrums can be lonely :(

Honestly, just be nimble. Agile has a heavy grounding in getting the most out of a team (standups, pair programming, etc). As an individual you're likely agile by your very nature - invent a process that works for you and go for it... just don't get entrenched by it. These development processes exist because managing IT projects across many functions is challenging... you're one man. You are the process.

I track my tasks using post-its, I have a CI server checking my code and I iterate until myself and (volunteering) testers are happy. I design first, code later. I try to set achievable goals for the week, and tend not to think about the project months in advance.

You'll get better results working in a way that you feel comfortable and have evolved into.

You'll be surprised how much of the agile process you naturally do.

share|improve this answer
    
YUP YUP YUP a switch to agile is needed the most by IT behemoths. Many start-ups have no choice but to do it right or perish. –  Job Dec 16 '10 at 17:44
add comment

You're going to have to adapt. I doubt there are any books that specify one developer or 100 developers. If you want to learn about Agile development, there's plenty on the internet. I browsed a few books at the local book store and didn't see the need.

Paired Programming - I happen to work at a firm with a lot of financial analysts that have been doing things in Excel that I convert to our application. I drag them over to look at my code occasionally and work through things with them. Saves a lot of back and forth.

We have plenty of people requesting software that can play all the other roles.

Stand Up Meeting - OK, this one freaks my coworkers out. Especially when I have to cut myself off for taking too much time. Just kidding, but I do keep a journal of what I did and what I'm going to do daily.

As far as the requirements gathering, planning, unit and acceptance testing, you can follow whichever methodology seems to make sense.

I tend to keep my 'sprints' to about a week.

share|improve this answer
add comment

I think Clean Code: A handbook of Agile Software Craftsmanship, is a great resource.

This book will make you a better developer, not only a better programmer. Surely a must read!

http://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882

share|improve this answer
add comment

We use kanban at our work, and I've found it really useful - I think the idea of limiting yourself to a certain amount of work means you get more done.

One other thing kanban does well is categorizing where the work is up to - we use plan | build | test | distribute | done - each of these stages is defined and you need to work an item through the board - this helps to make sure that you haven't ignored testing, or that you've spent a bit of time planning and defining how to tests and demonstrate a completed feature.

One of the good things about agile is the accountability / transparency - so I'd let your clients know what you're working on, get them to agree to features they want added so that you keep yourself accountable to someone, even if they don't know the technical in's and out's.

share|improve this answer
add comment

If you want to practice Test Driven Development and Continuous Integration, which I find to be some of the best agile practices to follow I'd look at these books:

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.