27 open-source projects similar to tssovi/grokking-the-object-oriented-design-interview, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Grokking The Object Oriented Design Interview alternative.
This project is a collection of practical scripts and reference guides that demonstrate advanced Python language features and idioms. It provides code implementations for mastering concepts such as concurrency, metaprogramming, and data structure design. The repository includes examples of the Python object model, covering custom attribute access, descriptor protocols, and special method overrides. It also features implementations of design patterns that utilize first-class functions and decorators to reduce object-oriented boilerplate. The codebase covers a broad range of capabilities, incl
This repository is a collection of practical code samples and an idiomatic programming guide for the Python language. It serves as a reference for implementing advanced language features, data structures, and professional coding standards. The project focuses on demonstrating object-oriented architectures and structural design patterns. It provides a set of source files that illustrate the use of advanced Python capabilities to create readable and efficient software designs. The implementation covers asynchronous and concurrent execution patterns, as well as idiomatic software design and pro
This project is a comprehensive collection of Python programming education materials, including tutorials, exercises, and curated code samples. It serves as a learning curriculum and software engineering toolkit, utilizing Jupyter Notebooks to combine executable code with descriptive educational text. The repository provides practical implementation guides for building large language model applications, such as retrieval-augmented generation systems, stateful AI agents, and machine learning workflows. It distinguishes itself by offering a structured approach to agentic coding workflows, cover
This project is a curated library of Python code examples, educational resources, and programming tutorials. It functions as an educational repository designed to teach Python language fundamentals through practical implementation tasks, real-world exercises, and functional code snippets. The collection covers a diverse range of implementation examples, including the development of interactive websites and message boards using web frameworks. It also features scripts for audio speech processing, automated media processing for images, and the extraction of data from web content. Additional ca
This project is a comprehensive library of practical Python code examples and patterns. It provides a collection of scripts and snippets designed to demonstrate a wide range of programming tasks, from basic syntax to advanced implementation patterns. The repository focuses on several core domains, including the implementation of concurrency and multithreading examples, data analysis snippets for cleaning and manipulating tabular data, and various data visualization examples. It also covers automation scripts for file system management and a variety of general programming patterns. Additional
A catalogue of Rust design patterns, anti-patterns and idioms
Ultimate Python is a code-first educational resource for mastering the Python programming language. It organizes learning into self-contained, runnable modules that progress from fundamental syntax through advanced features, all without any external dependencies or build tools. The project is structured as a flat file hierarchy where each module is named by topic and can be executed independently. This design enables self-paced, hands-on practice with core Python concepts including built-in data structures, object-oriented programming, and advanced topics such as decorators, threading, and as
This project is an educational repository and programming guide for Python 3. It provides a collection of runnable code samples and implementation details designed to help users learn the core features, syntax, and logic of the language. The repository utilizes a case-study driven approach, using practical examples and guided implementation to demonstrate common patterns and standard library functions. The content is organized into a linear progression curriculum, grouping related language features into topic-based modules.
Fireworks Tech Graph is a tool that generates SVG and PNG technical diagrams from natural language descriptions, supporting both English and Chinese input. It produces publication-quality diagrams for AI architectures, UML types, and other technical domains without requiring manual drawing or diagramming syntax. The tool distinguishes itself through a semantic shape vocabulary and arrow-based flow encoding that conveys component roles and data flow types through consistent geometric shapes, stroke widths, dash patterns, and colors rather than relying on textual labels. It renders the same dia
This project is an automated syntax trainer and interactive Python course designed as a test-driven learning framework. It teaches Python language features and syntax by guiding learners through a series of coding exercises where the goal is to modify source code until a suite of failing tests passes. The system utilizes a test-driven development methodology, providing a sequence of incremental challenges that increase in complexity. It features an automated test runner and file-change monitoring to provide immediate feedback by automatically re-executing tests when source files are modified.
AlgoNote is an algorithm and data structure tutorial and computer science study manual. It serves as a technical library of algorithm implementations and data structure patterns, providing a comprehensive learning guide focused on technical interview preparation. The project functions as a LeetCode solution guide, containing analyzed and implemented solutions for over one thousand coding challenges. All implementations are written in Python to provide a consistent coding reference. The resource covers the study of algorithm fundamentals, the resolution of diverse coding challenges, and prepa
This is a video course that teaches JavaScript from scratch, covering fundamentals like variables, functions, scope, closures, and data types through 88+ lessons organized into 15 modules. The course uses a live-coding pedagogy where students code alongside pre-recorded video lessons, with each lesson providing starter and solution files for self-paced practice. The curriculum focuses on browser-native APIs, teaching DOM manipulation, event handling, and data fetching without external frameworks. Students build real-world projects like image galleries, drawing tools, and audio visualizers thr
This project is a beginner coding bootcamp and Python programming curriculum. It provides a structured set of educational materials and exercise files designed to guide students through the Python language from basic to advanced levels. The curriculum is delivered as Jupyter Notebook courseware, combining live code execution with explanatory text for technical demonstrations. It also functions as a project repository, offering a collection of milestone coding exercises and source files for practicing software development and core syntax. The materials are organized into sequential modules an
This project is a comprehensive full-stack web development course delivered through a video-based curriculum. It provides a structured learning path that integrates frontend and backend technologies, guiding users from fundamental concepts to advanced implementation across a multi-language stack. The curriculum distinguishes itself through a progressive layering of complexity, combining a React-based frontend course with a Python and Django backend course. It emphasizes professional workflow integration, featuring dedicated tutorials on Git and GitHub for version control and collaborative cod
This repository serves as an educational resource for computer science concepts, providing a collection of fundamental data structures and algorithmic patterns implemented in Python. It functions as a programming reference for developers seeking to understand standard software engineering patterns and data manipulation strategies. The project focuses on the construction of essential storage formats, including arrays, graphs, hash tables, linked lists, stacks, and queues. It also provides implementations for standard algorithmic techniques such as dynamic programming, recursion, sorting, and g
This project is an object-oriented architecture reference and software design patterns guide. It provides a collection of creational, structural, and behavioral patterns accompanied by practical code examples and architectural explanations to help manage complex control flows and decouple software components. The project functions as a technical documentation framework and UML visualization library. It uses Unified Modeling Language class and sequence diagrams to illustrate object relationships and runtime interactions, and it includes a system for converting architecture guides into HTML, PD
Eloquent-JavaScript is a comprehensive JavaScript programming textbook and interactive coding tutorial designed for web development education. It serves as both a language reference and a practical guide, combining theoretical lessons with an environment where learners can execute and modify code examples. The project focuses on the fundamental principles of the JavaScript language, including lexical scoping, prototype-based inheritance, and asynchronous patterns. It provides detailed instruction on object-oriented programming, functional programming, and the use of the browser DOM to create
Nerdcommenter is a Vim commenting plugin and text manipulator designed to automate the insertion, removal, and formatting of language-specific code comments. It serves as a utility for toggling comment markers and aligning comment blocks to improve code organization. The tool provides capabilities for comment state toggling and delimiter switching, allowing users to add or remove markers from single lines or selected blocks of text. It includes features for comment block formatting to ensure visual consistency and the ability to comment out code to disable execution. The plugin covers a broa
Gepetto is an IDA Pro plugin that integrates large language models directly into the reverse engineering workflow. It functions as a multi-provider LLM client, allowing users to explain decompiled functions, rename variables, and add comments to pseudocode, all while supporting multiple language model backends and a localized interface. The plugin distinguishes itself through a plugin-based architecture that abstracts multiple LLM providers behind a unified interface, enabling hot-swapping between providers and models without restarting IDA Pro. It also features a command-line interface bridg
This project provides a set of software architecture guidelines, Lisp coding standards, and functional programming patterns for Clojure development. It establishes best practices for implementing declarative logic and managing shared state through the use of persistent data structures and atomic references. The guide covers standards for documenting public APIs and organizing project directories to ensure portable library distribution. It details the application of consistent formatting and naming rules to improve source code readability and team collaboration. The scope extends to idiomatic
The Missing Semester is a free, open-source educational curriculum designed to bridge the gap between theoretical computer science and the practical tooling every software engineer needs. Organized as a structured course, it covers Unix shell mastery, version control with Git, software debugging and profiling, system administration fundamentals, and computer security practices — the skills often left out of traditional degree programs. The project is maintained as a collaborative set of lecture notes, exercises, and guides that function as both a professional development tools course and a Uni
This project is a comprehensive guide and set of engineering standards for writing readable, maintainable, and scalable JavaScript code. It provides a framework for software architecture, refactoring patterns, and clean coding practices designed to improve codebase health and longevity. The guide emphasizes the application of SOLID principles and architectural strategies such as dependency inversion and the separation of concerns. It focuses on transforming complex conditional logic through polymorphism and refactoring, while promoting a transition from imperative loops to declarative functio
Rockstar is an esoteric programming language whose syntax is inspired by 1980s hard rock and heavy metal lyrics, making programs read like song lyrics. It uses poetic number literals, where the length of each word in a phrase is parsed as a decimal digit to initialize numeric variables, and pronoun-based variable references, where words like "it" and "they" resolve to the most recently assigned or compared variable at runtime. The language can be compiled to WebAssembly and run inside a web page for in-browser code execution. The language distinguishes itself through a lyric-driven parsing sy
This project is a localized educational resource for learning the Rust programming language, providing a comprehensive guide and technical specifications translated into Simplified Chinese. It serves as an instructional tool for studying language idioms, memory management, and type systems. The repository focuses on software documentation localization, converting official guides into Simplified Chinese to increase accessibility for non-English speakers. It utilizes a markdown-based system to organize content and supports multi-format export to static HTML, PDF, and EPUB formats for both web a
This project is an interactive programming education resource and tutorial designed for learning the Rust programming language and systems programming concepts. It provides a collection of runnable and editable code examples that serve as a practical reference for language syntax and implementation. The resource features an interactive code sandbox that allows users to execute and test code snippets in real time. It emphasizes the verification of technical accuracy by executing embedded code blocks during the build process to ensure all examples remain functional. The content covers a compre
Stylus is a CSS preprocessor that transforms a dynamic language into standard CSS. It utilizes a compilation workflow to enable the use of variables, nesting, and arithmetic, which are then rendered into stylesheets for use in frontend asset pipelines. The project is distinguished by a flexible syntax that allows for indentation-based styling, meaning curly braces, colons, and semicolons can be omitted. It further differentiates itself through a JavaScript-driven plugin pipeline and the ability to extend the native syntax with custom JavaScript functions for complex logic. Its capability sur
jscamp is a full-stack web development and education project focused on mastering JavaScript, TypeScript, and AI integration. It provides a structured curriculum and interactive exercises covering language fundamentals, frontend engineering, and backend API development. The project distinguishes itself through the implementation of autonomous AI agents capable of complex task automation, such as modifying files, managing servers, and executing API calls. It includes advanced AI development tools for conversational querying, real-time code suggestions, and automated repository analysis to gene