coding terms and definitions
what is a framework
A Framework is a collection of code (skeleton) and services that make it easier for you to create your own custom apps, without having to write all the code yourself.
AngularJS
A Javascript front-end framework for building web applications. You can use Angular.js to extend the capabilities of HTML and add different components to your application.
Boolean
A boolean value is true (1) or false (0), which is the underlying logic powering computers.
Bug
A bug is an error in your program. Syntax bugs prevent your code from running, or semantic bugs where your code runs but doesn't do what you want.
Byte
A byte is 8 bits.
circuit
A circuit is a theoretical model of computation where inputs go through gates that each perform a task. Circuits are defined by the different inputs and outputs. Examples include boolean circuits and integer circuits
AJAX
A collection of web technologies that allow a website to get information in the background without changing the display. This means the content can change without the need to reload.
Command
A command is an instruction that you give your computer on its command line interface. Some common examples are running a program, changing the directory, or listing the contents of a file.
Computer program
A computer program contains lines of code to tell a computer how to perform a task. Sometimes a program contains multiple files written with different programming languages.
Database
A database is a way to organize data. A database management system allows users and apps to work with the data in order to access and analyze it.
DNS
A domain name system (DNS) is a naming system for computers and other services connected to the Internet. It maps more common domain names (www.create-learn.us for example) to the numerical IP addresses needed for network protocols. The service that translates URLs to IP addresses.
For loop
A for loop repeats a block code based on iterating through values. This may be iterating through a range of numbers or iterating through items in a data structure.
Framework
A framework is a generic piece of software that a user can add their own functionality to. Frameworks provide a starting work and then you can add customizations to suit your needs.
Function definition
A function definition includes the name of the function, the parameter it takes, and the block of code that performs the task of the function.
High-level language
A high-level language allows you to write code without worrying about details of the computer since it's abstracted away. Popular examples include Python, Java, and C++.
IP address
A number assigned to any item that is connected to the Internet.
C++
A popular programming language, and an extension of C. It's object oriented, a compiled language, and performs quickly. It includes more high-level features than C.
Agile software development
A set of principles aimed at improving the performance of software teams through short sprints of work. It fosters collaboration, and constant evolution and improvement.
Binary
A system of two possible states. In computers, everything is ultimately represented by the two numbers: 0 and 1.
Command-line interface (CLI)
A user can directly give their computer instructions through commands in the command line interface (CLI). The CLI offers the same capabilities as graphical interfaces on modern computers like interacting with the file system.
Class (HTML and CSS)
An HTML class attribute is used to reference a class defined in a CSS file. This can improve readability and lead to consistent style throughout a website.
HTTP Request
An HTTP request is sent by a client to a host on a server, requesting to access information. The client uses the URL of the request to include information about what they are trying to access.
Active record
An active record is a way to access data and is found in software that uses databases.
Apps
An app, short for application, is a piece of software that achieves a certain task. A phone may have mobile apps for social media or games. A computer can have apps to help you code or join a video call.
API
An application programming interface (API) allows different applications to communicate and share information. That way engineers can use a product or access data or information without actually knowing the implementation. Many actions on your phone involve an API to get the necessary information
Arrays
An array is a data structure of ordered elements. Each element has an index associated with it.
Assignment operators
An assignment operator assigns a value to a piece of storage, like a variable or index in an array. A common assignment operator is "=", which assigns the value on the right to the object on the left.
Event Handler
An event handler is a block of code that responds to an event to do something with it. For example, this might be writing the action when a user clicks a button or presses a key.
Event
An event in computer programming is something like a user action, outputs or a message. In event-driven programming, the logic of the program is determined by these events.
Expression
An expression is a piece of syntax that's an arithmetic statement. It may include variables, operators or constants. The expression can also return a value to use later in the code.
If-statement
An if statement has a condition and a block of code associated with it. The block of code will only execute if the condition is true.
Integrated development environment
An integrated development environment (IDE) is an application that provides programmers many features for software development like an editor or a debugger. Popular IDEs include VS Code and PyCharm.
Android
Android is a popular mobile operating system. You can build Android apps in Java and test them with Android Studio.
Apache
Apache is an open source server to send content through the web - and it's free. It's the most popular HTTP client on the web.
Arithmetic operators
Arithmetic operators are + for addition, - for subtraction, * for multiplication, / for division and % for modulo. They behave the same way in programming languages like they do in math.
Asynchronous programming languages
Asynchronous programming languages allow events to occur in parallel to the main program. This can help speed up processes.
Augmented reality
Augmented reality (AR) is an enhanced digital representation of the real world through visual stimuli, sounds, and other sensory experiences.
Blender
Blender is an open source software for 3D capabilities including animation, simulation, and motion tracking. There's an API that works with Python to build different tools, too.
Block-based programming language
Block-based programming languages are great for beginners because they allow you to focus on important coding concepts without worrying about syntax. Scratch is a popular drag-and-drop block-based programming language.
Camel case
Camel case is a naming convention for variables. The first word of the name is lowercase and each new word after that is capitalized ("forExample"), resembling the humps of a camel.
CSS
Cascading Style Sheets (CSS) is a language often used alongside HTML to specify the style of a page. This may include things like text color, background, heights and widths.
Click
Clicking is the action you take with your mouse. It allows you to interact with what's on your screen. You can write code to only execute if a click is detected.
Cloud Computing
Cloud computer is the process of accessing a central computer system (the cloud) through the internet. Amazon Web Services is one of the most popular cloud computing providers.
Code
Code is the instructions in a program that tell your computer what to do. These programs can range from simple calculations to complex applications. There are many different languages used to write code.
code review
Code reviews are a common practice in software development. After you write code, another engineer will look at your code and offer feedback to improve functionality and style.
Computational biology
Computational biology is the interdisciplinary field of computer science, math, and biology. It can be used to solve biology-based problems relating to topics like the genome and protein folding.
Computer science
Computer science is a broad topic covering the theory of computing, ways to instruct your computer through code and so much more! Computer scientists build the hardware and software that's become an everyday part of our lives.
Conditionals
Conditionals are statements that are only executed when a certain condition is met. An example of this is an if-statement.
Constants
Constants are values in your program that don't change. Including them improves reading them. Some values that may not change in your program are days of the week or a maximum value.
Cybersecurity
Cybersecurity is the important practice of protecting computer systems. This may involve protecting data from malicious intruders, maintaining hardware, and ensuring that information is properly sent.
Data
Data refers to information collected on a topic. This may be numeric or may already have an associated structure. Many computer scientists focus on data processing and analysis.
Data Science
Data science is the field of analyzing large amounts of data to find patterns or make predictions based on past data. This involves data collection, data processing, and then data analysis.
Data structures
Data structures are ways to organize information so that you can more effectively use it in your code. Some examples of data structures are arrays which store ordered data or dictionaries in Python that map a key to a value.
Data types
Data types refer to the type of information that a variable can store. For integers, the data type might be int or long. The data type of a decimal number might be float or double. In certain languages like Java, you need to specify the data type when declaring a variable.
Debugging
Debugging is the process of finding bugs or errors in your program and fixing them. A popular debugging technique is using print statements to see what your code is doing at different points.
Decompose
Decomposing your code is a great practice where you break a large task in your code into smaller sub-tasks. It allows for greater readability and code reuse.
deployment
Deployment refers to making a piece of software available for use. Engineers may be working on and improving a development version of software. When the software is finished, they will deploy it to production.
Drag
Dragging is an important part of block-based languages like Scratch. You drag the blocks to different locations in the code to change the functionality.
Drop
Dropping is the other important part of block-based languages like Scratch. Together, they comprise the action drag and drop.
Else statements
Else statements always need to be tied to an if or else-if statement. They will be executed if none of the conditions above have been met. They tell the computer to do one thing if something is true, or else do another thing if it's not true.
Firebase
Firebase is a platform for mobile and web app development. Firebase provides integration with Google services like GoogleAd and Google Cloud Messaging
GIS
Geographic Information System, A computer system that stores, organizes, analyzes, and displays geographic data.
Git
Git is a software for version control and tracking changes across files in a project. It is often used for developing software in a team.
Github
Github is an internet host for version control with Git. It has its own features like issue flagging, feature requests, and a system for reviewing pull requests.
HTML
HTML is the markup language to build webpages for a browser. It's often accompanied by CSS to add style elements. You can think of HTML as the skeleton of the website and CSS as the embellishments.
Front-End Developer common LANGUAGES
HTML, CSS and JavaScript, making proficiency in each key to their success.
Haml
Haml is a system that allows you to write cleaner HTML. It also allows you to add dynamic content in HTML. Haml can be used in the command line.
Hardcode
Hardcoding is the practice of putting values directly in your code. This should be avoided, as it makes repetition and editing harder since you must remember to change every occurrence of the number and reduces readability.
3D Modeling
In 3D modeling, you can use software to create 3D representations of objects in a coordinate system. The models can be generated manually, through an algorithm, or scanning an object to collect information on its shape.
Local environment
In a local environment, you are running a project on your personal computer rather than a server. This allows you to make changes, like through testing, that won't affect a live version of the project.
CAD
In computer-aided design (CAD), a computer helps generate and improve a design. It can provide the blueprint for products or other manufacturing operations. In addition to appearance, CAD provides information on materials and dimensions.
Input
Input refers to the generic concept of giving your code information. This may be through user actions like a mouse click or passing parameters to a function.
Iteration
Iteration refers to doing something many times. In for loops, you iterate through values, like a range of numbers or a data structure, and repeat a certain block of code.
Java
Java is a powerful object-oriented programming language and a successor to C/C++. Syntax features of Java include curly braces, semicolons and declaring variables with their types
JSON
JavaScript Object Notation (JSON) is a file format that's easy for humans to understand and machines to parse. The format associates keys with values, very similar to dictionaries in Python.
Key
Keys are used to identify or authenticate users trying to access data inside an API. Keys are generally unique.
Linux
Linux is a group of Unix-like operating systems. It was developed for personal computers and has become very popular, as many servers, smartphones and cloud infrastructure run with Linux.
AppInventor
MIT AppInventor is a web platform that helps beginners learn Android app development. The user can experiment with design and implement functionality with a block-based language
Accessibility
Making something useable for all people.
Front-end Developer TASKS
Optimizing the user experience. Using HTML, JavaScript and CSS to bring concepts to life. Developing and maintaining the user interface. Implementing design on mobile websites. Creating tools that improve site interaction regardless of the browser. Managing software workflow. Following SEO best practices. Fixing bugs and testing for usability.
Abstraction
Simplifying code by hiding some of the complexity from the user. One common example of abstraction is object oriented programming.
Front-end Developer
Simply put, these developers focus on a website's visitor-facing aspects; as opposed to a back end developer, who focuses on behind the scenes work; or a full stack developer who works on both sides.
IOS Swift
Swift is an Apple programming language. It combines elements from the C and Objective C languages.
Binary alphabet
The binary alphabet allows you to express the uppercase and lowercase letters of the English alphabet with only zeros and ones. These letters are encoded as seven-bit integers.
cloud
The cloud refers to the central computer system that you can access to run software or store large amounts of data. This allows you to use higher computing power than what's directly available on your own computer.
Bit
The individual 0s and 1s that create a computer program.
function call
The piece of code that you add to a program to indicate that the program should run the code inside a function at a certain time.
Algorithm
The strategy that a computer program uses to solve a problem - like a set of instructions. Depending on the problem, algorithms can take many forms and range from relatively simple to extremely complex.
Endless loop
These are loops that never happen. You can have an endless while loop if the condition you specify to continue looping never becomes false.
Call (a function)
When you call a function, you are giving it inputs so it can perform the task you've written inside the function. This could be many things, like returning a value, or displaying output to the screen.
Call (a variable)
When you call a variable, you are doing something with the value it stores. This may be using the value in another part of the code or reassigning the value the variable stores.
declaration
When you declare a variable or function, you are introducing it into your program. In a function declaration, you indicate the name of the function, the parameters it takes and the task it performs. In a variable declaration, you indicate the name of the variable and you can give it an initial value.
argument
You use arguments to pass information to a function. The arguments (a number, text, string, etc) are variables that can only be used and accessed inside that function.
JavaScript
an object-oriented computer programming language commonly used to create interactive effects within web browsers. JavaScript is a front-end programming language. It's often used with HTML and CSS to provide functionality to websites. All major web browsers can run JavaScript code on the user's computer.
Full-stack developer
builds code for both the front end and back end. This might involve working with databases, servers, and web applications.
Back-End Development
consists of server, application and a database. It is the brain of the website. It is where the customer interaction is stored. The backend is the part of a software that is hidden from the user. It can deal with tasks like collecting information, processing data, and ensuring security.
Function
function is a block of code that performs a specific task. In well-written code, the task is well-defined and not exceedingly long. A function that is very long or completes multiple tasks should be broken down into smaller functions.
jQuery
jQuery is a JavaScript library. It's the most commonly used JavaScript library, helps simplify syntax, and abstracts away low-level features. Core features of jQuery have influenced the development of other libraries.
Django
open source Web application framework based on Python programming language
Front-end Developer RESPONSIBILITIES
to ensure that website visitors can easily interact with the page. They do this through the combination of design, technology and programming to code a website's appearance, as well as taking care of debugging. Whenever you visit a website, anything that you see, click on or otherwise use is the work of a front end developer.