Project ideas from Hacker News discussions.

The beauty and simplicity of the good old C-style void* in C++

📝 Discussion Summary (Click to expand)

4 Prevalent Themesin the Discussion

Theme Supporting Quote
1. Preference for readable, type‑safe code over raw void* “It seems that some people are really losing the taste for good readable code.” – gignico
2. Historical proposals and committee politics surrounding std::span “C++ is just a terrible programming language, standardized by a committee (WG21) which exists in large part to boost the ego of one man, Bjarne Stroustrup.” – tialaramex
3. Practical complaints about compilation time and ABI stability (especially on Windows) “The MSVC ABI makes std::span and std::string_view a pessimisation… Will never happen on Windows, especially not in user‑mode libraries, and especially not something this pervasive.” – delta_p_delta_x
4. Modern ergonomic benefit of std::span (binding pointer & length, reducing bugs) “The interface is no different from vector…no excuse here…It is itself the most basic data‑structure in C++.” – arcticbull

All quotations are reproduced verbatim with double‑quotes and the original author attribution.


🚀 Project Ideas

SpanSafe C++Refactoring Tool

Summary

  • Automates conversion of legacy void* p, size_t n signatures to safe std::span<T> usage.
  • Eliminates manual casts and reduces undefined‑behavior risks.

Details

Key Value
Target Audience C++ developers maintaining large legacy codebases with frequent blob handling
Core Feature Automatic detection and rewrite of unsafe pointer parameters using Clang AST
Tech Stack Python + Clang AST, CMake, optional VSCode extension
Difficulty Medium
Monetization Hobby

Notes- HN commenters often lament loss of readability; they would appreciate an automated fix.

  • Potential for widespread adoption in open‑source projects still relying on raw pointers.

Memory Safety Linter for Legacy C/C++

Summary

  • A static‑analysis plugin that flags misuse of void* and missing size checks, suggesting modern alternatives.
  • Provides actionable warnings and quick‑fixes.

Details

Key Value
Target Audience Development teams working with inherited C/C++ code
Core Feature Rule‑based linting that detects unsafe casts and suggests std::span<std::byte>
Tech Stack Clang‑Tidy, Python, JSON config
Difficulty Low
Monetization Hobby

Notes

  • Community discussions frequently ask “why is void* still used?”; this tool gives concrete enforcement.
  • Can be bundled into CI pipelines to increase reliability with minimal friction.

SpanCode Generator for C APIs

Summary

  • Transpiles C functions that accept (void* data, size_t len) into type‑safe std::span<T> overloads, generating header wrappers automatically.
  • Enables safe interop between C and modern C++ without manual casts.

Details

Key Value
Target Audience C/C++ hybrid projects needing safe wrappers around callbacks and serialization
Core Feature Command‑line tool that parses C signatures and emits C++ header+source with std::span overloads
Tech Stack Rust (parser), CLI utilities
Difficulty High
Monetization Revenue-ready: Subscription ($9/mo)

Notes- Addresses recurring HN queries about modernizing legacy C APIs.

  • Could become a commercial service for large codebases.

AI‑Assisted Memory‑Blob Review for C++ Projects

Summary

  • An AI‑powered VSCode extension that reviews code for raw void* usage, suggests std::span or structured types, and explains safety implications.
  • Learns project‑specific conventions to provide tailored recommendations.

Details| Key | Value |

|-----|-------| | Target Audience | Individual developers and small teams focused on code quality and security | | Core Feature | Real‑time code annotation and refactoring suggestions powered by a fine‑tuned language model | | Tech Stack | Python LLM, Electron, ESLint plugin | | Difficulty | Medium | | Monetization | Hobby |

Notes

  • Reddit and HN threads repeatedly ask for simpler ways to modernize legacy code; an AI assistant would answer instantly.
  • Initial release stays hobby‑oriented, with potential future premium features.

Read Later