23

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?

10
  • Just say "I'm driving" and start coding until your pair will not want to be the driver.
    – Wizard79
    Sep 27, 2010 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, 2010 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, 2010 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, 2010 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, 2010 at 15:40

6 Answers 6

14

If you have to purchase only ONE book.

Buy Practices of an Agile Developer.

alt text

6
  • 3
    I love that cover! Sep 27, 2010 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. Sep 28, 2010 at 15:57
  • Read them on Amazon: amazon.com/Practices-Agile-Developer-Pragmatic-Bookshelf/dp/…
    – user2567
    Sep 28, 2010 at 16:09
  • 3
    Explain why.
    – user8
    Oct 6, 2010 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, 2010 at 7:23
12
+50

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.

1
  • 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, 2010 at 17:44
2

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.

2

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

1

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.

0

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:

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