Pages

Friday, September 23, 2016

Introduction

What's Up?

I am a Software Developer currently working for the U.S. Department of Commerce in Boulder, Colorado at the Institute for Telecommunication Sciences. I have my Bachelor's of Science in Applied Mathematics, along with a minor in Computer Science, from the Metropolitan State University of Denver. In addition to being a Software Developer, I am also a comic book artist for the upcoming fourth issue Phantom Squad and a freelance journalist for Comic Crusaders. Whenever I have spare time, I enjoy playing video games, reading, painting, and camping; I also try to continuously read textbooks on new and effective coding styles and mathematical practices.

For Any Interested Parties

Here is my résumé, and my LinkedIn. You may also find my DeviantArt interesting, as it is a different side to my set of skills. Also, here are a couple samples of my code solution on CodeFights. This sample is some basic Python; this is some of my C++; and this is some of my Rust (silly, I know). If you wish to get in touch, just shoot me an email at dirtgrub.dylanhicks@gmail.com.

Main Projects

AELTE

As you may have read from my résumé, for the past two years, I have been developing software that models an LTE network of user electronics (i.g cellular phones). When this project first started, my team and I designed a proof of concept using Python, which was made possible through Anaconda, GDAL, and a handful of other incredibly helpful third-party libraries. After the proof of concept was completed, we migrated the source code to C++. Since then, it has been an intensive year and a half of developing various custom libraries, a custom grid-style ADT, and using third-party software such as Armadillo.

OPA Toolkit

Again, from my résumé, you know that the OPA Toolkit is a project that I both am the product owner AND lead engineer for. The OPA Toolkit is able to absorb any shared library, described by a JSON file, written in ANY language, and provide a user-friendly interface. In addition, it also attaches physical units to all parameters and return values described in the JSON file. This was accomplished using polymorphism due to of the difficulties in emulating the C interface (i.e. a pointer to a pointer to a struct holding a pointer to a...). So we had to create several classes for each of these aspects, each of which shared all the same interfaces. So far, the entire project has been written in Python, so that the interpreter can be used and so cross platform development is a no-brainer.

Along with the majority of the project being written in Python, I also rewrote a fifty-year-old propagation model Rust. I know that this language is still infantile, but the concepts of mutability, traits, ownership, and lifetimes have made all aspect of my other projects better. Also, it was a ton of fun.

During the development of this software, which is in its alpha stage, I was very Agile in my management approach. Using tools like Jira and Scrum, I have found that my team was able to stay on task, meet all deadlines, and adjust quickly to user feedback. It has been a fun project and a great learning experience so far.

Misc.

This software and any other software that I have developed during my tenure at ITS was written using Linux Mint OS, but also runs on Microsoft Windows. In addition, all of my source code adheres to some form of style. For Python, I strictly follow the PEP 8 style guide; and for C++, I use the published style-guide from Google. I find this to be extremely important because without style and guidelines the lifetime of any software is in jeopardy.

I also have been ever mindful of both my design patterns and test structures. In lieu of previous developments, I have switched gears from constant inheritance to the composition pattern and polymorphism. I recognize this is just personal preference, but it is a good habit I developed when I made the switch from C++ to Rust. As far as testing goes, I try my darndest to utilize TDD, BDD, and Property-Based Testing as they are needed.

Lastly, none of this would have been possible without my knowledge of Git. Source code management is another important key to teamwork.

Side Projects

Alongside my full-time project, I am also working on a few of hobbies on the side.

The first is my extracurricular study of the AI, using IBM's Watson, to make a Slackbot emulate my friends based on responses to prompts.

Next is my comic book art. Right now, as I said previously, I am a colorist on the new issue of Phantom Squad, an independent comic book produced by a colleague of mine. This involves constant studying of light and color, using tools such as YouTube, DeviantArt, and peer study.

Last, but definitely not least, is my writing career. At the moment I am doing some freelance journalism for Comic Crusader, as mentioned above, which mainly involves writing comic book reviews and documenting various comic book conventions. However, I have been working on a series of short stories that I am working on getting published through a local magazine. In addition, I am also working on a couple of graphic novel series with a few comic book artists. There will be more information on that to come.



2 comments:

  1. JT Casino - Slot machines, slot machines, jackpots - JammyHub
    JT 김제 출장샵 Casino - 부천 출장샵 Slot machines, slot machines, jackpots, 서귀포 출장마사지 online 나주 출장샵 casino. $50 의왕 출장샵 daily, a free slot game, $20 no deposit bonus,

    ReplyDelete
  2. Stay tuned as we ought to be hearing one thing quickly either by the end of the 12 months or perhaps in January. Meanwhile, the Hard Rock Sportsbook app is reside in a couple of of} other states. The Hard Rock Sportsbook, operated by the Seminole Tribe, did actually go reside for a couple of of} weeks in late 2021 till a federal ruling vacating the tribe’s new compact compelled them to shut it down in early December. Should that ruling 바카라사이트 be overturned on attraction, find a way to|you probably can} count on the Hard Rock Sportsbook to return.

    ReplyDelete