Rationalizing the Rationalizers: The Rationalization of Software Developers: Brenton Lian Sociology 57H, Professor Howard ALdrich, Spring 2024

What is Rationalization?

George Ritzer's McDonaldization, also known as Rationalization theory, is the process by which the principles of fast-food restaurant are coming to dominate more and more sectors of American, and global society.

The 4 main principles of Rationalization are Efficiency, Calculability, Predictability, and Control.

Efficiency

Creating a product or performing a service as quickly and cheaply as possible. In the case of software development, the product is working code that meets customer requirements.

Higher performance hardware has improved efficiency in software development. Computers from 2024 are roughly 2 billion times more powerful than those from 1960.

Calculability

Emphasizes the quantitative aspect of products sold and services offered, putting an emphasis on fast delivery and high quantity.

Software metrics intend to increase the calculability of software development by calculating statistics pertaining to development (Timbó, 2023). 

Predictability

Assures that both products and workers will be consistent over time in different locations.

Version control improves software development predictability by backing up code to prevent data loss and ensure all developers in a project can access the same version of code.

Control

Non-human limitations placed on both the customers and workers of rationalized systems to deliver the outcomes the system desires.

Project management frameworks like Agile attempt to add control to software development by ensuring software development proceeds in an orderly manner.

Pioneering Software Development: 50s and 60s

The 1950s and 1960s was the pioneering age for software developers, and it was host to key developments in hardware including transistors, which were much more efficient than previous vaccum tubes (Alba, 2018), but computers still looked like the huge mainframes shown above. Innovations such as Grace Hopper's FORTRAN language similar to natural English enabled software developers to communicate more effectively with computers (Computer History Museum, n.d.).

The PC Revolution and Quality Control: 70s and 80s

The 70s and 80s continued to bring increases to efficiency with better technology like microprocessors. Computers become mainstream in North America, with the millions of Apple-II units sold marking the start of the PC Revolution. By the 90s, there was a wide variety of computers that were not similar or either a hardware or software level, while software developers faced greater demand for products that worked well on every computer. As a result, Quality Assurance (QA) and organized testing of software became a standardized process to improve the predictability of software.

Metrics and Management: 70s and 80s

To supplement quality assurance, software developers attempted to use software metrics to improve both the calculability and predictability of software: The theory was that good code had certain measurable characteristics, but in reality it was challenging to develop a one size fits all metric.

The 70s also brought one of the first project management frameworks to software engineering, the Waterfall methodology, a sequential model for planning, building, and delivering new products. Waterfall was similarly held back by it's rigidness and one size fits all approach (Aha!, n.d.)

Internet, Version Control, and new Frameworks: 90s and 2000s

In 1986, there were only 2,000 users of the internet: By 2005, there would be nearly 2 billion. This innovation would greatly expand the exposure of most ordinary people to the innovations of computer science.

The Git version control system is one of the most commonly used in software. Git is a distributed version control system, where every member of a project stores a copy of the project and each version of it. Git and other version control systems greatly improved the predictability of software development by preventing data loss and allowing software developers to revert back to earlier versions of code when necessary.

The new Agile framework became common as a non-human control framework used for project management in software development. It emphasizes greater flexibility and communication in software development, aiming to have software built by humans work for humans.

ChatGPT presents the possibility of not only the full automation, and therefore rationalization of not just software development, but almost every single field. The first version of ChatGPT, GPT-1 was released in June 2018 with 117 million parameters (More parameters roughly correlates with more powerful AI). Two years later, GPT-3 had 175 billion parameters, and was able to write code (Marr, 2023).

AI Threat to Job Security: Developers Persepctive

According to a survey on software developers conducted by Kuhail et al. in 2024, only 3% of surveyed software developers saw AI as a significant job security in the present with 47.5% seeing it as no threat at all.

Some arguments for developers that thought they were safe from AI included the belief that domain knowledge in computer science will always be needed for software development, that AI can solve only isolated problems, and that AI is unable to check if code meets local standards and regulations.

Those who thought AI threatened them reasoned that AI was already intelligent enough to complete full projects, so therefore software developers would be relegated to designing code rather than writing it.

Rationalization Stakeholders and AI

AI promoters

The Biden administration has promised to provide $3 billion for the use of AI in government, while China's military plans to invest 1-2% of it's entire budget in AI. Private companies like ChatGPT's parent compant OpenAI and Nvidia have won big from AI, with ChatGPT receiving $25 billion of private investment in 2023 (Stanford University, 2024), while Nvidia, a manufacturer of GPUs used for AI research became the 3rd largest company in the world (Sommer, 2024).

AI Detractors

Not everyone is so eager about the continued push for AI. The European Parliament has passed the EU AI Act that regulates the use of artificial intelligence in all EU territories, with certain high risk AI systems, such as those which can be used for cognitive behavioral manipulation being banned. At the state level, in the United States, there has been AI regulation that aim to do various things, include banning discriminatory AI and deceptive media generated with AI (Norden, 2023).

Increasing rationalization also hurts developers, with 262,000 tech workers laid off in 2023, and 90% of surveyed developers believing its harder to find a job now than before the pandemic, although this could be related more to overhiring rather than AI.

Believe it or not, software development can be rationalized even more than it already is. On the efficiency front, ChatGPT and other AI can be continually improved and built on. The development of a software metric that could truly compare code would be a revolutionary change in predictability and calculability, and improved project management frameworks aim to do the same thing.

There has been incredible developments in the rationalization of software development in the past 70 years, and yet AI promises to bring more to the field in 10 years than the preceding 70. Software development may become fully rationalized through AI, but the question may be if the entirety of society is able to keep up with such a fast pace of technological development. The software field must balance both human clients and developers and increasing rationalization through artificial intelligence. Software developers work towards not only the rationalization of their field, but the rationalization of almost every field with unknown outcomes for human society as a whole.

References

Aha!. (n.d.). History of waterfall and agile. https://www.aha.io/roadmapping/guide/agile/agile-vs- waterfall.

Alba, M. (2018, January 19). Vacuum Tubes: The World Before Transistors. https://www.engineering.com/story/vacuum-tubes-the-world-before-transistors.

Arcuri, G., & Shivakumar, S. (2022, October 18). Moore’s Law and Its Practical Implications. Center for Strategic and International Studies. https://www.csis.org/analysis/moores-law-and-its-practical-implications.

Cerullo, M. (2024 January 25). Tech companies are slashing thousands of jobs as they pivot toward AI. CBS News. https://www.cnbc.com/2024/03/30/fomo-drives-tech-heavyweights-to-invest-billions-in-generative-ai-.html.

Computer History Museum. (n.d.). Timeline of Computer History. https://www.computerhistory.org/timeline/1950/.

Gaba, I. (2023, February 22). What is Version Control and What Are Its Benefits?. Simplilearn. https://www.simplilearn.com/tutorials/devops-tutorial/version-control.

Hale, C. (2024, January 11). Software engineers are worried AI is ruining the job market. https://www.techradar.com/pro/software-engineers-are-worried-ai-is-ruining-the-job-market.

Kuhail, M. A., Matthew, S. S., Khalil, A., Berengueres, J., & Shah, S. J. H. (2024). “Will I be replaced?” Assessing ChatGPT's effect on software development and programmer perceptions of AI tools. Science of Computer Programming, 235(10311). https://doi.org/10.1016/j.scico.2024.103111.

Laoyan, S. (2024, February). What is Agile methodology? (A beginner’s guide). Asana. https://asana.com/resources/agile-methodology.

Marr, B. (2023, May 19). A Short History of ChatGPT: How We Got To Where We Are Today. Forbes. https://www.forbes.com/sites/bernardmarr/2023/05/19/a-short-history-of-chatgpt-how-we-got-to-where-we-are-today/?sh=6ae77228674f.

Norden, L. (2023, November 6). States Take the Lead on Regulating Artificial Intelligence. Brennan Center for Justice. https://www.brennancenter.org/our-work/research-reports/states-take-lead-regulating-artificial-intelligence.

Ritzer, G. (2020). The McDonaldization of Society: Into the Digital Age, 10th Edition. Sage Publications.

Sheldon, R. (2020, February). Git. TechTarget. https://www.techtarget.com/searchitoperations/definition/Git.

Sommer, J. (2024, March 15). If Nvidia Keeps Rising Like This, It Will Be Bigger Than the Global Economy. https://www.nytimes.com/2024/03/15/business/nvidia-stock-market-ai-bubble.html.

Timbó, R. (2023, August 18). Code Complexity: What It Is and How to Measure It. Revelo. https://www.revelo.com/blog/code-complexity.

Tozzi, C. (2016, July 12). Quality Assurance and Software Testing: A Brief History. SauceLabs. https://saucelabs.com/resources/blog/quality-assurance-and-software-testing-a-brief-history.

The AI Index Report. (2024). Stanford University. https://aiindex.stanford.edu/report/.