Skip to content

Programming Languages

Python, JavaScript, TypeScript, Bash, Go, Rust, Java & more

137 Published

In this tutorial, you will learn about Programming Languages. We cover key concepts, practical examples, and best practices to help you master this topic.

Comprehensive programming languages tutorials covering everything from qubits and Superposition to advanced algorithms and real-world applications.

Career & Learning

Programming Paradigms Overview
Programming Language Learning Roadmap
Open Source Contribution Guide
Code Review Best Practices
Technical Debt Management
Algorithmic Thinking Skills

Additional Classic Tutorials

AOT Compilation -- Explained with Examples
CLR (Common Language Runtime) -- Explained with Examples
Compiled vs Interpreted Languages -- Explained with Examples
Garbage Collection -- Explained with Examples
JIT Compilation -- Explained with Examples
JVM (Java Virtual Machine) -- Explained with Examples
Polyfill -- Explained with Examples
RAII (Resource Acquisition Is Initialization) -- Explained with Examples
Regex for Alphanumeric -- Pattern Explained with Examples
Regex for Base64 -- Pattern Explained with Examples
Regex for Canadian Postal Code -- Pattern Explained with Examples
Regex for Coordinates (Latitude/Longitude) -- Pattern Explained with Examples
Regex for Credit Card Numbers -- Pattern Explained with Examples
Regex for CVV -- Pattern Explained with Examples
Regex for Date (MM/DD/YYYY) -- Pattern Explained with Examples
Regex for Date (YYYY-MM-DD) -- Pattern Explained with Examples
Regex for Domain Name -- Pattern Explained with Examples
Regex for Email Validation -- Pattern Explained with Examples
Regex for File Extension -- Pattern Explained with Examples
Regex for Hex Color Codes -- Pattern Explained with Examples
Regex for HTML Tags -- Pattern Explained with Examples
Regex for IPv4 Address -- Pattern Explained with Examples
Regex for IPv6 Address -- Pattern Explained with Examples
Regex for ISBN -- Pattern Explained with Examples
Regex for ISO 8601 Date/Time -- Pattern Explained with Examples
Regex for MAC Address -- Pattern Explained with Examples
Regex for Numbers (Integer & Decimal) -- Pattern Explained with Examples
Regex for Password Strength -- Pattern Explained with Examples
Regex for International Phone Numbers -- Pattern Explained with Examples
Regex for US Phone Numbers -- Pattern Explained with Examples
Regex for Semantic Version (SemVer) -- Pattern Explained with Examples
Regex for Social Security Number -- Pattern Explained with Examples
Regex for Time (HH:MM) -- Pattern Explained with Examples
Regex for UK Postcode -- Pattern Explained with Examples
Regex for URL Validation -- Pattern Explained with Examples
Regex for Username/Slug -- Pattern Explained with Examples
Regex for UUID -- Pattern Explained with Examples
Regex for ZIP/Postal Code -- Pattern Explained with Examples
Static vs Dynamic Typing -- Explained with Examples
Strong vs Weak Typing -- Explained with Examples
Transpiler -- Explained with Examples
TypeScript 5.x Features -- Decorators, Const Type Parameters & More
V8 JavaScript Engine -- Explained with Examples

Published Topics

JIT Compilation — Explained with Examples

Just-in-time (JIT) compilation compiles source code or bytecode to native machine code at runtime, combining the speed of compiled code with the flexibility of interpretation.

✓ Live

Regex for Email Validation — Pattern Explained with Examples

The standard regex pattern for validating email addresses according to RFC 5322 — matches local part, @ symbol, and domain with subdomains.

✓ Live

JavaScript Tutorials

JavaScript brings web pages to life — dynamic content, interactive forms, real-time updates, and full-featured web apps.

✓ Live

AOT Compilation — Explained with Examples

Ahead-of-time (AOT) compilation translates source code to native machine code before execution, resulting in faster startup and predictable performance.

✓ Live

Regex for US Phone Numbers — Pattern Explained with Examples

The regex pattern for validating US phone numbers in various formats — with or without country code, parentheses, dashes, and dots.

✓ Live

JVM (Java Virtual Machine) — Explained with Examples

The Java Virtual Machine executes Java bytecode across platforms, providing memory management, JIT compilation, and a security sandbox for running applications.

✓ Live

Regex for International Phone Numbers — Pattern Explained with Examples

A flexible regex pattern for validating international phone numbers with country codes — supports E.164 format and common writing styles.

✓ Live

CLR (Common Language Runtime) — Explained with Examples

The Common Language Runtime (CLR) is the virtual machine component of .NET that manages execution of CIL bytecode with services like JIT and garbage collection.

✓ Live

Python Tutorials

Python is a versatile, beginner-friendly language used for web development, data science, automation, scripting, and more.

✓ Live

Regex for URL Validation — Pattern Explained with Examples

A comprehensive regex pattern for validating URLs — supports HTTP, HTTPS, FTP, subdomains, paths, query strings, and fragments.

✓ Live

Regex for IPv4 Address — Pattern Explained with Examples

The regex pattern for validating IPv4 addresses — matches each of four octets (0-255) separated by dots with boundary enforcement.

✓ Live

V8 JavaScript Engine — Explained with Examples

V8 is Google's open-source JavaScript engine that powers Chrome and Node.js, featuring JIT compilation and efficient memory management.

✓ Live

Bash / Shell Tutorials

Bash (Bourne Again SHell) is the command line interface on Linux, macOS, and WSL. Master the terminal and automate tasks.

✓ Live

Garbage Collection — Explained with Examples

Garbage collection automatically reclaims memory no longer used by a program, freeing developers from manual memory management and preventing leaks.

✓ Live

Regex for IPv6 Address — Pattern Explained with Examples

The regex pattern for validating IPv6 addresses — supports 8 groups of 4 hex digits, shorthand (::), and mixed IPv4-IPv6 notation.

✓ Live

RAII (Resource Acquisition Is Initialization) — Explained with Examples

RAII is a C++ programming idiom where resource acquisition is tied to object lifetime, ensuring automatic cleanup when objects go out of scope.

✓ Live

Regex for MAC Address — Pattern Explained with Examples

The regex pattern for validating MAC addresses — supports colon, hyphen, and no-separator formats for 48-bit hardware addresses.

✓ Live

Go Tutorials

Go is a statically typed, compiled programming language for building efficient, reliable software at scale. It powers Docker, Kubernetes, and cloud-native infrastructure.

✓ Live

Regex for HTML Tags — Pattern Explained with Examples

The regex pattern for matching HTML tags — supports opening, closing, self-closing tags, and attributes with quoted values.

✓ Live

Static vs Dynamic Typing — Explained with Examples

Static typing checks variable types at compile time, while dynamic typing defers type checking until runtime, affecting safety, performance, and flexibility.

✓ Live

Regex for Credit Card Numbers — Pattern Explained with Examples

Regex patterns for credit card number validation — supports Visa, Mastercard, American Express, Discover, and general Luhn-compatible formats.

✓ Live

Rust Tutorials

Rust is a systems programming language focused on memory safety and concurrency without a garbage collector. It powers Firefox, Dropbox, and Cloudflare.

✓ Live

Strong vs Weak Typing — Explained with Examples

Strong typing enforces strict type rules and prevents implicit type conversions, while weak typing allows automatic coercion between unrelated types.

✓ Live

Compiled vs Interpreted Languages — Explained with Examples

Compiled languages translate source code to machine code before execution, while interpreted languages execute code line-by-line through an interpreter at runtime.

✓ Live

Regex for UUID — Pattern Explained with Examples

The regex pattern for validating UUIDs (Universally Unique Identifiers) — matches all 5 UUID versions in standard 8-4-4-4-12 hex format.

✓ Live

Regex for Date (YYYY-MM-DD) — Pattern Explained with Examples

The regex pattern for validating dates in YYYY-MM-DD format — validates year, month (01-12), and day (01-31) with separators.

✓ Live

Swift Programming Tutorials

Learn Swift programming from fundamentals to advanced: iOS development, SwiftUI, protocols, concurrency, and real-world Apple platform projects.

✓ Live

Transpiler — Explained with Examples

A transpiler (source-to-source compiler) converts code from one high-level language to another, enabling modern syntax on older platforms or cross-language migration.

✓ Live

Java Tutorials — Complete Beginner to Advanced Guide

Learn Java step by step from JVM basics to Spring Boot microservices. 70 lessons covering OOP, collections, streams, concurrency, and enterprise Java.

✓ Live

Polyfill — Explained with Examples

A polyfill is code that implements a modern browser feature in older environments that lack native support, ensuring consistent behavior across all users.

✓ Live

Regex for Date (MM/DD/YYYY) — Pattern Explained with Examples

The regex pattern for validating dates in US MM/DD/YYYY format — validates month, day, and 4-digit year with forward slash separator.

✓ Live

C Programming Tutorials

Learn C programming from fundamentals to advanced: pointers, memory management, data structures, system programming, and real-world projects.

✓ Live

Regex for Time (HH:MM) — Pattern Explained with Examples

The regex pattern for validating time in 12-hour and 24-hour formats — validates hours and minutes with optional seconds and AM/PM.

✓ Live

C++ Tutorials — Complete Beginner to Advanced Guide

Learn C++ step by step from C basics to modern C++23. 70 lessons covering pointers, OOP, STL, templates, RAII, and systems programming.

✓ Live

Regex for ISO 8601 Date/Time — Pattern Explained with Examples

The regex pattern for validating ISO 8601 date-time format — combines date, time, timezone offset in the standard international format.

✓ Live

C# Tutorials — Complete Beginner to Advanced Guide

Learn C# step by step from fundamentals to ASP.NET Core. 60 lessons covering .NET ecosystem, OOP, modern C# features, and real-world project development.

✓ Live

Regex for ZIP/Postal Code — Pattern Explained with Examples

The regex pattern for validating US ZIP codes — supports 5-digit and ZIP+4 formats with optional hyphen.

✓ Live

Kotlin Programming Tutorials

Learn Kotlin programming from fundamentals to advanced: Android development, coroutines, Jetpack Compose, multiplatform, and real-world projects.

✓ Live

Regex for Social Security Number — Pattern Explained with Examples

The regex pattern for validating US Social Security Numbers (SSN) — validates XXX-XX-XXXX format with valid area/group ranges.

✓ Live

PHP Programming Tutorials

Learn PHP programming from fundamentals to advanced: server-side scripting, OOP, databases, Laravel, security, and real-world web projects.

✓ Live

Regex for Hex Color Codes — Pattern Explained with Examples

The regex pattern for validating hexadecimal color codes — supports 3-digit and 6-digit hex colors with optional # prefix.

✓ Live

Regex for Password Strength — Pattern Explained with Examples

The regex pattern for validating password strength — enforces minimum length, uppercase, lowercase, digit, and special character requirements.

✓ Live

Ruby Tutorials

Ruby is a dynamic, object-oriented scripting language known for its elegant syntax and developer happiness. It powers Ruby on Rails, one of the most popular web frameworks.

✓ Live

Regex for Username/Slug — Pattern Explained with Examples

The regex pattern for validating usernames and URL slugs — alphanumeric characters with underscores, hyphens, and 3-20 character length.

✓ Live

TypeScript Tutorials — Complete Course

Master TypeScript from fundamentals to advanced patterns with 60 comprehensive lessons covering types, generics, React, Node.js, and real-world projects.

✓ Live

Dart Programming Tutorials

Learn Dart programming from fundamentals to advanced: Flutter development, async programming, streams, isolates, and real-world mobile app projects.

✓ Live

Elixir Tutorials

Elixir is a dynamic, functional language built on the Erlang VM (BEAM). It's designed for building scalable, fault-tolerant systems with excellent.

✓ Live

Regex for File Extension — Pattern Explained with Examples

The regex pattern for extracting and validating file extensions — matches the extension part of a filename after the last dot.

✓ Live

Regex for Base64 — Pattern Explained with Examples

The regex pattern for validating Base64 encoded strings — matches standard A-Za-z0-9+/ padding with correct length constraints.

✓ Live

Erlang Tutorials

Erlang is a programming language designed for building concurrent, distributed, fault-tolerant systems. It powers telecom switches, messaging platforms,.

✓ Live

Regex for Domain Name — Pattern Explained with Examples

The regex pattern for validating domain names — matches subdomains, TLDs, and follows DNS label rules (not starting with hyphen, max 253 chars).

✓ Live

Racket Tutorials

Racket is a general-purpose programming language and a platform for language creation. It's used in education, research, and for building domain-specific.

✓ Live

Regex for Alphanumeric — Pattern Explained with Examples

The regex pattern for validating alphanumeric strings — matches letters (A-Z, a-z) and digits (0-9) with configurable length and optional spaces.

✓ Live

Nim Tutorials

Nim is a statically typed compiled language that combines Python-like readability with C-level performance and powerful metaprogramming.

✓ Live

Regex for Numbers (Integer & Decimal) — Pattern Explained with Examples

The regex pattern for validating integer and decimal numbers — supports positive/negative, optional decimals, leading zeros, and scientific notation.

✓ Live

Crystal Tutorials

Crystal is a compiled language with Ruby-like syntax, type inference, and native performance through LLVM. It's ideal for web applications and systems.

✓ Live

Lua Tutorials — Complete Beginner to Advanced Guide

Learn Lua step by step from syntax to C API. 30 lessons covering tables, metatables, coroutines, and game development with Love2D.

✓ Live

Regex for CVV — Pattern Explained with Examples

The regex pattern for validating credit card CVV/CVC codes — matches 3-digit (Visa, MC, Discover) and 4-digit (Amex) security codes.

✓ Live

TypeScript 5.x Features — Decorators, Const Type Parameters & More

Learn TypeScript 5.x features including decorators, const type parameters, using declarations, inferred type predicates, iterator helpers, and migration tips with code examples.

✓ Live

Perl Tutorials — Complete Beginner to Advanced Guide

Learn Perl step by step from scalars to web frameworks. 30 lessons covering regex, CPAN, Moose OOP, and one-liners for text processing.

✓ Live

Regex for UK Postcode — Pattern Explained with Examples

The regex pattern for validating UK postcodes — matches the format [A-Z][A-Z]?[0-9][A-Z0-9]? [0-9][A-Z]{2} with required space.

✓ Live

Zig Tutorials

Zig is a modern systems programming language focused on performance, safety, and simplicity. It offers manual memory management, comptime execution, and.

✓ Live

Haskell Tutorials — Complete Beginner to Advanced Guide

Learn Haskell step by step from pure functions to monads. 30 lessons covering GHC setup, pattern matching, type classes, and monad transformers.

✓ Live

Regex for Canadian Postal Code — Pattern Explained with Examples

The regex pattern for validating Canadian postal codes — matches A#A #A# format with alternating letter-digit pattern and required space.

✓ Live

Julia Tutorials — Complete Beginner to Advanced Guide

Learn Julia step by step from REPL to machine learning. 30 lessons covering multiple dispatch, linear algebra, plotting, and parallel computing.

✓ Live

Regex for Semantic Version (SemVer) — Pattern Explained with Examples

The regex pattern for validating semantic version numbers — matches MAJOR.MINOR.PATCH format with optional pre-release and build metadata.

✓ Live

Clojure Tutorials — Complete Beginner to Advanced Guide

Learn Clojure step by step from REPL to web apps. 30 lessons covering sequences, macros, concurrency, protocols, and ClojureScript.

✓ Live

Regex for ISBN — Pattern Explained with Examples

The regex pattern for validating ISBN-10 and ISBN-13 — matches both formats with optional hyphens and validates check digit position.

✓ Live

F# Tutorials — Complete Beginner to Advanced Guide

Learn F# step by step from let bindings to web frameworks. 20 lessons covering discriminated unions, computation expressions, type providers, and Suave/Giraffe.

✓ Live

Regex for Coordinates (Latitude/Longitude) — Pattern Explained with Examples

The regex pattern for validating geographic coordinates — matches latitude (-90 to 90) and longitude (-180 to 180) in decimal degrees format.

✓ Live

Groovy Tutorials — Complete Beginner to Advanced Guide

Learn Groovy step by step from GDK to Gradle DSL. 20 lessons covering closures, GPars, builders, metaprogramming, Grails, and Spock testing.

✓ Live

Assembly Tutorials — Complete Beginner to Advanced Guide

Learn assembly language step by step from CPU architecture to ARM64. 20 lessons covering x86-64 registers, addressing, NASM, GDB, syscalls, and calling conventions.

✓ Live

Python Walrus Operator — Complete Guide

Learn how the walrus operator (:=) enables assignment expressions within larger expressions, reducing code duplication and improving readability in Python 3.8+.

✓ Live

Markdown — Complete Guide

Markdown is a lightweight markup language that converts plain text into structured HTML. Master documentation writing with hands-on tutorials.

✓ Live

Python Structural Pattern Matching — Complete Guide

Learn structural pattern matching in Python 3.10 for matching data structures against patterns with concise, readable syntax inspired by functional languages.

✓ Live

Python Type Hints Advanced — Complete Guide

Learn advanced Python type hinting including generics, TypeVar, Callable, Protocol, and overloaded signatures for robust static type checking in production.

✓ Live

YAML — Complete Guide

YAML is a human-friendly data serialization standard used in DevOps, Docker Compose, Kubernetes, and CI/CD pipelines. Master it with hands-on tutorials.

✓ Live

MATLAB & Octave — Complete Guide

MATLAB is a high-performance numerical computing environment for engineers and scientists. Master matrix operations, plotting, and simulation with hands-on tutorials.

✓ Live

Python Generator Expression — Complete Guide

Learn Python generator expressions for memory-efficient iteration, yielding values lazily instead of building entire lists in memory before processing them.

✓ Live

Python Coroutine Async — Complete Guide

Learn Python coroutines and async/await syntax for writing concurrent I/O code that handles thousands of connections without blocking the event loop at all.

✓ Live

R Programming — Complete Guide

R is a programming language for statistical computing and data visualization. Master data analysis, ggplot2, and the tidyverse with hands-on tutorials.

✓ Live

Prolog — Complete Guide

Prolog is a declarative logic programming language where you describe what the problem is, not how to solve it. Master logic programming with hands-on tutorials.

✓ Live

Python Context Manager Protocol — Complete Guide

Learn the Python context manager protocol and how to implement __enter__ and __exit__ methods for automatic resource management using the with statement.

✓ Live

Lisp — Complete Guide

Lisp is the second-oldest high-level programming language, introducing recursion, garbage collection, and first-class functions. Master symbolic computation with hands-on tutorials.

✓ Live

Python Descriptor Protocol — Complete Guide

Learn Python descriptors and how __get__, __set__, and __delete__ control attribute access, forming the foundation of properties and decorated methods.

✓ Live

JavaScript Optional Chaining — Complete Guide

Learn JavaScript optional chaining (?.) to safely access deeply nested object properties without writing manual null checks at every single level of the chain.

✓ Live

PowerShell — Complete Guide

PowerShell is a task automation framework combining a command-line shell with a .NET scripting language. Master system administration with hands-on tutorials.

✓ Live

JavaScript Nullish Coalescing — Complete Guide

Learn the JavaScript nullish coalescing operator (??) that returns its right operand only when the left operand is null or undefined, not other falsy values.

✓ Live

Objective-C — Complete Guide

Objective-C is a superset of C that adds object-oriented programming and dynamic messaging, powering Apple's ecosystem. Master iOS and macOS development with hands-on tutorials.

✓ Live

JavaScript Logical Assignment — Complete Guide

Learn JavaScript logical assignment operators (&&=, ||=, ??=) that combine logical operations with assignment for more concise conditional variable updates.

✓ Live

MQL4 — Complete Guide

MQL4 is the programming language for MetaTrader 4, used to create Expert Advisors and indicators for automated forex trading. Master algorithmic trading with hands-on tutorials.

✓ Live

JavaScript Numeric Separator — Complete Guide

Learn JavaScript numeric separators using underscores to make large numbers readable, improving code clarity without affecting the underlying numeric value.

✓ Live

MQL5 — Complete Guide

MQL5 is a C++-like language for MetaTrader 5, supporting OOP, multi-currency backtesting, and ONNX integration. Master modern algorithmic trading with hands-on tutorials.

✓ Live

JavaScript replaceAll — Complete Guide

Learn JavaScript replaceAll for replacing all occurrences of a substring in a string without using a global regex, simplifying common text transformation tasks.

✓ Live

JavaScript Promise.any — Complete Guide

Learn JavaScript Promise.any that resolves with the first fulfilled promise, short-circuiting on success and aggregating errors only if every promise rejects.

✓ Live

JavaScript Promise.allSettled — Complete Guide

Learn JavaScript Promise.allSettled that waits for all promises to settle regardless of fulfillment or rejection, returning an array of result objects.

✓ Live

TypeScript Mapped Types Advanced — Complete Guide

Learn TypeScript mapped types for transforming existing types into new ones, enabling Partial, Readonly, Pick, and custom type utilities with key remapping.

✓ Live

TypeScript Conditional Types — Complete Guide

Learn TypeScript conditional types that select types based on boolean conditions at compile time, enabling distributive conditional types and type inference.

✓ Live

TypeScript infer Keyword — Complete Guide

Learn the TypeScript infer keyword inside conditional types to extract and capture type variables from complex structures for advanced type-level programming.

✓ Live

TypeScript Template Literal Types — Complete Guide

Learn TypeScript template literal types that manipulate string types at compile time using template syntax with union interpolation and pattern capabilities.

✓ Live

TypeScript Variance Covariance — Complete Guide

Learn TypeScript variance including covariance and contravariance for generic types, understanding how assignment compatibility flows through type parameters.

✓ Live

TypeScript Branded Type Guards — Complete Guide

Learn TypeScript branded types and type guards for nominal-like type safety, preventing accidental mixing of structurally compatible types at compile time.

✓ Live

TypeScript Satisfies Operator — Complete Guide

Learn the TypeScript satisfies operator for validating that an expression matches a type while preserving its most specific inferred type for narrow usage.

✓ Live

Java Record Class — Complete Guide

Learn Java record classes from Java 14 for creating transparent data carriers with auto-generated constructors, accessors, equals, and hashCode methods.

✓ Live

Java Sealed Class — Complete Guide

Learn Java sealed classes that restrict subclassing to a set of permitted types, enabling exhaustive pattern matching and more controlled class hierarchies.

✓ Live

Java Pattern Matching Switch — Complete Guide

Learn Java pattern matching for switch expressions, allowing type checks and deconstruction directly in case labels for cleaner, more expressive branching.

✓ Live

Java Text Blocks — Complete Guide

Learn Java text blocks for multiline string literals with automatic formatting, eliminating escape sequences and improving readability of SQL, JSON, and HTML.

✓ Live

Java Foreign Function and Memory API

Learn the Java Foreign Function and Memory API for safely calling native libraries and managing off-heap memory without the fragility of JNI boilerplate.

✓ Live

Java Vector API — Complete Guide

Learn the Java Vector API for expressing data-parallel computations that reliably compile to SIMD instructions across different CPU architectures at runtime.

✓ Live

Java Structured Concurrency — Complete Guide

Learn Java structured concurrency for managing multiple tasks as a single unit of work, improving error handling and observability in concurrent programs.

✓ Live

Go Generics Basics — Complete Guide

Learn Go generics with type parameters, allowing functions and data structures to operate on different types while maintaining compile-time type safety.

✓ Live

Go Error Wrapping and errors.Is

Learn Go error wrapping with fmt.Errorf and %w, and how errors.Is and errors.As traverse the error chain for reliable sentinel error detection in your code.

✓ Live

Go Mutex Deadlock — Complete Guide

Learn Go mutex deadlock patterns, how improper lock ordering causes goroutines to block indefinitely, and strategies like lock hierarchies to prevent them.

✓ Live

Go Channel Patterns — Complete Guide

Learn Go channel communication patterns including fan-in, fan-out, pipeline, and worker pools for coordinating concurrent goroutines without shared memory.

✓ Live

Go Select Multiplexing — Complete Guide

Learn Go select statements for multiplexing channel operations, enabling goroutines to wait on multiple channels and respond to the first available one.

✓ Live

Go Context Deadline — Complete Guide

Learn the Go context package for propagating deadlines, cancellations, and request-scoped values across API boundaries and inside goroutine tree structures.

✓ Live

Go Sync WaitGroup — Complete Guide

Learn Go sync.WaitGroup for waiting on a collection of goroutines to finish, a fundamental synchronization primitive for coordinating concurrent work.

✓ Live

Rust Ownership Basics — Complete Guide

Learn Rust ownership rules ensuring every value has exactly one owner, preventing memory leaks and data races at compile time without a garbage collector.

✓ Live

Rust Borrow Checker — Complete Guide

Learn the Rust borrow checker that enforces references follow aliasing rules, allowing either one mutable reference or many immutable references at a time.

✓ Live

Rust Lifetime Elision — Complete Guide

Learn Rust lifetime elision rules that let the compiler infer common lifetime patterns automatically, reducing annotation noise in function signatures.

✓ Live

Rust Lifetime Generics — Complete Guide

Learn Rust generic lifetime parameters for annotating relationships between references and ensuring they live as long as their inputs in complex programs.

✓ Live

Rust impl Trait Argument — Complete Guide

Learn Rust impl Trait in argument position for accepting any type implementing a trait without writing explicit generics, simplifying function signatures.

✓ Live

Rust Async Await — Complete Guide

Learn Rust async and await syntax for writing asynchronous code that runs concurrently without threads, using futures and executors for efficient I/O.

✓ Live

Rust Rc and Arc Smart Pointers

Learn Rust Rc and Arc smart pointers for shared ownership, enabling multiple references to the same heap data with reference counting and thread safety.

✓ Live

C++ Unique Pointer — Complete Guide

Learn C++ unique_ptr for exclusive ownership of dynamically allocated objects, automatically deleting the resource when the pointer goes out of scope.

✓ Live

C++ Shared Pointer — Complete Guide

Learn C++ shared_ptr for shared ownership using reference counting, automatically deallocating the managed object when the last shared_ptr is destroyed.

✓ Live

C++ Move Semantics — Complete Guide

Learn C++ move semantics and std::move for transferring resources without copying, eliminating unnecessary allocations when passing temporary objects.

✓ Live

C++ constexpr If — Complete Guide

Learn C++ constexpr if for compile-time conditional compilation that discards dead branches, reducing binary size and enabling cleaner template metaprogramming.

✓ Live

C++ Variant and Visitor — Complete Guide

Learn C++ std::variant and std::visit for type-safe unions that hold one of several types, with visitor patterns replacing manual switch-based dispatch.

✓ Live

C++ Fold Expression — Complete Guide

Learn C++ fold expressions that reduce parameter packs over binary operators, enabling concise variadic template operations without recursive instantiation.

✓ Live

C++ Concepts and Requires — Complete Guide

Learn C++ concepts and requires clauses for constraining template parameters with predicates, producing clearer error messages and better overload resolution.

✓ Live

Programming Paradigms Overview

Learn the main programming paradigms including imperative, functional, object-oriented, and declarative approaches and when to apply each for effective design.

✓ Live

Programming Language Learning Roadmap — Complete Guide

Learn to build a structured programming language roadmap starting with fundamentals and progressing to advanced concepts across several language families.

✓ Live

Open Source Contribution Guide

Learn how to contribute to open source projects from finding beginner issues to submitting pull requests and collaborating effectively with maintainers.

✓ Live

Code Review Best Practices

Learn code review best practices for giving constructive feedback, catching bugs early, and building a collaborative engineering culture within your dev team.

✓ Live

Technical Debt Management — Complete Guide

Learn technical debt management strategies for identifying, prioritizing, and refactoring code while balancing features against long-term maintainability goals.

✓ Live

Algorithmic Thinking Skills — Complete Guide

Learn algorithmic thinking to break down complex problems, design efficient solutions, and communicate your reasoning clearly during technical interview prep.

✓ Live

All 137 topics in Programming Languages — Complete Guide are published.