3 ms·
I didn't mention github, and don't see it as especially relevant. If you are an 'excel jockey', then your job involves coding. Of course knowing how to code to
by kimdouglasmason 12y ago
I didn't mention github, and don't see it as especially relevant.
If you are an 'excel jockey', then your job involves coding. Of course knowing how to code to some degree will make you better. I don't see that as a good example. You should have used one of the many professions that currently involve no coding at all as an example.
There was also a time when civil engineering was a specialist activity best left to professionals, and it still is. You seem to believe that coding is akin to literacy. I believe it is not, and have provided some reasons in my previous post.
- enraged_camel 12y ago>>You should have used one of the many professions that currently involve no coding at all as an example. Okay, I'll bite. My dad is an ophthalmologist in Turkey. He runs his own private practice. When he opened the clinic in the early 90s, he quickly realized that keeping track of patient records in paper format was not efficient. So he taught himself Microsoft Access (which came out in 1992!) and wrote his own patient record management software, which greatly increased his productivity and therefore income/leisure time. Fast-forward to 2011. I was organizing an international conference and needed to send out some email blasts. The problem was, all the email addresses I needed were on a several hundred page PDF document with no clear format. So I had a choice: I could spend days manually copy-pasting and cleaning stuff up, or I could try to automate it. I ended up writing a Ruby script that grabbed the embedded text and pattern-matched email addresses and spat them out onto a text file. Still not perfect (my regex was rudimentary) but it got the job done a lot faster. Learning basic Ruby took me several hours, and I ran into some (silly) issues [1], but that's still better than the several days I would have spent doing the task manually. You may be thinking, "well, we have specialists for that sort of thing today." Sure. But just like there are many rural areas in the US where it doesn't make economic sense for ISPs to lay out fiber, there are many personal tasks and errands where it doesn't make sense for professional developers to write software for. So there is a lot to be said for the need for individual empowerment through programming. [1]http://stackoverflow.com/questions/6566884/rubys-file-open-gives-no-such-file-or-directory-text-txt-errnoenoent-er http://stackoverflow.com/questions/6566884/rubys-file-open-g...
- kimdouglasmason 12y agoI'm still not convinced by those examples. My reasoning is opportunity cost. If you have to learn to code to write some software, and then write it yourself, you will generally be less efficient at it than contracting someone else to do so. Furthermore, the contractor has a chance of potentially reselling the software to other clients (thus increasing efficiency even more), which you do not. If it was cheaper for your father to write his own software in this case, then to me this indicates one of several things: 1. That he had already learned to code for some other reason (possibly a hobby). 2. That there was no opportunity cost because his business was operating way below capacity. If this is the case, his time is best spent fixing that problem first. 3. That there is an under-developed market for software services. Your fathers' example also ignores some potential problems. A novice rolling their own DB code is likely to make novice mistakes, increasing the chance of (expensive) data loss or corruption. I remain unconvinced that for a busy non-software specialist (such as a physical therapist, a welder, and many other professions) writing any software more complicated than a spreadsheet formula or macro is worth the opportunity cost. That doesn't mean that these people will never configure existing software, or write small scripts in DSLs, but I don't consider that 'knowing how to code' any more than I consider being able to remove one of my own teeth 'knowing how to dentist'.
- angersock 12y agoThings you're not taking into account: 1. Basic knowledge of programming gives you better odds of successfully interacting with specialists. 2. Specialists are not always available. 3. Specialists are not always affordable. Just because there's somebody who's out there that can do it better doesn't mean that's the one true answer--I can damn well try to stop the bleeding before I seek a trauma doctor, to use an example. In day-to-day life, learning just enough Ruby or Python or Perl to scratch an itch or Access to make a (terrible) DB is quite acceptable.
- zAy0LfpBZLC8mAC 12y agoWell, I agree that non-professionals probably should avoid writing anything complicated, as there is a high risk that they will make bad mistakes. However, that IMO does not mean that it's not good for essentially everyone to have at least some basic knowledge of programming and CS basics. For one, communicating your needs to a professional is also pretty costly, especially so when the task at hand also needs specialized knowledge from your own field (be it that communicating the requirements is a lot of work upfront or that the project in the first (few) round(s) doesn't end up doing what you expected it to do - not exactly unheard of in the software world), and secondly, even if the problem that you need to solve is too difficult for you to solve with your basic knowledge, that basic knowledge might still be very helpful in communicating the problem to the professional, as you might be able to see what kind of information the professional needs in order to help you. Plus, it might allow you to better select a good professional - the risk of hiring someone who isn't actually all that much of a professional is pretty real, after all, so adding to the costs of not learning and doing it yourself.
- deleted 12y ago[deleted]