HN user

ClifReeder

940 karma

https://clifff.com Email: clifreeder@gmail.com

Posts31
Comments37
View on HN
bc250.info 15d ago

Repurposing crypto mining hardware as a budget Linux gaming PC

ClifReeder
2pts0
www.komoroske.com 4y ago

Coordination Headwind – How organizations are like slime molds

ClifReeder
2pts0
medium.com 7y ago

Inside the Bay Area’s craziest underground psychedelic parties

ClifReeder
2pts0
www.usatoday.com 9y ago

Palantir charged with discriminating against Asians

ClifReeder
19pts2
ghtorrent.org 9y ago

GHTorrent – A scalable, queriable, offline mirror of the GitHub REST API

ClifReeder
4pts0
www.ubuntu.com 9y ago

USN-3061-1: OpenSSH vulnerabilities

ClifReeder
2pts0
boingboing.net 10y ago

Someone at the 32C3 inserted a poem into at least 30M servers' logfiles

ClifReeder
1pts0
clifff.com 10y ago

Almost building an image resizing microservice with AWS Lambda and API Gateway

ClifReeder
2pts0
clifff.com 10y ago

I'll run your Docker containers on a cron schedule for free

ClifReeder
4pts3
motherboard.vice.com 11y ago

Let's Play NSA the Hackers Open-Sourcing Top Secret Spy Tools

ClifReeder
5pts0
imgur.com 11y ago

Imgur: Introducing GIFV

ClifReeder
16pts7
clifff.com 11y ago

I'm tracking everything I read online

ClifReeder
4pts1
yoauth.herokuapp.com 11y ago

YoAuth

ClifReeder
130pts46
groups.google.com 12y ago

Redis 2.8.9 is out

ClifReeder
125pts25
www.theawl.com 12y ago

Inside the Batista Class

ClifReeder
3pts0
groups.google.com 12y ago

Redis 2.8.5 is out

ClifReeder
6pts0
blog.clifreeder.com 13y ago

Ruby is too slow for programming competitions

ClifReeder
274pts236
yourmonkeycalled.com 13y ago

You are boring

ClifReeder
2pts0
blog.clifreeder.com 13y ago

Side project: Albums of 2012

ClifReeder
1pts0
www.theverge.com 13y ago

Living without the internet: how do you look at porn?

ClifReeder
3pts0
github.com 13y ago

Airbnb JavaScript Style Guide

ClifReeder
27pts3
blog.clifreeder.com 13y ago

What I learned from Stripe CTF 2.0

ClifReeder
2pts0
singularity.gs 14y ago

Singularity - A responsive, micro CSS framework

ClifReeder
1pts0
blog.clifreeder.com 14y ago

Leaving Janus for Vim

ClifReeder
2pts0
product.voxmedia.com 14y ago

Building an S3 powered liveblog platform

ClifReeder
13pts1
live.theverge.com 14y ago

WWDC 2012 Live Blog

ClifReeder
7pts0
www.theverge.com 14y ago

Facebook App Center launches

ClifReeder
3pts0
techcrunch.com 14y ago

A Look At Chorus, Vox Media's Next-Generation Publishing Platform

ClifReeder
3pts0
blog.clifreeder.com 14y ago

SXSWi 2012 Retrospective

ClifReeder
1pts0
blog.clifreeder.com 14y ago

Why I use DuckDuckGo and You Should Too

ClifReeder
237pts99

Strong agree. We were using Fargate nodes in our us-east-1 EKS cluster and not all of our nodes dropped, but every coredns pod did. When they came back up their age was hours older than expected, so maybe a problem between Fargate and the scheduler rendered them “up” but unable to be reached?

Either way, was surprising to us that already provisioned compute was impacted.

SEEKING WORK

Location: Washington DC and remote

I'm a software engineer specializing in building stable, scalable consumer-facing websites and refactoring large codebases. Looking for consulting or contract work, working solo or with a team. Some previous projects:

- Built a comprehensive CI ecosystem for a 30+ app polygot environment using Jenkins, Docker and Github. Reduced test suite run time in their monolith from 25 minutes to 10.

- Built a live blog for The Verge that handles 1.2 million uniques during iPhone events https://product.voxmedia.com/2012/6/15/5426782/introducing-s...

- Refactored the real time auction draft system for a fantasy sports company to increase stability and support four times as many users without additional hardware.

Technologies: Ruby/Rails, Golang, Python/Django, AWS, Redis, MySQL/PostgreSQL, Chef, StatsD, Varnish, ElasticSearch, WebPageTest

Resume: https://clifff.com/resume.pdf

Github: https://github.com/clifff

clifreeder@gmail.com

Indeed - I've hiked almost 3k miles carrying an umbrella. Worn rain gear is a compromise between breathability and waterproofness - even if you keep the rain out, you'll sweat and it's trapped inside. Umbrellas keep rain off you, are very breathable, and double as sun protection when it's really hot. Only downside is when it's windy and rainy, so it's nice to have a poncho too.

SEEKING WORK

Location: Washington DC and remote

I'm a software engineer specializing in designing and building stable, scalable consumer-facing websites and refactoring large codebases. Currently, I'm helping clients with dev ops problems like setting up web apps to scale for 10x more traffic, profiling/optimizing slow code paths, and building analytics pipelines with AWS.

Before that, I was a principal engineer at Vox Media, and worked on some notable projects:

- Simultaneously upgraded their 81k LOC monolith to Ruby 2.1 and Rails 3.2 with no downtime http://product.voxmedia.com/2014/5/29/5759244/vox-media-ruby...

- Built a live blog for The Verge that handles 1.2 million uniques during iPhone events http://product.voxmedia.com/2012/6/15/5426782/introducing-sy...

- Converted all image processing to Thumbor (https://github.com/thumbor), and scaled it to resize 1.3 million images a day

Technologies: Ruby/Rails, Golang, Python/Django, AWS, Redis, MySQL/PostgreSQL, Chef, StatsD, Varnish, ElasticSearch, WebPageTest Github: https://github.com/clifff LinkedIn: https://www.linkedin.com/in/clifreeder Blog: https://clifff.com

clifreeder@gmail.com

SEEKING WORK Location: Washington DC and remote

I'm a software engineer specializing in designing and building stable, scalable consumer-facing websites and refactoring large codebases. Currently, I'm helping clients with dev ops problems like setting up web apps to scale for 10x more traffic, or building analytics pipelines with AWS.

Before that, I was a principal engineer at Vox Media, and worked on some notable projects: - Simultaneously upgraded their 81k LOC monolith to Ruby 2.1 and Rails 3.2 with no downtime http://product.voxmedia.com/2014/5/29/5759244/vox-media-ruby...

- Built a live blog for The Verge that handles 1.2 million uniques during iPhone events http://product.voxmedia.com/2012/6/15/5426782/introducing-sy...

- Converted all image processing to Thumbor (https://github.com/thumbor), and scaled it to resize 1.3 million images a day

Technologies: Ruby/Rails, Golang, Python/Django, AWS, Redis, MySQL/PostgreSQL, Chef, StatsD, Varnish, ElasticSearch, WebPageTest

Github: https://github.com/clifff

LinkedIn: https://www.linkedin.com/in/clifreeder

Blog: https://clifff.com

clifreeder@gmail.com

SEEKING WORK

Location: Washington DC and remote

I'm a software engineer specializing in designing and building stable, scalable consumer-facing websites and refactoring large codebases. Currently, I'm helping clients with dev ops problems like setting up web apps to scale for 10x more traffic, or building analytics pipelines with AWS.

Before that, I was a principal engineer at Vox Media, and worked on some notable projects:

- Simultaneously upgraded their 81k LOC monolith to Ruby 2.1 and Rails 3.2 with no downtime http://product.voxmedia.com/2014/5/29/5759244/vox-media-ruby...

- Built a live blog for The Verge that handles 1.2 million uniques during iPhone events http://product.voxmedia.com/2012/6/15/5426782/introducing-sy...

- Converted all image processing to Thumbor (https://github.com/thumbor), and scaled it to resize 1.3 million images a day

Technologies: Ruby, Rails, Golang, Python, AWS, Redis, MySQL/PostgreSQL, Chef, StatsD, Varnish, ElasticSearch, WebPageTest

Github: https://github.com/clifff

LinkedIn: https://www.linkedin.com/in/clifreeder

Blog: https://clifff.com

clifreeder@gmail.com

SEEKING WORK

Location: Washington DC and remote

I'm a software engineer specializing in designing and building stable, scalable consumer-facing websites and refactoring large codebases.

Most recently, I was a principal engineer at Vox Media, and worked on some notable projects:

- Simultaneously upgraded their 81k LOC monolith to Ruby 2.1 and Rails 3.2 with no downtime http://product.voxmedia.com/2014/5/29/5759244/vox-media-ruby...

- Built a live blog for The Verge that handles 1.2 million uniques during iPhone events http://product.voxmedia.com/2012/6/15/5426782/introducing-sy...

- Converted all image processing to Thumbor (https://github.com/thumbor), and scaled it to resize 1.3 million images a day

Technologies: Ruby, Rails, Golang, Python, Redis, MySQL/PostgreSQL, AWS, Chef, StatsD, Varnish, ElasticSearch, WebPageTest

Github: https://github.com/clifff

LinkedIn: https://www.linkedin.com/in/clifreeder

Blog: https://clifff.com

clifreeder@gmail.com

SEEKING WORK

Location: Washington DC and remote

I'm a software engineer specializing in designing and building stable, scalable consumer-facing websites and refactoring large codebases.

Most recently, I was a principal engineer at Vox Media, and worked on some notable projects:

- Simultaneously upgraded their 81k LOC monolith to Ruby 2.1 and Rails 3.2 with no downtime http://product.voxmedia.com/2014/5/29/5759244/vox-media-ruby...

- Built a live blog for The Verge that handles 1.2 million uniques during iPhone events http://product.voxmedia.com/2012/6/15/5426782/introducing-sy...

- Converted all image processing to Thumbor (https://github.com/thumbor), and scaled it to resize 1.3 million images a day

Technologies: Ruby, Rails, Golang, Python, Redis, MySQL/PostgreSQL, AWS, Chef, StatsD, Varnish, ElasticSearch, WebPageTest

Github: https://github.com/clifff

LinkedIn: https://www.linkedin.com/in/clifreeder

Blog: https://clifff.com

clifreeder@gmail.com

I notice that you use www.theverge.com in a number of the screenshots for Javelin. The writers at The Verge, the developers that build the site, the designers that make it beautiful - are all paid through ad revenue. Please consider at least adding the ability to whitelist sites if you are going to bundle ad block.

*Full disclosure - I am a developer at Vox Media, the publisher of The Verge.

Docker 1.0 12 years ago

In fairness, nobody is using brew to install something on their production environment.

More often than not, the slowness end users experience is problems in the front end - not the database. Think uncompressed assets, cache misses, or unused javascript and stylesheets. It's very likely most pages in your application are (or should) be served entirely from cache, so end users will benefit much more from front end optimizations.

Welp, I had no idea about the int64 business. Probing on this, but it does seem like it changes things quiet a bit.

UPDATE: After updating go from 1.0.2 to 1.1, this matches my results - it now takes about 2 minutes, 47 seconds to run through the input (and Code Jam confirms the output is correct). This seems like a significant detail to me, so I'll update the post.

Hey everyone, thanks for all the input on this. As I mentioned in the post, programming competitions aren't my forte, and I have a lot to learn in that arena. All the feedback on how this should have been done more efficiently is great.

In the future, I obviously need to work on coming up with better algorithms for solving these kinds of problems, but I'll probably continue to try and use Go because it's nice to have that fallback to sheer speed when my algorithm isn't great.

This is a good point that I didn't consider. Running the 'just iterate over the range version' of this code with jruby:

    [master] clifff@fair_and_square: ruby -v
    jruby 1.7.3 (1.9.3p385) 2013-02-21 dac429b on Java HotSpot(TM) 64-Bit Server VM 1.6.0_43-b01-447-11M4203 [darwin-x86_64]
    [master] clifff@fair_and_square: time ruby fair_and_square.rb C-large-1.in.bak

    real	6m39.105s
    user	6m37.762s
    sys	0m19.009s

Performance isn't a judging criteria, other than you need to be able to provide the proper output from a given input within a certain number of minutes. For this problem, it had to be within eight minutes.

I believe if you do Post.find on a nonexistent id, a ActiveRecord::RecordNotFound exception is thrown, but this doesn't happen with the dynamically generated finders like find_by_id. Given this difference, it's possible you want to handle a missing record in a more graceful, non exception catching matter.