3 ms·
> if your job is repetitive you are doing it wrong. If jobs weren't repetitive we wouldn't group together a specific set of tasks under a label and hire people
by jfaucett 9y ago
> if your job is repetitive you are doing it wrong.
If jobs weren't repetitive we wouldn't group together a specific set of tasks under a label and hire people who can accomplish said tasks. We also wouldn't even be able to learn a job in the first place because by definition it would constantly be something new and we could never obtain any competency.
All learning is acquired through lots of repetitions across variances in experiences in a specific set of tasks. Machines learn this way, and all evidence suggests we do as well.
- crdoconnor 9y ago>If jobs weren't repetitive we wouldn't group together a specific set of tasks under a label and hire people who can accomplish said tasks. I don't see why not. Since excessive repetitiveness of a task required in order to hire people? Exercising creativity and good judgment rarely happens the same way twice, but it still ought to improve over time. >We also wouldn't even be able to learn a job in the first place because by definition it would constantly be something new and we could never obtain any competency. A) Learning effectively is not the same thing as doing effectively and B) I'm not arguing that every programming job should be entirely devoid of repetition, just that by its nature it shouldn't be repetitive.
- jfaucett 9y ago> Learning effectively is not the same thing as doing effectively. You have to learn in order to do and doing is the means for learning. Its iterative and both reinforce one another. So from my viewpoint, which admittedly is largely from an ML perspective, they are the same thing. Playing basketball effectively is a function of training which is just another word for learning in my mind. > I'm not arguing that every programming job should be entirely devoid of repetition, just that by its nature it shouldn't be repetitive. I think we're just using different meanings for "repetitive" and perhaps some other words and that's leading to apparent disagreement which in actuality I doubt we have. I was speaking generally i.e. not about automating your build/deployment/bootstrapping pipelines or building/using a library to solve problem X, but about the process as a whole and the more general tasks that go into that process. In that sense of repetitive, i.e. a set of tasks like "building the login", "integrate 3rd party API", "deliver mail", "build a chair" etc. I think virtually all jobs are very repetitive. In the sense of repetitiveness I think you are talking about, i.e. programming the exact same function every single time you need that functionality in a new app, I would agree with you. Anyway, my point was jobs are about performing a specific set of repeating tasks - generally speaking :). Further, we've poorly designed the labor supply side of our medical systems given the set of tasks doctors are required to perform and we could allocate supply/demand better and innovate at a higher rate were we to remove some of those systems engineering errors.
- crdoconnor 9y ago>In that sense of repetitive, i.e. a set of tasks like "building the login", "integrate 3rd party API", "deliver mail", "build a chair" etc. I think virtually all jobs are very repetitive. In the sense of repetitiveness I think you are talking about, i.e. programming the exact same function every single time you need that functionality in a new app, I would agree with you. I'm talking about both. IME either you're building a really simple login system in which case you can use an abstraction that makes it really quick to build, or you're building a complex login system with subtle requirements in which case it requires creativity and judgment. Where software development gets repetitive is when people end up building the same abstractions again and again and again (Java devs seem notoriously prone to this, but they're not the only ones) or (less controversially, which you alluded to and are absolutely right about) when steps in the bootstrap, development, testing & deployment pipeline are manual. I don't think the fact that I've done hundreds of login systems during my career means that I have a repetitive job. They were all either unique in some way or they were bog standard and I created them with a cookiecutter script in < 30 seconds.