Unfortunately, I missed a day of class this week. The code samples at least showed me what the we covered, and some of the material came up again in the next class, so it should be fine except for that -5 pts and +1 to missed quizzes. :( We're still covering basic but invaluable things to know in the language you're using. Not knowing how efficient your code is can absolutely destroy the usefulness of all your hard work, and the sad thing is we don't get taught about surprisingly inefficient things (like string concat) even after we've used it many, many times.
On the project side of things: My partner and I got a simple solution accepted by Sphere pretty quickly, but it was really really slow, so we're working on getting our faster solution accepted.
On Extreme Programming:
Honestly, I was really happy to be done with the XP book we were assigned. It has a lot of great advice about getting a product out there and then some wishy-washy stuff. In the end, it just got to be ridiculously repetitive. I wish there was a book that was exactly the same but about half the size, because they could manage to fit it in that amount of space if they didn't repeat themselves that much.
The Afterword was the combined most enlightening/frustrating part of the book. It was enlightening because of the point he was making about it being validation centric. Releasing things that work is important. Nobody can argue that. (The huge problem of releasing things that pass all the tests but still aren't that great still exists though.) On the other hand, the "because XP does everything to the extremes" being repeated drove me absolutely crazy. NOOOO! I know XP has extreme in the name, but to do everything to the extremes is never a good idea. Whenever the book mentioned taking something to the extreme (and then softly mentioning in the background that its actually impossible to do it that way), I cringed so much. If pretending works for you, then it works, I just don't like pretending in this kind of situation. I'll stay with my Almost Extreme Programming.
I don't know where the line gets drawn between good ol' programming practices and extreme programming from the book, because they speak like they created everything. Nevertheless, the goals of XP seem like great things to get done: improved communication, constant validation, changing design. If anybody is under the impression that there are people out there doing pure waterfall method right now, that is sooo wrong. Employees and teams and companies have evolved. Some better than others. Some companies do pick up Agile/XP. The team I was on at Cisco Systems was changing to Agile shortly after I left. Others take bits and pieces (but I don't give XP credit for those bits and pieces, I give credit to multiple people figuring out the same thing because it tends to be the right thing). In my opinion, all of the things that are good about XP can be achieved in other ways, without this weird system.
I'm actually going to spend more time looking into other methodologies when I have more time. Somebody out there has probably already created what I see as the perfect programming methodology -- I kinda hope nobody has because I prefer the way I work not having a name that can be hyped and sold. Need to get some rest for the career fair for now though. :)
No comments:
Post a Comment