News for hackers. Stuff that matters.
Re:Code reviews aren’t just for catching bugs by fishnchips on Thursday May 12, 2016 @03:07PM (#11685928)
This is the role of design documents which get heavily reviewed by the team before even the first line of code is written.
Re:Code reviews aren’t just for catching bugs by gpderetta on Thursday May 12, 2016 @03:38PM (#11686121)
In my experience, no design document, no matter how carefully drafted survives contact with the enemy^W^W an IDE. At best you can define interface boundaries between independently developed modules.

Edit: broken leftover line

Re:Code reviews aren’t just for catching bugs by fishnchips on Thursday May 12, 2016 @04:02PM (#11686315)
Things change a lot during the project, I agree. But assuming everything will change and using that as an excuse not to plan at all sounds like a poor choice to me.

"In preparing for battle I have always found that plans are useless, but planning is indispensable." - Dwight D. Eisenhower

Re:Code reviews aren’t just for catching bugs by gpderetta on Thursday May 12, 2016 @04:37PM (#11686588)
I do actually agree that some amount of planning, and especially putting down a sketch on paper do help, in particular as a way to nail down requirements and figuring out obvious roadstops, but it is important to be under no illusion that the final project will resemble in any way the plan
Re:Code reviews aren’t just for catching bugs by lmm on Friday May 13, 2016 @07:52AM (#11689834)
> But assuming everything will change and using that as an excuse not to plan at all sounds like a poor choice to me.

I know that's how it sounds. But in my experience it turns out to be a lot more effective than planning.

Re:Code reviews aren’t just for catching bugs by draw_down on Thursday May 12, 2016 @03:43PM (#11686165)
We write those on my team. They usually end up only faintly resembling what actually gets shipped. No matter how much agreement there is beforehand, as soon as people see working software they change their minds. The best thing is to plan for and expect change, not try to mitigate its manifesting.
Re:Code reviews aren’t just for catching bugs by phasmantistes on Thursday May 12, 2016 @04:05PM (#11686336)
Yep, and design docs are the most important part of that planning for change. If you haven't planned the desired design, you can't see how circumstances are forcing you to change it, and what tradeoffs you'll be making to accommodate those circumstances.
Re:Code reviews aren’t just for catching bugs by fishnchips on Thursday May 12, 2016 @04:05PM (#11686331)
True, if your software is well designed and modular then it's easy to contain necessary changes to a single subsystem. But a good design document would allow you just that - designate boundaries and interfaces between subsystems. I personally found out that writing an IDL (Protocol Buffers, Thrift or what have you) along your design document is very useful since it nicely bridges abstract concepts with actual code.
Re:Code reviews aren’t just for catching bugs by ArkyBeagle on Thursday May 12, 2016 @07:05PM (#11687480)
Well, except for the elephant-in-the-room of the dread lord Requirements Traceability, which will frequently eat the entire design cycle.