jmileham | 4 years ago | on: Delayed Job vs. Sidekiq
jmileham's comments
jmileham | 4 years ago | on: Delayed Job vs. Sidekiq
At Betterment we use our OSS mostly-compatible fork of Delayed::Job referenced elsewhere in the comments to enqueue and work millions of jobs a day and sleep much better at night with the at-least-once delivery semantics if-and-only-if the related transaction commits which you can’t get without some form of integration with your primary database.
jmileham | 8 years ago | on: Show HN: SeKey: An SSH Agent for OS X, Using Secure Enclave and TouchID, in Rust
jmileham | 8 years ago | on: If you can’t explain something in simple terms, you don’t understand it
jmileham | 8 years ago | on: No correlation between headphone frequency response and retail price
But that's not quite what you're hearing - you're typically hearing what happens after the final mix is shipped to a mastering engineer who listened to the recording on a variety of intentionally flawed sound systems (probably including the "car test" - playing the tune on a car stereo with road noise, which is about as hostile an environment as people will expect to enjoy music in). Then the engineer threaded the needle to come up with the most pleasing sound they could muster for the intended market.
In the process the recording will have been compressed and EQed quite a bit, and likely will sound a good bit richer at a given loudness than it did when the mix was done - you should be able to "hear through" the mix better than before, unless the mastering engineer was simply going for loudness-at-all-costs, in which case, it might just be loud.
Anyway, not to take away from your point - good headphones, or even just headphones with different frequency response than you're used to, will open up different details of a mix, for sure, and flat response will give you the best chance to hear any details that weren't pushed to the fore intentionally, which can indeed be eye-opening.
jmileham | 8 years ago | on: No correlation between headphone frequency response and retail price
Also there's plenty of individual variance in people's hearing. No need to fit to the lowest common denominator even if the majority can't hear it. As a tall person, I appreciate that airplane seats aren't pitched to cut your kneecaps off after 6'0" (ok, maybe that's generous to the airline industry, but you get the point).
jmileham | 8 years ago | on: No correlation between headphone frequency response and retail price
Of course all this is confounded by the fact that music will tend to sound best on speakers/headphones with a response curve most like the speakers/headphones that the mastering engineer used (or more accurately, the set of speakers/headphones that the engineer compromised among). You will probably tend to have the best experience listening to music with the popular devices within a given musical subculture, because mastering engineers will be targeting those devices.
jmileham | 9 years ago | on: Programming with a love of the implicit
On baked-in conventions, the implied design of a thoughtfully designed framework likely has wisdom that you shouldn't too quickly dismiss, and should at least fully wrap your brain around (along with the complementary design decisions in the rest of the framework) before diverging. The most baked-in assumptions in a well-designed system are the ones that exist for the strongest reasons.
jmileham | 9 years ago | on: C14 – Cheap, secure long term cloud storage
jmileham | 10 years ago | on: Why your query language should be explicit
jmileham | 11 years ago | on: Don't link to line numbers in GitHub
It all comes down to the definition of publicity. If your team considers a feature branch to be privately owned by the requestor except for the purposes of code review, it works great.
jmileham | 11 years ago | on: Don't link to line numbers in GitHub
jmileham | 12 years ago | on: The Case Against ISP Tolls
In order to make that happen, of course, we'd have to live in a fanciful world where shifting last-mile delivery cost to content providers wasn't an option so the painful process of exposing this cost to customers couldn't be hidden in a rat's nest of perverse incentives that benefit the most entrenched corporations. (Ironically, and despite its protestations, Netflix's ability to pay this rent is a barrier to entry for its own future competitors.)
jmileham | 12 years ago | on: The Case Against ISP Tolls
As a cable subscriber, I expect that when paying for N Mbps of bandwidth, I'm entitled to N Mbps of bandwidth of the content of my choosing. If Comcast's pricing model needs to change to a cost-per-gigabyte model in order to cope with the increased quantity of data customers consume, so be it. But sneaking the costs onto Netflix's tab effectively shifts Comcast's costs to all Netflix customers, allowing Comcast to artificially lower their prices relative to smaller ISPs without the market share necessary to effectively extract rent from Netflix.
jmileham | 12 years ago | on: Tarsnap: No heartbleed here
The important takeaway from this post is that it pays to employ layers of security when building software systems.
jmileham | 12 years ago | on: The Videogame That Finally Made Me Feel Like a Human Being
jmileham | 12 years ago | on: Life of Brian (Krebs)
jmileham | 12 years ago | on: Prince Of Persia Code Review
jmileham | 12 years ago | on: A Hybrid File Storage Backend for Django
A typical anonymized DB dump is likely to share primary key values with production, and often an adversary knowing that user X posted something they'd rather keep private on your app will be able to simply look up their identity on your production server without privileged access.
Generating useful fake data is also hard, of course, and won't hit your edge cases like real production data, but then again, the code you're writing now won't really be exercised by the unwashed masses until you release it, so using production data is mostly a protection against regressions. If you've got sensitive content in your app, you should consider stronger test coverage in lieu of production dumps. Of course performance regressions can be hard to keep under wraps with automated testing (though you can defend against things like N+1 query problems), so YMMV.
jmileham | 13 years ago | on: Hat, not CAP: Introducing Highly Available Transactions