References - Last updated on Sun, Jun 21, 2020
Reference material on programming languages, development frameworks, and other tech topics.
References
Programming Languages
Name | Description | Sample Code |
---|---|---|
Python is an interpreted, high-level, general-purpose programming language. Created by Guido van Rossum and first released in 1991, Python’s design philosophy emphasizes code readability with its notable use of significant whitespace. Its language constructs and object-oriented approach aim to help programmers write clear, logical code for small and large-scale projects. Source: Wikipedia.org |
| |
Java is the name of a programming language created by Sun Microsystems. Java runs on many different operating systems, including Android, the world’s most popular mobile operating system. Source: Wikipedia.org |
| |
JavaScript is a high-level programming language. It was originally designed as a scripting language for websites but became widely adopted as a general-purpose programming language, and is currently the most popular programming language in use. JavaScript is usually found running in a web browser as interactive or automated content, ranging from popup messages and live clocks to large web applications. JavaScript is also commonly used in server-side programming through platforms like Node.js[2], or "embedded" in non-JavaScript applications where the base programming language lacks the high-level functionality that JavaScript offers. Source: Wikipedia.org |
| |
C is a computer programming language based on C. It was created for writing programs for many different purposes. In the 1990s, C became one of the most used programming languages in the world. Source: Wikipedia.org |
| |
Ruby is an interpreted, high-level, general-purpose programming language. It was designed and developed in the mid-1990s by Yukihiro "Matz" Matsumoto in Japan. Ruby is dynamically typed and uses garbage collection. It supports multiple programming paradigms, including procedural, object-oriented, and functional programming. Source: Wikipedia.org |
| |
Unity is a type of game engine that was developed by a video game development company called Unity Technologies. The Unity engine allows developers to make both 2D and 3D games. It currently supports only the C# programming language. It supports Direct3D, OpenGL, OpenGL ES, Metal, Vulkan, and proprietary API. Since 2016, Unity offers services on the cloud. Source: Wikipedia.org |
| |
Swift is a general-purpose, multi-paradigm, compiled programming language developed by Apple Inc. for iOS, iPadOS, macOS, watchOS, tvOS, Linux, and z/OS. Swift is designed to work with Apple’s Cocoa and Cocoa Touch frameworks and the large body of existing Objective-C code written for Apple products. Source: Wikipedia.org |
| |
Haskell is an advanced purely-functional programming language. An open-source product of more than twenty years of cutting-edge research, it allows rapid development of robust, concise, correct software. With strong support for integration with other languages, built-in concurrency and parallelism, debuggers, profilers, rich libraries and an active community, Haskell makes it easier to produce flexible, maintainable, high-quality software. Source: wiki.haskell.org |
|
Frameworks
Name | Description |
---|---|
LOVE is an awesome framework you can use to make 2D games in Lua. It’s free, open-source, and works on Windows, Mac OS X, Linux, Android and iOS. Source: love2d.org | |
Django is a Python-based free and open-source web framework, which follows the model-template-view (MTV) architectural pattern. Django’s primary goal is to ease the creation of complex, database-driven websites. The framework emphasizes reusability and "pluggability" of components, less code, low coupling, rapid development, and the principle of don’t repeat yourself. Source: Wikipedia.org | |
Pygame is a cross-platform set of Python modules designed for writing video games. It includes computer graphics and sound libraries designed to be used with the Python programming language. Source: Wikipedia.org | |
Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside of a web browser. Node.js lets developers use JavaScript to write command line tools and for server-side scripting—running scripts server-side to produce dynamic web page content before the page is sent to the user’s web browser. Consequently, Node.js represents a "JavaScript everywhere" paradigm, unifying web-application development around a single programming language, rather than different languages for server- and client-side scripts. Source: Wikipedia.org | |
React (also known as React.js or ReactJS) is a JavaScript library for building user interfaces. It is maintained by Facebook and a community of individual developers and companies. React can be used as a base in the development of single-page or mobile applications. However, React is only concerned with rendering data to the DOM, and so creating React applications usually requires the use of additional libraries for state management and routing. Redux and React Router are respective examples of such libraries. Source: Wikipedia.org |
Command Line
Cookiecutter: A command-line utility for creating boilerplate project files from cookiecutters (project templates).
$ vimtutor
Computer Science and Math
Algorithms and Complexity
Data Structures
Computer Architecture
Discrete Math
Statistics
Logic
Careers in Tech
Software Engineering
Data Science
Electrical Engineering
Artificial Intelligence and Machine Learning
Game Development
Information Security
Version Control
System Design
The System Design Primer: Learn how to design large-scale systems. Prep for the system design interview.