I suppose I will stick with the traditional first post and introduce myself since I haven’t met most of the ThreatSim team (and probably some of the Wombat dev team besides a hello). So away we go.
It was the year 1998…, a young lad in high school, trying to fill out the remainder of my course work with some electives. I see a class called “Intro to Computer Programming”, so I figured why not, it might be cool to learn how to assemble/disassemble computers. Well as it turns out that isn’t what Computer Programming is, but I found myself loving it none the less and knew that is what I wanted to do for a career. QBasic was the first language that I learned that year. Pascal and C++ were the following years. I recieved my bachelors in Software Engineering at Penn State and masters in S.E. at Drexel.
I have been programming for over 15 years, 10 professionally. I started working at Wombat about a year ago as a Java developer on the Platform/Guru team. Prior to Wombat I was at a variety of different types of companies such as healthcare, consulting, and a DOD contracting company. Most of that was with smaller size companies about the size of Wombat, I don’t think I even lasted a year at the one corporate giant I worked at. I like to build stuff, get sh*t done, and don’t care for the heavyweight processes I was seeing at other companies. My experience is a mix of front-end and back-end development as I enjoy working on both.
Recently I’ve been working on the integration between the Platform and ThreatSim products, specifically setting up the API between the two products. I enjoyed setting up the REST interface and find the topics around versioning and HATEOAS (Hypermedia as the engine of application state) interesting. The idea around HATEOAS is that a client needs no prior knowledge about how to interact with any particular application or server beyond a generic understanding of hypermedia (links). The client can “discover” how to use the app navigating the links in the responses. This differs from SOAP in that SOAP uses WSDL as a contract between client and server. Some of the advocates for HATEOAS suggest that REST service aren’t actually REST unless responses provide links. Others don’t believe providing links in the responses are any more beneficial over external documentation. This could possibly be a post on its own so I’ll leave it at that. A good article here at mulesoft.
Like most, I wish I had more time to keep up with the latest technologies and learn new languages. The last one I dabbed into was Scala. It is built on top of the JVM (Java virtual machine), but it is a functional programming language, which is one of the reasons I looked into it. It makes you think differently about how program than the traditional object oriented languages. If you enjoy problem solving, alot of languages have their own version of these 99 problems to solve. http://aperiodic.net/phil/scala/s-99/
I know the banner image above doesn’t have anything to do with my intro post, however I’m sure most of you can relate to it (probably from family members). Anyways, I think I rabbled enough, if you made it this far, God Bless…Until next time, some possible posts to come:
- Swagger API
- Code Coverage
- Scala and Functional Programming