ECE 2524

Introduction to Unix for Engineers

Review of Resistor Color Band Calculator

Usage

The resistor color band calculator was easy to use. The README file was descriptive and gave good instructions on how to compile and run the project. The project works as intended.

Style

Although the code is functional, I don’t find the solution to be elegant and simple. I believe that the same functionality could be achieved without the use of so many ‘if’ statements, instead using arithmetic and modulus division to determine the values required.

Also, because so much of the project is implemented in the ‘main’ function, I believe it might be difficult to add functionality and maintain an easily readable design. Instead, it might be better to implement most of the calculation and other functions outside of the main, calling them in the main. I believe this would give better modularity and a more easily understood design.

Philosophy

I believe that this project embodies the unix design philosophy in many ways, however there are certain aspects which do not embody the design philosophy.

Firstly, I believe this project embodies the unix design philosophy by solving a simple problem in a simple way. A command line interface is all that is needed for this, and that is all that was implemented.

Secondly, I believe the unix design philosophy was followed in maintaining the same process for each of the possible cases in the design. However, I believe that because there were so many cases that were alike, an iterative process could have been used to account for them, which would greatly simplify the program, both by greatly decreasing the number of lines of code, but also by making the code easier to follow.

Conclusion

All in all, I believe this project was a very good excercise in the creation of a useful tool which embodies the unix design philosophy in it’s practicality.