Samuel Evans-Powell
Sane
A simple POSIX shell implemented in C
Things learnt:
- Designing larger programs in C.
- POSIX API.
- Automated testing using the expect command-line tool, importance of good testing.
- Tracking issues using GitHub's web tools.
The shell is functional and fairly robust, but what I was most proud of was the way I approached testing the shell. I created an expect script which allowed me to automate the running of a number of use cases. I used this script to run full regression tests whenever I made changes. This allowed me to be confident about the stability of the codebase at all times.