July 3, 2009

Meeting Details for Aug 6, 2009

Filed under: Meeting Agendas, announcements — David Rogers @ 12:34 pm

Location change: we’re meeting at the clubhouse at Camden, downtown, courtesy of our super awesome member, Demetrius Ford (who has excellent taste in avatars, BTW). The address is:

688 N Orange Ave
Orlando, FL 32801
(map)

Demetrius says we can park in the parking lot in front of the complex (probably also in the adjacent lot for the China Glass building, says me). The clubhouse is inside the main complex. We’ll try to leave someone outside to lead ppl in, or you can call me to let you in: 843-345-3522

This month, we’ll hear from Erik Hersman about his Open Source project, Ushahidi, which attempts to crowd-source crisis information. It’s written in PHP with Kohana, essentially a PHP5 version of CodeIgniter.

Erik and I originally chatted at FOWA Miami 2009 about OrlandoPHP contributing to the project as a group and giving us a presentation. Between looking for neat stuff in Africa, speaking at TED, and winning grants and stuff, he’s hard to pin down. So we’re really fortunate that he’s a local…! :D

In addiition, we’ll be continuing our exercise from July: breaking down Kristian Stoyanov’s TASCK project and estimating it with Story Points, per my presentation. This was a lot of fun for everyone, it seemed, and we didn’t quite make it through the whole project. More details and a recap will be posted on OrlandoPHP.org shortly.

So there’s that. I’d like to keep up the “Ask-an-Expert” panel, so for that we need two things. First, bring your questions…! I know you’ve got ‘em. Heck, even I have some stuff to rant about this month! Second, we need our experts to show! It was great to see Derek Gallo again this month, and we had some new faces, as well. Chris Chubb, , Don Organ, Eric Marden, and Bensan George were still MIA, unfortunately.

Finally, as much as I’d love to talk about Unit Testing again with PHPUnit (we haven’t even gotten to the hard stuff yet), I’d really like someone else to give a presentation. Doesn’t really matter the subject matter, as long as it’s reasonably related to PHP and/or web development. If you don’t start volunteering soon, I’ll start recruiting (see above)…! O_O Maybe Chris (or someone else who was paying attention) could give a recap from the first few chapters of the PHP5 Cert Traning, or someone could dissect a recent PHP project for us…? Just some thoughts.

Looking forward to a great turn-out this month,

David @ OrlandoPHP.org

July 2, 2009

July 2nd Meeting Recap - Estimating a Project and TASCK.com

Filed under: Uncategorized — Tags: , , , , — David Harris @ 9:37 pm

This months meeting was at a new location - Camden Clubhouse situated in Downtown Orlando. One of our excellent members, Demetrius Ford, arranged for a meeting room for our use.

We had a nice turnout, with the following members present eager to learn more about PHP and related technologies: David Rogers and his wife Rachael, Demetrius Fordand his son Demetrius, Kristian Stoyanov, Tony Guijarro, Steven Martin, Derek Gallo, Jamal Fanaian, Trevor Meyer, Spargnacat and David Harris.

CakePHP vs. Zend Framework

Since this was a new location we had some unplanned technical difficulties due to not having the correct cables to connect the laptop to the meeting room’s view screen. While David and Tony went to procure the correct one, a discussion regarding the merits and difficulties of Zend Framework vs. CakePHP ensued.  Derek Gallo mentioned while CakePHP allows you to get started quickly, Zend Framework’s components allowed for greater control over your application. He also mentioned the importance of using Test Driven Development (TDD ) while you’re developing your application.

Back to Business

After David and Tony returned with the correct cable, Kristian presented a unique web application he had designed and started developing: TASCK.com, a simple online task manager. He explained the current features and the direction he wanted to take the application but admitted to being mostly an Information Designer and User Interface Designer, not a Developer. After giving us the walk-through of TASCK, David’s presentation began.  He discussed Mike Cohn’s book User Stores Applied, which served as a resource for him to learn about estimating how much time a project should take.

Estimation using Hours

David then discussed the down-side of estimating a project using hours.  He discussed how developers hate it since it ties them down to that specific amount of time to finish a project which they themselves might think would warrant more time.  He also discussed how time estimates don’t work.  Time estimates more often then not will end up being inaccurate whether you’re at the beginning, middle, or the end of a project.

An alternative to the hour system: Planning Poker

At this point David introduced us to planning poker: a method of estimating a project’s cost based on risk and overall difficulty.  Planning poker utilizes a deck of cards numbered using a fibonacci-like sequence.  Each developer on your team then chooses the card with the number he/she feels is indicative of the level of difficulty of the project.  There is no preset definition for what each number corresponds to - it’s up to the developer to decide.  After that the developers reveal what they chose.  Then the developers discuss why they chose what they did.

This point in the development phase helps you learn how the other developers view the project, and what they themselves believe will be necessary to accomplish it. This is an excellent way of learning about what goes into a project, and about aspects of a project that you may not have thought of, or may have overcomplicated.

This process also helps clear up misconceptions that the developers might have on what the customer desires from the application as well as giving the customer new insight in certain features or the functionality of existing features that could be done differently.

Let’s do this!

Having discussed Kristian’s TASCK.com web application earlier, Kristian graciously played our “customer”. The rest of us then divided up the project’s requirements and decided individually what planning poker number each task warranted.  Then we discussed the choices and came to a consensus. During this discussion a majority of developers would choose a certain value, while others would choose much higher or lower. We discussed the following and assigned the following points to them:

  • Adding a task (5 points)
  • Deleting a task (5 points)
  • Deleting all tasks (5 points)
  • Marking a task as done (8 points)

Derek Gallo mentioned how the levels (values on the cards) are relative, which we saw when we moved from “Adding a task” to “Deleting a task”. Since they were very similar in what it would take to implement, we estimated similar numbers. Also over the course of the discussion, the customer - Kristian - learned how he could utilize “categories” as “filters” for tasks rather than as “folders”. Hence, both the customer and the developers came out of the process with a better understanding of what the application should entail and the complexities involved in implementing the application.

Next month, we plan to continue the exercise and finish estimating more of Kristian Stoyanov’s TASCK.com. You should come!