Category Archives: Technical

Code Challenge: Learning Swift

Posted on (0 Comments)

Day 1 – Learning Swift As part of the 15-Day Code Challenge that I’ve come up with, I’m learning about 15 new technologies in 15 days. The first is Swift, Apple’s new coding language. I’ve always liked developing for mobile, but I haven’t had the time to explore and play around with Swift until today. In this post I’m going to go over my experience learning Swift and building my first app. For this blog post, I have been primarily reading the ebook that Apple released. It’s a great resource and I highly recommend it for learning Swift.   Step

READ MORE »

15 Days of Code Challenge

Posted on (0 Comments)

At SendGrid, we view developer relations in 3 C’s: Community, Code, and Content. Content, specifically, is one of the best ways we can scale what we do and the one “C” I would like to push myself further with. So, I’ve decided to take on a challenge of learning 15 new technologies in 15 days and blogging about my experiences with each one. In the upcoming days look out for posts on Android, Google Inbox Markup, AWS Lambda, OpenCV, using Docker and more! You can find the index of my upcoming posts below. As each post is published it will

READ MORE »

Joining the PHP Parade

Posted on (0 Comments)

I can’t say I was excited to learn PHP, but after the previous maintainer of our library went on to become the new Commissioner of Major League Hacking, it fell on my plate. Growing up (read while in school), PHP was not viewed as the hip and hot language to be writing, but quite the opposite. My first instinct was to pick an open issue and learn enough to work my way through it. I wound up choosing this issue (shout-out to Ian Littman for helping me out!). In short, our library was not throwing any errors when an API

READ MORE »

The Value of Open Source (Part 2)

Posted on (0 Comments)

I wrote a few weeks ago about How I Value Open Source, the first part in this two-part blog series. The post covered my own thoughts on Open Source (OS), and its values to me. This post aims to cover more real-life fundamentals of OS, a deeper dive into OS and of course, the business value that lies in OS. I’ve also included a video from my original presentation about Open Source for WXG 2014 at the bottom of this post! Defining Open Source… If you look up the term Open Source (OS), you’ll probably find a bunch of articles telling

READ MORE »

Docs Antipatterns (Part 2)

Posted on (0 Comments)

I previously wrote down a few documentation antipatterns, or descriptions of commonly seen bad solutions to problems. If you’re not quite sure what an antipattern is, it’s explained in that blog post. I’d like to present a couple more documentation antipatterns to avoid, both drawn from experiences that we’ve had in the past, but have solved along the way. Antipattern: Big Ball of Mud Definition The Big Ball of Mud is a well-known antipattern in software engineering. To quote the authors who coined the term: “A Big Ball of Mud is a a haphazardly structured, sprawling, sloppy, duct-tape-and-baling-wire, spaghetti-code jungle.

READ MORE »

Scaling MySQL at SendGrid

Posted on (0 Comments)

SendGrid is the epitome of catching a tiger by the tail. Our systems were not originally designed to handle the massive scale we deal with today. Adding new features at this scale also presents challenges budding companies don’t yet need to design for. With our growth and overall traffic, we have had to come up with solutions to handle challenges related to simply scaling our datastores. At SendGrid, a large portion of our data is housed in 10 distinct MySQL datastores with a total of 87 physical machines and 255 MySQL instances. We also have a varying combination of challenges

READ MORE »

Friends, Android, and Libraries

Posted on (0 Comments)

Do you remember when you started going to hackathons or just basically started to do cool stuff? I remember it very clearly. In those days I gained a very dear friend, Daniel Santiago. Every so often I bug him with Java/Android stuff since he is a baller Android Developer. My questions were usually about adding support to the Java library. He took the extra time to make a little hacking project. A fork of the Java library, but intended for Android, hence, SendGrid-Android has been born! I don’t know about you, but I value this gesture more than almost any

READ MORE »