A picture of me
My name is Justin Willis and I am a computer scientist. I call myself bkvaluemeal because, a few years back when I used to play Xbox, that was my gamertag. It's stuck ever since. I now spend most of my time programming, learning about my major and starting new projects. I primarily use Python, but I also know Java and various web development languages. I am very interested in AI and automation and have a few projects about that in development.
I've been working with computers since I was probably about 7 years old. The earliest thing I can remember doing was learning HTML and making webpages with Trelix Web on my family's computer. My mother used to teach computer concepts and was probably what drove me to pursue this field. I credit my father with actually providing me my first textbook, albeit an online one.
One summer I just decided to learn Java. It seemed really interesting to me and I wanted to master it. I began to watch a playlist on YouTube from TheNewBoston and then used that to write RuneScape bots. Hence my obsession with automation.
The reason I learn something new is because I want to apply it. That's exactly why I chose to master Linux. I saw how resource intensive Windows is to run and thought, "there has to be a better way". Linux, in general, is far superior at running efficiently in my opinion. There must be a reason why practically every website runs on it. In my experience, everything just simply works on Linux. There are no cumbersome redistribute packages you need to download and install for a program to run, Python and Perl come preloaded with most distributions and if you need anything else, it's just a quick command to execute.
I've always had this innate desire to deeply understand something. I find myself unable to stop working until I reach a satisfying milestone or finish entirely. That said, most of the projects I start are never finished. They are forever in a state of infinite development and evolving over time. Because of that, I usually release them as open source for other people to contribute and help develop.
Team aLife().get() at the ACM Programming Competition
During my senior year in high school, I was awarded an internship with the local chamber of commerce to design and develop an events calendar we called the Bee Line . I was paired with a marketing firm who taught me how to do it right and within a few months we had an final product we were ready to show. One feature that I personally created, but was scrapped in favor of the official paid version, was an easy to use form to add bulk events to the calendar. To do this, I learned how the events were stored in the database and created a form to match it. Nevertheless, everyone was satisfied with our work and the Bee Line is still used to this day.
Fast forward to my junior year at university, some friends and I competed in the programming competition. We were restricted from the internet and left only with our knowledge to complete 5 rather difficult problems. To my surprise, we placed 3rd out of 16 teams and received a balloon for it.
Later, I applied for a research grant to develop robotics software with my professor. The goal was to create a modular navigation library for the popular robotics framework ROS. Essentially, what we did was take the existing library and add more control over it by allowing the user to build a flexible navigation stack to suit the needs of their particular application. The original library did everything automatically and without user intervention, which is great, but would frequently become disoriented and perform actions which we thought were unnecessary. Thus, the Flexible Navigation library was born. With our software, your robot can go anywhere and do it exactly how you want it! Previously, an operator was restricted to using only a max of 2 planners, but with our modular approach, you can use any number of them each with varying levels of precision. The possibilities are endless!