Skip to content

Instantly share code, notes, and snippets.

Yevgeniy Brikman brikis98

Block or report user

Report or block brikis98

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View gist:21b69ef6b693fea8d3bb
Hello there! I'm Yevgeniy (Jim) Brikman. I'm a programmer, writer, speaker, and traveler. You can find me on Twitter (@brikis98), LinkedIn (, Blogger (, and my Homepage (
I got my BS and Masters in Computer Science at Cornell Unitversity, started my career at several big companies (Cisco Systems, Thomson Financial), and then made the jump into the startup world (LinkedIn, TripAdvisor). Along the way, I got the chance to work on enterprise products, hiring tools, scalable infrastructure, company culture, engineering branding, travel apps, VoIP software, innovation programs, and much more.
I wish I had a book like "Hello, Startup" back when I was in college. By the time I graduated, I had a BS, a Masters, a bunch of internship experiences—and absolutely no idea what I was doing. What technologies should I learn and use? Why should I spend time writing automated tests? How do I build a user interface that doesn't look terrible? How do I get pe
brikis98 / gist:62f62ba8c0970b5b2c01
Last active Aug 29, 2015
AsciiDoc showing too much vertical space in lists within quote blocks
View gist:62f62ba8c0970b5b2c01
Once you go from storing data on a single server to multiple servers,
you are dealing with a _distributed system_. All distributed
systems are subject to the CAP theorem, which states the following:
[quote, '[<<cap-theorem-2014,CAP Theorem 2014>>]']
It is impossible for a distributed computer system to simultaneously
provide all three of the following guarantees:
. Consistency (all nodes see the same data at the same time)
brikis98 / gist:1714d37c4547a839e2dd
Last active Aug 29, 2015
AsciiDoc for a quote block with an attribution and cite title
View gist:1714d37c4547a839e2dd
[quote, '[<<collins-porras-2004,Collins Porras 2004>>]', 'Jim Collins and Jerry I. Porras, _Built to Last_']
If you woke up tomorrow morning with enough money in the bank that you would
never need to work again, how could we frame the purpose of this organization
such that you would want to continue working anyway? What deeper sense of
purpose would motivate you to continue to dedicate your precious creative
energies to this company's efforts?
brikis98 / classic-comment
Created May 3, 2014
One of the best comments from the StackOverflow discussion "What is the best comment in source code you have ever encountered?"
View classic-comment
// Dear maintainer:
// Once you are done trying to 'optimize' this routine,
// and have realized what a terrible mistake that was,
// please increment the following counter as a warning
// to the next guy:
// total_hours_wasted_here = 42
* Returns the number of key-value mappings in this map.
* @return the number of key-value mappings in this map
public int size() {
return size;
View ScalaAsync.scala
def asyncResult = {
import play.api.libs.concurrent.Execution.Implicits.defaultContext
def index = Action.async {
val futureInt = scala.concurrent.Future { intensiveComputation() } => Ok("Got result: " + i))
View returning-futures
## Returning futures
While we were using the `Action.apply` builder method to build
actions until now, to send an asynchronous result we need to
use the `Action.async` builder method:
View gist:11069723
encrypt("Hello World!", Alice's private key) = ppo1o140t7141
View gist:11069714
verify("n67n54n6l10xf15", "Hello World", Alice's public key) = valid or invalid
You can’t perform that action at this time.