Inspiration

I was inspired to create this project by the final test that I once did in a microbiology lab, where we conducted tests on an unknown bacterium and used the attributes from those tests to narrow down which species it was. I really enjoyed that test when I did it, and thought that it would be a fun challenge to digitize that train of thought.

What it does

This program reads in a text file of bacteria and their attributes, then asks the user questions on their unknown bacteria so that the program may determine whether or not that bacterium is on file.

How I built it

I built this program using emacs. I initially began to code it in Visual Studio Code, but I found that I worked faster in emacs due to my familiarity with the program from CMSC 201 and CMSC 202 at UMBC. I referenced my previous code from CMSC 202 to build this, but ultimately it was like nothing I've ever done before.

Challenges I ran into

The biggest challenge I ran into was how to sort the attributes for the user to choose from. I considered learning how to use a binary tree for this program, but ultimately decided on using a more linear approach that calculated the end result based on how many attributes of the bacterium were fulfilled.

Accomplishments that I'm proud of

I haven't coded anything since the end of this spring 2020 semester, and I'm really proud of myself for diving headfirst into this project and not letting my self-doubt stop me from putting together the longest project I have ever coded.

What I learned

I learned that despite my inexperience with coding, having only taken two coding classes in my life, I can create a working program that accomplishes what I want it to do, even on a tight deadline.

What's next for Bacterium ID

Moving forward, I would like to expand the list of attributes that it can read in and ID from. With the new data management skills that I will be learning in CMSC 341 this spring, I also hope to find a more efficient way of retrieving the data from the user than I currently have implemented. This is a project that I hope to expand upon as my knowledge in C++ and computer science increases both throughout my undergraduate career and on. In addition, I would like to create a desktop app interface for this project so that one may more easily interact with the code without the use of control panel or terminal.

Built With

Share this project:

Updates