Hey, what's up?
John Sonmez from simpleprogrammer.com.
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.
Không có nhận xét nào:
Đăng nhận xét