Well, today I asked myself that question, and based on what I’ve seen so far, I think the most compelling arguments are the following.
Why this is relevant now is that these self-taught programmers have different backgrounds, and thus different preexisting skill-sets and technical know-how. Some come from backgrounds in graphics design, some in pure sciences, and some in economics or business related courses; some are even war veterans². Depending on such technical background, it might be easier to use one framework over the other.
The important thing to understand here is “inversion of control”. A computer library is composed of reusable components that your custom code calls in order to make use of a particular functionality. If you import code you downloaded from a repository and use it in your code, that’s a library. A framework, however, is when your program is structured such that the reusable, imported code within your program is the one that’s responsible for calling your custom code only when it’s needed. The framework controls the flow of the program, not the custom code.
Now given that explanation, it may come as a shock to some that the popular React framework isn’t actually strictly a framework. It leaves too much structural and logical control over the individual program to be really considered one.
Shuwa, D. (2021). “The Top 100 Free University Courses of the Year (Ranked by Popularity)”. Free Code Camp, 22 Dec. Available at: https://www.freecodecamp.org/news/most-popular-free-online-courses/ (Accessed: 18 Apr 2022).
In 2014, an organization was started to teach war veterans how to reenter regular society as effective software developers: https://vetswhocode.io/.
Ranjan, R. (2021). “What is a Framework in Programming & Why You Should Use One”. Insights about Product Development, 7 Oct. Available at: https://www.netsolutions.com/insights/what-is-a-framework-in-programming/#:~:text=A%20framework%20in%20programming%20is,inversion%20of%20control%20(IoC). (Accessed: 18 Apr 2022).
P.S. Please subscribe to my blog for more detailed, thought provoking content: https://cassaden.com/blogs/curated