惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News and Events Feed by Topic
Malwarebytes
Malwarebytes
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
Cybersecurity and Infrastructure Security Agency CISA
F
Future of Privacy Forum
C
Cisco Blogs
T
The Exploit Database - CXSecurity.com
A
Arctic Wolf
S
Securelist
K
Kaspersky official blog
S
Schneier on Security
T
ThreatConnect
T
Tenable Blog
Spread Privacy
Spread Privacy
T
True Tiger Recordings
AWS News Blog
AWS News Blog
F
Fox-IT International blog
量子位
T
Threatpost
V
Vulnerabilities – Threatpost
C
CERT Recently Published Vulnerability Notes
Cisco Talos Blog
Cisco Talos Blog
GbyAI
GbyAI
宝玉的分享
宝玉的分享
腾讯CDC
G
Google Developers Blog
aimingoo的专栏
aimingoo的专栏
Cyberwarzone
Cyberwarzone
有赞技术团队
有赞技术团队
S
SegmentFault 最新的问题
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Visual Studio Blog
U
Unit 42
雷峰网
雷峰网
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Simon Willison's Weblog
Simon Willison's Weblog
O
OpenAI News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The GitHub Blog
The GitHub Blog
The Register - Security
The Register - Security
MyScale Blog
MyScale Blog
小众软件
小众软件
A
About on SuperTechFans
Last Week in AI
Last Week in AI
Y
Y Combinator Blog
博客园 - 三生石上(FineUI控件)
美团技术团队
Google Online Security Blog
Google Online Security Blog
P
Proofpoint News Feed
MongoDB | Blog
MongoDB | Blog

DEV Community

Experienced devs are slower with AI tools. Nobody wants to admit it. I built an MCP-native OSINT framework that lets AI agents investigate from your terminal AWS Nitro Enclaves vs Intel TDX: Why Attestation Root Matters for Regulated Workloads Vibe Coding: Revolution or Risk in Software Development? - SmarterArticles S1E6 JSON Schema Explained: Validate Your API Data Before It Breaks Production Harness Tells Your Agent What to Do. GUI Agents Let It Actually Do It. Is AI actually replacing developers? Customizing Docker Images: Write Your First Dockerfile (2026) €40 n8n vs 28% weekly Anthropic quota. Which /goal layer should you actually run? 04/20: Data Encapsulation: How a Message Becomes Bits on the Wire Hướng Dẫn Thiết Lập Reasoning Proxy DeepSeek V4-Pro với Cursor (2026) Sofi Log #012: Agentic GDP — Solana Pay.sh & x402 Protocol Spec Input Types, Attributes, Self-Closing Tags, Hover Effect Absolute vs Relative Paths File Types (Regular, Directory, Link, Device, Socket, Pipe) From Arduino IDE to AVR GCC | AVR Bare Metal #1 Using Bitcoin as collateral without wrapping it: the design of a BTC collateral vault Unreal Engine 5 Skill System Architecture using GAS and GameplayTags 5 Things I Wish I Knew Before Building with Hermes Agent Thoughts on Codingame 2026 Spring challenge OUT WITH THE OLD IN WITH THE NEW Why are simple 1099 tax calculators online so horribly bloated? So I built my own "Why You're Not Getting Callbacks (It's Not Your Skills)" # How I Built a Retail Demand Forecasting App with Python and Streamlit Why We Deliberately Crush Lithium Batteries (UN38.3 Crush Testing Explained) Command History & Completion The Three-Body Problem: AI Code, Supply Chain Attacks, and the Talent Exodus 로컬 LLM 셋업 가이드 (v27) Building Better .NET Worker Services with Cursor Rules Generate Professional PDF Invoices via REST API — JSON In, PDF Out Redis: Big Keys Destroem o Desempenho Compartilhado Agentic AI for Cybersecurity: Autonomous Threat Detection and Response How to Automate Android Without Appium Cron vs systemd daemon: which one for Node.js? Designing XSLT transforms with parameters and multiple inputs I Downloaded Gemma4:e2b On My Macbook in 2 steps Building an Autonomous SRE Agent: From Raw Telemetry to Safe, AI-Driven Remediation The EU AI Act in 2026: Reading the Law After the Omnibus I had zero coding knowledge. Here is "RetroTube", a 2010 YouTube sandbox prototype I built using AI! How to Validate Environment Variables in TypeScript (and Why You Should) I Built a CLI Tool That Writes Better Git Commits Than I Do Transfer Fees, Metadata, and Soulbound Tokens: My First Real Token Experiments on Solana Stop Using Fetch() in React: A Better Way To Call Your Backend Creando un Tetris con JavaScript VI: Complicando el juego. DeepSeek's API Price Cut Changed My Claude Code and ChatGPT Math [Boost] Perl 🐪 Weekly #774 - Perl is too HOT How to Track AI Usage Without Losing Revenue (Complete Guide) 77 Rules Later: What Graduating Our First Stack Actually Looked Like RAG 시스템 실전 구축 (v26) When Premature Scaling Leads to Operator Burnout Multi-Repo Microservice Changes Are a Coordination Problem. I Solved It With AI Agent Teams. The Next Frontier: How Multi-Agent Systems are Redefining Productivity The Kimwolf Bust Just Outed Android Webcams as Botnet Fodder — Here's the Question Every Repurposed-Phone Camera Setup Has to Answer I'm an autonomous AI agent. I shipped 18 fixes to myself in one session. Building a Secure Future with Zero Trust Security Architecture Asynchronous Functions in Dart How I migrated magic-link login from Resend to AWS SES + Lambda five days before launch Edge Computing He creado una empresa ficticia IT/OT para poder encontrar sus vulnerabilidades y reforzar su seguridad en sus activos críticos Why I Built @editora/react I built a tiny UGC script generator because hooks are the hardest part The Phone Is Becoming the New Terminal Why Most AI Music Tools Feel Wrong to Developers Goroutines vs. Promises: Why Go and JavaScript Look at Concurrency Completely Differently How I Use Antigravity 2.0 to Navigate Open-Source Codebases and Make Better Technical Decisions Understanding Basic HTML & CSS Concepts for Beginners Go Error Handling: Annoying or Awesome? Your To-Do List Doesn't Know You — So I Gave Mine Three Brains Shell Basics (Bash, Zsh, Sh) Free MongoDB GUI Tool for Developers, Students, and Teams Designing High-Performance Blockchain Indexers Choosing Models for an Agentic Chat App on Amazon Bedrock How Smart Growth Teams Automate Their Marketing Stack in 2026 (Without Hiring More People) What I Learned About Memory-Augmented AI Agents Seven Docker Tips Every Engineer Should Know (from Docker Captains) Welcome to the Fast-Food Era of Testing: Over-Weight by Tests How to use Claude in vscode? Prompt Engineering for Automated Evaluation: Making LLMs the Judge in AI Builder Solutions Full Stack Projects Are Not Enough Anymore Virtualization & Cloud Basics Orakle: Turning Raw Blockchain Data into Intelligence with Gemma 4 Building an Autoposting Pipeline with Hermes Agent: Why Waterfall Beats Parallel, and the Edge Cases Nobody Talks About OpenShift Virtualization Migration Advisor — Local-First, Powered by Gemma 4 26B MoE WebMCP is coming — so I’m building webmcp.js I Disappeared for 4 Months After Launch - Here's What Brought Me Back Jira Is Turing-Complete (And You've Been Coding in It) NyayAI: Building an AI Legal Assistant for 1.4 Billion People — A Technical Deep Dive E-commerce Order Automation: Stripe + Invoice + Shipping Workflow How to Evaluate AI Agents: LLM-as-Judge Tutorial The Interview Prep Stack I Used as a Senior Software Engineer Targeting Big Tech Gemma4 Challenge OptiLearn - Powered by Google Gemma 4 Aura — The Gemma 4 Powered Agentic Web Copilot & Self-Healing Accessibility Engine I built a tool that catches misleading charts using Gemma 4 running locally Worklog companion with Gemma4 GBase: Building LLM Agents That Actually Learn from Their Mistakes Blossom — a small step toward student mental wellbeing WordPress Performance Monitoring: A Complete Guide Principal Components in TypeScript (Part 4)
Reviving glyph-v8: From a Forgotten Prototype to STRIDE - a Field-Aware Integer Coder
contour · 2026-05-25 · via DEV Community

Executive Summary

STRIDE is a field‑aware integer coder that revives the abandoned glyph‑v8 prototype and turns it into a practical, measurable, deterministic compression primitive for binary protocols.
It profiles integer fields, builds per‑field models, selects optimal codecs, and outperforms general compressors like zstd on integer‑heavy data.


What I Built

STRIDE — Structured Integer Decoder/Encoder.

A field‑aware integer coder for binary protocols. Not a general compressor.
A primitive that does one thing extremely well: exploit the fact that integer fields in Protobuf, MessagePack, and Thrift are not random — they have highly skewed, predictable distributions.

zstd doesn’t know field boundaries.
STRIDE does.

Built on top of the revived glyph‑v8 prototype.


Demo

• GitHub: https://github.com/yasha1971-coder/glyph-v8 (github.com in Bing)
• Replit demo: https://replit.com/@yasha1971/Glyph-Search (replit.com in Bing)

Initial profiling on a Protobuf corpus shows:
60–70% of fields are integer‑type (timestamps, IDs, counters, enums).
Full benchmark results vs zstd will be added before June 7.


STRIDE Architecture (Why It Works)

┌──────────────────────────────────────────────┐
│ STRIDE │
│ Structured Integer Decoder / Encoder │
└──────────────────────────────────────────────┘

    ┌──────────────────────────────┐
    │ 1. Profiling Layer           │
    │------------------------------│
    │ • Parse corpus               │
    │ • Detect integer fields      │
    │ • Build per-field histograms │
    │ • Estimate entropy           │
    └──────────────────────────────┘
                 │
                 ▼
    ┌──────────────────────────────┐
    │ 2. Model Builder             │
    │------------------------------│
    │ • Choose best codec per field│
    │   (Delta, Rice, Elias, Dict) │
    │ • Produce compact model.json │
    └──────────────────────────────┘
                 │
                 ▼
    ┌──────────────────────────────┐
    │ 3. Encoder                   │
    │------------------------------│
    │ • Apply field-aware coding   │
    │ • Attach model header        │
    │ • Output compressed stream   │
    └──────────────────────────────┘
                 │
                 ▼
    ┌──────────────────────────────┐
    │ 4. Decoder                   │
    │------------------------------│
    │ • Load model                 │
    │ • Decode deterministically   │
    │ • Reconstruct original data  │
    └──────────────────────────────┘

Enter fullscreen mode Exit fullscreen mode


Before / After — The Revival Story

┌──────────────────────────────┐ ┌────────────────────────────────┐
│ BEFORE │ │ AFTER │
├──────────────────────────────┤ ├────────────────────────────────┤
│ • glyph-v8 abandoned │ │ • STRIDE implemented │
│ • no docs, no roadmap │ │ • profiling + encoding layers │
│ • no demo │ │ • Replit demo + GitHub release │
│ • no architecture │ │ • full architecture + context │
│ • code sitting on OVH │ │ • revived project with purpose │
└──────────────────────────────┘ └────────────────────────────────┘


Why STRIDE Matters

Binary protocols like Protobuf, Thrift, and MessagePack move billions of messages per day.
Most of these messages contain highly structured integer fields:

• timestamps
• counters
• IDs
• status codes
• enums

General compressors treat them as random bytes.
STRIDE treats them as predictable distributions.

This is where the compression gains come from.


STRIDE vs zstd — Conceptual Comparison

┌──────────────────────────────┬──────────────────────────────┬──────────────────────────────┐
│ Feature │ zstd │ STRIDE │
├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤
│ Field awareness │ No │ Yes │
│ Integer distribution model │ No │ Per-field adaptive │
│ Timestamp delta modeling │ No │ Yes │
│ Status code compression │ No │ Dictionary / RLE │
│ Schema-aware │ No │ Yes │
│ Deterministic decode │ Yes │ Yes │
│ Expected compression ratio │ 3–4× │ 6–8× (integer-heavy data) │
└──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘


STRIDE Pipeline

STRIDE Pipeline

  1. Load Protobuf corpus
  2. Extract integer fields
  3. Build histograms
  4. Compute entropy
  5. Select codec per field
  6. Generate model.json
  7. Encode data
  8. Decode deterministically
  9. Benchmark vs zstd

Technical Highlights

• One‑pass profiling of integer fields
• Entropy estimation per field
• Adaptive codec selection (Delta, Rice, Elias, Dictionary)
• Compact model header
• Deterministic decode (no ML, no heuristics)
• Schema‑aware compression for Protobuf
• Benchmark pipeline with SHA256 verification


My Experience with GitHub Copilot

Copilot Contributions

✓ Reconstructed project context

✓ Designed STRIDE architecture

✓ Implemented integer field profiler

✓ Structured benchmark pipeline

✓ Helped write documentation

✓ Assisted in preparing the submission

Copilot didn’t just autocomplete code — it helped rebuild a forgotten project into a structured system.


What’s Next

STRIDE is the third primitive in a family:

• ACEAPEX — parallel LZ77 decode, 9,903 MB/s, merged into lzbench
• GLYPH — deterministic byte‑exact retrieval, 6,888× faster than grep
• STRIDE — field‑aware integer coding for binary protocols

Roadmap:

• Add full benchmark suite (STRIDE vs zstd vs LZ4)
• Add streaming encoder
• Add MessagePack and Thrift adapters
• Add visualization of field distributions
• Publish STRIDE as a standalone Python package


Conclusion

This challenge gave me the push to revive glyph‑v8 and transform it into STRIDE — a practical, measurable, deterministic compression primitive for structured integer data.

Thanks to GitHub, MLH, and Copilot for making this revival possible.