Stack Overflow creator: ā€œDevelopers are the ones who write the script for the futureā€

image

Welcome all. Thank you for inviting me.

Behind me you see the cockpit of the Douglas DC-3. So, this aircraft was built in 1935; pay attention to the fact that each indicator, each panel, each sensor and each switch is somehow connected with the aircraft itself. Thus, if you pull the control handle of this vessel, then in reality you pull all the cables and thrusts connected to the flight control planes of the aircraft, and then it moves through some form of direct control. This is very different from a modern airliner.

image

For example, on the Airbus A380, you have at your disposal a bunch of "ipads" and glass screens, which are essentially computer output devices, and a bunch of buttons and switches are input devices to the computer. That is, the ship itself is controlled by software, and the pilot is the link. Instead of a control stick, you have a keyboard, which is very convenient if during the flight you decide to update your feed on Facebook.

And this is a metaphor for everything in modern life. Many of the things that we used to do through direct interaction now use software in their work. We no longer set alarms manually - we run a program that will wake us up. Instead of notes with information, we send messages. Instead of standing on the street and catching a taxi, we will call Uber ... maybe someday we can do it in Helsinki.

image

Now think about your role as a liaison in software. On the slide, you see Amazon's warehouse, which they call the picking center, where workers walk and fill boxes with things.

image

In fact, they have no idea what exactly they are doing. A bracelet is put on their wrist, which literally tells them where to go and what to take from which shelf. They donā€™t even need to know what exactly they are taking - they scan the barcode and drop the item into the box.

image

Thus, the whole process takes place through computer software. And if you think about those workers at the Amazon warehouse, then they are, in a way, the very same output device for a software developer who is trying to write code in which the box will be packed and sent. In fact, software developers could gather all the workers on the lawn in front of the warehouse, build them in giant letters, thereby writing their names, and take a picture from the drone. This is how Amazon programmers can have fun. And for this they can fire.

So, all this software for Amazon warehouses was created by developers who one day noticed that low workers could not reach some shelves, so they had to stop work, get out the stairs and climb to the highest shelf, which could well fall. Therefore, the developers received a database from the personnel department about the growth of all colleagues and changed their code so that only high workers took the goods from high shelves. And, if you think about it, it's really cool to manage all the work with software and not let people interfere in the process. After all, software can do so many things on its own. He can have his own opinion, it can also be an intermediary. People create it, and my question is: who are they? Who are these software developers who shape our future?

Let me tell you a little hypothetical story. Tell me if this happened to you ... You call your best friend and ask if he will go to the party with you. He finds an excuse by saying that he is sick / busy / tired / overwhelmed with work / not even in the city. Well, okay, a couple of days later, you go to Facebook and see that in fact, your best friend went to the party, and even with ... well, I donā€™t know, your ex-wife.

image


Well, what happened? For some reason, this is increasingly happening on this social network. At first, Facebook just wanted to show you some kind of event in the world, and then decided that it would be more interesting, because your friend and another person from your friends list are participating there - it just so happened that this is your ex-wife. In any case, this is not the most joyful event of the day, and you are sad for another six months.

This is the problem of mediation. Unlike Amazon, Uber, or your alarm software, Facebook is not the link between you and the objects in the world. He acts as an internal mediator between people, and this is already important.

A group of academic researchers conducted a study with people who have Facebook pages. In my opinion, six hundred eighty nine thousand people took part in this experiment.

image

Researchers ran the news feed of these people - some were shown only good news, some were only sad, and, for sure, there was still a control group. The discovery was absolutely amazing. They found that the group, which was only shown good news, was happy, which cannot be said about a group of people with sad stories. It would be hard to think that everything would end just like that, right? They called it "behavioral infection" - such an arrogant academic word. This research cannot be called deep, for it is precisely such results that were to be expected.

image

What they certainly did not expect was the hype around history - many complained that the study was extremely unethical in an attempt to manipulate people's emotions without their knowledge. This is a violation of ethical standards. But tell me, what does Facebook do? What do you think they have been doing all day long? Firstly, they do not show you absolutely everything that happens to your friends. There is an algorithm written by developers using machine learning - it is a set of matrix multiplication - which tries to show you the news in completely random order. But what kind of algorithm is this? What is it based on? For what purposes is Facebook trying to optimize its work? What do they want to create? What are they guided by when choosing news that fall into your feed?

Their goal is not to even help science and detect behavioral infections, their goal is to make you continue to use Facebook. Thatā€™s why they optimize their work. They are looking for things that will cause you to engage, and by ā€œengagementā€ they mean genuine interest, say when you send news to your friends. This is a sign of your involvement. And now you have this algorithm, the purpose of which is to make decisions about what news the world sees, what kind of engagement, what people will ā€œclick onā€ and what they will be interested in.

When we started creating social networks ... I say ā€œweā€, but, of course, it was not me. When the high-tech industries began to create Twitter and Facebook and the like, there was a lot of news about how it will help democracy, that social networks are communication tools of revolutionaries in dictatorial states around the world. Etc.

All this was perceived very utopian, everyone thought that Twitter and Facebook would bring great benefits to the world. This reminds me of how, at one time, television was also a wonderful thing, how farmers in Egypt would watch it and learn how to bake bread, open cans, and how the whole world would become much better thanks to the educational abilities of the TV. In fact, we got Lucille Ball, Louis Cay and other nonsense.

So, I think that approximately the same thing happened with social networks: we kind of also began to hope that they would improve our communication qualitatively. In fact, we got bubbles. Bubbles in which people hear only themselves and their side. Everyone in America was surprised at the results of the presidential election. And this happened because of the Twitter and Facebook algorithms, which threw up news with a similar opinion to you. The New York Times actually analyzed this situation for the dissemination of false news, because in fact it is important.

image


This guy was walking around his hometown of Austin when he saw a bunch of buses. He also saw demonstrations or heard that protests against Donald Trump are taking place in Austin. And so a fake tweet appeared that anti-Trump protesters were paid for the protest, and all because of the buses on which they arrived. The tweet photo was supposed to show the buses that brought demonstrators from, say, Mexico. In fact, the buses were intended for a technology conference, which always takes place in Austin. But history began to live its own life, because it excited certain people. They talked more and more about her, the story reached the Reddit website, or rather, the subreddit about Trump. It all ended up even the president-elect of the United States telling this fake story,which had no evidence. And it took only one person with a Twitter account, who decided that the story could be interesting.

History has not spread so much because it was true or important. This happened because she pissed off people. And the ideal formula for sharing information on Twitter and Facebook is a combination of justice and resentment in people. There is such a quote: ā€œA lie will go around half the world while the truth puts on its pantsā€, and, I think, this lie will forever remain in people's memory. That there really were professional participants (working out money - approx. Translator) protests against Trump. Even before the advent of social networks, when any idiot with a camera could spread fake news, there was a print press. A lot of money was involved there, as well as a sense of responsibility to the world for the release of news. In a way, this can be called journalistic ethics.

I think that now many people working in high-tech industries are wondering - maybe you and I accidentally built the Ministry of Truth instead of creating a utopian mechanism simply because social networks work just like that? Everything that I am talking about was created and activated through the mediation of software, because its main job is to be a link between people. What is software? Let's talk a little about it. Software is a bunch of lines of code. What is a line of code? A line of code is an encapsulation that you need to know two things about.

Firstly, it will work in the future, it is real. And in a sense, this is the future. This is a very tiny bit of the future, but if you put it all together, then the future becomes more and more. Secondly, a line of code represents many decisions, a whole bunch of personal decisions that a software developer makes. Every word, every line, every parameter, every function, every function call, all these are tiny decisions that a programmer made and every decision he made will affect the future.

That is why at Stack Overflow we say that developers are writing a script for the future. You sit and write a script that will be fully implemented in the future. What else you need to know about the software is that it has become more complicated over the past 30 years. When I started programming 30 years ago, everything was much simpler. This is VisiCalc, the most famous software that was used on Apple II. The Apple II CPU chip, which I now hold in my hand, seems a lot smarter than the computer itself. On Apple II, you could add, subtract, possibly multiply, but sharing something was an impossible task. To do this, it was necessary to write some kind of user code.

When I first started to understand Unix in college in 1987, it was enough to read two not-so-thick books - and you knew everything about software. It was very simple. Changed the fact that now we live in a world where we are surrounded by Uber, Stripe, payment systems, Google Maps and others. And now, if you create software, you can very easily take advantage of what already exists. If you want to display a map, you can resort to the help of Google Maps, which will open the map in a millionth of a second. If you want to call a car, well, not in Helsinki, of course, you can use Uber and their interface - the car will arrive in about 1.5 lines of code. If you want to make a payment, you will use the Stripe interface. And also, if you want to combine these things, you can create very complex code. The code,consisting of ten lines. Pretty cool, huh?

Google Maps, or rather satellites in space, took a high-resolution photo of our planet, and you can use this in your own code with just one line. You can call a vehicle with a person driving, and I wonā€™t even talk about how many lines of code are in the car. A payment processing system that covers, I donā€™t even know, 200 countries and 9 million (and this is the real number) lines of code that is part of the global payment processing system, you can also call a few lines of code. About the same amount is needed to complete the division process on the Apple II. This is how things got complicated.

image

But what does this mean? And the fact that sometimes something can go wrong and the system becomes difficult to debug. Suppose that in your application you have placed a Google map and you only need one line of code ... I would call it that because I see a couple of semicolons, these are two lines of code. So, you put the card in your code and find that when the user scrolls the mouse wheel, the card increases and decreases. You do not want this to happen and are trying to disable the scroll wheel. And you do not succeed, because you do not understand how Google Maps works, because you just copied part of the code from the Internet and pasted it into your code. Further, you do not come across a corrector of scale and you think that if you turn it off, it will solve your problem. But it doesnā€™t come out again.

image

So what to do? You also donā€™t understand how Google Maps works. You can follow the instructions in the book - order it on Amazon, wait for delivery, read all 465 pages.
Perhaps you will begin to understand the structure of the platform and find the answer to your question. And you can write in the search engine "turning off the scroll wheel on Google maps."

image

You may well see that this question has been asked before you. If not, you can ask it yourself online and get a solution to your problem.

image

For example, on Stack Overflow, this is a site that Jeff Atwood and I launched in 2008.

So, a couple of things you need to know about our site. At the moment, 13 million questions have been asked on Stack Overflow - and this is only about programming, and there are 150 more sites on other topics. 20 million responses were written by programmers around the world. We have 113 million unique pageviews and about 781 million monthly page views. This is an absolutely gigantic network.

What sets us apart a bit from other sites is voting. When you see an answer, you can vote for or against it, depending on whether it suits you.

image

And already this feature makes Stack Overflow a more powerful resource for developers who solve their problems. Voting is directly related to reputation. If your answer gets promoted, then your reputation also increases, which is displayed in your profile.

image

We also track the number of people you have helped.

And this leads us to the next question that they always ask me - how do we do business and how do we make money. We are looking for great programmers who do awesome work on the site and find great work for them. So, now your Stack Overflow profile allows you to not only show your achievements on the site, but also create your own developer story.

It indicates everything that you are working on, everything that you know and donā€™t know. And, if you change the settings, you can open it for certain employers who will hire you through the Stack Overflow Talent.

So let me summarize. It may sound strange, but the world has become such that everything in it is determined by software - even such simple things as an alarm clock or a taxi call. And it seems that this is not at all important. But this becomes important when presidential elections also occur using software. All the decisions that developers make are incredibly important. And it is important for us to understand who these very software developers are. We need to perceive them as philosophers-poets of our time. And that is why we are so obsessed with them on Stack Overflow, so our mission is to help them share knowledge and improve their level.

Many thanks!




image
Learn the details of how to get a sought-after profession from scratch or Level Up in skills and salary by taking SkillFactory online courses:




All Articles