Eli Sarver

All Categories: go(1) gokit.io(1) golang(1) home

Layers

Don't mix business logic with service logic

Go kit has a pretty opinionated view about how a Go-based micro-service should work:

  1. You start with core business logic
  2. Then wrap it in flexible layers adding
  3. Handlers
  4. Endpoints
  5. Transports

Though it seems tedious at first, I found myself feeling a certain clarity while working on a small experiment . . .

Read More

Posted in: gogokit.iogolang

February 21, 2017

My Languages

Herein I list my current programming languages.

Go

I use go the most and enjoy it the most. It provides a few features I haven't used elsewhere with as much success, such as compositional inheritance, automatic interfaces, and useful concurrency primitives. While I admittedly don't use the last one as often, when I . . .

Read More

February 19, 2017

Another Week of Accomplishment

Levers in the right places

This week started with a failed release.

Something we held for about three weeks was deployed, causing de-serialization issues coming back from memcached. We rolled back to the previous release and regrouped the next day to examine causes.

I spent the next morning learning about memcached, but I couldn't put a finger on . . .

Read More

September 04, 2015

Small Teams

Size matters.

A recent change in teams allowed us to iterate quickly by focusing effort onto a smaller sub-set of tasks and removing some impediments to releasing features. While the following list seems simple, it represents a shift in our thinking about problems. Specifically, smaller teams move faster.

  1. We indexed a troublesome table and . . .

Read More

August 30, 2015

2015

My foci for the coming year:

The Go Programming Language

I cannot express how much I depend on Go for my sanity. Sanity because despite some of the hate tossed its way, people are doing amazing stuff with it. It's accessible like Python, but precise like C. If you're doing server programming, you owe it a look.

. . .

Read More

January 01, 2015

“Pull” has an ‘l’ in it.

“Push” does not.

$ g pul
git: 'pul' is not a git command. See 'git --help'.

Did you mean one of these?
 pull
 push

No, I meant the one with the ‘l’ in it.

Read More

December 04, 2014

Errors in Public Libraries

A random anecdote about other people's code.

We had a stack trace recurring with high frequency on our management hosts today. Digging into the issue, we found this (cleaned up) trace:

Internal Server Error
java.lang.NullPointerException:null
 ...OMElementImpl.removeAttribute(OMElementImpl.java:617)
 ...FOMElement.setAttributeValue(FOMElement.java:269)
 . . .

Read More

December 03, 2014

All Categories: go(1) gokit.io(1) golang(1) home

This update link alerts you to new Silvrback admin blog posts. A green bubble beside the link indicates a new post. Click the link to the admin blog and the bubble disappears.

Got It!