The frontiers of Javascript ft Marius Ballot I Prismic

Show video

- So Marius, what technology are you learning right now? - Right now, Python for robotics, exactly. - Python for robotics? - Yeah. - This is definitely gonna be interesting. Hi, I'm Sam from Prismic.

Today I'm here with Marius Ballot. Marius is a pretty interesting creative developer and we're talking about exciting trends in web development and technology in general. So Marius, thanks so much for being here.

Why are you learning robotics? - Because it is something that I always wanted to, to learn. I, I am in web development for, I have been in development for... well, such a long time. Not, not really, but like at my age, it's been a long time like two to three years. And I'm happy to see things I create on a screen, but robotics, you have this new elements of having something that you can touch right in front of you. And that really can make stuff move, like it's, you, you cannot do more creative than that in my opinion.

This, it would be, this will be different to everyone, but yeah, I really love the fact that you can really see what you're doing. - So something that's interesting about the work that I've seen that you've done is that you use a lot of technologies that are like almost brand new or that are like very innovative kind of like on the edge. Can you just like tell us like, what are some of the technologies, frameworks, coding languages, libraries, trends that you have tried out that are kind of trendy and cool? - Hmm. Along the years, I think the, the first like real technology that I needed to, to really learn that was kind of new, not really, but used in general at that time was Cinema 4D. And this was pretty, pretty nice to, to actually play with, because it was my very first kind of professional thing that I've touched that isn't the same as let's say paint or something you can really, you have these tools and you know you have the power to create something that could be on a cinema screen, for example. So this was pretty, pretty cool.

So to go along that I was in Cinema 4D for quite some time and I switched to Blender, because something that I really like, it is open source, but the learning curve is way steeper. Way, way, way steeper. So yeah, currently using a lot of, well for the past couple of years, I also did that with a lot of Three.js.

Tried and, and failed quite a lot to Native WebGL. (Sam laughs) - Yeah, because of the - I'm sure like a lot of people. - Yeah, yeah, yeah. I tried to try to create my, my own, my own framework actually. - We won't talk too much about Web GL today, but if you are interested, you can check out our other video with Bruno Simon, where he breaks down exactly what Web JL is, why it's so hard learn, and compares it to Three.js and talks about why Three.js is sort of an amazing savior for

people who have worked with Web JL. We'll put the link in the description. - As you just said. And I, in a way I'm sure Bruno Simon, native Web GL is so hard, but yeah, Three.js is a pretty,

pretty fun to learn. Actually, when you do a bit of JavaScript, you can really have some fun playing with it and you can do so so much. You are really limited by the browser obviously, but yeah, so nice. And in the continuity of that, you then have something that I learned, and that I also fell deeply in love with unity, the, the, the video game engine software. And this again is so, so nice because you can do everything you did on the browser, everything you did with blender, mix them all together.

And now you have this thing where you can do absolutely anything you want with, you can, you can create a video game. You can even create them websites with it. Also, if we solely talk about code GLSL, it's really nice to learn. So this is your own custom shaders you can do, for example, in a Three.js - And have you done anything with, I know you're interested in it. Have you started doing any work with machine learning? - Yeah. Before we, we, I played a lot with,

with machine learning. This is something that I'm really trying to get good at because it is the future. Like people say everyone, not sure about it, but I think it is play with it.

For example, with TensorFlow.js, nothing to nothing to finish, nothing too crazy. But like, yeah, I have trained my, my datasets. tried to create a few new neural networks here and there, but nothing too crazy at the moment, but I am currently learning about it.

- And you're learning robotics. - Yeah. Alongside with that. So this is more school related, but, but yeah, I'm into, I'm into robotics. - One thing that just stands out to me is like you mentioned virtual reality and Node, you mentioned machine learning and TensorFlow, you mentioned 3D with Three.js. Like these are three humongous areas of technology, but doing it all in JavaScript, which is like, it's, I don't really have a question here, but it kind of blows my mind how far JavaScript has come. - Yeah, I totally agree with you starting with Node, just having something that your machine can understand, and that is directly JavaScript.

I think that was created for the web. JavaScript basically is everywhere right now. And we talked about robotics. There is actually a Node, a Node package that allows you to create Arduino code directly with JavaScript.

You can create them robots with JavaScript nowadays, which is amazing. Like the JavaScript would be everywhere in a, in a bit. For me, for me, it's, it's kind of the new Python in a sense. - For you. Speaking of what is it like going from manipulating, something that only has a digital presence to manipulating something that has like a mechanical, real world presence. - It is a bit sad, but for the, for the moment from the, the little I know about it is the exact same thing, but with constraints.

- [Sam] (laughs) More constraints. - Yeah, like you have to, you have to take care about data sizes because you are working on such small software where you need to be careful of the CPU performances of your maybe FPJ board or your microcontroller. You need to work out with registers, garbage collectors and so many new stuff that you just have to be careful of. And also somebody that is way less fun is debugging. So when you're on the web browser, it's nice. You have a little console that just takes you by the hand and say, oh yeah, your mistake is just right here.

- Your console sounds a lot kinder than my console. (Marius laughs) - No, like it's, it's, it's, it's really that. When you're working with a, with a robots, we actually did a huge project at school during something called the master camp where we had to create really simple thing, just a, a digital code interface where you have to register a code and something opens up. Easy. But we had to go as deep as create the electrical doors, logic doors to do that directly in a VHDL. A language that just, that creates electrical logics.

So directly with binary. It's like, it's like being a chef, but instead of just cooking with your wooden spoon, you have yourself to carve it out and do the electronics for your oven. This is, this was as deep as that. And when you have so many layers, the one thing that goes wrong, you have to go.

So, first of all, nothing tells you it's wrong. It's just, oh, it doesn't work. Why? This is a - When your binary is wrong. You don't get a console area.

- No, no, you don't. You don't get a console when you, when you work with a VHDL and just go down this code base, reviewing everything you just did to just find that maybe it's just your data architecture isn't, isn't the right one, And you have to rethink everything. Or sometimes there is just one zero more than it should be in your, in your 16, 16 size vector. And yeah, you cannot do nothing about it.

I sound like I don't like robotics. I really do. This is amazing. But like, yeah, you have to pay attention to so much more thing. And I didn't even go into the details of signal processing, having to deal with noise, going through cables and stuff like that. Like really down to the physics of electronics and that's that's something else. - And this is something that I really want to ask you about, like, why I'm asking you about all the different technologies you've learned, because like, for all of us learning a new technology is frigging hard.

Like when I start learning a new framework and I have to, I have to learn new frameworks for my job. It is challenging and you're not just learning new frameworks. You're learning new coding languages, you're learning a new API's new interfaces, new hardware. How do you go about the process of learning a new technology, especially when some of these technologies are so new that they're poorly documented. They're not very well known. - Actually, so first of all, I love learning new things.

Not only about code, but in general, like I love to cook. For example, I like to work with new ingredients, same thing with computers. So I think this first helps because I have been playing with different stuff out of my career, but every time I, I want to learn something new, I always have the same pattern. First of all, if there are any, do the really basic tutorial like here, this button is here or this particular method is there. And just listen to someone, even if you are not paying attention, just, I put a tutorial in the background and I use, you know, do something else just to learn, have the buzzwords, to see where my mistake is. And we, when I do that, I just simply take a piece of paper and draw out a, a project.

Even if I don't know what I am gonna need to need, - Draw a project on paper? - I draw like the plan of the project that I want to do. For example, when, when, when I've learned View, when you go on a different YouTube in a different YouTube tutorials, the basic thing is a to do list, you are in View. Maybe you've did one yourself. - Yeah.

- Yeah, The, to do list is a, is the basic, and after the to-do list, I was like, okay, I have a portfolio to do. Let's say I would like to manage my projects, but instead of hard coding them, I would like to have them going from an Excel sheet that is online, create an API, put it in there, et cetera, et cetera. So on probably on my piece of paper, I said, I want to do that. Do my only little roadmap if you want, and just learn from there. And it's okay if I don't treat my, if I don't reach my goal, every single little thing that I have accomplished is a new tool set.

- I really love that. We have machine learning, robotics, 3D, and still the first step is pen and paper. - Yeah. Yeah. Well,

this is my way of thinking about. - No, but me too. - Yeah. Well.

- It's kind of the best. - Yeah. I just, I just love it. Like a bit of organic. You see, I really liked the look and feel of it, but yeah, it's just like that's. And as you, as you go along, maybe you decide to scrap the project because maybe you didn't thought of this or thought of that, or you just don't like it anymore. My, my thing is if I'm working on something that is for a hobby, if it is become a, if it is becoming a task along the journey this just means that I need to stop right now, I'm gonna either lose my mind, go back to the hospital or just something like this, and then just scrap the idea and work on something else that excites me.

So this is how I learn new technologies. - What are some of the new technologies that you're most excited about? - So in general, not only in web development or? - Yeah, in general. - I will, I would say, you know, in a robotics standpoint, well, it's sort of really here, but like, you know, Arduino and, the Arduino, and the raspberry PI, those little things.

- Okay yeah, Sure these are like little computers. - Yeah, those are hardware you can create robotics stuff with, and it's becoming more and more mainstream to the point that they are little, nodes kind of, yeah, plaques you can just stick onto them and create stuff with them. And something that looks like is happening is that you are gonna have so much thing available to you, that you are gonna be able to build something completely from scratch without any lines of code at all. And just connecting stuff together and create something absolutely glorious.

- So what's something that like the average person would understand, like something that you could create. - For example, with the Arduino? - Yeah. There was a guy on TikTok who I cannot remember the name, but he simply created his own little RC car with a camera attached to it.

So plugged to, to an Arduino that is automatically sending that to a server so that he can see right away what it is, what he's seeing to a screen. And he does his groceries like this from home. He's just send the car with it, with the little baskets. And obviously he knows the guy from the groceries, because it would be really sus to have them cars pulling you up to your, to your, to, to, to the snack aisle. But yeah, and it does those little videos where like, he puts a dollar bill and the, in the, and the, and a, and a grocery list in the car, he just arrives, the guy who, who knows, take the, take the dollar bill, see, see the thing. And like, he just goes,

put the thing in the basket. It goes back home automatically. And yeah. - This is, this is awesome. I just, it just makes me think of like, being a little kid and thinking that like robots were in the future, and like, in some sense, I'm kind of like disappointed that we don't have like, you know, robotic, you know, assistance like in your home, like cooking dinner for you, but like, when I hear about that, I'm like, okay, that's pretty cool, like that's the future. - like you said, like, it's, it's basically your fantasies you had as a kid.

You can basically make them reality, just, (Marius snaps) - That's even better. The fact that like you could do it yourself. - Yeah! Yeah, yeah.

So what other technologies are you excited about? - So this is on the robotics spectrum but on the, on the web, you talked about it, machine learning. I think we are gonna be able to see amazing stuff coming along. I just remember the name of the project, but there was actually this thing where you would draw on paper, a UX, like with a frame. - You draw like a wire frame of a website. - There we go, wire frame, thank you.

You just really wire frame take a photo. And there is an AI that looks at it and creates the data, HTML, and CSS code for you. So this is still in a, in a bit of beta form, but something that is actually happening right now is the no code website to a buildings right now. - Mhm - So like the whole no-code movement, and this is not only really interesting, but it is scary for front-end developers. Like you can be a designer going to those platforms.

And just on the course of a couple of hours, you can have a completely done websites with different pages responsive. And all you did was play with your mouse, put it here. So like the color criteria, like, like if you were on Photoshop, for example, it creates the code that is amazingly well thought out, and that works.

And you see, you see that as a front-end developer where we would like all your, your proud or your pride and say, oh yeah, I created my starters. I have my CSS, this, my CSS that. We're in front of that, that a guy created it in 15 minutes, no code. - Yeah. - This is the pill is hard to swallow, but It looks like the future.

- It's hard to swallow, but it's also a question of like, where do you see something's as a challenge versus seeing it as an opportunity, right? - Yeah. - If you really wanted to succeed as like a front end developer, like a coder who's who's who, who knows they're CSS and JavaScript inside and out, and you're looking at these no-code platforms. how would you see it as an opportunity? - The only limit I see right now for those platforms is all the organic stuff you can do with codes. I think HTML and CSS will be gone in a few. I think, I think it, it, it, it really, it really will not be here for, for, for long, I think no, no code will take over, but JavaScript as a whole. And just for example, getting back data, putting it on a, on a website and just back in general, but also if we stay on the front end, people like me, creative developers, people are getting more and more specific on what they want on a webpage. I say people, I mean like clients, and,

is is to a point where I don't think you will be able to do that with no code, or maybe there will be in a few, like, maybe you can integrate, I don't know, maybe a, a 3D software inside, I think, but it is, it looks like so much of a work, but yeah, I think HTML in CSS will be gone, - Yeah - Soon, but yeah, you will always need JavaScript in and stuff like that, but pure front-end guys doing only HTML and CSS once, once again, this is my 21 year old boy view. Okay. Well, I. - But you have a fresh perspective and that's what we appreciate. - Well I've only been in the industry for like the past four years, but yeah, it was, it was scary. - No, it's interesting.

It's interesting. I mean, we normally, in these videos, we don't really talk about Prismic itself as a product, but, you know, obviously you're talking about this and I have to think like, am I worried about my job as a developer and documentation writer and even, you know, video interviewer at Prismic, what I'm hearing is like, we don't need somebody to code a header element over and over again. We don't need somebody to code a slideshow element over and over again. We've already got GitHub, copilot that can, you know, you just type in image slider, and it can fill in that code for you.

But what we do need is developers who can kind of like surgically know, okay, we can reuse this boiler plate over and over again. And then like, here, we want to change this one element, or here we want to do this complex, you know, interactive bit, or here we need to like, apply some special brand guidelines. - Yeah, I totally agree that, like I said, the thing that was so fun about this project is that I did only what I love, which is so nice. So, so nice. And yeah, like, like, like you said, the nitty gritty of the, of the coding, like the, like the headers, having your, your CSS saying that I want to be in box sizing instead of this, instead of that. Yeah. This is a perspective

that I really need to see a little. - Yeah. This is what I'm thinking about a lot. And again, we don't normally talk about Prismic here, but this is, you know, a lot of us are kind of seeing the same thing. We, and we're kind of moving in the direction of like offering a no-code website builder that developers themselves can actually set up. They can code the pieces, the individual elements and components themselves if they want, but you could also like, theoretically, you know, just somebody could create a library of headers and image galleries and stuff. You can install that.

And then you can create only the components that you actually need custom for your site and add them to your website builder. So it's kind of like the developers, like, I think you said at one point, the developers creating, we only need developers at this point to create the website builder, which is kind of like what we're thinking about doing at Prismic. - Yeah, yeah. This, this is, this is quite a thing. We always go out gonna the need developers always, always, always, always, but yeah, a certain niche of developers are not gonna be, to be here for, for long, I think.

Or maybe they're gonna find something else. Once again, when you are a developer, you are always on the edge of learning new things. If you don't do that, you are either retired or you're not gonna be, you stay, you're not gonna stay here for long, but yeah. - Yeah. I mean, there's not a lot of point of being attached to the past.

Right? - Exactly! Especially in a, in the digital world, especially here. Yeah. - Of course. You're on the other side of it, you seem to kind of be rushing into the future.

(Both laugh) - Yeah. Maybe, maybe a bit too hard. - With your sword in the air. - Rushing into the future.

- Yeah. - I may get that tattooed. (Both laugh again) - Marius, thank you so much for sharing your views on the future of technology and for telling us what, what you're doing. So in the next video, what we're gonna try to do is Marius is gonna walk me through the process of creating some 3D generative art.

I have no experience with generative art or 3D, so it should be a disaster. If you do not want to miss it, be sure to subscribe.

2021-12-08

Show video