Early Experiment

This was an early experiment throwing OCR'd programming books from the 90s at Claude to see what it could do with obscure, pre-internet documentation. I used TextHarvest to extract text from scanned PDFs and feed them to Claude as context. The code is rough but it works.

CSend is an experimental peer-to-peer chat application written in C, supporting both modern POSIX systems and Classic Macintosh (System 7.x) with MacTCP and OpenTransport network stacks.

The Experiment

This project was deliberately designed to test LLM capabilities with obscure, documentation-heavy software engineering challenges. I chose platforms with limited online resources, relying on Inside Macintosh programming books and MacTCP/OpenTransport references to evaluate how effectively an LLM could generate working code from reference material.

Approach

  • Wrote the POSIX version primarily by hand
  • Used AI to refine and generate the Classic Mac implementations
  • Built the Classic Mac interface by hand in ResEdit on a Power Mac G3 running Mac OS 9
  • Built custom MCP integrations for Claude (log parsing and book material parsing)
  • Created Python tooling for PDF/document conversion to plaintext for LLM consumption
  • Achieved working cross-platform communication with automated testing

Tech Stack

C POSIX MacTCP OpenTransport System 7.x Python (tooling)

Screenshots

CSend running on Classic Mac OS System 7
Classic Mac OS (System 7)
CSend running on Ubuntu Linux
Ubuntu Linux

What I Learned

The project combined my enjoyment of mucking about on old operating systems with curiosity about AI-assisted development. It demonstrated both the potential and current limitations of using LLMs for niche, historical platforms where training data is scarce but documentation exists.

Future Ideas

Extract the networking code into a reusable library for MacTCP and OpenTransport that can be integrated into any Classic Mac project. The goal would be a clean API providing UDP/TCP support with peer discovery - basically a proper tidy-up of all the networking code from CSend that others could use.