(Edit as of 05-10-2019: here's a tutorial I made for my Pathfinding Visualizer: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-msttfIHHkak.html ) (Edit as of 15-10-2019: here's a tutorial I made for my Sorting Visualizer: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-pFXYym4Wbkc.html ) This video is pretty long, so here are some timestamps for your convenience: - 0:00 | badass card trick for smashing of the like button - 0:28 | introduction - 1:37 | project #1 intro - Pathfinding Visualizer (link below) - 2:57 | project #1 deep dive - Pathfinding Visualizer (clementmihailescu.github.io/Pathfinding-Visualizer/ ) - 6:33 | 5 things that make great software engineering projects - 8:42 | project #2 - Sorting Visualizer (clementmihailescu.github.io/Sorting-Visualizer/ ) - 10:50 | project #3 - Oak Programming Language (repl.it/ETv1/561 ) - 14:12 | project #4 - Momentum Chrome Extension Clone - 17:25 | conclusion
next video topic- please tell how you got these ideas from because most of the time we make "CRUD" applications web apps and yours are "out-of-the-box thinking" projects. and how you started building them...
Five markers of a good project: 1. Very visually engaging 2. Wow factor 3. Interactivity 4. Easy for someone to understand 5. Did you learn something while making it
Yea....I made a social networking site, but frameworks and libraries do all the heavy lifting. Definitely feeling motivated to learn more visualization tools.
@@chocolatezt I agree with all but his pathfinder visualization. For that early in his programming career, it looks great and is relatively complex. If he made something like that now it would be less impressive for sure, but the video is about his portfolio at the time he got the google job, and tips for projects others might have.
When I was learning Dijkstra/Bellman-Ford during the past semester, our professor introduced this tool to help us visualize what was really going on. Now I realized that this is made by you. It's a very cool project and it helped me a lot. Thanks!
This video shows the end result of a project to give an idea. If you want to apply to google you have to have the idea of working hard in mind (Not the end results). If you are lazy in life and don't like to work a lot then I wouldn't suggest it, but if you are; you shouldn't let this video discourage you.
@@williamlee7119 Not for most people. A lot of people feel like they're entitled to a certain job just because they have a degree. A degree is a great accomplishment, but your talent shows in what you actually do with your skills.
Hi Rachit, let's see in his next video. BTW, you also have many tricks/skills, saw in your latest video, on Microsoft Experience..... Loved knowledge by you guys.
Thanks man, you just gave me a 17:46 min video that explains in details why I'm not being hired by google in this lifetime. Saved me the time of applying, really thanks😅
Bro don’t let this discourage you. If you put the time in to learn then you can reach this point. At the end of the day it’s just problem-solving skills.
When you put it like this, it does really sound a bit funny. But, until you dive into trying to create a new language, you think it's some God-like complexity. Yet, it took me three days (after work) to design my own simple language and to write an interpreter for it (using PHP, LOL). It is not something really powerful (or usable in that sense :) ), but it is quite easy once you get to know what you're doing :)
Emil Avramov Maybe you are just super smart or I'm just super dumb, but it took me one whole semester to build a semi functional pseudo java interpreter using racket, with a bunch of bugs
If you are just starting out, please do not ditch your CRUD project because of these mind blowing Algo projects. Complete your "beginner" project , then move up to something more challenging and so on. Eventually you will arrive here. Btw, you are a genius Clement
Hello, I’m a first year cs student, we’ve been coding with java and using javaFX until now, what would you recommend to do during this summer holiday ? Every time I have a project in mind, I am too unexperienced... I tried to make an app using flutter and fire base but everything seems to be out of reach, I am always so lost that I give up. Do you have any suggestions? Maybe it would be best for me to take a machine learning with python class during summer ?
@@thosamnorlha1229 I'd recommend making the absolute most basic things possible first. These projects in the video are very cool but before you can do a path-finding visualiser you've got to learn how to do building blocks like animations. For learning e.g. flutter try making an app that does nothing but launch and show you a landing page. Try making one where you press a button and the app tells you what button you pressed. Try making a simple calculator. Then try making the calculator look good and you've got a basic project you can show people when you come back from the holidays That kind of progression can be v powerful for learning. Try and do stuff that's just one step outside of your current abilities and before you know it you'll walk a mile
@@thosamnorlha1229 yea man, start with basic stuff. These 4 projects are not the only projects that clement ever did. These are the absolute BEST ones he's ever done. Im sure he made a lot of crappy projects back on the bootcamp. You dont have to start with something mind-blowing. I'd say you shouldn't start with something so difficult
im surprised! i was in a dead end with my C# project called maze randomizer and solver, but when i saw your pathfinder project it kinda give me a hint on what to do. thank you and keep up the great videos
@@eb3433 I know it may not be the true reason he generally mixes between serious staffs and joking; . . after using your super power of reading between lines can you tell us what was the reason?
i have used a few interview prep tools like "cracking the coding interview" and "interview cake" , they are really really good but "algo expert" is 'da bomb" .. just though to say that .. great job Clement 👍
Amazing work as always clement! Coming to the projects, absolute insanity. Some of the finest projects I've ever seen. Would love to see some tutorials on python projects!
He did those projects after few montha of coding. Nice job. I am into programming for about 5 months and currently learning vue js. The process of learning is slow for me, but I will never give up.
explaining card trick: doublelift, card is on top, after he shuffles, card is still on top, then card pulled out, doublelift to reveal king, when he lifts the king, the 3 is under it, then he spins it off camera, revealing 3:)
I really like how you can visualize the difference in run time required in dijkstras vs A*. I remember from my AI class that A* needs to visit less nodes and so on average it is quicker than Dijkstras, but this is really a great way to visualize it. Awesome projects!
@@clem Iam in my third semester and i dont know which language you use to built your project so will you please tell me that and how did you do that,plzz sir I need your help..
@@ShivamKumar-cv7jv Maybe you can start with learning about github and alternatives to know how or where to look, if someone already posted a link to one of those sites: github.com/clementmihailescu/Pathfinding-Visualizer/
For my CS degree, we built a programming language and interpreter in our second intro to CS class, so I totally see how he considers the language and interpreter to be less impressive than the first two (because it is). It may sound complicated but it really isn't.
@@otnielaguilar7897 some sort of data structure visualization maybe? Or maybe a tool that lets you input a simple algorithm and it'll tell you how it scales with size?
I don't think the path finder visualiser would be too hard to implement once you understand the algorithm but the idea and execution is what's brilliant.
I have been having trouble with Algorithms and your projects are a great help. It makes learning much much easier than reading it in just words. Thanks
You inspired me. What i learned from this video is math skills are the most important thing. I actually stopped programming and studying only math these days because of this reason
One of the things I am not sure is mentioned is seeing: 1) that you can do a bigger project and accomplish it on your own 2) seeing how you structure things in your projects (going through code) If you can go through someone's code you can tell how experienced they are and if they can design complex systems (if the project is complex enough). I asume the code for your visual search representation is going to be pretty well structured based on how it behaves. Did they ask to see the code btw?
LOL dude these are fucking BONKERS. Like I can't even comprehend how you did all of this with the level of experience you had at the time. I went through a boot camp that I actually ended up TAing for, for about a year after. Never have I seen any student in my own cohort and the other 4 I TAd for after come up with anything close to these. Just insane!
The algorithms themselves are pretty simple boilerplate pathfinding algorithms. But the visualization is definitely very impressive, although I suspect external libraries did most of the work. It did gave me some insight into making my own project. Maybe it is important to make stuff look good.
These are really good visualization projects, but not really great at what you need to build your own project or company, these are just interactive algorithm visualizers, they are really awesome and the animations are really cool.
Miss the days employers valued functional open source projects that benefited everyone rather than contests & academic exercises specifically aimed at getting a job.
Another great video. Sorry I can't be more original in my compliments. 😁 I disagree slightly with you about projects 3 and 4: I think they are as useful as projects 1 and 2. They show you are well rounded in your skills and also willing to try a variety of projects. Also, the order you presented your projects in was smart: 1. Step 1 (projects 1 and 2): capture someone's attention with eye-catching visuals and a clear wow-factor. 2. Step 2 (projects 3 and 4): now that people are curious enough, show them the non-visual projects and let them discover the wow-factor on their own (because projects 3 and 4 definitely have a wow-factor also, especially no. 3). Keep up the great work. 😊
I really love your content Clement! Been working on AlgoExpert since a few weeks and really am making decent progress. Love the content and you are a great teacher! Big thanks from germany! Who knows, maybe in a couple of years im fortunate enough to be working with you :). Hope youre having a great day!
After watching the first 2 projects, I started losing my confidence of getting into google. But after watching the third project, I became very confident that I can never get into google.
Thank you for this sir it gives me ideas for my own it seems it’s important to relate them all back to computing principles as opposed to the cool mindless but interactive stuff I was doing
I have actually made only 1 visual project in my entire Software life and that was in the initial 3 months of my career when I was actually very passionate about learning and coding. The project was basically a tile rearrangement puzzle which I wrote in Javascript and with minimal Css. But it is the only cool project with a wow factor I can honestly remember.
Good video. On the subject of the interpreter project, years ago when I was learning a lot of programming languages (as a hobby) one of the exercises I'd do to see if I understood them and could write fluent code in the new language was to write a Logo interpreter and execution runtime (sometimes they ended up being the same thing, sometimes I built an AST and then executed that). That was quite nice as I ended up with something visual and interactive too that I could show people - though back in those days there wasn't so much of a culture of having a programming portfolio outside of work projects.
Really insightful video. 👌🏻 It’s amazing how you took something as simple as algorithms and converted them into a visual project. Gave me a lot of ideas for my projects as well. Great video 👍🏻. Keep it up.
I'm still a hobby programmer newbie and my mind is blown on the potential applications for these type of algorithms - you, my good sir, have just given me a goal to achieve after I'm done with my current project lol especially since my next project is adding a vulkan layer so knowing the ins-and-outs of algorithms are going to come in hella handy very very soon
Path finding project was tooo awesome.. . Something too inspiring.. . And the sorting project was great.. .. Overall everything was great.. . I cant resist to subscribe.. 😍😍😍
@@yoyashuyo3485 I get less and less worried about coding interviews the more consistent I become and the more knowledge I intake, at the end of the day I feel like most companies are looking for potential, compassion and hard work.
Just a heads up, you don't need to make anything of this magnitude to get into a FAANG company (provided you have a few years of experience, a CS degree, or attended a reputable bootcamp). Interview performance seems to be the ultimate decider. I can imagine your projects probably do have to be more substantial if you're self-taught though.
I love this so much! This is terrific! I love visualizations. I just started a RU-vid channel and uploaded my very first video based on Tensorflow! 😊 I'm going to see what kind of projects I can start to incorporate some visualizations. Thanks for the awesome video! Have a splendid day! 😃
Those projects are extremely cool man! Like you said, the visuals make the difference. I think your oak programming language is also very cool too! Did you learn all of this in those 3 months at the Bootcamp? Because that's amazing! Finally, I noticed that these are mostly frontend projects, so is there a specific reason why you chose to stick to frontend and exclude full-stack projects? Thanks for the video man! Really appreciate your advice.
His projects are almost all frontend not fullstack because he knows this quote: " *When you really get specific, that's where your power is* " So, if you are going to get into Google one day. Make sure you know this quote. I knew the quote when I got into Google.
Most of the "content" of these projects (i.e., the algorithms, the interpreter, building a chrome extension) were self-taught outside of the bootcamp's curriculum. But the bootcamp taught me the fundamentals behind the frontend and general fullstack development that was used in some of the projects. And as for why my projects are more frontend-focused, I think it's because I just enjoyed the frontend a lot and didn't have any appealing ideas for more backend-oriented projects.
Wow. I have been working on little projects (tic tac toe ai, connect four ai, checkers ai) so that I could eventually make chess ai because I thought that it would make my resume unique and impressive. If there is one thing this video taught me, it's that I have a long way to go before my projects are anything special.
The programming language project was super impressive! Oak’s also a great name for a programming language lol I usually just make video games for my projects lol would that be impressive enough for a larger company?
I just want to say, the best part of Clement's videos are those damn card tricks. For every engineer watching, you should probably spend a bit of time trying to figure out how the hell he did it. That's the phone bit. I've been very successful many times LOL! As for the projects, the path finder and the programming language interpreter were very impressive. I'll probably give it a go myself. I'm trying to sharpen up my frontend skills, so the pathfinder project seems very ideal for that goal
What coding bootcamp did he attend? Looks like it did amazing for him! Clemente, would you say you learned alot of your skills from the bootcamp or on your own time doing your own projects and research?
Hi Dude, I am so impressed by what you did! Actually I am a computer vision algorithm engineer and basically I write in C++ and Python. Could you give me some advice for what other tools I must know to implement such a project like you do. What might be the best plan for learning and project for starting right away. Many many thanks for all your sharing!
Damn this stuff is really cool! I'm currently building my portfolio for a career in game development - and seeing this stuff if really motivating. In my opinion the path finding visual tool is the best - but the interpreter is also awesome! It seems like a really cool thing to learn how to do.
Hey, May i know which dashboard template did you use for the Pathfinding Visualizer, I remember seeing that at my internship, but ain't able to recall.
Amazing for mastering algorithms I am currently in love with the pathfinding one so I am building it I am already done with the matrix and gui (but I don't know any html,js or css I am building it with pythons tkinter module):-)(I am really happy with the projects) 1 more project which is really helpful:- Build a operating system with any language Believe me It will teach you allot
I'm still amazed at his getting a nod with only a bootcamp in his back pocket. There must've been prior experience. One doesn't just do that from a bootcamp unless a savant.
Yes your projects are extremely impressive... before everything I wanna Thank you #Clément I am looking for a job at Google... Although I recently joined a really cool organisation as a Full stack developer but my ultimate goal is Google and you know now a days your videos just tell me as though.. our #Clément has just taken a sort of Pledge, like my viewer belong to these top tech companies.. and no were else... Thank you soooo much Clément this was the most helpful video of yours in recent times...
Ok, I'm gonna pause here half-way through and go cry for a while. I'm working full-time as a web-computer guy in a small non-IT company for a while now, and for a project like this, I wouldn't even know where to start, man. And for Clement it's a toy pet-project.