Isn't this just waterfall? Prep the shit outa everything requirement and design wise, then make it in sequential fashion?
Software Mise En Place
21–30 of 85 posts
Re: Software Mise En Place
#22Earlier quoted context omitted.
The thing with that is you need to know what takes longer, and how long that longer is, beforehand. That comes from experience mostly. You will certainly screw it up several times before you get a feel for it.
You will also screw it up if you don't do it like this, because if you cook the soft things first, they will mush while the other parts are still hard. Cooking is always experience and tasting while doing it. And it can vary a lot based on ingredients of the day. It's not really that hard to get it right though, just by touching it it's easy to see that a zucchini will cook faster than fennel.
Re: Software Mise En Place
#23For me, "Mise en place", has nothing to do with chopping everything beforehand and in fact that is completely different from how I cook and develop software. Chopping everything at the start seems like it takes longer. I think Mise en place can mean different things to different people. The way I was taught it was to have everything "in place" before you start. Literally you gather all the ingredients in one place (o…
I do tend to cook like this, but that's because I'm an inexperienced cook :-) I don't trust my ability to complete a prep task in the bounded amount of time you have once you've actually started cooking, so unless the time available is clearly long and the prep task trivial I tend to do most to all of the prep in advance. You're absolutely right that it takes longer in wall clock time but I find it less stressful, an…
Re: Software Mise En Place
#24For me, "Mise en place", has nothing to do with chopping everything beforehand and in fact that is completely different from how I cook and develop software. Chopping everything at the start seems like it takes longer. I think Mise en place can mean different things to different people. The way I was taught it was to have everything "in place" before you start. Literally you gather all the ingredients in one place (o…
"I should thus resemble those bad operators who, having neglected their mise en place, are obliged to make it in the course of other work, and thereby not only run the risk of making it badly, but also of losing valuable time which might be used to better advantage.
Elementary preparations consist of those things whereof one is constantly in need, which may be prepared in advance, and which are kept available for use at a moment's notice."
A modern guide to cookery, A. Escoffier 1907Re: Software Mise En Place
#25For me, "Mise en place", has nothing to do with chopping everything beforehand and in fact that is completely different from how I cook and develop software. Chopping everything at the start seems like it takes longer. I think Mise en place can mean different things to different people. The way I was taught it was to have everything "in place" before you start. Literally you gather all the ingredients in one place (o…
Then you are a "bad operator" according to Escoffier:) "I should thus resemble those bad operators who, having neglected their mise en place, are obliged to make it in the course of other work, and thereby not only run the risk of making it badly, but also of losing valuable time which might be used to better advantage. Elementary preparations consist of those things whereof one is constantly in need, which may be pr…
Re: Software Mise En Place
#26Re: Software Mise En Place
#27For me, "Mise en place", has nothing to do with chopping everything beforehand and in fact that is completely different from how I cook and develop software. Chopping everything at the start seems like it takes longer. I think Mise en place can mean different things to different people. The way I was taught it was to have everything "in place" before you start. Literally you gather all the ingredients in one place (o…
In a commercial kitchen, you'd better have the peppers (say) chopped and ready so you can use them. Not only for a single serving of one dish, but for all plates you expect to make of any dish with chopped pepper in it.
You cannot pipeline chopping the peppers with frying the onions when you are preparing several dishes at once like you can at home. At home, you have maybe a dish or two, and you know you have time while the onions are frying. You also know that these are the only dishes to be cooked and no one is going to order something else while your onions are frying.
It also applies to software. If you're in a calm, steady development flow, you can pipeline tasks as you need. You can work on the docs while blocking work on the library, it doesn't matter. However, when you'be got periods of high-speed, fast-paced environment with deliverables required right now and bugs flying at you, finding a way to move groundwork out of the stressful time is a good idea.
Re: Software Mise En Place
#28Earlier quoted context omitted.
Then you are a "bad operator" according to Escoffier:) "I should thus resemble those bad operators who, having neglected their mise en place, are obliged to make it in the course of other work, and thereby not only run the risk of making it badly, but also of losing valuable time which might be used to better advantage. Elementary preparations consist of those things whereof one is constantly in need, which may be pr…
I believe the OP says exactly that he doesn't make it in the course of other work, but during downtime, which is overall faster.
Re: Software Mise En Place
#29"Clean as you go" is apparently much harder with software. :)
Re: Software Mise En Place
#30My mise en place is very similar to the authors - set up whatever I need to get fast and clear feedback before anything. If it’s a web service, set up a hello world / health check to auto-deploy with migrations if applicable, after automatically running the build. If it’s a library, set up a build and CI, and any version bumping and release scripts, docs autogeneration. Basically set yourself up for success and handl…