Sitemap

More...

Mariya Gabriel, European Commissioner for Digital Economy and Society

Borderless Digital World

“We all need to be focused on...

Houlin Zhao, Secretary-General of the International Telecommunication Union

“4 I’s” For Success

I am confident that Serbia will continue...

Mihailo Jovanović, Director of the Serbian Government Office for IT and eGovernment

Digitalisation Has Transformed Serbia Overnight

Great results have been achieved over the...

Jorgovanka Tabaković, Governor of the National Bank of Serbia

Region’s First Instant Payment System

The NBS's IPS system enables the development...

News

Croatia’s Ruling Conservatives Win Parliamentary Election

The conservative Croatian Democratic Union (HDZ) party has consolidated its power in Croatia after winning 66 seats in the...

Biggest Portrait In The World Of Novak Djokovic

Architect and artist Andrej Josifovski, better known as the Pianist, made the largest portrait of Novak Djokovic in the...

Macron Appoints Jean Castex As New Prime Minister Of France

French President Emmanuel Macron on Friday appointed Jean Castex to replace Edouard Philippe as prime minister. French government resigned, just...

Startup Ecosystem Of Belgrade And Novi Sad Worth 502 Million Dollars

The American organization Startup Genome has published a new edition of its annual report, which estimates that the startup...

EIB Provides €30 Million To UniCredit Bank Serbia For Serbian SMEs

• The first impact finance loan for Serbian SMEs • This highly innovative EIB operation aims to support employment, sustainable...

Robert C. Martin, Software Engineer and Instructor; Agile Manifesto Co-author

Software Touches Everything

Robert C. Martin, colloquially known as “Uncle Bob”, is one of the world’s most famous software engineers, among the authors of the Agile Manifesto, the mind behind several software design principles and an outspoken advocate of agile and test-driven software development and software craftsmanship

Eight years after the famous quote and article by Marc Andreessen – Software is Eating the World – his statement and the title seems truer than ever. Entire industries have changed and software is touching everything, from banks and the financial sector, to transport, education, the healthcare industry and agriculture. It has brought many opportunities that were unimaginable just a few decades ago, but also many challenges, like ethical questions and security. This is why software craftsmanship is also more relevant than ever before.

One of today’s most influential software engineers and authors, Robert C. Martin, visits Belgrade this April to deliver a keynote speech at the IT Konekt conference, where software professionals and engineers from Serbia and the region will have a chance to see him live for the first time.

Nowadays, you are travelling the world and sharing knowledge at different conferences, as well as in your books and videos. You are visiting Serbia for the first time in April, to deliver a keynote speech at the IT Konekt conference – and the whole community is really excited at the prospect of seeing you! What are some of your thoughts and expectations before you speak at a conference like this?

– I always enjoy visiting new places and seeing new people. It encourages me when people show such enthusiasm. It fills me with optimism.

Back in 2001, you were one of the authors of the legendary Agile Manifesto. What drew you to that gathering?

– I called the gathering. Or rather, Martin Fowler and I collaborated on calling the gathering.

I was drawn to the idea by reading articles written by Kent Beck; later by collaborating with Beck to create courses in Extreme Programming.

Today, almost 20 years later, how do you compare the Agile movement with your predictions and expectations at the time?

Robert C. Martin, Software Engineer and Instructor; Agile Manifesto Co-author– We expected nothing. We were all pretty surprised by what happened instead. You are famous for your work within software engineering – with books like Clean Code, Clean Architecture, The Clean Coder… – but another huge impact of the Agile Movement and philosophy was also “Agile Beyond Software” – with incremental delivery, learning from feedback and responding to change becoming a cornerstone in other disciplines and industries, from education to even agile local governments.

What do you think about this? Are you also interested in “Agile Beyond Software” and have you had experience of such projects?

– I’m a programmer. It doesn’t surprise me that Agile-like concepts are applicable outside of software, but I don’t focus on that. For me, Agile is all about software.

How did you get started in programming back in the day?

– I developed an interest in computers very early. I was 12. A neighbour worked at Teletype corp, and he brought me a box of 50 electrical relays. I hooked them up to my electric train transformer and began to play with logic. I rapidly learned enough electronics to be dangerous and cobbled to get her several logic circuits. I collaborated with a good friend of mine at the age of 15 and built a binary four-function calculator. I was hooked at an early age, and that hook is still firmly engaged.

What would your advice be for someone who wants to learn to code today?

– There are so many paths. Python is a good language to start with. So is Lisp. The most important thing is to continue to challenge yourself. Keep solving ever more complicated problems. Learn many different languages. Most importantly, though teachers and tutors can help, always, ALWAYS, teach yourself. Learning is YOUR responsibility. Teachers are just helpers.

You’ve been part of the software industry since the 1970s, that’s almost half a century. How different is it today than during your early beginnings? Are there some things that have stayed the same?

– The hardware has changed enormously. The software has changed very little. Oh, we have much better tools than we had before. I can sit in an airline seat at 30,000 feet while coding and testing a massive web system, but the software that I use to write that system is still nothing more than ‘if’ statements, ‘while’ statements and computational expressions. Sequence, Selection and Iteration.

Software now touches every part of our lives, virtually every minute of every day. There is nothing you can do in modern society without software somehow being involved. So the ethics of software are the ethics of everything

Do you have any wild guesses on how the industry will change in the next 20 or 50 years?

– Less than it has. The hardware technology reached its limits in 2003 or so. There may be some incremental improvements coming, but the exponential craziness of Moore’s law is over. Without that wild growth to spur it on, I expect the software industry will settle down, choose a limited number of languages, platforms and frameworks, and become a stable and reputable profession.

In theory, algorithms and mathematical models lead to greater fairness, but in practice, they often lead to greater inequality when they’re biased. (Cathy O’Neil wrote an interesting book about this, called Weapons of Math Destruction.) As programs become a more and more important part of our lives, what are some of the technical and ethical challenges here? And should they be regulated in some context; and if yes, how?

– Software now touches every part of our lives, virtually every minute of every day. There is nothing you can do in modern society without software somehow being involved. So the ethics of software are the ethics of everything.

It seems very likely to me that software will become ever more regulated. That regulation will spread from the currently regulated industries into the less regulated ones as we recognise our vulnerability to software errors and failures.

What’s the best advice you’ve ever received?

– Never stand when you can sit. Never sit when you can lie down. If you lie down, go to sleep. Be honest.