Best of C Programming2025

  1. 1
    Article
    Avatar of otqajuf6zdm9hfrwtlr9nIsaac de Andrade·24w

    The Lost Art of Programming Offline

    Programming without internet access reveals gaps in knowledge and forces reliance on local resources like man pages, system header files, and existing code. This constraint-based approach helps identify mastered domains versus weak areas, makes learning more efficient and personal, and strengthens fundamental skills by eliminating dependency on Stack Overflow, documentation sites, and AI assistants.

  2. 2
    Video
    Avatar of lowlevelgamedevLow Level Game Dev·51w

    This is not Minecraft, it's my C++ voxel game!

  3. 3
    Article
    Avatar of c_communityC/C++ Community·40w

    How powerful and versatile is C ?

    A developer seeks clarification about common misconceptions regarding C programming language, particularly questioning claims about its crash-prone nature, poor error handling, limited use cases beyond game engines, lack of developer trust, and inferiority to C++ in game development. They want factual information and recommendations for using C in backend development.

  4. 4
    Video
    Avatar of codingwithsphereCoding with Sphere·51w

    Everyone should learn Bash

    Bash scripting is an essential skill for developers that can significantly streamline development workflows. The post demonstrates practical applications through a C project example, showing how to create build scripts that compile and run programs with single commands. It covers advanced features like command-line arguments, conditional logic, and aliases for faster development. Real-world examples include automating multi-command development environments, syncing files across devices, and code generation for languages lacking generics. The author recommends learning core utilities first, then gradually building scripting knowledge through practical projects rather than studying syntax extensively upfront.

  5. 5
    Article
    Avatar of lonely_programmerLonely Programmer·1y

    Which Language Is The Best C, C++, Python or Java

  6. 6
    Article
    Avatar of hnHacker News·36w

    vicinaehq/vicinae: A focused launcher for your desktop — native, fast, extensible

    Vicinae is a high-performance desktop launcher built with C++ and Qt, designed as an alternative to Raycast. It offers keyboard-first access to system actions, file search across millions of files, clipboard history, calculator, emoji picker, and extensibility through React/TypeScript extensions. The launcher includes Raycast compatibility for reusing existing extensions and targets developers and power users seeking fast, native performance without Electron overhead.

  7. 7
    Article
    Avatar of hnHacker News·1y

    Free Interactive C Tutorial

    Learn-c.org offers a free, interactive tutorial for learning the C programming language. It is suitable for both beginners and experienced developers, with sections on basics like variables and loops, and advanced topics including pointers and dynamic allocation. Contributions to the site are welcomed.

  8. 8
    Article
    Avatar of cybertec_postgresqlCYBERTEC PostgreSQL·1y

    PostgreSQL Development Introduction

    This post provides a comprehensive guide for absolute beginners on how to contribute to PostgreSQL development. It covers how to compile and install PostgreSQL using different build systems (Meson for version 16 and newer, GNU Autoconf for version 15 and older), set up a development environment, and create custom extensions. The guide walks through essential commands, environment setup, and debugging techniques, emphasizing the importance of understanding each step and practicing by breaking and fixing code.

  9. 9
    Article
    Avatar of hnHacker News·28w

    Snapchat/Valdi: Valdi is a cross-platform UI framework that delivers native performance without sacrificing developer velocity.

    Valdi is an open-source cross-platform UI framework from Snapchat that compiles TypeScript components directly to native iOS, Android, and macOS views without web views or JavaScript bridges. Battle-tested in Snap's production apps for 8 years, it features automatic view recycling, instant hot reload, full VSCode debugging, and flexible integration with existing native codebases. The framework includes a C++ layout engine, worker thread support, native animations, and type-safe bindings between TypeScript and platform-specific code.

  10. 10
    Article
    Avatar of jetbrainsJetBrains·1y

    CLion Is Now Free for Non-Commercial Use

    CLion, a JetBrains IDE for C and C++ development, is now available free for non-commercial use. This initiative is in line with similar changes made to other JetBrains IDEs to support learners, hobbyists, and open-source contributors. The full IDE features remain accessible under this license with the exception of the 'Code With Me' feature. Non-commercial use includes learning and hobby projects, but a commercial license is still needed for commercial projects.

  11. 11
    Article
    Avatar of tdsTowards Data Science·46w

    Run Your Python Code up to 80x Faster Using the Cython Library

    Cython is a superset of Python that converts Python code to C for significant performance improvements. The article demonstrates a four-step process: load Cython extension, use %%cython magic command, type function parameters, and declare variables with cdef. Three examples show dramatic speedups: nested loops (80x faster), Monte Carlo simulation (10x faster), and image processing (25x faster). The guide covers both Jupyter notebook usage and standalone Python script compilation using setup.py files.

  12. 12
    Article
    Avatar of steveklabnikSteve Klabnik·50w

    Is Rust faster than C?

    Comparing Rust and C performance is complex because 'all things being the same' is difficult to define. While both languages can achieve similar performance through inline assembly and compiler optimizations, they differ in default behaviors like struct field ordering, bounds checking, and safety guarantees. Rust's compile-time safety checks may lead developers to write different code patterns than in C, affecting runtime performance. Social factors also play a role, as developers may be more willing to write performance-oriented code in Rust due to its safety guarantees. Fundamentally, there's no inherent reason Rust cannot match C's performance capabilities.

  13. 13
    Article
    Avatar of game_developersGame Developers·1y

    My Game Development Journey: Finding My Path

    The author shares their journey from studying economics to pursuing game development, highlighting challenges such as tutorial dependency and finding a better approach through hands-on experience. They focus on Unity development, C# programming, and math, emphasizing the importance of documenting learning and taking a focused approach.

  14. 14
    Article
    Avatar of sknexusSK NEXUS·1y

    Will Rust replace C

    Rust is unlikely to completely replace C in the near future due to C's deep entrenchment in operating systems, embedded devices, and low-level systems. While Rust offers memory safety advantages and is gaining adoption in new projects by major tech companies, the vast existing C codebase and lack of motivation to rewrite stable systems means C will persist. Rust may eventually inherit C's role in systems programming, but both languages will coexist, with C remaining relevant for understanding machine fundamentals and Rust providing safer alternatives for new development.

  15. 15
    Article
    Avatar of itsfossIt's Foss·24w

    The Tor Project is Now Rewritten in Rust Instead of C

    Arti 1.8.0, the Rust rewrite of Tor, introduces circuit timeout improvements that replace predictable timing patterns with randomized intervals to reduce fingerprinting risks. The release includes an experimental command for migrating onion service client authorization keys from C-based Tor to Arti's keystore, plus enhancements to routing architecture and protocol implementation. The rewrite addresses memory safety vulnerabilities inherent in the original C codebase, including buffer overflows and use-after-free bugs.

  16. 16
    Video
    Avatar of bigboxswebigboxSWE·30w

    Why were 90s programmers so legendary?

    Explores why 1990s programmers like John Carmack, Linus Torvalds, and Richard Stallman became legendary figures. The era's severe hardware constraints—limited RAM, slow processors, and scarce resources—forced developers to write highly optimized code and build tools from scratch. Without modern conveniences like package managers, AI assistants, or abundant tutorials, programmers had to master low-level optimization techniques, including manual memory management and assembly code. While the problems were simpler in scope compared to today's distributed systems, the technical challenges were significantly harder, creating a generation of developers with deep systems knowledge.

  17. 17
    Article
    Avatar of hnHacker News·32w

    Why Is SQLite Coded In C

    SQLite remains implemented in C because it provides optimal performance, universal compatibility across platforms and languages, minimal runtime dependencies, and stability. C enables SQLite to be called from any programming language, requires only basic standard library functions, and avoids the complexity of modern language runtimes. While safe languages like Rust are acknowledged as potential future options, the SQLite team prioritizes mature, well-understood languages and notes that recoding would likely introduce more bugs than it would fix. The article addresses common questions about why SQLite wasn't built with object-oriented languages or modern safe alternatives.

  18. 18
    Article
    Avatar of devtoDEV·36w

    In Defense of C++

    C++ remains a powerful and relevant programming language despite common criticisms about complexity, safety, and being outdated. The language's perceived complexity can be managed by starting simple and adding advanced features only when needed. Modern C++ standards (C++20, C++23) continue to evolve with new features like modules and coroutines. While memory safety concerns are valid, they can be addressed through smart pointers and proper practices. C++ continues to power major systems from browsers to game engines, and rewrites to other languages often succeed due to architectural improvements rather than just language choice.

  19. 19
    Article
    Avatar of hnHacker News·36w

    qgis/QGIS: QGIS is a free, open source, cross platform (lin/win/mac) geographical information system (GIS)

    QGIS is a free, open-source geographical information system that runs on multiple platforms. It offers comprehensive spatial data management for raster, vector, mesh, and point cloud formats, advanced cartography with 2D/3D rendering, robust geospatial analysis with 200+ native algorithms, extensive customization through plugins and APIs, and includes QGIS Server for web mapping services. The project is actively maintained by a developer community and follows a time-based release cycle with Long Term Release and Latest Release branches.

  20. 20
    Article
    Avatar of the_react_communityThe React Community·1y

    Neotasks OSS - An in-development task manager

    The author is developing a task management application called Neotask, inspired by Trello but with additional features. It's being built using React, with the backend yet to be decided, possibly in C++ or Rust. The design uses the Catppuccin color palette.

  21. 21
    Article
    Avatar of rkuh6l39hxcnffgzyiq88Micah Norwood·31w

    How to Get Into Embedded Systems

    A web developer with 6 years of professional experience seeks guidance on transitioning into embedded systems development. They're looking for project recommendations, community groups, and learning paths to explore lower-level programming concepts, with willingness to learn C or C++.

  22. 22
    Video
    Avatar of codinggopherThe Coding Gopher·1y

    Why You’ll NEVER Become a Senior Engineer Using Python

    Senior engineering in software development requires in-depth understanding of underlying system mechanics like memory management and data alignment, which languages like Python often abstract away. Exploring C language and its functions like malloc, which dynamically allocates memory on the heap, reveals the complexities of managed and unmanaged memory, alignment, and system calls. These insights are crucial for writing optimized and performance-conscious code.

  23. 23
    Video
    Avatar of lauriewiredLaurieWired·37w

    This C code should be ILLEGAL. It's also fantastic.

    A reverse engineer analyzes obfuscated C code submissions from the International Obfuscated C Code Contest (IOCCC) using Ghidra decompiler. The analysis reveals surprising implementations including a Rick Roll animation, a complete Doom game running in a virtual machine, a 3D renderer, an LLM chatbot with multiple personalities, a Vim clone, and other creative programs. The experiment demonstrates both the effectiveness of reverse engineering tools and the ingenuity of obfuscated code techniques.

  24. 24
    Article
    Avatar of hnHacker News·50w

    manaskamal/XenevaOS: The Xeneva Operating System

    XenevaOS is a custom operating system built from scratch supporting both x86_64 and ARM64 architectures. It features the Aurora hybrid kernel, a compositing window manager called Deodhai, graphics library Chitralekha, and includes networking, audio, USB3, and storage support. The OS comes with built-in applications like a file browser, calculator, terminal, and audio player, and welcomes open-source contributions from developers interested in low-level system development.

  25. 25
    Video
    Avatar of lowlevelgamedevLow Level Game Dev·1y

    Why I moved my game to Javascript?

    After developing a game in C++ for 5 years, the author decided to migrate the project to JavaScript due to the rigid nature of the C++ code. The author highlights the ease of configuring libraries in JavaScript and the lack of compile errors. The game runs on Node.js and Electron, although it has slightly lower FPS compared to the C++ version. Future videos will cover optimizations and new features.