Stuff and Code


Jack of all trades, Master of some. This is a place to write down thoughts about projects I work on.


Is This Thing Still On?

-Is This Thing Still On?- Apparently having two kids under three takes a lot of time and effort. I really underestimated just how much. As pre-school begins to become a thing I hope to have some more time for passion projects and technology exploration. Until then I am at least making sure I’m busy and learning on the job. In the last few months I’ve done a major overhaul on one of our Java applications to make it more configuration-driven (less required deployments), contributed my first production Go code to an application serving thousands of business requests a day, and reconfigured a ReactJS-powered application to make database calls via an API instead of directly.

React – Building a Front End for my Mock Response Service

-React: Building a Front End for my Mock Response Service- I do a lot of work with APIs. This involves sending a lot of JSON/XML requests and receiving JSON/XML responses. Background: When I want to test a system I am working on sometimes a downstream API is not available yet. In fact, this happens quite often. This is a great use case for mocking. However, mocking can require importing dependencies into your application and then code setup.

C#: How fast can I get going?

-C#: How fast can I get going?- A friend of mine is working on learning some coding. He’s learning with C# and using Microsoft Visual Studio for an IDE. This seems like a reasonable place to start. He had a bunch of coding 101-type questions and I figured this would be a good chance to recement a few of the basics. Many engineers probably take knowledge like “what is an object” or “what is a class variable” for granted.

Spring Boot Kafka Setup

-Spring Boot Kafka Setup- I’ve been told Spring Boot makes Java ludicrously easy – to the point that some developers become so dependent on it that they forget how to write code without it. While I think that is probably a bit of an exaggeration, after spending a week with Spring Boot I can definitely see its merits when one wants to quickly set up a microservice. Most of my work with Java microservices has utilized the Dropwizard framework.

Hackathon

–Hackathon– A little while back I participated in a Hackathon at work with several colleagues. Our basic idea was to create a bounty system within our organization (and scalable to the entire company). Within the system an individual could create a ticket would relate to some issue they were having – whether that be getting stuck on a particular piece of development or a deadline approaching too fast. The ticket/issue could then be claimed by another colleague that had some extra time or could lend a hand due to being experienced in the subject.

Jedis

–Jedis and the RELK Stack– Perhaps the most important question is: is it Jed-is or Jedi-s? I lean towards the former because it sounds like Redis but it can’t be an accident that it looks like this is a library that Jedi’s use. Anyway, so what is Jedis? Jedis is a client library written in Java for Redis. While there are other Java clients available to interface with Redis, Jedis is the fastest of the notable options.

When Stuff Breaks

-When Stuff Breaks- I’m sure most engineers groan like I do when they see a FAIL message while tring to build or deploy something. This sort of of occurrence used to instill a borderline panic in me. Will I ever be able to fix this? What did I do wrong? Do I have a backup? (This was probably due to a little bit of computer science degree anxiety where not quickly figuring out how to fix something could be grade-defining – and the fact I wasn’t particularly confident at programming yet).

Kafka

-Kafka - Not the Franz You are Looking For- I had the chance to implement a Kafka producer and consumer in an application at work. I was blown away by how powerful Kafka is and how it was actually pretty easy to set up. For anyone who isn’t sure what Kafka is, I won’t go into depth here but in a nutshell it is a publish/subscribe messaging pattern where a sender (publisher) creates a message (some piece of data) that is not specifically directed to a receiver.

February Updates

-Some 2018 Updates- Work at AMEX is going well. I have learned a tremendous amount about what I used to call “internet programming” (building web applications). My day-to-day activities revolve around building backend Java microservices. As part of this I’ve also learned about the noSQL database Couchbase, CICD tools like Jenkins and XL Release, and much more. When I’ve had a little free time I’ve worked on creating Node.js-driven GUIs for some of the backend tools I’ve created.

Heroku and the AO-Killbot

–Deploying an App on Heroku– It’s no secret that I like to play computer games. In fact I’m somewhat of a wizard at them… or at least I’m a wizard in some of them, I’m not actually that good. In any case, my gaming group is currently playing a game called Albion Online in which mercilessly pking your opponents is a large part of the activities. Albion’s developer Sandbox Interactive provides an API with which someone can get all sorts of statistics about who killed who.

Archive