Tag Archive for News

Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986

The Story of Wall Street Raider – A 40-Year Odyssey from Harvard Law to Steam Home The Story Testimonials Wishlist on Steam The Origin Story The Story of Wall Street Raider A 40-Year Odyssey from Harvard Law to Steam Wall Street Raider: from DOS to a modern Bloomberg-style interface Prologue: The Dragon That Couldn’t Be Slain A Denver company that developed legal software tried. They failed. A game studio that made software for Disney tried. They spent over a year and hundreds of thousands of dollars. They had a team of programmers in Armenia, overseen by an American PhD in mathematics. They failed. Commodore Computers tried. After three months of staring at the source code, they gave up and mailed it back. Steam looked at it once, during the Greenlight era. “Too niche,” they said. “Nobody will buy it. And if they do, they’ll return it.” For nearly four decades, Wall Street Raider existed as a kind of impossible object—a game so complex that its own creator barely understood parts of it, written in a programming language so primitive that professional developers couldn’t decode it. The code was, in the creator’s own words, “indecipherable to anyone but me.” And then, in January 2024, a 29-year-old software developer from Ohio named Ben Ward sent an email. Michael Jenkins, 80 years old and understandably cautious after decades of failed attempts by others, was honest with him: I appreciate the enthusiasm, but I’ve been through this before. Others have tried—talented people with big budgets—and none of them could crack it. I’ll send you the source code, but I want to be upfront: I’m not expecting miracles. A year later, that same 29-year-old would announce on Reddit: “I am the chosen one, and the game is being remade. No ifs, ands, or buts about it.” He was joking about the “chosen one” part. Sort of. This is the story of how Wall Street Raider—the most comprehensive financial simulator ever made—was born, nearly died, and was resurrected. It’s a story about obsession, about code that takes on a life of its own, about a game that accidentally changed the careers of hundreds of people. And it’s about the 50-year age gap between two developers who, despite meeting in person for the first time only via video call, would trust each other with four decades of work. The Notebooks Harvard Law School, 1967 Michael Jenkins was supposed to be studying. Instead, he was filling notebooks with ideas for a board game. Not just any board game. Jenkins wanted to build something like Monopoly, but instead of hotels and railroads, you’d buy and sell corporations. You’d issue stock. You’d execute mergers. You’d structure leveraged buyouts. The game would simulate the entire machinery of American capitalism, from hostile takeovers to tax accounting. There was just one problem: it was impossible. “Nobody’s going to have the patience to do this,” Jenkins realized as he stared at his prototype—a board covered in tiny paper stock certificates, a calculator for working out

Source: Hacker News | Original Link

The Three Year Myth

The Three Year Myth I got let go from my job – elimination of role, they’re claiming – so I’m understandably a bit raw. So was my boss from what it looked like, though he still has a paycheck and benefits whereas I do not. Still, rawness is an excellent time to reflect on what went right and what I could’ve done better, before the brain starts coping with the trauma of the event in question. What stuck out at me from this role was a confirmation of something I’d been gradually getting more and more data for over the course of my career, something I’m going to call the “Three Year Myth”. It’s something I’m emphatically not going to tolerate going forward, as every single time I’ve taken that bait in my career, I’ve been burned by it. Whether the organization is large or small, complex or streamlined, a conglomerate or a small business, the myth basically works the same way: you want something – a promotion, a raise, a process change, a new way of doing things – and you are told that while it’s not possible now , if you just wait two to three years then it’ll naturally come to pass. So you, not wanting to rock the boat and also wanting to find success, do as you’re told. You may continue working on the thing, showing progress or highlighting gaps, but ultimately you keep it quiet. On the down-low, so to speak. You bide your time, you wait in the wings, you do exactly as you’re told even as others move up, find success, earn promotions. A year goes by, and you check-in: ” two to three years “, you’re reminded. Your performance review is solid, of course, your deliverables unimpeachable, but something begins to feel increasingly off . Your colleagues are in more meetings, but your task list only grows longer. Your progress on said project is appreciated by your boss and team, maybe even your boss’ boss, but never really recognized . Even so, you know the world outside is hostile to job seekers and a steady paycheck beats the unemployment line, and so you continue to soldier onward. The pink slip comes as a total surprise. It always comes as a surprise. You did everything you were told, even waited patiently like you were asked. You trusted the organization to reward you in turn – and now you’ve lost your job. On your way out the door, you hear the rumors: someone else did your thing years after you showed yours off. They got the credit, the bonus, the promotion, the recognition. They’re a Senior now, or a Lead, or a Director, or a VP. You’re unemployed. The waiting was a myth all along. It was a trap, and you fell for it. Organizations delay change on purpose all the time. Humans naturally crave some form of stability, and any sort of change – positive or negative – is generally frowned upon by those whose stability depends on the status quo persisting. This is not merely limited to business, but also quite openly seen in politics, in government, in institutions. We like stability . To be fair to the opposing side, they often have valid reasons not t

Source: Hacker News | Original Link

Show HN: SQL-tap – Real-time SQL traffic viewer for PostgreSQL and MySQL

GitHub – mickamy/sql-tap: Watch SQL traffic in real-time with a TUI Skip to content You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert mickamy / sql-tap Public Notifications You must be signed in to change notification settings Fork 3 Star 251 Watch SQL traffic in real-time with a TUI License MIT license 251 stars 3 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings mickamy/sql-tap main Branches Tags Go to file Code Open more actions menu Folders and files Name Name Last commit message Last commit date Latest commit History 63 Commits 63 Commits .github/ workflows .github/ workflows broker broker clipboard clipboard cmd/ sql-tapd cmd/ sql-tapd docs docs dsn dsn example example explain explain gen/ tap/ v1 gen/ tap/ v1 highlight highlight proto/ tap/ v1 proto/ tap/ v1 proxy proxy query query server server tui tui .dockerignore .dockerignore .gitignore .gitignore .golangci.yaml .golangci.yaml .goreleaser.yaml .goreleaser.yaml Dockerfile Dockerfile LICENSE LICENSE Makefile Makefile README.md README.md buf.gen.yaml buf.gen.yaml buf.lock buf.lock buf.yaml buf.yaml go.mod go.mod go.sum go.sum main.go main.go View all files Repository files navigation sql-tap Real-time SQL traffic viewer — proxy daemon + TUI client. sql-tap sits between your application and your database (PostgreSQL or MySQL), capturing every query and displaying it in an interactive terminal UI. Inspect queries, view transactions, and run EXPLAIN — all without changing your application code. Installation Homebrew brew install –cask mickamy/tap/sql-tap Go go install github.com/mickamy/sql-tap@latest go install github.com/mickamy/sql-tap/cmd/sql-tapd@latest Build from source git clone https://github.com/mickamy/sql-tap.git cd sql-tap make install Docker PostgreSQL FROM postgres:18-alpine ARG SQL_TAP_VERSION=0.0.1 ARG TARGETARCH ADD https://github.com/mickamy/sql-tap/releases/download/v${SQL_TAP_VERSION}/sql-tap_${SQL_TAP_VERSION}_linux_${TARGETARCH}.tar.gz /tmp/sql-tap.tar.gz RUN tar -xzf /tmp/sql-tap.tar.gz -C /usr/local/bin sql-tapd && rm /tmp/sql-tap.tar.gz ENTRYPOINT [ “sql-tapd” , “–driver=postgres” , “–listen=:5433” , “–upstream=localhost:5432” , “–grpc=:9091” ] MySQL FROM mysql:8 ARG SQL_TAP_VERSION=0.0.1 ARG TARGETARCH ADD https://github.com/mickamy/sql-tap/releases/download/v${SQL_TAP_VERSION}/sql-tap_${SQL_TAP_VERSION}_linux_${TARGETARCH}.tar.gz /tmp/sql-tap.tar.gz RUN tar -xzf /tmp/sql-tap.tar.gz -C /usr/local/bin sql-tapd && rm /tmp/sql-tap.tar.gz ENTRYPOINT [ “sql-tapd” , “–driver=mysql” , “–listen=:3307” , “–upstream=localhost:3306” , “–grpc=:9091″ ] Quick start 1. Start the proxy daemon # PostgreSQL: proxy listens on :5433, forwards to PostgreSQL on :5432 DATABASE_URL= ” postgres://user:pass@localhost:5432/db?sslmode=disable ”

Source: Hacker News | Original Link

YouTube as Storage

GitHub – PulseBeat02/yt-media-storage: https://www.youtube.com/watch?v=l03Os5uwWmk Skip to content You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert PulseBeat02 / yt-media-storage Public Notifications You must be signed in to change notification settings Fork 31 Star 193 https://www.youtube.com/watch?v=l03Os5uwWmk www.youtube.com/watch?v=l03Os5uwWmk License GPL-3.0 license 193 stars 31 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings PulseBeat02/yt-media-storage master Branches Tags Go to file Code Open more actions menu Folders and files Name Name Last commit message Last commit date Latest commit History 36 Commits 36 Commits src src .gitignore .gitignore CMakeLists.txt CMakeLists.txt HEADER HEADER LICENSE.txt LICENSE.txt README.md README.md View all files Repository files navigation Media Storage Stores files onto YouTube by encoding them into lossless video and decoding them back to the original file. Supports both a command-line interface and a graphical user interface. Features File Encoding/Decoding : Encode any file into a lossless video (FFV1/MKV) and decode it back Fountain Codes : Uses Wirehair fountain codes for redundancy and repair Optional Encryption : Encrypt files with a password using libsodium (XChaCha20-Poly1305) Batch Processing : Queue multiple files for batch encoding (GUI) Progress Tracking : Real-time progress bars and status updates (GUI) CI/CD Pipeline Visit my CI/CD pipeline , and click “Login as Guest”. Visit the yt-media-storage project, click on the latest passing build, and click “Artifacts” to download the latest build artifacts for both the CLI and GUI. You may need to install some shared libraries (FFmpeg, Qt6, libsodium) to run the executables. Requirements CMake 3.22 C++23 compiler FFmpeg libsodium OpenMP Qt6 (Core and Widgets) Installation Ubuntu/Debian sudo apt update sudo apt install cmake build-essential qt6-base-dev \ libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libswresample-dev \ libsodium-dev libomp-dev Fedora/CentOS sudo dnf install cmake gcc-c++ qt6-qtbase-devel ffmpeg-devel libsodium-devel libgomp Arch Linux sudo pacman -S cmake qt6-base ffmpeg libsodium openmp macOS (Homebrew) brew install cmake qt@6 ffmpeg libsodium libomp Windows (vcpkg) vcpkg install ffmpeg libsodium openmp qt6 Or install Qt6 separately via the Qt Online Installer and FFmpeg/libsodium via vcpkg. Building mkdir build cmake -B build cmake –build build This produces two executables: media_storage — Command-line interface media_storage_gui — Graphical user interface Usage CLI ./media_storage encode –input –output

Source: Hacker News | Original Link

Zig – io_uring and Grand Central Dispatch std.Io implementations landed

Devlog ⚡ Zig Programming Language Download Learn News Source Join a Community ZSF Devlog Devlog This page contains a curated list of recent changes to main branch Zig. Also available as an RSS feed . This page contains entries for the year 2026 . Other years are available in the Devlog archive page . February 13, 2026 io_uring and Grand Central Dispatch std.Io implementations landed Author: Andrew Kelley As we approach the end of the 0.16.0 release cycle, Jacob has been hard at work, bringing std.Io.Evented up to speed with all the latest API changes: io_uring implementation Grand Central Dispatch implementation Both of these are based on userspace stack switching, sometimes called “fibers”, “stackful coroutines”, or “green threads”. They are now available to tinker with , by constructing one’s application using std.Io.Evented . They should be considered experimental because there is important followup work to be done before they can be used reliably and robustly: better error handling remove the logging diagnose the unexpected performance degradation when using IoMode.evented for the compiler a couple functions still unimplemented more test coverage is needed builtin function to tell you the maximum stack size of a given function to make these implementations practical to use when overcommit is off. With those caveats in mind, it seems we are indeed reaching the Promised Land, where Zig code can have Io implementations effortlessly swapped out: const std = @import ( “std” ) ; pub fn main ( init : std . process . Init . Minimal ) ! void { var debug_allocator : std . heap . DebugAllocator ( . { } ) = . init ; const gpa = debug_allocator . allocator ( ) ; var threaded : std . Io . Threaded = . init ( gpa , . { . argv0 = . init ( init . args ) , . environ = init . environ , } ) ; defer threaded . deinit ( ) ; const io = threaded . io ( ) ; return app ( io ) ; } fn app ( io : std . Io ) ! void { try std . Io . File . stdout ( ) . writeStreamingAll ( io , “Hello, World! \n ” ) ; } $ strace ./hello_threaded execve(“./hello_threaded”, [“./hello_threaded”], 0x7ffc1da88b20 /* 98 vars */) = 0 mmap(NULL, 262207, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f583f338000 arch_prctl(ARCH_SET_FS, 0x7f583f378018) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 prlimit64(0, RLIMIT_STACK, {rlim_cur=16384*1024, rlim_max=RLIM64_INFINITY}, NULL) = 0 sigaltstack({ss_sp=0x7f583f338000, ss_flags=0, ss_size=262144}, NULL) = 0 sched_getaffinity(0, 128, [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31]) = 8 rt_sigaction(SIGIO, {sa_handler=0x1019d90, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x10328c0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0 rt_sigaction(SIGPIPE, {sa_handler=0x1019d90, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x10328c0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0 writev(1, [{iov_base=”Hello, World!\n”, iov_len=14}], 1Hello, World! )

Source: Hacker News | Original Link

Vouch

GitHub – mitchellh/vouch: A community trust management system based on explicit vouches to participate. Skip to content You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert mitchellh / vouch Public Notifications You must be signed in to change notification settings Fork 29 Star 1.6k A community trust management system based on explicit vouches to participate. License MIT license 1.6k stars 29 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings mitchellh/vouch main Branches Tags Go to file Code Open more actions menu Folders and files Name Name Last commit message Last commit date Latest commit History 112 Commits 112 Commits .github .github action action tests tests vouch vouch .envrc .envrc .gitignore .gitignore .pinact.yaml .pinact.yaml AGENTS.md AGENTS.md CONTRIBUTING.md CONTRIBUTING.md FAQ.md FAQ.md HACKING.md HACKING.md LICENSE LICENSE README.md README.md VOUCHED.example.td VOUCHED.example.td flake.lock flake.lock flake.nix flake.nix shell.nix shell.nix View all files Repository files navigation Vouch A community trust management system. FAQ · Contributing People must be vouched for before interacting with certain parts of a project (the exact parts are configurable to the project to enforce). People can also be explicitly denounced to block them from interacting with the project. The implementation is generic and can be used by any project on any code forge, but we provide GitHub integration out of the box via GitHub actions and the CLI. The vouch list is maintained in a single flat file using a minimal format that can be trivially parsed using standard POSIX tools and any programming language without external libraries. Vouch lists can also form a web of trust. You can configure Vouch to read other project’s lists of vouched or denounced users. This way, projects with shared values can share their trust decisions with each other and create a larger, more comprehensive web of trust across the ecosystem. Users already proven to be trustworthy in one project can automatically be assumed trustworthy in another project, and so on. Warning This is an experimental system in use by Ghostty . We’ll continue to improve the system based on experience and feedback. Why? Open source has always worked on a system of trust and verify . Historically, the effort required to understand a codebase, implement a change, and submit that change for review was high enough that it naturally filtered out many low quality contributions from unqualified people. For over 20 years of my life, this was enough for my projects as well as enough for most others. Unfortunately, the landscape has changed particularly with the advent of AI tools that allow people to trivially create plausible-looking but extremely low-quality contributions wi

Source: Hacker News | Original Link

Art of Roads in Games

Art of Roads in Games Skip to main content Art of Roads in Games January 29, 2026 7 min read Not sure if it’s just me, but I often get a primal satisfaction whenever I see intricate patterns emerging out of seemingly disordered environments. Think about the galleries of ant colonies, the absurdly perfect hexagons of honeycombs, or the veins on a leaf. No architect, no blueprint. Just simple rules stacking on each other that result in beautiful patterns. I can’t explain why, but seeing those structures always felt good. Humans do this too. And for me, one of the most fascinating patterns we’ve come up with is the roads. Sometimes I imagine aliens from faraway galaxies discovering Earth long after we’re gone. Forests reclaimed by nature, cities reduced to rubble, yet between them, a faintly pattern is still visible – the road network. I like to think they will feel the same way I do when looking at nature patterns. – “Man, someone really thought this through.” City Builders and Their Roads I’ve got to say, roads have fascinated me since I was a kid. I still remember playing SimCity 2000 for the first time when I was about five or six years old. I didn’t understand much. Definitely didn’t know what zoning, taxes, or demand were. But roads fascinated me from the start. I think roads lie at the heart of every city builder. It’s the fabric on which cities are built. Since that moment, I’ve played almost every modern-themed city builder out there. In the meantime, I’ve also started noticing them in the real world. Examining them in more detail. Roundabouts. Interchanges. Overpasses. Merge lanes. Noticing every intricacy. Despite every game bringing an improvement over the one before, something always felt… off. SimCity 4 added elevation and diagonal roads. SimCity 2013 introduced curved roads. Then came Cities: Skylines with a ton of freedom. You could know freeplace roads and merge them into intersections at any angle, build flyovers at different elevations to construct crazy, yet unrealistic, interchanges. I think this was the largest breakthrough. But something was still nagging me. Highway ramps were unrealistically sharp or wobbly, lanes that were supposed to be high-speed bent too sharply at certain points, and the corner radii of intersections looked strange. I mean look at this. This is probably what highway engineers have nightmares about. And then came the mods. Mods changed everything. The great community enabled a new kind of freedom. One could build almost anything: perfect merge lanes, realistic markings, and smooth transitions. It was a total game-changer. I am particularly proud of this 5-lane turbo roundabout: But even then, mods didn’t feel completely natural. They were still limited by the game’s original system. Cities: Skylines 2 pushed it even further, with lanes becoming even more realistic and markings as well. I think at this point, a non-trained eye won’t know the difference from reality. Then I stopped stumbling around and sta

Source: Hacker News | Original Link

Claude’s C Compiler vs. GCC

CCC vs GCC – Harshanu February 8, 2026 CCC vs GCC Posted on February 8, 2026 • 15 minutes • 3024 words Introduction Anthropic recently published a blog post about building a C compiler entirely with Claude . They called it CCC (Claude’s C Compiler) and claimed it could compile the Linux kernel. 100% of the code was written by Claude Opus 4.6, a human only guided the process by writing test cases. That sounded interesting enough to test the claim and benchmark CCC against the industry standard GCC. The source code of CCC is available at claudes-c-compiler . It is written entirely in Rust, targeting x86-64, i686, AArch64 and RISC-V 64. The frontend, SSA-based IR, optimizer, code generator, peephole optimizers, assembler, linker and DWARF debug info generation are all implemented from scratch with zero compiler-specific dependencies. That is a lot of work for an AI to do. What is a Compiler, Assembler and Linker? Before we jump into the comparison, it helps to understand what happens when you compile a C program. There are four stages involved. Image credit: The four stages of the gcc compiler Preprocessor : Handles #include , #define and other directives. It takes the source code and produces expanded source code. Compiler : Takes the preprocessed source code and translates it into assembly language. This is where the real heavy lifting happens, understanding the C language, type checking, optimizations, register allocation and so on. Assembler : Converts the assembly language into machine code (object files). It has to know the exact instruction encoding for the target CPU architecture. Linker : Takes one or more object files and combines them into a single executable. It resolves references between files, sets up memory layout and produces the final binary. Why Compilers Are Beasts Writing a programming language is hard (prior vibe coding). Writing a compiler is on another level entirely. A programming language defines the rules. A compiler has to understand those rules, translate them into machine instructions, optimize the output for speed and size, handle edge cases across different CPU architectures and produce correct code every single time. GCC has been in development since 1987. That is close to 40 years of work by thousands of contributors. It supports dozens of architectures, hundreds of optimization passes and millions of edge cases that have been discovered and fixed over the decades. The optimization passes alone (register allocation, function inlining, loop unrolling, vectorization, dead code elimination, constant propagation) represent years of PhD-level research. This is one of the reasons why it’s ubiquitous. This is why CCC being able to compile real C code at all is noteworthy. But it also explains why the output quality is far from what GCC produces. Building a compiler that parses C correctly is one thing. Building one that produces fast and efficient machine code is a completely different challenge. Why the Compiler Is the “E

Source: Hacker News | Original Link

The Codex App

Introducing the Codex app | OpenAI Switch to ChatGPT (opens in a new window) Sora (opens in a new window) API Platform (opens in a new window) OpenAI February 2, 2026 Product Introducing the Codex app Expanding what developers can do, with the new Codex app for macOS. Download for macOS Loading… Share Today, we’re introducing the Codex app for macOS—a powerful new interface designed to effortlessly manage multiple agents at once, run work in parallel, and collaborate with agents over long-running tasks. We’re also excited to show more people what’s now possible with Codex ⁠ . For a limited time we’re including Codex with ChatGPT Free and Go, and we’re doubling the rate limits on Plus, Pro, Business, Enterprise, and Edu plans. Those higher limits apply everywhere you use Codex—in the app, from the CLI, in your IDE, and in the cloud. The Codex app changes how software gets built and who can build it—from pairing with a single coding agent on targeted edits to supervising coordinated teams of agents across the full lifecycle of designing, building, shipping, and maintaining software. The Codex app: A command center for agents Since we launched Codex in April 2025, the way developers work with agents has fundamentally changed. Models are now capable of handling complex, long-running tasks end to end and developers are now orchestrating multiple agents across projects: delegating work, running tasks in parallel, and trusting agents to take on substantial projects that can span hours, days, or weeks. The core challenge has shifted from what agents can do to how people can direct, supervise, and collaborate with them at scale—existing IDEs and terminal-based tools are not built to support this way of working. This new way of building coupled with new model capabilities demands a different kind of tool, which is why we are introducing the Codex desktop app, a command center for agents. Work with multiple agents in parallel The Codex app provides a focused space for multi-tasking with agents. Agents run in separate threads organized by projects, so you can seamlessly switch between tasks without losing context. The app lets you review the agent’s changes in the thread, comment on the diff, and even open it in your editor to make manual changes. It also includes built-in support for worktrees, so multiple agents can work on the same repo without conflicts. Each agent works on an isolated copy of your code, allowing you to explore different paths without needing to track how they impact your codebase. As an agent works, you can check out changes locally or let it continue making progress without touching your local git state. The app picks up your session history and configuration from the Codex CLI and IDE extension, so you can immediately start using it with your existing projects. Go beyond code generation with skills Codex is evolving from an agent that writes code into one that uses code to get work done on your computer. With skills ⁠ (opens in a new

Source: Hacker News | Original Link

Astrological CPU Scheduler

GitHub – zampierilucas/scx_horoscope: Astrological CPU Scheduler Skip to content You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert zampierilucas / scx_horoscope Public Notifications You must be signed in to change notification settings Fork 22 Star 968 Astrological CPU Scheduler 968 stars 22 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings zampierilucas/scx_horoscope master Branches Tags Go to file Code Open more actions menu Folders and files Name Name Last commit message Last commit date Latest commit History 14 Commits 14 Commits .vscode .vscode nix nix src src .gitignore .gitignore ASTROLOGY.md ASTROLOGY.md Cargo.lock Cargo.lock Cargo.toml Cargo.toml README.md README.md build.rs build.rs demo.gif demo.gif demo.tape demo.tape flake.lock flake.lock flake.nix flake.nix intf.h intf.h main.bpf.c main.bpf.c View all files Repository files navigation scx_horoscope – Astrological CPU Scheduler “Why let mere mortals decide CPU priorities when the cosmos can guide us?” A fully functional sched_ext scheduler that makes real CPU scheduling decisions based on real-time planetary positions, zodiac signs, and astrological principles. This actually loads into the Linux kernel and schedules your system tasks. Because if the universe can influence our lives, why not our CPU scheduling too? Features Real Planetary Calculations : Uses the astro crate for accurate geocentric planetary positions Zodiac-Based Task Classification : Tasks are classified by their astrological affinities Retrograde Detection : Real retrograde motion detection by comparing day-to-day positions – negative influences trigger 50% time slice penalties Lunar Phase Scheduling : Moon phases affect Interactive tasks (shells, editors) with Full Moon giving 1.4x boost Element Boosts & Debuffs : Fire signs boost CPU tasks (1.5x), Water signs debuff them (0.6x) – elemental oppositions create cosmic chaos Cosmic Weather Reports : Get real-time astrological guidance for your system with moon phase tracking Actually Works : Loads into the Linux kernel via sched_ext and schedules real system processes Real BPF Integration : Uses scx_rustland_core framework for kernel-userspace communication Dynamic Time Slicing : Adjusts CPU time based on astrological priority (100-1000) Astrological Scheduling Rules Planetary Domains Each planet rules specific types of system tasks: ☀️ Sun (Life Force): Critical system processes (PID 1, init) 🌙 Moon (Emotions): Interactive tasks (shells, editors, terminals) 💬 Mercury (Communication): Network and I/O tasks 💖 Venus (Harmony): Desktop and UI processes ⚔️ Mars (Energy): CPU-intensive tasks (compilers, video encoding) 🎯 Jupiter (Expansion): Memory-heavy applications (databases, browsers) ⚙️ Saturn (Structure): System daemons and kern

Source: Hacker News | Original Link

What’s up with all those equals signs anyway?

What’s up with all those equals signs anyway? – Random Thoughts Skip to content About Lars Ingebrigtsen Now Happening Comico Complete Recent Posts Featured Recent Comments Movies The World Officially The Best Tilda Swinton Ingmar Bergman Netflix 2019 Decade MCMXXXIX Moving Pictures Comics Fantagraphics Eclipse Comics Pacific Comics Epic Comics Vortex Elaine Lee AV & Renegade Punk Comix Kitchen Sink Black Eye Comics Re/Search Engine Comics Previews Archives Archives Select Month February 2026 January 2026 December 2025 November 2025 October 2025 September 2025 August 2025 July 2025 June 2025 May 2025 April 2025 March 2025 February 2025 January 2025 December 2024 November 2024 October 2024 September 2024 August 2024 July 2024 June 2024 May 2024 April 2024 March 2024 February 2024 January 2024 December 2023 November 2023 October 2023 September 2023 August 2023 July 2023 June 2023 May 2023 April 2023 March 2023 February 2023 January 2023 December 2022 November 2022 October 2022 September 2022 August 2022 July 2022 June 2022 May 2022 April 2022 March 2022 February 2022 January 2022 December 2021 November 2021 October 2021 September 2021 August 2021 July 2021 June 2021 May 2021 April 2021 March 2021 February 2021 January 2021 December 2020 November 2020 October 2020 September 2020 August 2020 July 2020 June 2020 May 2020 April 2020 March 2020 February 2020 January 2020 December 2019 November 2019 October 2019 September 2019 August 2019 July 2019 June 2019 May 2019 April 2019 March 2019 February 2019 January 2019 December 2018 November 2018 October 2018 September 2018 August 2018 July 2018 June 2018 May 2018 April 2018 March 2018 February 2018 January 2018 December 2017 November 2017 October 2017 September 2017 August 2017 July 2017 June 2017 May 2017 April 2017 March 2017 February 2017 January 2017 December 2016 November 2016 October 2016 September 2016 August 2016 July 2016 June 2016 May 2016 April 2016 March 2016 February 2016 January 2016 December 2015 November 2015 October 2015 September 2015 August 2015 July 2015 June 2015 May 2015 April 2015 March 2015 February 2015 January 2015 December 2014 November 2014 October 2014 September 2014 August 2014 July 2014 June 2014 May 2014 April 2014 March 2014 February 2014 January 2014 December 2013 November 2013 October 2013 September 2013 August 2013 July 2013 June 2013 April 2013 March 2013 February 2013 January 2013 December 2012 November 2012 October 2012 September 2012 August 2012 July 2012 June 2012 May 2012 April 2012 March 2012 February 2012 January 2012 December 2011 November 2011 October 2011 September 2011 July 2011 May 2011 April 2011 March 2011 February 2011 January 2011 Now Playing Now Reading Categories Search for: For some reason or other, people have been posting a lot of excerpts from old emails on Twitter over the last few days. The most vital question everybody’s asking themselves is: What’s up with all those equals signs?! And that’s something I’m somewhat of an expert on. I mean, having

Source: Hacker News | Original Link