this post was submitted on 19 Jun 2023
34 points (100.0% liked)
Programming
13370 readers
2 users here now
All things programming and coding related. Subcommunity of Technology.
This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
My AOP Professor once said that today, we build software like medival smiths built swords: The customer would describe how he would want his sword to look and feel like, and the smith crafted each and every one individually. This led to very unique and well fit, but also very expensive products.
He said that we should aim to build software products like the industrialization revolutionalised manufacturing: Assembling many modular parts into something, instead of hand crafting everything. In his opinion, this will lead to faster and cheaper development.
A company I worked for did something like that for websites. Each website was a little module and you could link them together and have special modules that would do database access and things like that. Easy to use, barely required coding skills.
Aren't libraries a bit like what your Prof suggests. Luckily I don't have to code matrix multiplication, I just have Eigen. Luckily I don't need to code back propagation, I just use Torch. Etc. These tools are for coders, arguably less or differently skilled coders. There just needs to be a bit more simplification or a bit more education of the general public.
Libraries are absolutely exactly that. The problem I see is that because this profession is so young, we do not really know how to do anything. For most use cases, there are multiple tools, languages and libraries available, it's a lot of work to find out which to pick.
I am sure that when people started building hats, there was a lot of different ways to do it. Many techniques must have been pretty shitty. Noone knew what the best way is, but eventually, everyone agreed to one (general) shape.
It's possible that the same thing will happen to programming as well. Maybe one day, there will not be more tools for coding REST-APIs (or something similar, in case we find something better than REST), because the one tool everyone uses is already perfect.