The software world changed right in my turn

João Paulo N. Soares
4 min readSep 3, 2021

Dado Schneider has a very fun and extroverted talk called “The world changed right in my turn” which brings some reflections on the impact of the changes that have taken place in this new millennium and also on the conflicts between different generations that seek to maintain or conquer its space, as never before seen in human history, sharing the same social and work environments with such a great diversity of ideas and thoughts. Bringing this idea to this giant world of development I can also say that: The software world changed right in my turn!

At this point you may be asking yourself, how can a person so young who was born practically yesterday have the audacity to say that the software world has changed right in his turn if he didn’t live almost anything? I’ll need to go back in time to explain better. Let’s go back to the turn of the millennium, around the 2000s, and think from the perspective of a developer who is about to start a new project for his company: What were his concerns at that time? What technologies would he use? What would be the first step?

To answer these questions, we can list some hypotheses: this developer would probably be developing for his company an application that would be available on the internet, driven by the interests generated by the phenomenon of Web 2.0 (which spread the internet as a platform to provide services to several people ); it would also be very likely that this same person would be responsible for performing all phases in the development of system, from eliciting requirements to subsequent maintenance, with the main focus only on delivering the system at any cost; this developer would also use in his ‘stack’ a number of technologies that could be counted on the fingers of his hands to build the system; the application would likely be hosted on the company’s server close to the developer desk; would be concerned with building an interface to be accessed on a single device standard: desktops; and some other concerns related to how would be the user experience using this system would not even cross his mind because this developer’s focus were to make the information available in some way, and he will make it available in the way he considers most appropriate.

These were not all concerns at the time and were generalized to raise the following question: Am I saying that the software world changed because in the past was easier to build a system? Actually no. The difficulty of coding a system using the technologies of each era cannot be compared but can be said that the challenges faced by people working in development today are much more diverse than compared to 20 years ago. Doing a reflection exercise, similar to the previous one, let’s bring up some situations present in modern software development.

To begin with, we already have a big change when compared to the 2000s, formerly we have in our imagination only one person in front of the computer developing a system without communicating with other people, but when we think about software development today we undoubtedly think of a diverse team, that demands that a person in the software world today not only be good in technical knowledge but also able to deal well with the called soft skills. The concerns in development are now also shared among those members who play different roles during the project’s development and are probably guided by one or more methodologies in their process that are defined according to maturity models so that the best results are achieved. The development “stack” of this project will have several technologies (languages, tools, libraries) that cannot be counted on just one person’s fingers. This system will likely not be hosted on the company’s server, not even the staff will know exactly where it is hosted, as it will be in a third-party data center in another place around the world. The developer will be concerned with coding small features in a period of time, following criteria defined by other members identified from user tests to evaluate the best way to achieve the goals. The systems need to adapt to the reality of those who use them, making teams think about concepts such as responsiveness in the most diverse devices, as well as considering factors such as computational power or internet access speed available.

All changes within the universe of software development are a reflection of changes in society that go far beyond those directly linked to technological advances, such as the democratization of access to the internet and technology, but are mainly linked to changes arising from conflicts between generations, of the diversity of thoughts and ideas, of the visions of the future that make society today seek to be more plural, diverse, democratic, egalitarian. All these reflections can be seen in the software built by this new way of thinking in this new teams, applications today are built to be accessed on the maximum number of devices at any period, they are built thinking in the public that will use and be concerned with concepts related to accessibility to let egalitarian access to the services.

That sentence at the beginning needs a little complement: GREATLY the software world changed right in my turn. I’m happy to say this because while people related to development are saying that phrase we can be sure that the software world is constantly evolving and following the changes that our society has all the time, that the software is being relevant to build the future. As everything changed in just 20 years, I can only imagine what it will be like 20 years from now, but I hope people keep thinking and saying: the software world changed right in my turn!

--

--