Summary : - API : enables a system to communicate with another (without having to understand the complexity of the other system) - SDK : enables you to use APIs easily
@@bibekanandabhattacharjee952 My understanding is that sdk make it easier and faster to implement the api communication rather than writing code from scratch as it contains already all the methods needed to make api calls so we can just call the methods instead of writing the entire implementation. (Without reinventing the wheel)
An SDK is just a pre-packages set of code (for a specific language) that you don’t have to write yourself. Sometimes free and sometimes you have to,purchase them. In the case of this video, he is suggesting a “API-Interaction” SDK a developer would use. There are all sorts of other SDK’s out there including things like an SDK to simplify building a User Interface.
What you describe sounds more like a framework to me. Isn't an sdk (software development kit) something you use during the development rather than during actual runtime? Like a debugger etc. If I'm wrong (which is totally possible), could you tell me where you would draw the line between framework and sdk?
Prior to 2000 and there is a period of overlap, API was synonymous with function calls to external libraries exposed by other modules. It could be local, in memory, inter-process or remote libraries (or set of libraries SDK), whether it was binary or textual. API's around 2000 became synonymous with HTTP SOAP Web Services, and circa 2012 became synonymous with REST Web Services.
I'm glad to see this comment cuz what's being discussed in the video is a Web API instead of a regular API. Nobody I work with seems to understand there's a difference there.
I do not understand why some people put a thumb down ?? This video is design to give an overview of technical concepts. It does an excellent job and reach it goal, it simplifies those technical notions without giving wrong info.
I understand now what all this means, but sometimes you are just looking for simple definitions: API is a URL that does something (retrieve info, change something or perform an action). SDK is a file or files which have libraries that developers download and use in their proyects. Then it comes everything else that you brilliantly explained.
I save you some time here: API is if you make the requests yiursefl to an url to get, post, put etc. json data. SDK is a sort of module written by the service provider which contains functions you can use to complete your task. Example would be: upload_image("cat.png")
API is also the library of interfaces to a desktop application or program. For example, you can integrate a program to Excel by using its COM API Interface. API is basic, it's only an interface. An SDK is more complete as it can have library API interfaces AND Tools to work with a specific technology. For example, if you want to develop mobile apps from Windows, you will need an SDK for a mobile OS, which is a complete set of tools to compile the code to Native Mobile OS, a debugger, an IDE, etc. etc.
Dear IBM Cloud, you disturbed me with your creative board and the talented trainer. Due to the amazement, I could not concentrate on what he is teaching. You innovated a little more than what you need to.
That's the idea. It should always be the guiding principles of good software. It's also great that the api or design when they are easy for the layperson to dive into the subject. Yes there is still a learning curve. If you look at search engines you dont ever had to think about issues about ranking or api or syntaxes almost never. Similarly, difficult concepts should be enjoyed by everyone. So there is a lot of work still. Glad you're enjoying it
Some misconceptions on this video: 1. API is not synonymous of REST, API it’s about interface exposition. 2. There are kinds of APIs: Communications API: Like Rest; Systems API: Like Windows API, Programming Languages API: Like JAVA APIs… and so forth 3. SOAP it’s a specification for a messaging protocol, not an API effectively. His implementation can be. I really don’t like to see people using the words API and REST indistinctly…
The down side of the SDK is its size. It has many funcrionality that one app might not use, also as SDK should be consistent over time, it should have the older versions which make them even larger over time. Also, as they run on our thread, they could have security issues, as well as malwares. It is better to make a good document for API vs an SDK. But big companies like to creare SDK to abscure data from developer. So never use an SDK unless it is open source.
The advantage of SDK is just to avoid handeling api requests and response , but in reality SDK will not reduce the extra code form application . In simple word SDK is a sinthetic sugar over API
Without SDKs we would need to send API requests using low level HTTP commands in whatever language we use. For example: Wanna talk to the Stripe API to get customer info using PHP? Without an SDK you probably need Guzzle HTTP library to send several requests to the /customer/ endpoints while needing to pass authentication credentials each and every time in your code. With their PHP SDK you aunthenticate once within your scripts and use the Customer object to get customer related data. SDKs facilitate using an API but are not the API and are not guaranteed be offered by the service/company that published the API. On the other hand, consuming the API using lower level commands offers us more control depending on how deep the SDK was implemented or not. I highly recommend checking out Stripe’s APIs and SDK documentation to get a good example of amazing implementation.
Great video, I think this helps remind us of what an API ‘actually’ is…I personally tend to use the term API when I should really be saying ‘SDK’. I think another important concept to mention is that an API requires the logic to be hosted on 3rd party hardware, whereas SDK entails assemblies that you absorb as local references to your project and publish along with your build.
They're both in the name. API, Application Programming...Interface - a way of programming an application. An application is already built and is already running. An SDK, Software Development...Kit. A set of tools (a kit) to develop software. This is independent from the application (a prebuilt binary). It's tools that you use to build a binary that does a specific thing. They usually consist if multiple APIs.
The main difficulties of existing API multilevel systems are: 1.The difficulty of porting a program code from one API interface to another. 2.Loss of functionality upon jumping from lower layer to higher.
These is a crestal clear example. I really appreciate your effort and method of education. great thank you as I wish to see more and more of this videos.
Hi. i just discovered this video and it's great. Thanks for that. I have a question: once the tool box created, is there any best practice to maintain it please ?
The term API has been in use since the 1980s. Then it referred to callable functions to allow programmers to interact with the program product such as IBM CICS. In the 1990s we started to use the term with intra company systems. The customer information system at the bank where I worked had no screens of its own. Every action was performed by API calls. It is wrong to say that API calls are standardised, The same API could be called using XML (SOAP when it became popular bespoke initially) over HTTP or MQ or natively from a message switch. There is no requirement to use JSON or XML. It appears that the term API has been hijacked to mean REST, but that is only one implementation
An API is the protocal used to comumicate with another program, regardless of its loaction. Not all APIs, out side of networking, are standardized and some on networks are not either. I've worked with several different APIs. Unfortunately, some (think hardware) did not provide an SDK, so I had to write my own. An SDK is basically software/code that translates your requests and commands into the protocol required to communicate. In this way the programmer doesn not need to know the protocal to communicate with the API. An SDK is usualy a library integrated into your software, but can also just be a module in your application.
Out of all the tech giants putting out educational videos, IBM has the most visually appealing videos.
true, but the sound of the markers hurts me 😢
Summary :
- API : enables a system to communicate with another (without having to understand the complexity of the other system)
- SDK : enables you to use APIs easily
well ... SDK's are actually code. It's actually instantiated, rather than being a protocol.
I didn't have the enough ryt now . To watch the full video.. Thanks for Summarising it. 😀
@@janglestick thank you mo one is saying what it actually is and you just nailed it. Its that simple.
1 Quick Question. Can a API not work properly without an appropriate SDK and vice-versa ?
@@bibekanandabhattacharjee952 My understanding is that sdk make it easier and faster to implement the api communication rather than writing code from scratch as it contains already all the methods needed to make api calls so we can just call the methods instead of writing the entire implementation. (Without reinventing the wheel)
An SDK is just a pre-packages set of code (for a specific language) that you don’t have to write yourself. Sometimes free and sometimes you have to,purchase them. In the case of this video, he is suggesting a “API-Interaction” SDK a developer would use. There are all sorts of other SDK’s out there including things like an SDK to simplify building a User Interface.
What you describe sounds more like a framework to me. Isn't an sdk (software development kit) something you use during the development rather than during actual runtime? Like a debugger etc. If I'm wrong (which is totally possible), could you tell me where you would draw the line between framework and sdk?
@@ulicqueldromal isn't a framework like .NET an sdk anyway? (Idk though i could be wrong as well)
Thanks for that missing piece / clarification
@@ulicqueldromal sounds to me like he’s talking about templates in Wordpress. Especially the last sentence. So SDKs are themes ?
@@tresaidh3y90 no thats a framwork you literally just said it
I'm impressed that you wrote all this backwards, and didn't even screw up
There are editing softwares that can flip horizontally.
@@ganchen5555 lol
I'm impressed that you think he wrote all this backwards 🤣
The camera was filming behind a glass, and he was writing on that glass as per normal. The video was simply flipped like a mirror image.
He actually use his right hand to write
Prior to 2000 and there is a period of overlap, API was synonymous with function calls to external libraries exposed by other modules. It could be local, in memory, inter-process or remote libraries (or set of libraries SDK), whether it was binary or textual. API's around 2000 became synonymous with HTTP SOAP Web Services, and circa 2012 became synonymous with REST Web Services.
I'm glad to see this comment cuz what's being discussed in the video is a Web API instead of a regular API. Nobody I work with seems to understand there's a difference there.
You nailed it!
Even before I can concentrate on the subject he is explaining, my brain is lingering on the board and its depiction, it is so amazing
I do not understand why some people put a thumb down ?? This video is design to give an overview of technical concepts. It does an excellent job and reach it goal, it simplifies those technical notions without giving wrong info.
For the algorithm. Everyone who saw the thumbnail and thought why tf is this in my recommended
This guy is way ahead other explainers in youtube, nice charsima, speech and gestures, and nice looks
I understand now what all this means, but sometimes you are just looking for simple definitions:
API is a URL that does something (retrieve info, change something or perform an action).
SDK is a file or files which have libraries that developers download and use in their proyects.
Then it comes everything else that you brilliantly explained.
I save you some time here:
API is if you make the requests yiursefl to an url to get, post, put etc. json data.
SDK is a sort of module written by the service provider which contains functions you can use to complete your task.
Example would be: upload_image("cat.png")
These IBM videos are NOTCHES above the google ones . Great stuff !!
API is also the library of interfaces to a desktop application or program. For example, you can integrate a program to Excel by using its COM API Interface. API is basic, it's only an interface. An SDK is more complete as it can have library API interfaces AND Tools to work with a specific technology. For example, if you want to develop mobile apps from Windows, you will need an SDK for a mobile OS, which is a complete set of tools to compile the code to Native Mobile OS, a debugger, an IDE, etc. etc.
Dear IBM Cloud, you disturbed me with your creative board and the talented trainer. Due to the amazement, I could not concentrate on what he is teaching. You innovated a little more than what you need to.
i am wondering how he learned writing reverse
I was just thinking that.
But, I think he wrote it just the way he always writes. But, in the editing software, the image is flipped horizontally...
Maybe the video is flipped?
The video is mirrored, so he is right handed and wear his watch on his left ARM ^^
he is a computer generated person
He's using a LightBoard. See ruclips.net/video/wCOuu0-o5YI/видео.html
I've watched many content about APIs. This video is definitely the best. Great job.
Never knew programming was this easy. You have really open my mind to endless ways of developing solutions to problems.
Thanks Bro!
That's the idea. It should always be the guiding principles of good software. It's also great that the api or design when they are easy for the layperson to dive into the subject. Yes there is still a learning curve. If you look at search engines you dont ever had to think about issues about ranking or api or syntaxes almost never. Similarly, difficult concepts should be enjoyed by everyone. So there is a lot of work still.
Glad you're enjoying it
I don't understand shit
Great video. Sound of that pen on glass though...uff shivering
I just go to 29 seconds where he finished the square for the dog, I can't even continue, it's like nails on chalk board for me.
i stop watch at this point
I agree. I had to discontinue the video bcz of sound it makes
I actually like that sound. It's nothing like nails on a chalkboard
Nails on a chalk board is pure hell.
This channel is famous to make easy concepts complicated, hats off to you guys & keep up the good work.
Perfect. Was struggling with these terms. Helped me get a basic idea to build on.
이렇게 좋은 영상에 한글자막을 해주셔서 너무 감사합니다
근데 자막 너무 개떡같지 않나요??? 메소드를 방법이라고 하는데??? 통신을 의사소통이라고 하고 ㅋㅋㅋㅋㅋ 기계번역 수준...
Some misconceptions on this video:
1. API is not synonymous of REST, API it’s about interface exposition.
2. There are kinds of APIs: Communications API: Like Rest; Systems API: Like Windows API, Programming Languages API: Like JAVA APIs… and so forth
3. SOAP it’s a specification for a messaging protocol, not an API effectively. His implementation can be.
I really don’t like to see people using the words API and REST indistinctly…
Indeed, literally a Java function can be called as 'API'
He already said that Rest is an example of API.
The down side of the SDK is its size. It has many funcrionality that one app might not use, also as SDK should be consistent over time, it should have the older versions which make them even larger over time. Also, as they run on our thread, they could have security issues, as well as malwares. It is better to make a good document for API vs an SDK. But big companies like to creare SDK to abscure data from developer. So never use an SDK unless it is open source.
Very Interesting. And here I thought SDK's was a great Idea.
worth noting that if the language has tree shaking, sdk size is not an issue
1.
I have been using api and sdk without knowing the terms for them! Thank you for the enlightenment!
Haha love this!
The advantage of SDK is just to avoid handeling api requests and response , but in reality SDK will not reduce the extra code form application .
In simple word SDK is a sinthetic sugar over API
This was absolutely simplified! Thanks IBM and amazing instructor
The fact hes writing backwards deserves a like.
i think this is the most clear and easy to understand video i've watched about api and sdk . love it, keep it up!!
Wow, this is not the place I had expected to find a collab with Mr. Beast! What a versatile guy.
It was superb how he wrote his explanations in reverse 👏🏻👏🏻👏🏻
he didnt write in reverse. he reversed the video
10/10 in actually getting the point of the video across, keep posting content plz!
I liked the API description but the SDK example was a bit muddy imo. Good work anyhow and appreciated.
Definitely loving these videos from IBM. Thank you for these!
Who knew MrBeast would be teaching me about APIs and SDKs but this really helped!
How the heck do you write like you write on a mirror...this guy is a genius!
Horizontal flip
this is pretty good movie clip to get basic understanding of between both. It is really helpful.
Without SDKs we would need to send API requests using low level HTTP commands in whatever language we use.
For example: Wanna talk to the Stripe API to get customer info using PHP?
Without an SDK you probably need Guzzle HTTP library to send several requests to the /customer/ endpoints while needing to pass authentication credentials each and every time in your code.
With their PHP SDK you aunthenticate once within your scripts and use the Customer object to get customer related data.
SDKs facilitate using an API but are not the API and are not guaranteed be offered by the service/company that published the API.
On the other hand, consuming the API using lower level commands offers us more control depending on how deep the SDK was implemented or not.
I highly recommend checking out Stripe’s APIs and SDK documentation to get a good example of amazing implementation.
Very nice so a Partner API is a bridge between two business who share a common goal and have a relationship and trying to build something.
Thanks ,a colorful presentation on api and sdk. very helpful.
You are most welcome
Great video, I think this helps remind us of what an API ‘actually’ is…I personally tend to use the term API when I should really be saying ‘SDK’.
I think another important concept to mention is that an API requires the logic to be hosted on 3rd party hardware, whereas SDK entails assemblies that you absorb as local references to your project and publish along with your build.
What is the difference between a SDK and a package then?
They're both in the name.
API, Application Programming...Interface - a way of programming an application. An application is already built and is already running.
An SDK, Software Development...Kit. A set of tools (a kit) to develop software. This is independent from the application (a prebuilt binary). It's tools that you use to build a binary that does a specific thing. They usually consist if multiple APIs.
Im not a native english speaker, the way you talk is amazing understable! Congrats!
Thank you Natan from Ukraine.
God Bless You!
Wow, that is really simple straitforward explanation..
A quick overview at the beginning then the explanation or the explanation then a quick a quick summary would make it more understandable.
Whoa, this is a exceptional vídeo about API and SDK topics, my english needs a upgrade, but thanks was necessary!
Thank you for the easy and visually explanation.
The main difficulties of existing API multilevel systems are:
1.The difficulty of porting a program code from one API interface to another.
2.Loss of functionality upon jumping from lower layer to higher.
Thanx for really breaking down into very simple to understand instruction
I love that this videos are dark moded.
You looked like Mr. Beast! Nice explaination btw
true and also valletri bottas
TLDR: an API is a specification. An SDK is an actual set of libraries, code and / or tools. There is usually overlap between the two.
This is one of the best videos I've ever seen on youtube!!!
Thanks for your helpful tips about SDK and API
Very nicely articulated- I love it!
Thanks, Bala!
Great breakdown Nathan.
Writing in reverse must be a struggle; all the more appreciation for the video!
See ibm.biz/write-backwards
Thanks for the explanation! That is the first presentation I see from an IBM person that goes directly to the point. Great.
That screeching… I am dying here. Great content!
this video blow my mind ,, great video
That's good. 1 Quick Question. Can a API not work properly without an appropriate SDK and vice-versa ?
A nice explanation. And I loved the board.
Awesome explanation. I was struggling to understand it.
These is a crestal clear example. I really appreciate your effort and method of education. great thank you as I wish to see more and more of this videos.
A nice short video by Nathan, but which gives a good insight on what SDK and API are. Thanks mate for your effort
Nice explanation with example.
Suggestion , text written on the board is not visible properly. Can u please improve.
Thanks for making it so simple
Brilliant explanation
I’ve loved this board since day one.
Hi, Thank you. It was great. please make more videos like this. best of luck.
I'm very impressed of his ability to write backwards...
It's amazing!
Probably he flipped the video after recording.
i kept looking at my sleeping dog thinking she was sick or something. apparently it was you. But THANK YOU, this video helps me a lot!
Hi. i just discovered this video and it's great. Thanks for that. I have a question: once the tool box created, is there any best practice to maintain it please ?
This is a good explanation. Thank you!
I'm interested in they way you film this video. Is there any special equipment or just pure mirror and dark background
Thank you for very useful videos guys! You're great!
Very nice explanation!
You will not be sending file name to the ViS server, instead, you will be sending image data. Great Video!!!
Thank you! amazing tutorial, clear and solid explanation.
Very succint. As a brief intro, it shines! Thanks, man.
Thanks for the video, the drawing is actually very helpful to understand between these two.
You're welcome, glad you like our video format! 👍
This is a great video, I finally understand that difference
The style of this tutorial is awesome.
Great explanation! Thanks! :)
when mr beast teach valuable information.
The term API has been in use since the 1980s. Then it referred to callable functions to allow programmers to interact with the program product such as IBM CICS. In the 1990s we started to use the term with intra company systems. The customer information system at the bank where I worked had no screens of its own. Every action was performed by API calls.
It is wrong to say that API calls are standardised, The same API could be called using XML (SOAP when it became popular bespoke initially) over HTTP or MQ or natively from a message switch. There is no requirement to use JSON or XML.
It appears that the term API has been hijacked to mean REST, but that is only one implementation
Very easy to understand API and SDK. Thanks
All good, very good explanation but I wish it was bit quicker.
awesome video!
Beautiful explanation
Impressive sir
Great explanations sir. Thumb up
great and clear introduction to the terms
Well explained 🔥
good video, but you should make the code that was added in post in a bright color like white. it's hard to read on lower resolutions.
thanks a lot for this klarification its really help me to understant the concept of communication of an app
칠판에 쓰면 반대로 써야할텐데 정말 잘쓰시네요..
1min in the video, am like "gotta sub this channel". I love how calmly he explains things. Need more from this guy
An API is the protocal used to comumicate with another program, regardless of its loaction. Not all APIs, out side of networking, are standardized and some on networks are not either. I've worked with several different APIs. Unfortunately, some (think hardware) did not provide an SDK, so I had to write my own.
An SDK is basically software/code that translates your requests and commands into the protocol required to communicate. In this way the programmer doesn not need to know the protocal to communicate with the API. An SDK is usualy a library integrated into your software, but can also just be a module in your application.
Hi, can you please do a video on Ncache as well, thanks!
I never knew Mr. Beast works for IBM lol