Become A Web Developer - Part 20: APIs | Andrei Neagoie | Skillshare

Become A Web Developer - Part 20: APIs

Andrei Neagoie, Senior Software Developer + Instructor

Become A Web Developer - Part 20: APIs

Andrei Neagoie, Senior Software Developer + Instructor

Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
1 Lessons (14m)
    • 1. Introduction to APIs

      13:31
  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels
  • Beg/Int level
  • Int/Adv level

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.

629

Students

--

Projects

About This Class

APIs

This is the tutorial you've been looking for to become a web developer in 2018. It doesn’t just cover a small portion of the industry. In this multipart video series we will covers everything you need to know to get hired: from absolute zero knowledge to being able to put things on your resume that will allow you to live the life you want. 

Sounds too good to be true? Give me 5 minutes of your time to explain to you why I built this course and what is different here than thousands of other courses all over the internet.

  1. There is no wasted time here. We won’t be using outdated technologies like PHP, Wordpress and JQuery. Although still useful, outdated technologies like the above are low paying and demands for them are decreasing. In this course, you will learn the specific technologies that are the most in demand in the industry right now. These include tools and technologies used by the biggest tech companies like Google, Facebook, Instagram, etc… It’s geared specifically for people that want to learn employable skills in 2018.

  2. After finishing this course, you will be able to apply for developer roles, or upgrade your job title as a developer and earn a higher salary. We won't be taking any shortcuts in this course. I am going to take your from absolute zero, where I teach you how the internet works, to mastery, where I show you how to build an image recognition app using a Machine Learning API (a subset of Artificial Intelligence).

  3. This course is taught by an instructor who has worked in silicon valley, and one of the top tech companies in Toronto. I have built large scale applications, and have managed a team of developers. I have worked directly with these technologies. I am not an online marketer or a salesman. I am a senior software developer who loves programming and believes that there needs to be a course out there that actually teaches valuable skills.

  4. I know your time is valuable. You want a course that outlines the best way to learn the topic in simple, well explained methods so that you fully understand topics instead of watching somebody on your screen and having no clue what is going on. I have created this course after consuming hundreds of books, tutorials, and online courses while I was learning. I have taken the best pieces, the best methods, that I have found, and condensed everything so that you can learn in the most efficient way possible. 50 hours of videos doesn't mean much if the instructor isn't engaging or focuses on outdated topics. 

  5. We have a thriving online chat community so you really feel like you are part of a classroom and not just watching videos by yourself. You will have a chance to communicate with fellow students, work on group projects together, and contribute to open source. Anytime you have a question you can ask in the chat and someone will surely be able to help you right away. 
  6. The course is designed to give you employable skills so you can get a job. Here is what one student recently wrote after taking the course and being hired right away: 
    "I’m a self taught dev, who has been out of work for ~6 months. I had some family things that came up that prevented me from seeking permanent employment, so for awhile I was Postmates/Uber delivery driver.
    After taking this course, I immediately got catapulted back to where I was before, but better equipped and with the knowledge to take on the next job. I had just finished the React section when I went to a recent interview, and it really helped me excel. As of today, I am officially re-employed back in the field, and it is all thanks to this course. I had a blast creating the final project, and FINALLY got around to learning SQL statements, and getting to use them in a project. I’m really ecstatic that Andrei went with teaching relational databases over something like MongoDB, which can also be fun, but is less practical for use on the job. So thanks Andrei , I really enjoyed the course and will be making sure to share it with others who find it helpful. I’m also looking forward to the new ES7/8 content that was recently added, and going through the DB stuff again when I go to build a personal project."

In this course, you will be taken through online videos and exercises where you will be able to do the following things by the end:

  • Build real complex applications and websites
  • Build an image recognition app together at the end of the course so you can add it to your portfolio
  • Go into a job interview confident that you understand the fundamental building blocks of web development and the developer space in 2018
  • Be able to go off on your own and grow your skills as a developer having built a solid foundation
  • Learn how front-end, servers, and databases communicate and how they all fit together in the eco system
  • Build your own startup landing page. 
  • Go off and remotely work by being a freelance developer and bid on projects.
  • Know EXACLTY what a day in the life of a developer is like and what the day to day technologies and tools will be that you are using. 

By the end of this course you will be comfortable using the below skills and you will be able to put them on your resume:

  • HTML5
  • CSS
  • Bootstrap 4
  • Javascript (ES6/ES7/ES8)
  • React + Redux
  • Git + Github
  • Node.js
  • Express.js
  • NPM
  • PostgresSQL
  • SQL

This course is the accumulation of all of my years working, learning, and teaching coding and all of the frustrations and incomplete information I have encountered along the way. There is so much information out there, so many opinions, and so many ways of doing things, that unless you have spent the last years working with these technologies in a company, you will never fully understand. So this course is the answer to that exact problem. I have gone through thousands of coding books and online tutorials and bootcamps. I have worked with these tools on real applications. Throughout the years I have taken notes on what has worked, and what hasn't and I've created this course to narrow down the best way to learn and the most relevant information. 

I will succeed if you succeed in this course. Therefore, I will be there every step of the way helping you understand concepts and answer any questions you have.

I am 100% confident that you won't find a course like this out there that is as well organized, and as useful, to build a strong foundation for you to start a new career. We're not going to be building simple todo applications and cat image sliders. We are going to learn actual practical skills that will put you into the workforce. Some unique sections that you won't find anywhere else are:

  • React.js + Redux: you will learn the library that companies like Netflix, Facebook and Instagram use to build fast, scalable applications. This is one of the highest in-demand skill in the industry.
  • A day in the life of a developer: What will your day to day look like and what tools will you use? I will take you through a sample day at a tech company.
  • How does the internet actually work. What is the history of these technologies: I will actually have you understand the underlying concepts of the internet, and how the technologies we have now, have come to be where they are.
  • How do you actually deploy a real life app so that it is secure, and won't get hacked: How does a real life app get out to the public?
  • What is Machine learning and how you can harness it's power: Whether you have heard about it or not, this is something that you will hear more and more in the coming years. Those who understand the high level concepts and can harness it will have an advantage. 
  • What is your developer environment on your computer look like: We will be setting up our computers with all the tools necessary of a developer so you can use the same setup when you go into the workforce.

Why do we teach the above? Because in this day and age, just knowing HTML CSS and Javascript is not good enough and you won't be able to grow in your role and command a higher salary. I am teaching you these things because these are the things you should know in 2018 so that you are miles ahead of the rest. 

Make this the year that you took a risk, you learned highly in demand skills, you had new experiences, and you received new opportunities. I hope you join me in this journey. 

This is the proudest work I have ever done in my life and I am confident that you won't find a course better than this. 

See you inside!

Taught by: 

Andrei is the instructor of the highest rated Web Development course on many platforms. His graduates have moved on to work for some of the biggest tech companies around the world like Apple. He has been working as a senior software developer in Silicon Valley and Toronto for many years, and is now taking all that he has learned, to teach programming skills and to help you discover the amazing career opportunities that being a developer allows in life. 

Having been a self taught programmer, he understands that there is an overwhelming number of online courses, tutorials and books that are overly verbose and inadequate at teaching proper skills. Most people feel paralyzed and don't know where to start when learning a complex subject matter, or even worse, most people don't have $20,000 to spend on a coding bootcamp. Programming skills should be affordable and open to all. An education material should teach real life skills that are current and they should not waste a student's valuable time.  Having learned important lessons from working for Fortune 500 companies, tech startups, to even founding his own business, he is now dedicating 100% of his time to teaching others valuable software development skills in order to take control of their life and work in an exciting industry with infinite possibilities. 

Andrei promises you that there are no other courses out there as comprehensive and as well explained. He believes that in order to learn anything of value, you need to start with the foundation and develop the roots of the tree. Only from there will you be able to learn concepts and specific skills(leaves) that connect to the foundation. Learning becomes exponential when structured in this way. 

Taking his experience in educational psychology and coding, Andrei's courses will take you on an understanding of complex subjects that you never thought would be possible.  

See you inside the course! 

Meet Your Teacher

Teacher Profile Image

Andrei Neagoie

Senior Software Developer + Instructor

Teacher

Andrei has been working as a senior software developer in Silicon Valley and Toronto for many years. He is now taking all that he has learned to teach others programming skills in order to discover the amazing career opportunities that being a developer allows in life. 

Having been self-taught, he understands that there is an overwhelming number of online courses, tutorials and books that are overly verbose and inadequate at teaching proper skills. Most people feel paralyzed and don't know where to start when learning a complex subject matter, or even worse, most people don't have $20,000 to spend on a coding bootcamp. Programming skills should be affordable and open to all. An education material should teach real-l... See full profile

Class Ratings

Expectations Met?
  • Exceeded!
    0%
  • Yes
    0%
  • Somewhat
    0%
  • Not really
    0%
Reviews Archive

In October 2018, we updated our review system to improve the way we collect feedback. Below are the reviews written before that update.

Your creative journey starts here.

  • Unlimited access to every class
  • Supportive online creative community
  • Learn offline with Skillshare’s app

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.

phone

Transcripts

1. Introduction to APIs: a P I or application programming interface is a messenger that tastes a request and tells the system what to do. Huh? That doesn't mean much, does it? In this video, I'm going to explain to you exactly what an A p I is without all this confusing wording I have over here a sky scanner if you've never used it. It's an aggregator website. I look for a flight from L. A to New York and it's searches all the websites, all the airlines for the best deals for me. Now, how is it able to do that? It found all these flights from different websites, but Sky scanner doesn't really have this information. I mean, this information is somewhere in the database off each individual airlines. But as an airline, you're interested in having this data on sky scanner because people like myself that want to book a flight might not know to go to American airlines dot com. So by having their information listed on a website like this, well, now they can increase their revenue. So how is Sky Scanner able to do this without having this information themselves? Well, that's where ap ice coming. If you remember AP Eyes is what allows strangers to speak to each other so that we aren't in a closed system. We can share data and work with each other. An AP eyes is what allows machines computers to communicate. This my sound familiar. It's kind of like how we had Web browsers speaking with servers, right? Well, yeah, because a P I is a broad topic. It applies to the way machines communicate. If I open up my consul here, well, I always mentioned that there's a window object and the window object has fetch and fetch is an A P I. It is given by the browser to use so that I can communicate with this machine that the console can communicate with the browser in the same way. Although Sky Scanner doesn't have access to the databases off American Airlines and Alaska Airlines, all the other airlines use AP eyes or give access to this information through a P eyes so that websites like Sky Scanner can have the information as well and list it on their websites. The best way to think about it is kind of like a waiter. You're sitting at a table about to order, and the waiter is the messenger that tells the kitchen what to do. The kitchen is providing the waiter the restaurant, right? The restaurant is saying, Hey, waiter, these are the menu items. Please go ask the customer what he or she wants and let us know so that we can prepared. And this might sound similar to this, right? We're asking another machine for something using, Let's say Waiter, And this machine gives us a response if we talk to it in a certain way that it expects. And yet a server has AP ICE Ways that you can communicate with it, such as doing users slash about in the same way. We also have our code. Previously from when we build robot Friends, React, which is a library built by Facebook, exposes an A P I a way to communicate with the react package by doing react component and using JSX. They tell us how to communicate with it and were able to communicate with it. Let's let's work on this a little bit more. What about what about this? Is this an A P? I is a back of a TV? Yeah, it's an A P I. A TV works in its own way, but it gives you access to a couple of things, such as a nation of my cable, so you can plug into it and communicate with it, such as displaying your laptop into the TV. And we've been using AP eyes in the rubble friends demonstration as well. We already talked about react, but you remember the Jason Placeholder, the users that we got. Well, if I go to their website, we see that it's a fake online of rest A P I for testing and prototyping. It's an A p I. So it must give us. It must be giving us information about something that it has. If we go down, we see that it has resource is and the A P. I tells us we can access them using these methods. So by just writing comments here, I should be able to get 500 comments. And there you go. I get a response in Jason and even with robo hash, remember how we were able to get images of robots from this robo has shot or that's an A P I. We can say robot hot hash. Whatever and because they've said that the way to access this, a p I, is to just type in random numbers after robo hash dot org's, we're able to access it. And people build these AP eyes usually for business reasons such as airline companies. Right? And they have the incentive to comply to industry standards such as having Jason responses . And that way it makes easier for a developer like myself to grab bits and pieces from different places. For example, here I have the get hub, a p I. You can read up on it, but I can access information from get up. So I'm accessing the get Habr IPO of Facebook, and it tells me how many followers it has, what bio and has. If I go to Apple, I can get the Apple user name as well, and you can see that it's in Jason format because that is the standard. If we want to build something with get hub well, we can just send a request to this, get this data and create our website based on this data. But it's not only Jason. If you remember, there's XML as well. This is ah, sample a p I. That shows us a breakfast menu and here we can request the Stata through http and we get breakfast menu. So as you can see, a P eyes are not just websites. A TV's inputs and outputs that's an A P I A on MPM package can be on a p. I like I've said before, It's a way that people communicate or machines communicate and share information. Without it, we really wouldn't have what we have now with the World Wide Web. But how is this useful to us both? First off, we can build something like this quite easily. We can actually search a P I JetBlue a b i American Airlines, and they'll have information on how we can access this data so we can build our own thing. This website all it's doing is making an http request to something like here and then grabbing this data and just adding some CSS to it to make it look nice. And they're Aton of AP eyes online. You can search him, you read up on them. Big companies like Facebook have AP eyes. Google has a P eyes, and you might know Google Maps anytime you see Google Maps on a website, it's using the Google A P I. We also have silly AP Ice like this 11 of my favorites. It's the Star Wars, a p I. It shows you over here. If I do people to I get C three. Feel if I do people three. I get R two d two. I can also do planets. This is a free nice to use a p I. So you can build a sample app using the Star Wars, a p I and all you need to do is just fetch this resource. Get the Jason converted to a JavaScript object and then style it and use it in your app whichever way you want. There's also some really important A B I set. If you're building serious Web sites are really useful. This is the stripe. AP I. If you want to incorporate payments into your website well, this shows you exactly what to do, and you can add to your server within whichever language you want. In our case, we're interested in node, and it tells you how you can add stripe as a payment method on your server. It sounds scary, but it's all documented in here. It's step by step instructions of how to do it. Another one that I really like is the twilio a P I and twilio allows sending off messages on phones. So using something simple like this, you can see there's not much to it other than using this client on messages. Start create that they provide. And we just say what we want the body of the text to be to which number from which number. If we want to include maybe in a heart, then we can have that as well. And let's say when a user signs up for a service, well, we can send them a message by saying, Hey, we've created a new user. They've provided us their phone number. Send them a text message. Now you might be thinking, this is almost too good to be true. You have so much power now. You can just research AP ice and all the major websites have a P I data that they give to you well, things like robo hash and Star Wars. AP I their silly and they're fun and there's no real cost of them. But when you start building riel applications and companies like stripe and twilio where there's some real engineering effort behind creating these, well, they charge the charge of service, and that's when you use something like an A P I key and an A P I key looks like gibberish. It is a key, a private key so that every time you access they're a B I they know that it's you. And because let's say you have a plan for making 1000 requests. They charge you because they can recognize you saying that. Oh, this is Andres Key. He's the one making the request from a server, and we're gonna charge him for it. And don't worry. In our final project, we're gonna be using a really, really cool machine learning a p I and we're gonna generate R A p I key and actually use it . Luckily for us, though, it's free, so it's gonna be a lot of fun. But from this video, I want you to remember this A server somewhere in the world for a company provides an A b i in order for other people to use it, they usually tell you how to use it, and they have documentation on how to use it. But most of them comply with a standard like Jason to make it easier for developers like us to use. And at the end of the day on a P, I is a tool used for data communication. It's how a program, the software or anything running code allows others to communicate with it. And it opens up a big possibility off making websites that do more than just list robots. You can now with the same principles, build websites that incorporate different AP eyes to have the functionality of something like Sky Scan. I'll see you in the next one, but why?