By May 4, 2017

What Is The Programming Language Of The Future?

A lot of developers ask me about the programming language of the future… They expect me to use my expertise to predict the future and tell them about the programming language of the future, hoping that they will start to specialize in such a language.

However, this questions leaves us with some other interpretations… Is that such a thing as a programming language of the future? I strongly believe that there will be a programming language of the future but we don't know it yet. The reason I say that is because I think all programming languages are converging into a same spectrum of functionality, making it useless to have a lot of programming things doing the same stuff.

So, do you wanna know what is programming language of the future?

Watch this video and find out!

Transcript Of The Video

John Sonmez: 

Hey, what's up? John Sonmez from I got a question here that—I get this question quite a bit. I'm going to try to answer this at least in one way. There's probably a few different ways I could answer this question but it is: “What is the programming language of the future?” I'll read the question I got here. He says, “Hi John, let me first thank you a lot for doing what you do. I watch your videos daily and you're really such an inspiration.” Well, that's cool. Thank you. “He says, “My Erik from Stockholm Sweden. I'm 22 at the moment and I'm studying computer science in college. Prior to this I've worked as a freelancer within web development but I wanted to broaden my programming experience, so I hit the books. Right now I'm testing out all sorts of different development, from building apps in Swift, learning Java, and right now low-level C. My intention is to try and learn as much as possible, but I still feel like I want to specialize in some type of language and really master it. I'm also really interested in AI, artificial intelligence, but don't really know where to start. My questions to you are: What is your take on the future of programming languages? What would you consider the most essential to master not only for now, but in terms of the future? Do you have any experience with AI development or know where to start?” I'm going to skip the AI development question and I'm just going to answer the programming language of the future question.

I think that the programming language of the future has actually not been invented yet. I don't think we have that yet. I think that what we've got right now is we've got a lot of languages that are evolving towards it but they're evolving in complexity to the point that we need a simplification. A lot of times what ends up happening with technology is we end up having sort of this pile up where we build up these huge things and then we have this massive collapse as a new level of abstraction is put down on top of it and it sort of paves over it and now we can simplify- things, right?

The reason why I say that is that because languages like C# and Java have become very bloated. They're very good langauges and they're very expressive. You can do a lot with them even some things like—even Ruby and Python and whatnot. We've gotten a lot of different things. We've gotten a lot of concepts where—I mean if you think about it, I'll just pick on one that I know which is C# which is we've essentially taken the language of C# and we've added a lot of functional programming to it. You can essentially do functional programming in C#. You could write C# code that is purely functional and that's sort of—if you think about all the different keywords, all the different things and C# keeps on growing that's a lot of stuff. We've kind of hit this point where you can do anything, but is that really what we need? What we need is to simplify.

We need to take all those concepts as we're learning, as we're evolving these languages and we eventually need to come up with a language that is going to be a little bit more universal. There's really no reason why we have to have so many programming languages. Right now, almost all programming languages are converging to this point where they all are kind of on par with what they can do functional wise. If you look again, some of the ones that I'm more familiar with, I know that C# now can do a lot. You can write functional in it. You can do a similar kind of coding that you would done with F# or Haskell or one of those other functional lisp and functional languages.

At the same time, Java has also developed now functional programming. You can do purely Java or functional programming in Java. I saw a Hacker News article where someone was writing about how they were doing purely functional programming in Java. It was a little bit of a bastardization of it but he y, I could see that happening. C# and Java are almost equivalent. Java started getting all these features that was being innovated in C#.

I think that there's really no reason why we have to have all these different programming languages at this point because they're all kind of able to do everything. Now there's some specialized languages and I understand the argument for that. So maybe there'll be a few different specialized languages but we really need to come to a point where we have a general purpose programming language that we just use, that everyone uses and it gets developed and is simplified because there's just—there's no reason, right? There used to be a reason why we had all these specialized languages and they existed for specific purposes. There are still, like I said, to some degree languages like R and whatnot, but even those I think we can really collapse under one programming language and that will make things a lot more effective for the future because we don't have to learn as many things. There's not as much gaps between communication.

That's what I think is that I think we're heading towards this point. I think we'll eventually have a language that dominates. I think we're still early in the development of software development as a career, as a profession, as a science, if you will, and that that we'll eventually hit that. Just like mathematics has a standard mathematical notation. I mean there were a bunch of different ones and now there's just one way in general. I mean maybe there's a couple, but there's one general way that we do mathematics and we write down—we have different symbols that we utilize and we pretty much standardize on that. I think that programming is no different that we'll eventually find that and we just haven't found that yet.

As for today, I really couldn't say what programming language that I would recommend. I did a video on the most popular programming languages for 2017. You can check that one out if you're curious what my thoughts are on that. It changes from day to day. We've got a lot of fluctuation. JavaScript is still probably a pretty good bet at this point to hit your wagon to and Python is also one of those ones that I think that I see really increasing. Its' really hard to say at this point because we still have this very much diversified field of programming languages out there. I do hope that we do converge on one though. I do think that's the future. I can't see us having just this many programming languages that are now all becoming closer and closer to functionally equivalent. It just doesn't make sense. If you can do the same stuff you can do in C# and Java and Python and Ruby and all the other programming languages why have so many of them and make things so confusing? But you know what, technology is never—it doesn't always follow the straightforward path that I would like it to.

All right, if you like this video and you want to get more videos like this one on programming, software development, living a better life, improving your fitness, achieving your goals click that Subscribe button below and I'll talk to you next time. Take care.

About the author

John Sonmez

John Sonmez is the founder of Simple Programmer and a life coach for software developers. He is the best selling author of the book "Soft Skills: The Software Developer's Life Manual."