- API
-
API is an acronym for Application Programming Interface. You can think of an API as a contract between you and a computer program. This contract guarantees that if you provide some specific information to a computer program, the computer program will do some specific task. At hackathons two kinds of APIs are usually discussed: web application APIs and software library APIs.
-
In the case of web application APIs, the user provides some information to a web application, and then the web application either changes its state, or it provides the user with some other information. An example of a web API that allows a user to change the state of the application is the Twitter API. By providing a Twitter username, the text of the tweet, and some other information, users can use the Twitter API to post a tweet. The Sunlight Foundation Capitol Words API is a web API that provides information. If a user provides an English phrase to the Capitol Words API, it will return to the user the number of times that phrase has been said over time during US congressional sessions.
-
Software library APIs specify how to use a software library, and how a software library will behave within a computer program. An example of a software library API is the Array API in the Ruby programming language.
-
- Developer Evangelist
- Also known as a devangelist, this person is a mentor, a teacher, a programmer, an advocate, a translator. This position straddles the line between engineering and marketing, explaining technology to a variety of audiences, aiming to convince said audiences to use that technology, getting excited about it.
- Framework
- HTTP
- HTTP is an acronym for HyperText Transfer Protocol.
- Library
-
Package
-
Protocol
- A protocol is a system of rules that explain the correct conduct and procedures to be followed in a given situation. For example, the IP (Internet Protocol) defines a set of rules to send and receive messages at the Internet address level.
- SDK - SDK is an acronym for software development kit, which is a set of dev tools which makes it easier for developers to make apps for a specific platform (ie. iOS, Android, web...), package, framework, and more. SDKs are similar to APIs, but one key difference is that all SDKs include or are APIs, but not all APIs are SDKs.
- TCP/IP