ECE 2524

Introduction to Unix for Engineers

relay my relay

Usage

  • The README contained everything I needed to easily use the program:

  • The program compiles/runs without errors:

  • The program worked as advertised:

    when I try to /quit it seems to hang

Style

  • The code is cleaning divided into modules and multiple files:

  • Variable and function names are meaningful:

  • Comments are used where appropriate:

Philosophy

  • The program most closely follows the client-server, roguelike interface pattern:

    it would be nice to allow the user to specify an alternate config file as a command line argument.

  • This choice of pattern is a good one for this application:

  • This program follows the Rule of Silence and Least Surprise:

    Based on my understanding of how this works, I would expect to also be able to pass a script of IRC commands on standard input to use in scripts

  • This program follows the Rules of Modularity and Composition:

    related to above, the main update loop seems to tie UI updating to command reading. A cleaner separation between the two should allow for scriptability

  • This program follows the Rules of Representation and Simplicity:

    While I think it makes sense as is, there are a lot of string literals used. I wonder if it would make sense to move the raw text for menus to a separate file.