SShortSingh.
Back to feed

Developer builds a software renderer in just 500 lines of bare C++

0
·1 views

A developer has created a minimal software renderer using only 500 lines of plain C++ code, without relying on graphics libraries or frameworks. The project demonstrates core rendering concepts implemented from scratch in a compact codebase. It was shared on Hacker News, where it attracted attention from the programming community. The work serves as an educational resource for those looking to understand the fundamentals of software-based 3D rendering.

Read the full story at Hacker News

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

How Pass-the-Hash and Kerberoasting Let Attackers Hijack Networks Without Passwords

Two well-established attack techniques, Pass-the-Hash and Kerberoasting, remain among the first methods real-world attackers use to compromise corporate networks. Pass-the-Hash exploits NTLM authentication by reusing a captured credential hash, eliminating the need for brute-force password cracking. Kerberoasting targets Active Directory service accounts by extracting Kerberos service tickets and cracking them offline, taking advantage of weak passwords often left on forgotten service accounts. A red-team exercise at a financial firm in 2023 demonstrated how these techniques can be chained together, starting with a phishing email and escalating to full lateral movement across the network. Security teams are urged to treat these techniques as high-priority threats, as both can bypass common defenses when misconfigured accounts and weak passwords are present.

0
ProgrammingDEV Community ·

TanStack Query Explained: Server State Management for Modern Web Apps

TanStack Query, formerly known as React Query, is a framework-agnostic library built to manage server state, including data fetching, caching, and background updates. Unlike client state, which lives entirely in the browser, server state is owned by a remote backend and the browser holds only a temporary snapshot. By default, cached data is stored in the browser tab's JavaScript RAM, though developers can optionally persist it to localStorage, sessionStorage, or IndexedDB via built-in persisters. The library provides core hooks such as useQuery for reading data and useMutation for writing data, with cache invalidation handled automatically on successful mutations. A configurable staleTime option controls how long fetched data is considered fresh before a background refetch is triggered.

0
ProgrammingDEV Community ·

ModelFuzz: Open-Source Python Library Guards AI Agents Against Prompt Injection Attacks

A developer has released ModelFuzz, an open-source Python library designed to prevent AI agents from leaking sensitive data through prompt injection attacks. Rather than filtering malicious prompts, ModelFuzz intercepts tool calls at the execution layer and checks their arguments for policy violations — such as stolen API keys or unsafe URLs — before allowing them to run. The library also includes a CLI scanner that simulates prompt injection attacks against local AI models to test their vulnerability. In testing against a local Qwen2.5:1.5b model, the scanner successfully breached the model four out of five times, highlighting the severity of the risk. ModelFuzz is freely available on PyPI and GitHub, with the developer seeking community input on additional security policies and framework support.

0
ProgrammingDEV Community ·

BorgShield: A Single-Script Linux Backup System Built on BorgBackup

Developer Arcadio Ortega Reinoso has published BorgShield version 2.1.0, a Linux backup solution targeting Debian 11 and Ubuntu 22.04 platforms, built around a single shell script called backup.sh. The system leverages BorgBackup to provide deduplication, cryptographic integrity verification, and encryption for data stored on external drives. According to the author's comparison, backup.sh supports 13 capabilities — including automatic database dumps, virtual test-restore, guided recovery, and cron-ready unattended operation — that no existing tool such as rsync, restic, or timeshift covers in combination. The solution is designed for local external disk use and requires bash, BorgBackup, rsync, and Python 3 as dependencies, meaning it trades cloud portability and GUI support for a more comprehensive single-file workflow. The project is documented as a technical analysis and is publicly available on the DEV Community platform.

Developer builds a software renderer in just 500 lines of bare C++ · ShortSingh