From a monolithic Ruby on Rails app to the JVM
How Soundcloud have ditched the monolithic Rails for nimbler, small-scale distributed polyglot services running on the JVM
(tags: soundcloud rails slides jvm scalability ruby scala clojure coding)
Opinion: The Internet is a surveillance state
Bruce Schneier op-ed on CNN.com.
So, we’re done. Welcome to a world where Google knows exactly what sort of porn you all like, and more about your interests than your spouse does. Welcome to a world where your cell phone company knows exactly where you are all the time. Welcome to the end of private conversations, because increasingly your conversations are conducted by e-mail, text, or social networking sites. And welcome to a world where all of this, and everything else that you do or is done on a computer, is saved, correlated, studied, passed around from company to company without your knowledge or consent; and where the government accesses it at will without a warrant. Welcome to an Internet without privacy, and we’ve ended up here with hardly a fight.
(tags: freedom surveillance legal privacy internet bruce-schneier web google facebook)
Single Producer/Consumer lock free Queue step by step
great dissection of Martin “Disruptor” Thompson’s lock-free single-producer/single-consumer queue data structure, with benchmark results showing crazy speedups. This is particularly useful since it’s a data structure that can be used to provide good lock-free speedups without adopting the entire Disruptor design pattern.
(tags: disruptor coding java jvm martin-thompson lock-free volatile atomic queue data-structures)