Programming and Development Reference Guide
- sciatixsolutions
- Jan 8
- 9 min read
Web Development | iOS Development | Android Development | Game Development | Data Science/AI | System Programming |
HTML | Swift | Java | C++ | Python | C |
CSS | Objective-C | Kotlin | C# | R | C++ |
JavaScript | SwiftUI | Java | Lua | Julia | Rust |
PHP | Objective-C with Swift | XML | JavaScript (Node.js) | MATLAB | Assembly |
TypeScript | Cocoa Touch (Obj-C) | Kotlin with Android SDK | C# (Unity3D, Unreal Engine) | TensorFlow, Keras (Python) | Go |
React.js | Cocoa Framework | Java with Android SDK | C++ (Unreal Engine) | Pandas, Numpy (Python) | Rust |
Angular | Swift (UIKit) | Dart (Flutter) | JavaScript (Phaser, Unity) | SciPy (Python) | Swift |
Vue.js | (Objective-C with Swift) | Java (Android Studio) | Unity (C#, JavaScript) | PyTorch, TensorFlow (Python) | Python |
Django | Game Engines (C++) | Scikit-learn (Python) | Rust | ||
Node.js | Unity (C#) | OpenCV (Python) | C++ | ||
jQuery | Godot (GDScript) | TensorFlow.js (JavaScript) |
Frameworks and Libraries
Category | Framework/Library | Description |
Web Frameworks | React | JavaScript library for building interactive UIs using components. |
Angular | Full-stack JavaScript framework for building dynamic web apps. | |
Vue.js | Progressive JavaScript framework for building UIs and single-page applications. | |
Django | Python-based framework that follows the "batteries-included" philosophy for rapid web app development. | |
Flask | Lightweight Python web framework for building small to medium-sized applications. | |
Ruby on Rails | Full-stack Ruby framework for building web applications quickly with built-in conventions. | |
Laravel | PHP framework for building modern, scalable web applications. | |
Express.js | Web framework for Node.js, provides minimal and flexible architecture for building server-side applications. | |
Framework for building web apps using C# and .NET. | ||
Spring | Java-based framework for building web and enterprise applications, known for its modularity and security. | |
Mobile Frameworks | Flutter | Open-source framework for building natively compiled mobile, web, and desktop apps from a single codebase (using Dart). |
React Native | JavaScript framework for building mobile apps for iOS and Android using React. | |
Game Development | Unity | Game engine and development environment for building 2D and 3D games. Uses C# scripting. |
Unreal Engine | Powerful game engine for developing high-quality 3D games with C++ and visual scripting. | |
Godot | Open-source game engine for building both 2D and 3D games. | |
Machine Learning/AI Frameworks | TensorFlow | Open-source framework for machine learning and deep learning, used in neural networks. |
PyTorch | Deep learning framework with a flexible architecture, popular for research and production. | |
Keras | High-level neural networks API, running on top of TensorFlow or Theano. | |
Scikit-learn | Simple and efficient tools for data mining and machine learning in Python. | |
OpenCV | Open-source computer vision and machine learning software library. | |
NLTK | Toolkit for working with human language data in Python. |
Tools & Environments
Category | Tool/Environment | Description |
IDEs (Integrated Development Environments) | Visual Studio Code | Lightweight code editor with rich extension support for various languages. |
PyCharm | Python-specific IDE with features like debugging, testing, and code completion. | |
IntelliJ IDEA | Java IDE with extensive support for Java and JVM-based languages like Kotlin and Scala. | |
Eclipse | Open-source IDE primarily used for Java, but supports many other languages. | |
Xcode | Apple’s IDE for developing iOS/macOS applications with Swift or Objective-C. | |
Sublime Text | Lightweight text editor with a focus on speed and efficiency. | |
Version Control Systems | Git | Distributed version control system, allowing for code collaboration and history tracking. |
GitHub | Web-based platform for Git version control, enabling collaboration and sharing of code. | |
GitLab | Git repository manager with CI/CD, issue tracking, and DevOps tools. | |
Bitbucket | Git-based source code repository hosting service, with built-in CI/CD support. | |
CI/CD Tools | Jenkins | Open-source automation server used for continuous integration and delivery. |
Travis CI | Continuous integration service used for building and testing software. | |
CircleCI | Continuous integration and delivery platform to automate the software development process. | |
GitLab CI | Built-in continuous integration and deployment feature in GitLab. | |
Bamboo | Continuous integration and deployment tool from Atlassian, integrated with Jira. | |
Containerization Tools | Docker | Platform for developing, shipping, and running applications in lightweight containers. |
Web Technologies
Category | Technology/Concept | Description |
Web Servers | Apache | Open-source HTTP server software used for serving websites. |
Nginx | High-performance web server and reverse proxy server. | |
APIs | REST | Architectural style for designing networked applications using stateless communication. |
GraphQL | Query language for APIs that allows clients to request only the data they need. | |
Authentication/Authorization | OAuth | Open standard for access delegation, often used for secure authorization. |
JWT (JSON Web Token) | Compact, URL-safe means of representing claims to be transferred between two parties. | |
OpenID Connect | Identity layer on top of OAuth 2.0 that enables verification of user identity. |
Databases
Category | Database/Technology | Description |
Relational Databases | MySQL | Open-source relational database management system. |
PostgreSQL | Advanced open-source relational database with support for complex queries. | |
SQLite | Lightweight, serverless database that stores data in a single file. | |
NoSQL Databases | MongoDB | Document-based NoSQL database for handling large amounts of unstructured data. |
Cassandra | Highly scalable NoSQL database for managing large amounts of data across many servers. | |
ORMs (Object-Relational Mapping) | Sequelize | ORM for Node.js, supports multiple SQL-based databases. |
SQLAlchemy | ORM for Python, facilitates the communication between Python code and relational databases. | |
Hibernate | ORM for Java, allows mapping of Java objects to database tables. |
Cloud & DevOps
Category | Tool/Technology | Description | Purpose | When to use it |
Cloud Platforms | AWS | Amazon’s cloud computing platform offering IaaS, PaaS, and SaaS services. | Hosting applications, managing servers, databases, and scaling infrastructure in the cloud. AWS offers everything from compute power to storage. | Building scalable, high-availability systems |
Google Cloud | Google’s cloud platform for computing, storage, and machine learning. | Building, testing, and deploying applications on Google’s cloud infrastructure. | Big data analytics, machine learning, and scalable applications | |
Microsoft Azure | Cloud computing platform by Microsoft offering a range of services. | Hosting, deploying, and managing applications and services through Microsoft’s cloud infrastructure | Enterprises, cloud-native apps, hybrid cloud solutions | |
Containerization/Orchestration | Kubernetes | Open-source platform for automating the deployment, scaling, and management of containerized applications. | Managing and scaling large numbers of containers efficiently, making sure they run smoothly in production environments. | Large-scale applications, microservices, DevOps automation |
Docker | Platform for building, running, and shipping applications in containers. | Simplifies application deployment, scalability, and portability. It isolates dependencies and configurations into containers. | Containerized environments, microservices, cross-platform development |
Web Development
Language/Tool | What it is | Key Use | Example |
HTML | HyperText Markup Language: Defines the structure of web content using tags. It’s the building block of the web. | Structuring the content of a webpage (headings, paragraphs, images, links). Every webpage starts with HTML to structure its elements. | <h1>Heading</h1><p>This is a paragraph.</p> |
CSS | Cascading Style Sheets: A styling language that controls the layout and appearance of HTML elements. | Styling web pages (fonts, colors, spacing, margins, layout). It’s like the clothing and design of a webpage. | h1 { color: blue; font-size: 30px; } |
JavaScript | A scripting language used to add interactivity to web pages by manipulating the DOM and handling events. | Dynamic content updates, form validation, animations, event handling, creating interactive elements without reloading the page. | document.getElementById("demo").innerHTML = "Hello, World!"; |
TypeScript | A statically-typed superset of JavaScript that compiles down to JavaScript. | Adds strong typing to JavaScript for better maintainability, scalability, and debugging. Ideal for larger applications. | let age: number = 25; |
PHP | Hypertext Preprocessor: A server-side scripting language mainly used for web development. | Building dynamic websites that interact with databases (e.g., user profiles, forms). Integrated with MySQL or PostgreSQL. | <?php echo "Hello, World!"; ?> |
React.js | A JavaScript library for building user interfaces with reusable components. | Building SPAs (Single Page Applications) with a focus on state management, component reuse, and virtual DOM for performance. | const element = <h1>Hello, world!</h1>; |
Angular | A TypeScript-based open-source framework used for building dynamic single-page applications. | Building large-scale applications with two-way data binding, directives, routing, and deep integration with APIs. | @Component({ selector: 'app-root', templateUrl: './app.component.html' }) |
Vue.js | A progressive JavaScript framework used for building modern user interfaces. | Flexible and easy to integrate with other libraries or existing projects. Focuses on simplicity, progressive enhancements, and scalable applications. | const app = new Vue({ el: '#app', data: { message: 'Hello Vue!' } }); |
Node.js | A JavaScript runtime that allows JavaScript to run server-side, enabling full-stack development with JS. | Server-side scripting for building fast, scalable web applications. Real-time data applications, APIs, and server-side rendering. | const http = require('http'); http.createServer((req, res) => res.end()); |
Django | A high-level Python web framework designed for rapid development and security. | Building secure and maintainable websites. Includes built-in features like user authentication, admin panel, and ORM for database management. | from django.http import HttpResponse; def hello(request): return HttpResponse("Hello, World!") |
iOS Development
Language/Tool | What it is | Key Use | Example |
Swift | A powerful, open-source language developed by Apple for iOS, macOS, watchOS, and tvOS development. | Building fast and safe applications with modern syntax. Preferred for iOS apps. Focus on safety, performance, and modernity. | let message = "Hello, iOS!" |
Objective-C | The predecessor to Swift, an object-oriented language used for iOS/macOS development. | Older apps or legacy projects are often in Objective-C. It uses a dynamic runtime and includes powerful memory management. | NSString *str = @"Hello, World!"; |
SwiftUI | A declarative framework for building user interfaces across all Apple platforms. | Designing UIs with less code. Emphasizes declarative syntax, automatically updating the UI based on state changes. | Text("Hello, World!").font(.largeTitle).foregroundColor(.blue) |
UIKit | A framework for graphical, event-driven user interfaces in iOS. | For creating UIs with views, buttons, labels, gestures, etc. Provides tools for handling user interaction. | let label = UILabel() |
Xcode | The IDE used for developing applications on Apple's platforms. | Integrated environment for writing Swift, Objective-C, and SwiftUI code. It includes tools for debugging, testing, and deployment. | Xcode > File > New > Project |
Android Development
Language/Tool | What it is | Key Use | Example |
Java | A general-purpose, object-oriented programming language traditionally used for Android development. | Building Android apps, backend systems, enterprise solutions, and cross-platform apps (using tools like React Native). | String message = "Hello, World!"; |
Kotlin | A modern, statically typed language for Android development, now the preferred language for Android apps. | Writing Android apps more concisely and safely compared to Java. It works interoperably with Java. | val message = "Hello, World!" |
Android SDK | A software development kit containing tools, libraries, and APIs to build Android applications. | Provides necessary tools to develop Android apps, including emulator, debugger, and Android libraries. | android.widget.TextView |
Android Studio | The official IDE for Android development, based on IntelliJ IDEA. | Integrated development environment for writing, testing, and debugging Android apps. | Android Studio > Create New Project |
Gradle | A build automation tool used by Android to handle project dependencies, build processes, and deployment. | Automates tasks like compiling code, linking resources, and managing project dependencies for Android apps. | apply plugin: 'com.android.application' |
Backend Development
Language/Tool | What it is | Key Use | Example |
Python | A high-level, general-purpose language used in web and backend development. | Popular in web frameworks like Django and Flask, as well as for scripting, automation, data science, and APIs. | def hello(): print("Hello, World!") |
Ruby | A dynamic, object-oriented language often used with the Rails framework for web development. | Building scalable applications with a focus on simplicity and developer happiness. | puts "Hello, World!" |
Node.js | A JavaScript runtime built on Chrome’s V8 engine to build scalable server-side applications. | Server-side JavaScript used to build web applications and APIs. Efficient for real-time applications like chat apps. | const http = require('http'); |
Go (Golang) | A compiled, statically typed language developed by Google, known for its efficiency and speed. | Writing high-performance backend services, particularly in cloud computing and distributed systems. | package main; import "fmt"; func main() { fmt.Println("Hello, World!") } |
Database Technologies
Language/Tool | What it is | Key Use | Example |
SQL | Structured Query Language used for managing and querying relational databases. | Used for data retrieval, insertion, deletion, and modification in relational databases like MySQL, PostgreSQL. | SELECT * FROM users WHERE age > 18; |
MongoDB | A NoSQL database that stores data in flexible, JSON-like documents rather than tables. | Storing and handling unstructured data with high scalability. Useful for applications requiring dynamic data models. | db.users.find({ age: { $gt: 18 } }) |
MySQL | An open-source relational database management system that uses SQL. | Storing and managing structured data in relational databases. | CREATE DATABASE testdb; |
PostgreSQL | An advanced, open-source relational database system known for reliability and advanced features. | Handling complex queries, supporting JSON, and ensuring ACID compliance. | SELECT * FROM employees WHERE salary > 50000; |
Backend Development
Category | Technology/Tool/Library/Concept | Description/Use Cases |
Languages | Node.js | JavaScript runtime for backend, non-blocking I/O, and asynchronous processing. |
Python | High-level language popular for backend development (Django, Flask). Easy to learn, used for APIs, automation, and data analysis. | |
Java | Object-oriented language, widely used for enterprise-scale backend systems and large web applications (Spring, Hibernate). | |
Ruby | Dynamic, object-oriented language used with the Ruby on Rails framework for rapid development of web applications. | |
Go (Golang) | A statically typed language developed by Google. Known for high performance and scalability in web servers and APIs. | |
PHP | Server-side language for building dynamic websites. Often used in CMSs like WordPress and for e-commerce. | |
Frameworks | Express.js | Web framework for Node.js, essential for building REST APIs and handling HTTP requests. |
Django | Python framework that encourages rapid development and clean, pragmatic design. | |
Flask | Lightweight Python framework that provides the basics for web development, ideal for small projects or microservices. | |
Spring Boot | Java-based framework for building production-ready, stand-alone, and web applications. | |
Ruby on Rails | Full-stack Ruby framework that emphasizes convention over configuration. Helps speed up web app development. | |
Databases | MySQL | Relational database management system, ideal for structured data and supports SQL queries. |
PostgreSQL | Advanced open-source RDBMS with support for complex queries, transactions, and analytics. | |
MongoDB | NoSQL document-based database used for handling large volumes of unstructured data. | |
Authentication | JWT (JSON Web Tokens) | Standard for securely transmitting data between parties, especially for authentication in web apps. |
OAuth | Open standard for access delegation commonly used in login systems (e.g., Google, Facebook login). |
Mobile Development
Category | Technology/Tool/Library/Concept | Description/Use Cases |
Languages | Swift | Language for building iOS/macOS applications with modern features and high performance. |
Kotlin | Preferred language for Android app development, offering concise syntax and full interoperability with Java. | |
Java | Android's primary language for building native apps, widely used in Android development for years. | |
Cross-Platform | React Native | Framework for building mobile apps using JavaScript and React, supporting both iOS and Android. |
Flutter | Google's UI toolkit for building natively compiled apps for mobile, web, and desktop from a single codebase (Dart language). | |
Xamarin | Microsoft’s cross-platform framework for building mobile apps with C# and .NET. | |
Development Tools | Xcode | Integrated development environment (IDE) for macOS to build iOS and macOS applications. |
Android Studio | Official IDE for Android development using Java, Kotlin, and other languages. |



Comments