Which Programming Language?

Internet DNA Podcast

Thinking of studying computer science at Uni? Want to change careers? Programming languages have moved on and here is a little run down, peppered with a little bit of 'evil fb' for good measure ;)

 

Transcription

(This transcription is written by robots… so don’t be surprised!)

[inaudible]

I'd love to run it this week. We are going to be talking about which programming language for people starting out, people changing careers,

people wanting to know the different languages for different software development and maybe you can start off then.

Okay, so beyond the the standard like html and CSS, which you're going to have to learn if you're going to want to build webs and I'm assuming we're talking about the web to be a web designer developer type of thing, but beyond that the answer is javascript because it's now not just a front end tool. It's actually a backend tool. So you can use things like react or node while you're using node as a server and then you can use things like react and build your whole website effectively in Java script and it's not just all random front ends. You've got backend components as well. So I think if you went onto any Morton web developer course rather than teaching you the old lamp stack, they would be teaching you than you mean stack. Okay, well let's take a few stacks back. Yeah, it stuck it out. What do you mean by a stack? Okay, so a stack was a stack, so that's all the technologies you're going to need in order to deliver a website. We're going to talk about the old lamp stack. Let's talk about what that entails. So that is Linux, right? Which is more of a operating system. Thank you. Apache, which is the web server, my SQL, which is the database and PHP, which would have been your programming language of choice. So that's all the things that you need

to run. That doesn't include the making it look good. The html and the CSS.

Yeah. As I said at the beginning, you have to do html and CSS and you're not going to get away with not doing that and you're not going to get away with not doing some javascript because as soon as you want anything to do anything, unless you want just really static pages, a lot of the client side stuff, we're still going to be done by javascript.

So there are no developers that I would call back end. You'd call full stack. I imagine that don't do html and CSS. So even if I'm a c Sharp,

oh no. Okay, so it's a backend developer or you're a database administrator. You don't need to know it, but I think it would, you would find it immensely helpful to know it. Let's be honest, CSS and html has concepts. We'll take you a day to learn to learn. The real intricacies of of CSS can take you many years, but for most applications to get yourself to a, I am a junior web developer. Yeah, you can learn them in a day and then use the internet to look up specific things like, oh, what do I do for the background, color or gradient? And you can just look it up in there. It is, but the actual concepts won't take you very long to understand. You might want to learn things like how it works and stuff, but the actual concept of CSS and html is very, very simple.

It used to be that if you wanted to learn to be a developer, a web developer, we're talking about you with do what computer science is and it would involve PHP, would you not at the same time. And then ASP and the.net side of things. And at what point would you decide which one you are going to do it.

Okay, so you may have learned those and you may have learnt Java so you may have learned JSP. I think it was good, but really everybody just did well. I scroll on PHP because a, those two things were free. Nobody ran on no serve as apart from big corporates I guess cause there was licensing fees involved. And the same with Java. Yes, they have their applications, they have their uses and there are very good reasons for using them in certain circumstances, especially when you're trying to integrate with, let's say Microsoft stuff or things that use Java natively, but the sole websites we're talking about, you would

the CSL, I'm talking about everything I'm talking about. If I wanted to be,

yeah, but we were talking about one language, but you're 1810 years ago you would've been PHP because its application was so much wider.

Let me get a word in edgeways. If I'm 18 and I want to earn lots of money and I'm good at maths, I wouldn't necessarily learn PHP because I might want to go and be a software developer or a Microsoft developer or they might not much more lucrative if I go work at a bank or something. Is that still PHP? I don't believe you actually.

Can you just look it up like you're like look at the percentage of patchy that stack compared to Ios

complain about this. I believe that in this case I am going to be the guru. I thought the money wasn't in PHP. I thought the money was in what I would call even more serious programming languages, but now I could be struck off everyone's list for saying it, but software development really doesn't use PHP too.

No software development, you wouldn't be using it, but we were talking specifically about Webs, so

name a few software development programming move away.

Then you're going into sort of c sharp and that sort of thing perhaps, but it go lang, but for web development and if it's your first job as we were talking about, Microsoft may have been a choice if you had a specific job in mind, but it would've been a bad choice as a all rounds. I want to be a web developer. Just look at wordpress for instance. That's lamp. It's not [inaudible]. It's not ASP. You very, very rarely see in modern sites written in those languages because they lost the war. Basically

what I'm trying to get at before we move on to a web developer, which you're incredibly keen to talk about is how and why would I decide whether to be a software developer or a web developer

because you're either the sort of person that wants to sit and do software, you know, or exactly. I mean one of the things to remember is that to jump from one language to the next is not as big a step generally as just picking up your first language. I mean, once you understand the functions, you understand the res, you understand database connections, you're just learning. Your first language was more difficult than you learning your second language. I still have lots of my first language. Yeah. Well my point is actually gains nowadays. You know what you mostly develop in frameworks. A lot of games are built in unity and, Oh, I'm not entirely sure, but I would guess if you wanted to go into that type of development, you would pick up some sort of c languages, your first language and then you would develop in whatever the tool is that you're given. Because I'm pretty much, if you can do c, everything else is, you know, it's just a lighter flavor of the holy grail. Yeah. Or certainly was when I was squaring up when I was growing up. Yeah. C was the thing that showed that you really knew programming. They're not languages that I have a lot of knowledge about. Um, I have never been a software developer and therefore it's not my area of expertise, which is why I was saying like we're talking about being a web developer.

I mean stuck. Yes. Means that it's the same thing. So it's Mongo as your database. Now it's talking in here, cause you can talk about [inaudible] stack as well. So it's express, which is your web server, node, js and the a in there is angular. But that could be react. That could be any number of these different frameworks that you use to build the components. So the replacement for PHP in this case would be react. The replacement of my escrow would be Mongo DB. The replacement for patchy would probably be express and the replacement for dos it, I mean you're not replacing the Eos, but you're gonna use no js. Now the thing about all of those is that that's all Java. Every single one of those is a driver's grip library. So this is Java script. Have any relation to Java? No, not at all. It's very confusing.

It is. And I think the reason why they called it Java, because they wanted it to sound cool because Java was the cool beans at that time actually called ECMAScript. So ECMA script is the proper word for it. Javascript was a bit of sort of branding for it. So yeah, Java script has nothing to do with Java. That's a common misconception. Okay, and what about jquery? Jquery is a Java script library. So what it did back in the old days, we to have to write lots of different code for every different browsers, especially Microsoft because everybody wanted to do it in their own way. When we were back in the battle days of the browser wars, so what jquery did, it would say, do you know what? I'm going to do all of that for you, and you can write just queries. So now you're only having to write one script and it will work on every browser because we handle the browser handling for you. Plus we give you a whole bunch of really simple ways of doing things rather than having a really complicated way. So it just simplified and unified that you could write Java script, you didn't then have to worry about, oh, they're on Netscape four. So instead of having to write a whole bunch of, if it's Netscape full, then if it's in explorer six, then

yes, I do see what you mean. And so if I'm going to uni now, is PHP a safe bet or is it really javascript javascript now? And how different is it if I'm a PHP program or would I pick up react straight away?

Well, react you much like a little bit longer to to pick up. Not Very Long. Java script wouldn't take you long at all and if you were starting now, you'd pick up javascript and you might add a PHP later. Whereas if you've already got PHP, there's a likelihood is you've done quite a lot of javascript just from front end coding. Nevermind the bat. We're talking about us now. The backend coding has gone to Java scripts as well. It can be reactive, be angular. There are lots of different ways of doing this. I think reactors, Facebooks, I think they develop it.

That was going to be the next thing I bought onto. If I wanted to be a wordpress developer or a Shopify developer or a Magenta developer, they're will PHP. All of those ones. Those ones, yeah. Okay, so you still have to learn these base languages before you go and use a platform,

those sorts of platforms? Yes. I mean there are obviously javascript platforms that you can now start to run on, so

so the newer ones might be on new languages,

Java script and these type of technologies are sort of taking advantage of something we laughingly called Web 2.0 well before it actually happened, which was leveraging microservices. So everything becomes very API best. Everything's very interconnected. You can pull data from lots of different sources, modern Web Apps, progressive web apps. Uber for example, is a perfect example. That's not a website that you would build in wordpress ever because it doesn't do what wordpress is doing, which is here's a pages and other pages and other pages actually connecting to loads of different types of data, lots of different bits and putting it all together, managing it for you,

which is where you said in your prophecies 2019 the web has going.

Yeah, and I totally believe that, which is, I had a meeting where someone said, I think we need different homepages for the different types of people. And I said, actually, it's just simpler to build a different poem page for every person, which is we're actually going to take what they do and what they enjoy and what they like and we're going to just present content that we can see would appeal to them. So there isn't a page anymore. It's a bunch of active data that thinks about itself and then displays itself to you. Much like Netflix, you know, Netflix knows what you like.

I'm sorry. I wish it didn't because it thinks he thinks he knows what I like and so I can't see things that I might like that it doesn't want to.

Yeah. And I've got the same problem with prime, which is you show me, it's probably the 30 things I didn't want to watch.

Yeah. I want something new please. There's no button to say, show me totally new stuff. All the stuff. Yes, that would be good. Yeah.

I mean by all means have a, like we think you might like, I'm not going to ignore it and go to the things I actually like, but I think this will happen more and more. I mean this is when people talk about the bubble, this is exactly what they're talking about, which is everything starts to go, oh, I know what you like and the here's the stuff that you want. And you're like, yeah, but what about the stuff that you don't think I want? Like you'd never see that

a really clever idea until it wasn't, I can totally see the thinking behind all of this, but the state it's got everyone into, especially on Facebook with news, was never how it was imagined. I mean, if someone had said to you to begin with, I'll offer you things that you might be interested in, you'd go, okay, well that's really interesting.

Yeah. But if they said, I'm only going to show you things that you've already seen and I'm never going to show you things that you've never seen or in the terms of let's say, I know that you are the sort of person that likes, okay, perfect example, I know your a Brexiteer, so I'm not going to show you anything at all about Romaine or your remainer and I'm not.

Oh yeah. It was about saying, let's just get this straight here. Let's clear that up.

Yeah. So basically what you're only doing is any ever getting one side of the story and therefore it's just reinforcing your own views. I mean, there's been some interesting research that actually shows if you forced other opinions on people. So if you're a remainer and people send you a load of Brexit stuff, actually what it really does is just make you an even stronger remainer, which is weird. It's counter intuitive, but it does have this problem where you get locked into a bubble where you basically just get positive reinforcement of what you already think. And that leads to, well in my opinion to polemicist and where everybody goes to the extremes because there's no center ground anymore. So javascript was the answer you were looking for. There's another language, it was just python, which is actually really used a lot in data visualization and data manipulation and a lot in this data science is done in python. And I think the reason why is because it's actually quite a lovely language to write in any sense to someone who doesn't write in languages, but it's very easily readable so you don't have to be an programming genius in order to understand what the code is doing, which is always nice.

This visualization is another area that we should touch on and I'm trying to think of the name of that. We might have a quick test about it next week because it's something that I worked in a while ago and I know that it's updated considerably, so I will bring that back when we talk about some design next week. Yes, that'd be lovely. Which actually let's talk about next week. We've had feedback that it's time that we looked inside my brain as opposed of me or is a few inside of your brain, so I thought we would talk about branding. I get asked by clients, why do I need a brand? Isn't that big companies? Doesn't the content speak for itself? And I just like to add, what is the brand? When people say brand, are we just talking about a logo and a color and a font, or are we talking about something greater than that? Well, I think that's where it becomes great for small businesses and yeah, exactly. We'll talk about it next week.

That's fantastic.

All righty. Well enjoy the rest of coming to see you all next week. Bye.

Hi.

β€”

Dan & Abi work, talk & dream in tech. If you would like to discuss any speaking opportunity contact us.