If you know just a little bit of programming, it is amazing how much power is at your fingertips. This is because many talented people have written incredibly useful and brilliant things for the computer, and have put them out there into the world under an open-source license.
If you do a bit of searching, you can find many of these wonderful pearls of capability, usually in a github repository. And then you can download them and make use of them.
But here’s the rub: You can’t do any of this if you don’t know how to program. To be clear, you don’t need to understand how everybody’s code works. But you do need to know enough to at least put different pieces together.
I wonder whether there should be a computer science course just on this topic — learning how to mix and match code from different sources and make it all work. If there were, I would encourage all of my students to take it.
You do have to be a bit careful. Many years ago, I needed a matrix library for a JavaScript project. I had some C code I could translate, but *somebody’s* already done this, right? Sure enough, I found something. It was documented and looked well organized.
And wrong. I don’t mean not complete, or problems with edge cases; we’re talking 2+2=3 wrong. Back to translating the C code.
Very good point. I always test these open source libraries using their own test cases, before I put in any work to integrate with my own project.