Take a peek under the covers of a website

Here's a website with open source code:

 

A cheap replacement for ching(6)

ching(6), the old amusement found in BSD 4.[234], has disappeared from the face of the net. I wanted it back. Fortunately finding the full text of the Wilhelm translation of the I Ching was easy. So was writing a program to read it.

ching.txt: The text of the Wilhelm translation. Be careful editing it -- the program is a bit sensitive to where the blank lines are. Looks OK on a text terminal, but not marked up for fancy printing (although some of the overstriking is still in there).

ching.c: a simple little program to auto-cast hexagrams and display readings from ching.txt, roughly compatible with the original interface to ching(6). ICHING_PATH tells it where to look for ching.txt.

The random I Ching CGI on the main page is a version of ching.c (ching-cgi.c) modified to work as a CGI program when called by Steven Grimm's excellent uncgi. It also uses an HTML version of ching.txt (ching.html).


Steve VanDevender

Last modified: Wed Feb 23 15:04:06 PST 2000

Views: 55

Comment

You need to be a member of Codetown to add comments!

Join Codetown

Happy 10th year, JCertif!

Notes

Welcome to Codetown!

Codetown is a social network. It's got blogs, forums, groups, personal pages and more! You might think of Codetown as a funky camper van with lots of compartments for your stuff and a great multimedia system, too! Best of all, Codetown has room for all of your friends.

When you create a profile for yourself you get a personal page automatically. That's where you can be creative and do your own thing. People who want to get to know you will click on your name or picture and…
Continue

Created by Michael Levin Dec 18, 2008 at 6:56pm. Last updated by Michael Levin May 4, 2018.

Looking for Jobs or Staff?

Check out the Codetown Jobs group.

 

Enjoy the site? Support Codetown with your donation.



InfoQ Reading List

Article: Legacy Modernization: Architecting Real-Time Systems Around a Mainframe

At its heart, our transformation journey is about breaking dependencies at multiple levels. Many enterprises face similar challenges with legacy systems: tightly coupled architectures that are difficult to scale, change, or maintain. For us at National Grid, the solution came through four complementary paradigms that worked together to enable different forms of decoupling.

By Jason Roberts, Sonia Mathew

Cloudflare Launches Public Beta of Secrets Store for Secure Credential Management

During the recent Developer Week 2025, Cloudflare announced the public beta of Cloudflare Secrets Store, a secure way to store API tokens, keys, and credentials. While the long-term goal is to integrate Secrets Store with various Cloudflare products, it currently supports only Cloudflare Workers.

By Renato Losio

Mezzalira at QCon London: Micro-Frontends From Design to Organisational Benefits and Deployments

During his QCon London presentation, Luca Mezzalira, principal architect at AWS, shared his experience in building the ideal micro frontend platform. He disclosed the recipe for determining if micro frontends are right for your company, as well as the core principles of creating the perfect architecture for your use case, and also provided deployment strategies for distributed architectures.

By Olimpiu Pop

Docker Bridges Agents and Containers with New MCP Catalog and Toolkit

Docker has announced two new AI-focused tools—the Docker MCP Catalog and the Docker MCP Toolkit—to bring container-grade security and developer-friendly workflows to agentic applications, helping build a developer-centric ecosystem for Model Context Protocol (MCP) tools.

By Sergio De Simone

Google's Gemma 3 QAT Language Models Can Run Locally on Consumer-Grade GPUs

Google released the Gemma 3 QAT family, quantized versions of their open-weight Gemma 3 language models. The models use Quantization-Aware Training (QAT) to maintain high accuracy when the weights are quantized from 16 to 4 bits.

By Anthony Alford

© 2025   Created by Michael Levin.   Powered by

Badges  |  Report an Issue  |  Terms of Service