-
a Chrome extension to aid working with REST APIs. Formats XML and JSON responses, supports file uploads, key/value editors, autocomplete, open source under ASL2
(tags: open-source chrome extensions browser postman rest hateoas api xml json web-services via:eonnen)
-
A Go implementation of Greenwald-Khanna streaming quantiles: http://infolab.stanford.edu/~datar/courses/cs361a/papers/quantiles.pdf - 'a new online algorithm for computing approximate quantile summaries of very large data sequences with a worst-case space requirement of O(1/e log eN))'
(tags: quantiles go algorithms greenwald-khanna percentiles streaming cep space-efficient)
Category: Uncategorized
-
Some great tips on managing a busy calendar, from Etsy's managers. Block out time; refuse double-booked meetings by default; rely on apps; office hours. Thankfully I have a pretty slim calendar these days, but bookmarking for future use...
(tags: calendar etsy via:kellan google google-calendar office-hours life-hacks hacks tips managing managers scheduling)
Nanex: "The stock market is rigged" [by HFTs]
All this evidence points to one inescapable conclusion: the order cancellations and trade executions just before, and during the trader's order were not a coincidence. This is premeditated, programmed theft, plain and simple. Michael Lewis probably said it best when he told 60 Minutes that the stock market is rigged.
Nanex have had enough, basically. Mad stuff.(tags: hft stocks finance market trading nanex 60-minutes michael-lewis scams sec regulation low-latency exploits hacks)
Boundary's new server monitoring free offering
'High resolution, 1 second intervals for all metrics; Fluid analytics, drag any graph to any point in time; Smart alarms to cut down on false positives; Embedded graphs and customizable dashboards; Up to 10 servers for free' Pre-registration is open now. Could be interesting, although the limit of 10 machines is pretty small for any production usage
(tags: boundary monitoring network ops metrics alarms tcp ip netstat)
-
A really excellent-looking workflow/orchestration engine for Hadoop, Pig, Hive, Redshift and other ETL jobs, featuring inter-job dependencies, cron-like scheduling, and failure handling. Open source, from Spotify
(tags: workflow orchestration scheduling cron spotify open-source luigi redshift pig hive hadoop emr jobs make dependencies)
Obama administration says the world’s servers are ours | Ars Technica
In its briefs filed last week, the US government said that content stored online doesn't enjoy the same type of Fourth Amendment protections as data stored in the physical world. The government cited (PDF) the Stored Communications Act (SCA), a President Ronald Reagan-era regulation.
Michael McDowell has filed a declaration in support of MS' position (attached to that article a couple of paras down) suggesting that the MLAT between the US and Ireland is the correct avenue.(tags: privacy eu us-politics microsoft michael-mcdowell law surveillance servers sca internet)
-
'This tool can be described as a Tiny Dirty Linux Only C command that looks for coreutils basic commands (cp, mv, dd, tar, gzip/gunzip, cat, ...) currently running on your system and displays the percentage of copied data. It can now also display an estimated throughput (using -w flag).'
(tags: coreutils via:pixelbeat linux ops hacks procfs dataviz unix)
"In Search of an Understandable Consensus Algorithm"
Diego Ongaro and John Ousterhout, USENIX ATC 2014 -- won best paper for this paper on the Raft algorithm. (via Eoin Brazil)
(tags: raft consensus algorithms distcomp john-ousterhout via:eoinbrazil usenix atc papers paxos)
-
Great map-comparison tool from Jef Poskanzer
(tags: jef-poskanzer mapping maps comparison visualization geo world cities)
Divinity: Original Sin review | PC Gamer
I've become accustomed to RPGs that lock away combat and magic within their own part of the game. I'm used to the idea that a fireball won't work unless it's aimed at an enemy, or that every environmental hazard will be placed such that I'm guaranteed to be able to get past it. I'm used to the idea that some characters can be killed and some can't, that some obstacles are destructible and others are 'just furniture'. Divinity shrugs off those assumptions. Combat might be turn-based when you're fighting an enemy, but there's nothing stopping you from waving your sword around in the middle of town. Fling a fireball at some innocent barrels and you'll start a fresh fire of your own, and this time the locals won't be applauding when you rush to put it out.
wow, this sounds great. (via Paul Moloney)(tags: games divinity-original-sin rpgs gaming via:oceanclub)
-
a client side IPC library that is battle-tested in cloud. It provides the following features: Load balancing; Fault tolerance; Multiple protocol (HTTP, TCP, UDP) support in an asynchronous and reactive model; Caching and batching.
I like the integration of Eureka and Hystrix in particular, although I would really like to read more about Eureka's approach to availability during network partitions and CAP. https://groups.google.com/d/msg/eureka_netflix/LXKWoD14RFY/-5nElGl1OQ0J has some interesting discussion on the topic. It actually sounds like the Eureka approach is more correct than using ZK: 'Eureka is available. ZooKeeper, while tolerant against single node failures, doesn't react well to long partitioning events. For us, it's vastly more important that we maintain an available registry than a necessary consistent registry. If us-east-1d sees 23 nodes, and us-east-1c sees 22 nodes for a little bit, that's OK with us.' See also http://ispyker.blogspot.ie/2013/12/zookeeper-as-cloud-native-service.html which corroborates this:I went into one of the instances and quickly did an iptables DROP on all packets coming from the other two instances. This would simulate an availability zone continuing to function, but that zone losing network connectivity to the other availability zones. What I saw was that the two other instances noticed that the first server “going away”, but they continued to function as they still saw a majority (66%). More interestingly the first instance noticed the other two servers “going away” dropping the ensemble availability to 33%. This caused the first server to stop serving requests to clients (not only writes, but also reads). [...] To me this seems like a concern, as network partitions should be considered an event that should be survived. In this case (with this specific configuration of zookeeper) no new clients in that availability zone would be able to register themselves with consumers within the same availability zone. Adding more zookeeper instances to the ensemble wouldn’t help considering a balanced deployment as in this case the availability would always be majority (66%) and non-majority (33%).
(tags: netflix ribbon availability libraries java hystrix eureka aws ec2 load-balancing networking http tcp architecture clients ipc)
The Myth of Schema-less [NoSQL]
We don't seem to gain much in terms of database flexibility. Is our application more flexible? I don't think so. Even without our schema explicitly defined in our database, it's there... somewhere. You simply have to search through hundreds of thousands of lines to find all the little bits of it. It has the potential to be in several places, making it harder to properly identify. The reality of these codebases is that they are error prone and rarely lack the necessary documentation. This problem is magnified when there are multiple codebases talking to the same database. This is not an uncommon practice for reporting or analytical purposes. Finally, all this "flexibility" rears its head in the same way that PHP and Javascript's "neat" weak typing stabs you right in the face. There are some somethings you can be cavalier about, and some things you should be strict about. Your data model is one you absolutely need to be strict on. If a field should store an int, it should store nothing else. Not a string, not a picture of a horse, but an integer. It's nice to know that I have my database doing type checking for me and I can expect a field to be the same type across all records. All this leads us to an undeniable fact: There is always a schema. Wearing "I don't do schema" as a badge of honor is a complete joke and encourages a terrible development practice.
(tags: nosql databases storage schema strong-typing)
-
from yesterday's AWS Summit in NYC:
Cheat sheet of EBS-optimized instances. http://t.co/vmTlhUtpWk Optimize your queue depth to achieve lower latency & highest IOPS. http://t.co/EO48oa0D6X When configuring your RAID, use a stripe size of 128KB or 256KB. http://t.co/N0ldtFJ4t6 Use larger block size to speed up the pre-warming process. http://t.co/8UoIeWE2px
173 million 2013 NYC taxi rides shared on BigQuery : bigquery
Interesting! (a) there's a subreddit for Google BigQuery, with links to interesting data sets, like this one; (b) the entire 173-million-row dataset for NYC taxi rides in 2013 is available for querying; and (c) the tip percentage histogram is cool.
(tags: datasets bigquery sql google nyc new-york taxis data big-data histograms tipping)
"Pitfalls of Object Oriented Programming", SCEE R&D
Good presentation discussing "data-oriented programming" -- the concept of optimizing memory access speed by laying out large data in a columnar format in RAM, rather than naively in the default layout that OOP design suggests
(tags: columnar ram memory optimization coding c++ oop data-oriented-programming data cache performance)
Google's Influential Papers for 2013
Googlers across the company actively engage with the scientific community by publishing technical papers, contributing open-source packages, working on standards, introducing new APIs and tools, giving talks and presentations, participating in ongoing technical debates, and much more. Our publications offer technical and algorithmic advances, feature aspects we learn as we develop novel products and services, and shed light on some of the technical challenges we face at Google. Below are some of the especially influential papers co-authored by Googlers in 2013.
(tags: google papers toread reading 2013 scalability machine-learning algorithms)
-
'Leak of the secret German Internet Censorship URL blacklist BPjM-Modul'. Turns out there's a blocklist of adult-only or prohibited domains issued by a German government department, The Federal Department for Media Harmful to Young Persons (German: "Bundesprüfstelle für jugendgefährdende Medien" or BPjM), issued in the form of a list of hashes of those domains. These were extracted from an AVM router, then the hashes were brute forced using several other plaintext URL blocklists and domain lists. Needless to say, there's an assortment of silly false positives, such as the listing of the website for the 1997 3D Realms game "Shadow Warrior": http://en.wikipedia.org/wiki/Shadow_Warrior
(tags: hashes reversing reverse-engineering germany german bpjm filtering blocklists blacklists avm domains censorship fps)
Brave Men Take Paternity Leave - Gretchen Gavett - Harvard Business Review
The use of paternity leave has a "snowball effect":
In the end, Dahl says, “coworkers and brothers who were linked to a father who had his child immediately after the [Norwegian paid paternity leave] reform — versus immediately before the reform — were 3.5% and 4.7% more likely, respectively, to take parental leave.” But when a coworker actually takes parental leave, “the next coworker to have a child at his workplace is 11% more likely to take paternity leave.” Slightly more pronounced, the next brother to have a child is 15% more likely to take time off. And while any male coworker taking leave can reduce stigma, the effect of a manager doing so is more profound. Specifically, “the estimated peer effect is over two and a half times larger if the peer father is predicted to be a manager in the firm as opposed to a regular coworker.”
(tags: paternity-leave parenting leave work norway research)
-
by Jeffrey Dean and Luiz Andre Barroso, Google. A selection of Google's architectural mechanisms used to defeat 99th-percentile latency spikes: hedged requests, tied requests, micro-partitioning, selective replication, latency-induced probation, canary requests.
(tags: google architecture distcomp soa http partitioning replication latency 99th-percentile canary-requests hedged-requests)
Breaking Spotify DRM with PANDA
Reverse engineering a DRM implementation, by instrumenting a VM and performing entropy/compressability analysis on function call inputs and outputs. Impressive
(tags: reversing spotify drm panda vm compression entropy compressability qemu via:hn)
-
Book a domestic cleaner online in 60 seconds; "like Hailo for cleaners" apparently. Live in Dublin, London, Manchester, Birmingham and Leeds. Use code HASSLEDUBLIN for 15% off
(tags: hailo cleaners hassle via:hailo domestic home services b2c)
Layered Glass Table Concept Creates a Cross-Section of the Ocean
beautiful stuff -- and a snip at only UKP 5,800 ex VAT. it'd make a good DIY project though ;)
(tags: art tables glass layering 3d cross-sections water ocean sea mapping cartography layers this-is-colossal design furniture)
Two traps in iostat: %util and svctm
Marc Brooker:
As a measure of general IO busyness %util is fairly handy, but as an indication of how much the system is doing compared to what it can do, it's terrible. Iostat's svctm has even fewer redeeming strengths. It's just extremely misleading for most modern storage systems and workloads. Both of these fields are likely to mislead more than inform on modern SSD-based storage systems, and their use should be treated with extreme care.
(tags: ioutil iostat svctm ops ssd disks hardware metrics stats linux)
New AWS Web Services region: eu-central-1 (soon)
Iiiinteresting. Sounds like new anti-NSA-snooping privacy laws will be driving a lot of new mini-regions in AWS. Hope Amazon have their new-region-standup process a little more streamlined by now than when I was there ;)
How A Spam Newsletter Caused a Bank Run in Bulgaria
According to the Bulgarian National Security Agency (see here, for a reporting in English), an investment company that “built a network of associated companies for marketing services” that was used to diffuse panic by means of an alert, uncomfortably titled “Information Bulletin of on the Risk of Deposits in Bulgarian Banks”. The “bulletin” claimed – Bloomberg reports – KTB was undergoing a liquidity shortage. The message apparently also said that the government deposit guarantee fund was under-capitalised to meet possible repayments, that banks could go bankrupt and that the peg of the currency with the euro could be broken. Allegedly, the alert was diffused by text, email and even Facebook messages, thus ensuring a very widespread outreach. In a country that in 1997 underwent a very serious banking crisis featuring all these characteristics – whose memory is still fresh – this was enough to spur panic.
(tags: spam banking bulgaria banks euro panic facebook social-media)
New Russian Law To Forbid Storing Russians' Data Outside the Country - Slashdot
On Friday Russia's parliament passed a law "which bans online businesses from storing personal data of Russian citizens on servers located abroad[.] ... According to ITAR-TASS, the changes to existing legislation will come into effect in September 2016, and apply to email services, social networks and search engines, including the likes of Facebook and Google. Domain names or net addresses not complying with regulations will be put on a blacklist maintained by Roskomnadzor (the Federal Supervision Agency for Information Technologies and Communications), the organisation which already has the powers to take down websites suspected of copyright infringement without a court order. In the case of non-compliance, Roskomnadzor will be able to impose 'sanctions,' and even instruct local Internet Service Providers (ISPs) to cut off access to the offending resource."
(tags: russia privacy nsa censorship protectionism internet web)
Irish parliament pressing ahead with increased access to retained telecoms data
While much of the new bill is concerned with the dissolution of the Competition Authority and the National Consumer Agency and the formation of a new merged Competition and Consumer Protection Commission (CCPC) the new bill also proposed to extend the powers of the new CCPC to help it investigate serious anticompetitive behaviour. Strikingly the new bill proposes to give members of the CCPC the power to access data retained under the Communications (Retention of Data) Act 2011. As readers will recall this act implements Directive 2006/24/EC which obliges telecommunications companies to archive traffic and location data for a period of up to two years to facilitate the investigation of serious crime. Ireland chose to implement the maximum two year retention period and provided access to An Garda Siochana, The Defence Forces and the Revenue Commissioners. The current reform of Irish competition law now proposes to extend data access powers to the members of the CCPC for the purposes of investigating cartel offences.
(tags: data-retention privacy surveillance competition ccpc ireland law dri)
NSA: Linux Journal is an "extremist forum" and its readers get flagged for extra surveillance
DasErste.de has published the relevant XKEYSCORE source code, and if you look closely at the rule definitions, you will see linuxjournal.com/content/linux* listed alongside Tails and Tor. According to an article on DasErste.de, the NSA considers Linux Journal an "extremist forum". This means that merely looking for any Linux content on Linux Journal, not just content about anonymizing software or encryption, is considered suspicious and means your Internet traffic may be stored indefinitely.
This is, sadly, entirely predictable -- that's what happens when you optimize the system for over-sampling, with poor oversight.(tags: false-positives linuxjournal linux terrorism tor tails nsa surveillance snooping xkeyscore selectors oversight)
-
a C++ library adding some modern language features like Option, Try, Stopwatch, and other Guava-ish things (via @cscotta)
Tor exit node operator prosecuted in Austria
'The operator of an exit node is guilty of complicity, because he enabled others to transmit content of an illegal nature through the service.' Via Tony Finch.
(tags: austria tor security law liability internet tunnelling eu via:fanf)
IRS says free software projects can't be nonprofits - Boing Boing
In a disturbing precedent, the Yorba Foundation, which makes apps for [GNOME], has had its nonprofit status application rejected by the IRS because some of [its] projects may benefit for-profit entities.
(tags: law us gnome yorba-foundation linux gpl free-software oss nonprofits 501c3 tax)
How to perform a load/latency test, correcting for coordinated-omission error
p-code from Gil Tene
(tags: gil-tene coordinated-omission measurement jmh latency testing errors code)
Questioning the Lambda Architecture
Jay Kreps (Kafka, Samza) with a thought-provoking post on the batch/stream-processing dichotomy
(tags: jay-kreps toread architecture data stream-processing batch hadoop storm lambda-architecture)
-
Urban Airship with a new open-source Graphite front-end UI; similar enough to Grafana at a glance, no releases yet, ASL2-licensed
(tags: graphite metrics ui front-ends open-source ops)
This is the actual hack that saved the astronauts of the Apollo XIII
Duct tape ftw
(tags: apollo history space duct-tape hacks fixing via:johnke)
New Low Cost EC2 Instances with Burstable Performance
Oh, very neat. New micro, small, and medium-class instances with burstable CPU scaling:
The T2 instances are built around a processing allocation model that provides you a generous, assured baseline amount of processing power coupled with the ability to automatically and transparently scale up to a full core when you need more compute power. Your ability to burst is based on the concept of "CPU Credits" that you accumulate during quiet periods and spend when things get busy. You can provision an instance of modest size and cost and still have more than adequate compute power in reserve to handle peak demands for compute power.
Facebook Doesn't Understand The Fuss About Its Emotion Manipulation Study
This is quite unethical, and I'm amazed it was published at all. Kashmir Hill at Forbes nails it:
While many users may already expect and be willing to have their behavior studied — and while that may be warranted with “research” being one of the 9,045 words in the data use policy — they don’t expect that Facebook will actively manipulate their environment in order to see how they react. That’s a new level of experimentation, turning Facebook from a fishbowl into a petri dish, and it’s why people are flipping out about this.
Shocking stuff. We need a new social publishing platform, built on ethical, open systems.(tags: ethics facebook privacy academia depression feelings emotion social-publishing social experimentation papers)
Building a Smarter Application Stack - DevOps Ireland
This sounds like a very interesting Dublin meetup -- Engine Yard on thursday night:
This month, we'll have Tomas Doran from Yelp talking about Docker, service discovery, and deployments. 'There are many advantages to a container based, microservices architecture - however, as always, there is no silver bullet. Any serious deployment will involve multiple host machines, and will have a pressing need to migrate containers between hosts at some point. In such a dynamic world hard coding IP addresses, or even host names is not a viable solution. This talk will take a journey through how Yelp has solved the discovery problems using Airbnb’s SmartStack to dynamically discover service dependencies, and how this is helping unify our architecture, from traditional metal to EC2 ‘immutable’ SOA images, to Docker containers.'
(tags: meetups talks dublin deployment smartstack ec2 docker yelp service-discovery)
Smart Integration Testing with Dropwizard, Flyway and Retrofit
Retrofit in particular looks neat. Mind you having worked with in-memory SQL databases before for integration testing, I'd never do that again -- too many interop glitches compared to "real world" MySQL/Postgres
(tags: testing integration-testing retrofit flyway dropwizard logentries)
-
TSAR = "Time Series AggregatoR". Twitter's new event processor-style architecture for internal metrics. It's notable that now Twitter and Google are both apparently moving towards this idea of a model of code which is designed to run equally in realtime streaming and batch modes (Summingbird, Millwheel, Flume).
(tags: analytics architecture twitter tsar aggregation event-processing metrics streaming hadoop batch)
'Robust De-anonymization of Large Sparse Datasets' [pdf]
paper by Arvind Narayanan and Vitaly Shmatikov, 2008. 'We present a new class of statistical de- anonymization attacks against high-dimensional micro-data, such as individual preferences, recommendations, transaction records and so on. Our techniques are robust to perturbation in the data and tolerate some mistakes in the adversary's background knowledge. We apply our de-anonymization methodology to the Netflix Prize dataset, which contains anonymous movie ratings of 500,000 subscribers of Netflix, the world's largest online movie rental service. We demonstrate that an adversary who knows only a little bit about an individual subscriber can easily identify this subscriber's record in the dataset. Using the Internet Movie Database as the source of background knowledge, we successfully identified the Netflix records of known users, uncovering their apparent political preferences and other potentially sensitive information.'
(tags: anonymisation anonymization sanitisation databases data-dumps privacy security papers)
HSE data releases may be de-anonymisable
Although the data has been kept anonymous, the increasing sophistication of computer-driven data-mining techniques has led to fears patients could be identified. A HSE spokesman confirmed yesterday that the office responded to requests for data from a variety of sources, including researchers, the universities, GPs, the media, health insurers and pharmaceutical companies. An average of about two requests a week was received. [...] The information provided by the HPO has significant patient identifiers removed, such as name and date of birth. According to the HSE spokesman, individual patient information is not provided and, where information is sought for a small group of patients, this is not provided where the number involved is under five. “In such circumstances, it is highly unlikely that anyone could be identified. Nevertheless, we will have another look at data releases from the office,” he said.
I'd say this could be readily reversible, from the sounds of it.(tags: anonymisation sanitisation data-dumps hse health privacy via:tjmcintyre)
Beautiful algorithm visualisations from Mike Bostock
This is a few days old, but unmissable. I swear, the 'Wilson's algorithm transformed into a tidy tree layout' viz brought tears to my eyes ;)
(tags: dataviz algorithms visualization visualisation mazes trees sorting animation mike-bostock)
ByteArrayOutputStream is really, really slow sometimes in JDK6
This leads us to the bug. The size of the array is determined by Math.max(buf.length << 1, newcount). Ordinarily, buf.length << 1 returns double buf.length, which would always be much larger than newcount for a 2 byte write. Why was it not? The problem is that for all integers larger than Integer.MAX_INTEGER / 2, shifting left by one place causes overflow, setting the sign bit. The result is a negative integer, which is always less than newcount. So for all byte arrays larger than 1073741824 bytes (i.e. one GB), any write will cause the array to resize, and only to exactly the size required.
Ouch.(tags: bugs java jdk6 bytearrayoutputstream impala performance overflow)
Cory Doctorow on Thomas Piketty's 'Capital in the 21st Century'
quite a leftie analysis
(tags: history capitalism economics piketty capital finance taxation growth money cory-doctorow thomas-piketty)
-
Google's purify/valgrind-like concurrency checking tool: 'As a bonus, ThreadSanitizer finds some other types of bugs: thread leaks, deadlocks, incorrect uses of mutexes, malloc calls in signal handlers, and more. It also natively understands atomic operations and thus can find bugs in lock-free algorithms. [...] The tool is supported by both Clang and GCC compilers (only on Linux/Intel64). Using it is very simple: you just need to add a -fsanitize=thread flag during compilation and linking. For Go programs, you simply need to add a -race flag to the go tool (supported on Linux, Mac and Windows).'
(tags: concurrency bugs valgrind threadsanitizer threading deadlocks mutexes locking synchronization coding testing)
-
'A repair café brings together people with things that need fixin' with people who have the skills to fix them in a social cafe style environment. It is an effort to move away from the throwaway culture that prevailed at the end of the twentieth century and move towards a more sustainable and enlightened approach to our relationship with consumer goods. Repair cafes are self organising events at a community level run by local volunteers with the support of local community groups, local agencies and other interested organisations. They are not-for-profit but not anti-profit and an important part of their goal is to promote local repair businesses and initiatives. www.repaircafe.ie is the online hub of a network of repair cafés across Ireland.' Sounds interesting: https://twitter.com/DubCityCouncil/status/481777655445204992 says they'll be doing it tomorrow from 2-5pm in Sandymount in Dublin.
(tags: dublin sandymount repair fixing diy frugality repaircafe hardware)
-
A way to securely store secrets (auth details, API keys, etc.) in Chef
(tags: chef storage knife authorisation api-keys security encryption)
Amazon EC2 Service Limits Report Now Available
'designed to make it easier for you to view and manage your limits for Amazon EC2 by providing the latest information on service limits and links to quickly request limit increases. EC2 Service Limits Report displays all your service limit information in one place to help you avoid encountering limits on future EC2, EBS, Auto Scaling, and VPC usage.'
Delivery Notifications for Simple Email Service
Today we are enhancing SES with the addition of delivery notifications. You can now elect to receive an Amazon SNS notification each time SES successfully delivers a message to a recipient's email server. These notifications give you increased visibility into the mail delivery process. With today's release, you can now track deliveries, bounces, and complaints, all via notification to the SNS topic or topics of your choice.
How Emoji Get Lost In Translation
I recently texted a friend to say how I was excited to meet her new boyfriend, and, because "excited" doesn't look so exciting on an iPhone screen, I editorialized with what seemed then like an innocent "[dancer]". (Translation: Can't wait for the fun night out!) On an Android phone, I realized later, that panache would have been a put-down: The dancers become "[playboy bunny]." (Translation: You’re a Playboy bunny who gets around!)
Hailo pulling in EUR1M per month in Dublin alone
based on these (pretty rough) estimates. Good going, I'm a massive fan
(tags: hailo taxis driving cars public-transport dublin b2c b2b)
Google Replaces MapReduce With New Hyper-Scale Cloud Analytics System
MR no more:
“We don’t really use MapReduce anymore,” [Urs] Hölzle said in his keynote presentation at the Google I/O conference in San Francisco Wednesday. The company stopped using the system “years ago.” Cloud Dataflow, which Google will also offer as a service for developers using its cloud platform, does not have the scaling restrictions of MapReduce. “Cloud Dataflow is the result of over a decade of experience in analytics,” Hölzle said. “It will run faster and scale better than pretty much any other system out there.”
(tags: map-reduce google hadoop cloud-dataflow scalability big-data urs-holzle google-io)
This Internet Millionaire Has a New Deal For You - D Magazine
Good interview with Dave "Woot" Rutledge, who's now well out of Amazon and plans to get back into the crap-clearing business at Meh.com: 'Amazon’s fundamental misunderstanding of what made Woot great can be seen today on the site. It sells many items simultaneously. It’s a marketplace, not an event. The write-ups are cute, not subversively funny. Woot is no longer a bug-eyed beast with eight tentacles. It’s a pancake with two smaller pancakes for Mickey Mouse ears and a smile made of whipped cream. In 2012, two years into his three-year deal with Amazon, Rutledge walked. He won’t say how many millions his early departure cost him, but his contract with Amazon included a three-year non-compete clause from the date of sale, and he was watching the clock.'
(tags: amazon ecommerce business b2c woot.com meh.com dave-rutledge selling acquisitions)
NYC generates hash-anonymised data dump, which gets reversed
There are about 1000*26**3 = 21952000 or 22M possible medallion numbers. So, by calculating the md5 hashes of all these numbers (only 24M!), one can completely deanonymise the entire data. Modern computers are fast: so fast that computing the 24M hashes took less than 2 minutes.
(via Bruce Schneier) The better fix is a HMAC (see http://benlog.com/2008/06/19/dont-hash-secrets/ ), or just to assign opaque IDs instead of hashing.(tags: hashing sha1 md5 bruce-schneier anonymization deanonymization security new-york nyc taxis data big-data hmac keyed-hashing salting)
Older programmers aren't gone, they're just outnumbered
So says "Uncle Bob" Martin
(tags: culture coding software age career reputation stack-overflow staffing)
Benchmarking LevelDB vs. RocksDB vs. HyperLevelDB vs. LMDB Performance for InfluxDB
A few interesting things come out of these results. LevelDB is the winner on disk space utilization, RocksDB is the winner on reads and deletes, and HyperLevelDB is the winner on writes. On smaller runs (30M or less), LMDB came out on top on most of the metrics except for disk size. This is actually what we’d expect for B-trees: they’re faster the fewer keys you have in them.
Mind you, I'd prefer if this had tunable read/write/delete ratios, as YCSB does. Take with a pinch of salt, as with all benchmarks!(tags: benchmarks leveldb datastores storage hyperleveldb rocksdb ycsb lmdb influxdb)
How to make breaking changes and not break all the things
Well-written description of the "several backward-compatible changes" approach to breaking-change schema migration (via Marc)
(tags: databases coding compatibility migration schemas sql continuous-deployment)
Minnesota Measles Outbreak Traced Back To A Single Unvaccinated Child
A single child caught measles while visiting Kenya, returned to Minnesota, infected 4 others, who in turn exposed others, with an ultimate count of 3000 exposed and 21 confirmed cases. (16 of the 21 were unvaccinated; 46% of the Somali children in this community were unvaccinated in a 2010 survey.)
(tags: minnesota safety measles health vaccination kenya somali)
Report of the Internet Content Governance Advisory Group
looking at the summary, looks broadly sensible; no government-mandated filtering/blocking I can spot quickly
(tags: internet filtering safety kids porn blocking ireland pegi ratings reports pdf)
-
'Two months ago, an early Uber employee thought that he had found a buyer for his vested stock, at $200 per share. But when his agent tried to seal the deal, Uber refused to sign off on the transfer. Instead, it offered to buy back the shares for around $135 a piece, which is within the same price range that Google Ventures and TPG Capital had paid to invest in Uber the previous July. Take it or hold it.' As rbranson on Twitter put it: 'reminder that startup equity is basically worthless unless you're a founder or investor, OR the company goes public.'
(tags: startups uber stock stock-options shares share-option equity via:rbranson work)
-
Wow, these are terrible results. From the sounds of it, ES just cannot deal with realistic outage scenarios and is liable to suffer catastrophic damage in reasonably-common partitions.
If you are an Elasticsearch user (as I am): good luck. Some people actually advocate using Elasticsearch as a primary data store; I think this is somewhat less than advisable at present. If you can, store your data in a safer database, and feed it into Elasticsearch gradually. Have processes in place that continually traverse the system of record, so you can recover from ES data loss automatically.
(tags: elasticsearch ops storage databases jepsen partition network outages reliability)
Code Spaces data and backups deleted by hackers
Rather scary story of an extortionist wiping out a company's AWS-based infrastructure. Turns out S3 supports MFA-required deletion as a feature, though, which would help against that.
(tags: ops security extortion aws ec2 s3 code-spaces delete mfa two-factor-authentication authentication infrastructure)
Google forced to e-forget a company worldwide
Here we go.... Canadian company wins case to censor search results for its competitors.
When Google argued that Canadian law couldn't be applied to the entire world, the court responded by citing British Columbia's Law and Equity Act, which grants broad power for a court to issue injunctions when it's "just or convenient that the order should be made." Google also tried to argue against the injunction on the basis of it amounting to censorship. The court responded that there are already entire categories of content that get censored, such as child abuse imagery. Will this be the first of a new wave of requests for company website take-downs?
Via stx.(tags: canada via:stx censorship google search takedowns datalink equustek gw1000 hardware)
The dark truth about modern Ireland its media don't talk about
Sinead O'Shea writing for the Guardian:
The economy has been built on cronyism, group-think, the double talk of absurdly low corporate tax rates and light touch regulation, the cult of the leader, an over reliance on "strong" international forces. These were the factors that caused the Celtic Tiger to collapse. This has had consequences for all. It's the same for the system of shame and sexual repression. The impact has not been restricted to its most obvious victims. Ireland is not just a bad place to be a woman or an immigrant, it's a bad place to be in any way "different." As a result, sadly, it's a bad place to be anyone at all.
(tags: ireland history women celtic-tiger industrial-schools immigration sinead-o-shea tuam abortion pregnancy)
Data sharing deal with U.S. referred to EU's top court | Reuters
High Court Justice Gerard Hogan said that given the Safe Harbour agreement, which says that U.S. has sufficient data safeguards in place, the Irish regulator did not have the authority to investigate. If Safe Harbour stands, the student group's application must fail, he said. "The critical issue which arises is whether the proper interpretation of the 1995 [EU data protection] directive and the 2000 Commission decision [on the Safe Harbour principles] should be re-evaluated in the light of the subsequent entry into force of article 8 of the EU charter," on the right to the protection of personal data, Hogan said.
(tags: eu safe-harbor privacy high-court ireland law data-protection)
-
A good example of "raw" BDD, without using a framework like Cucumber, Steak etc.
(tags: bdd testing csharp acceptance-tests coding)
-
a minimal extension of RSpec-Rails that adds several conveniences to do acceptance testing of Rails applications using Capybara. It's an alternative to Cucumber in plain Ruby.
Good approach here to copy, but very tied to Rails.(tags: rails ruby testing acceptance-testing steak bdd rspec coding)
-
Scala's BDD approach -- very similar to Steak in Rubyland I think
(tags: scala testing bdd acceptance-testing steak coding scalatest)
quotly/test/acceptance/adding_quotes_spec.rb at master · cavalle/quotly · GitHub
Decent demo of acceptance testing using rspec (and some syntactic sugar to make it read like Steak code, I think)
Facebook introduce “Wedge” and “FBOSS"
a new top-of-rack network switch, code-named “Wedge,” and a new Linux-based operating system for that switch, code-named “FBOSS.” These projects break down the hardware and software components of the network stack even further, to provide a new level of visibility, automation, and control in the operation of the network. By combining the hardware and software modules together in new ways, “Wedge” and “FBOSS” depart from current networking design paradigms to leverage our experience in operating hundreds of thousands of servers in our data centers. In other words, our goal with these projects was to make our network look, feel, and operate more like the OCP servers we've already deployed, both in terms of hardware and software.
Sayonara, Cisco, and good riddance.(tags: cisco juniper wedge fboss facebook tor switches racks networking datacenter routers)
Cap'n Proto, FlatBuffers, and SBE
a feature comparison of these new serialization formats from Kenton, the capnp dude
(tags: serialization protobuf capnproto sbe flatbuffers google coding storage)
Concurrency Improvements in HyperLevelDB
Good-looking benchmark results here from HyperDex
(tags: hyperdex hyperleveldb leveldb rocksdb concurrency lock-free storage persistence)
-
"Sell products directly to your audience" -- Ben says it doesn't break the flow, doesn't take you to another site, no complicated registration forms -- the customer just enters CC details and that's it.
A dive into a UTF-8 validation regexp
Once again, I find myself checking over the UTF-8 validation code in websocket-driver, and once again I find I cannot ever remember how to make sense of this regex that performs the validation. I just copied it off a webpage once and it took a while (and reimplementing UTF-8 myself) to fully understand what it does. If you write software that processes text, you’ll probably need to understand this too.
(tags: utf-8 unicode utf8 javascript node encoding text strings validation websockets regular-expressions regexps)
-
This [shell one-liner] will take a picture of a whiteboard and use parts of the ImageMagick library with sane defaults to clean it up tremendously.: convert "$1" -morphology Convolve DoG:15,100,0 -negate -normalize -blur 0x1 -channel RBG -level 60%,91%,0.1 "$2"
Some kind soul has put up a quickie web UI here: http://api.o2b.ru/whiteboardcleaner(tags: graphics tools whiteboard imagemagick text images cleanup gimp photoshop via:fanf)
A Rare Peek Inside Amazon’s Massive Wish-Fulfilling Machine
Wired get a tour of PHX6, one of Amazon's FCs
(tags: amazon wired fcs warehouses ecommerce)
Paleo is the Scientology of Diet
Being paleo is like paying a stupidity tax. Again, it’s not you who is stupid, but the diet sure is, because it lets you drink paleo coffee while putting paleo butter and paleo syrup on your paleo waffles before you drive your paleo minivan to the paleo office to sit in your paleo cube and do spreadsheets on your paleo computer. See, the paleo diet made up a bunch of silly rules on how we allegedly ate, and then goes and twists them all to hell in the name of selling you a crappy, overpriced product. That is scientology-level stupid.
(tags: scientology paleo rants funny food diet health bulletproof-coffee stupid)
-
a power-management subsystem for warehouse-scale computing farms. "It adjusts the power-performance settings of servers so that the overall workload barely meets its latency constraints for user queries."
(tags: pegasus power-management power via:fanf google latency scaling)
-
A new serialization format from Google's Android gaming team, supporting C++ and Java, open source under the ASL v2. Reasons to use it:
Access to serialized data without parsing/unpacking - What sets FlatBuffers apart is that it represents hierarchical data in a flat binary buffer in such a way that it can still be accessed directly without parsing/unpacking, while also still supporting data structure evolution (forwards/backwards compatibility). Memory efficiency and speed - The only memory needed to access your data is that of the buffer. It requires 0 additional allocations. FlatBuffers is also very suitable for use with mmap (or streaming), requiring only part of the buffer to be in memory. Access is close to the speed of raw struct access with only one extra indirection (a kind of vtable) to allow for format evolution and optional fields. It is aimed at projects where spending time and space (many memory allocations) to be able to access or construct serialized data is undesirable, such as in games or any other performance sensitive applications. See the benchmarks for details. Flexible - Optional fields means not only do you get great forwards and backwards compatibility (increasingly important for long-lived games: don't have to update all data with each new version!). It also means you have a lot of choice in what data you write and what data you don't, and how you design data structures. Tiny code footprint - Small amounts of generated code, and just a single small header as the minimum dependency, which is very easy to integrate. Again, see the benchmark section for details. Strongly typed - Errors happen at compile time rather than manually having to write repetitive and error prone run-time checks. Useful code can be generated for you. Convenient to use - Generated C++ code allows for terse access & construction code. Then there's optional functionality for parsing schemas and JSON-like text representations at runtime efficiently if needed (faster and more memory efficient than other JSON parsers).
Looks nice, but it misses the language coverage of protobuf. Definitely more practical than capnproto.(tags: c++ google java serialization json formats protobuf capnproto storage flatbuffers)
AWS SDK for Java Client Configuration
turns out the AWS SDK has lots of tuning knobs: region selection, socket buffer sizes, and debug logging (including wire logging).
-
The simple woven multicoloured bracelet has made Cheong Choon Ng, a Malaysian immigrant to the US, a dollar millionaire. He invented the "Rainbow Loom" after watching his daughters making bracelets with rubber bands.
So, really, it's his daughters that invented it. ;) My kids are massive fans. This is a 100% legit, Rubik's-Cube-style craze. (via Conor O'Neill)(tags: via:conoro loom-bands rubber-bands toys crazes)
-
BorderPatrol is an nginx module to perform authentication and session management at the border of your network. BorderPatrol makes the assumption that you have some set of services that require authentication and a service that hands out tokens to clients to access that service. You may not want those tokens to be sent across the internet, even over SSL, for a variety of reasons. To this end, BorderPatrol maintains a lookup table of session-id to auth token in memcached.
(tags: borderpatrol nginx modules authentication session-management web-services http web authorization)
Use of Formal Methods at Amazon Web Services
Chris Newcombe, Marc Brooker, et al. writing about their experience using formal specification and model-checking languages (TLA+) in production in AWS:
The success with DynamoDB gave us enough evidence to present TLA+ to the broader engineering community at Amazon. This raised a challenge; how to convey the purpose and benefits of formal methods to an audience of software engineers? Engineers think in terms of debugging rather than ‘verification’, so we called the presentation “Debugging Designs”. Continuing that metaphor, we have found that software engineers more readily grasp the concept and practical value of TLA+ if we dub it 'Exhaustively-testable pseudo-code'. We initially avoid the words ‘formal’, ‘verification’, and ‘proof’, due to the widespread view that formal methods are impractical. We also initially avoid mentioning what the acronym ‘TLA’ stands for, as doing so would give an incorrect impression of complexity.
More slides at http://tla2012.loria.fr/contributed/newcombe-slides.pdf ; proggit discussion at http://www.reddit.com/r/programming/comments/277fbh/use_of_formal_methods_at_amazon_web_services/(tags: formal-methods model-checking tla tla+ programming distsys distcomp ebs s3 dynamodb aws ec2 marc-brooker chris-newcombe)
-
We used Knossos and Jepsen to prove the obvious: RabbitMQ is not a lock service. That investigation led to a discovery hinted at by the documentation: in the presence of partitions, RabbitMQ clustering will not only deliver duplicate messages, but will also drop huge volumes of acknowledged messages on the floor. This is not a new result, but it may be surprising if you haven’t read the docs closely–especially if you interpreted the phrase “chooses Consistency and Partition Tolerance” to mean, well, either of those things.
(tags: rabbitmq network partitions failure cap-theorem consistency ops reliability distcomp jepsen)
Jump Consistent Hash: A Fast, Minimal Memory, Consistent Hash Algorithm
'a fast, minimal memory, consistent hash algorithm that can be expressed in about 5 lines of code. In comparison to the algorithm of Karger et al., jump consistent hash requires no storage, is faster, and does a better job of evenly dividing the key space among the buckets and of evenly dividing the workload when the number of buckets changes. Its main limitation is that the buckets must be numbered sequentially, which makes it more suitable for data storage applications than for distributed web caching.' Implemented in Guava. This is also noteworthy: 'Google has not applied for patent protection for this algorithm, and, as of this writing, has no plans to. Rather, it wishes to contribute this algorithm to the community.'
(tags: hashing consistent-hashing google guava memory algorithms sharding)
Bike Wheel Spoke ABS Safety Reflective Tube Reflector
Available in blue, orange, and grey for $2.84 from the insanely-cheap China-based DealExtreme.com. Also available: rim-based reflective stickers
(tags: bikes cycling reflective safety dealextreme tat)
#AltDevBlog » Parallel Implementations
John Carmack describes this code-evolution approach to adding new code:
The last two times I did this, I got the software rendering code running on the new platform first, so everything could be tested out at low frame rates, then implemented the hardware accelerated version in parallel, setting things up so you could instantly switch between the two at any time. For a mobile OpenGL ES application being developed on a windows simulator, I opened a completely separate window for the accelerated view, letting me see it simultaneously with the original software implementation. This was a very significant development win. If the task you are working on can be expressed as a pure function that simply processes input parameters into a return structure, it is easy to switch it out for different implementations. If it is a system that maintains internal state or has multiple entry points, you have to be a bit more careful about switching it in and out. If it is a gnarly mess with lots of internal callouts to other systems to maintain parallel state changes, then you have some cleanup to do before trying a parallel implementation. There are two general classes of parallel implementations I work with: The reference implementation, which is much smaller and simpler, but will be maintained continuously, and the experimental implementation, where you expect one version to “win” and consign the other implementation to source control in a couple weeks after you have some confidence that it is both fully functional and a real improvement. It is completely reasonable to violate some generally good coding rules while building an experimental implementation – copy, paste, and find-replace rename is actually a good way to start. Code fearlessly on the copy, while the original remains fully functional and unmolested. It is often tempting to shortcut this by passing in some kind of option flag to existing code, rather than enabling a full parallel implementation. It is a grey area, but I have been tending to find the extra path complexity with the flag approach often leads to messing up both versions as you work, and you usually compromise both implementations to some degree.
(via Marc)(tags: via:marc coding john-carmack parallel development evolution lifecycle project-management)
5 Reasons to Use Protocol Buffers Instead of JSON For Your Next Service
A good writeup of the case for protobuf > JSON (via Marc)
(tags: via:marc api soa web-services protobuf json interop protocols marshalling)
Plumbr.eu's reference page for java.lang.OutOfMemoryError
With examples of each possible cause of a Java OOM, and suggested workarounds. succinct
-
Imagine buying a high-end Core i7 or AMD CPU, opening the box, and finding a midrange part sitting there with an asterisk and the label “Performs Just Like Our High End CPU In Single-Threaded SuperPi!”
(tags: ssd storage hardware sketchy kingston pny bait-and-switch components vendors via:hn)
-
Manages migrations for your Cassandra data stores. Pillar grew from a desire to automatically manage Cassandra schema as code. Managing schema as code enables automated build and deployment, a foundational practice for an organization striving to achieve Continuous Delivery. Pillar is to Cassandra what Rails ActiveRecord migrations or Play Evolutions are to relational databases with one key difference: Pillar is completely independent from any application development framework.
(tags: migrations database ops pillar cassandra activerecord scala continuous-delivery automation build)
How to use TuneIn's Record Timer feature
handy
Continuous Deployment for Mobile Apps with Jenkins: iOS Builds
the CloudBees-std way
(tags: build deployment ios jenkins iphone continuous-deployment)
-
a single application IP packet sniffer that captures all TCP and UDP packets of a single Linux process. It consists of the following elements: * ptrace monitor - tracks bind(), connect() and sendto() syscalls and extracts local port numbers that the traced application uses; * pcap sniffer - using information from the previous module, it captures IP packets on an AF_PACKET socket (with an appropriate BPF filter attached); * garbage collector - periodically reads /proc/net/{tcp,udp} files in order to detect the sockets that the application no longer uses. As the output, tracedump generates a PCAP file with SLL-encapsulated IP packets - readable by eg. Wireshark. This file can be later used for detailed analysis of the networking operations made by the application. For instance, it might be useful for IP traffic classification systems.
(tags: debugging networking linux strace ptrace tracedump tracing tcp udp sniffer ip tcpdump)
You Are Not a Digital Native: Privacy in the Age of the Internet
an open letter from Cory Doctorow to teen readers re privacy. 'The problem with being a “digital native” is that it transforms all of your screw-ups into revealed deep truths about how humans are supposed to use the Internet. So if you make mistakes with your Internet privacy, not only do the companies who set the stage for those mistakes (and profited from them) get off Scot-free, but everyone else who raises privacy concerns is dismissed out of hand. After all, if the “digital natives” supposedly don’t care about their privacy, then anyone who does is a laughable, dinosauric idiot, who isn’t Down With the Kids.'
(tags: children privacy kids teens digital-natives surveillance cory-doctorow danah-boyd)
Shutterbits replacing hardware load balancers with local BGP daemons and anycast
Interesting approach. Potentially risky, though -- heavy use of anycast on a large-scale datacenter network could increase the scale of the OSPF graph, which scales exponentially. This can have major side effects on OSPF reconvergence time, which creates an interesting class of network outage in the event of OSPF flapping. Having said that, an active/passive failover LB pair will already announce a single anycast virtual IP anyway, so, assuming there are a similar number of anycast IPs in the end, it may not have any negative side effects. There's also the inherent limitation noted in the second-to-last paragraph; 'It comes down to what your hardware router can handle for ECMP. I know a Juniper MX240 can handle 16 next-hops, and have heard rumors that a software update will bump this to 64, but again this is something to keep in mind'. Taking a leaf from the LB design, and using BGP to load-balance across a smaller set of haproxy instances, would seem like a good approach to scale up.
(tags: scalability networking performance load-balancing bgp exabgp ospf anycast routing datacenters scaling vips juniper haproxy shutterstock)
Tron: Legacy Encom Boardroom Visualization
this is great. lovely, silly, HTML5 dataviz, with lots of spinning globes and wobbling sines on a black background
(tags: demo github wikipedia dataviz visualisation mapping globes rob-scanlan graphics html5 animation tron-legacy tron movies)
-
a distributed key/value datastore which supports ACID transactional semantics and versioned values as first-class features. The primary design goal is global consistency and survivability, hence the name. Cockroach aims to tolerate disk, machine, rack, and even datacenter failures with minimal latency disruption and no manual intervention. Cockroach nodes are symmetric; a design goal is one binary with minimal configuration and no required auxiliary services. Cockroach implements a single, monolithic sorted map from key to value where both keys and values are byte strings (not unicode). Cockroach scales linearly (theoretically up to 4 exabytes (4E) of logical data). The map is composed of one or more ranges and each range is backed by data stored in RocksDB (a variant of LevelDB), and is replicated to a total of three or more cockroach servers. Ranges are defined by start and end keys. Ranges are merged and split to maintain total byte size within a globally configurable min/max size interval. Range sizes default to target 64M in order to facilitate quick splits and merges and to distribute load at hotspots within a key range. Range replicas are intended to be located in disparate datacenters for survivability (e.g. { US-East, US-West, Japan }, { Ireland, US-East, US-West}, { Ireland, US-East, US-West, Japan, Australia }). Single mutations to ranges are mediated via an instance of a distributed consensus algorithm to ensure consistency. We’ve chosen to use the Raft consensus algorithm. All consensus state is stored in RocksDB. A single logical mutation may affect multiple key/value pairs. Logical mutations have ACID transactional semantics. If all keys affected by a logical mutation fall within the same range, atomicity and consistency are guaranteed by Raft; this is the fast commit path. Otherwise, a non-locking distributed commit protocol is employed between affected ranges. Cockroach provides snapshot isolation (SI) and serializable snapshot isolation (SSI) semantics, allowing externally consistent, lock-free reads and writes--both from an historical snapshot timestamp and from the current wall clock time. SI provides lock-free reads and writes but still allows write skew. SSI eliminates write skew, but introduces a performance hit in the case of a contentious system. SSI is the default isolation; clients must consciously decide to trade correctness for performance. Cockroach implements a limited form of linearalizability, providing ordering for any observer or chain of observers.
This looks nifty. One to watch.(tags: cockroachdb databases storage georeplication raft consensus acid go key-value-stores rocksdb)
-
good docs from Riak
(tags: leveldb tuning performance ops riak)
-
method for bootstrapping one cryptocurrency off of another. The idea is that miners should show proof that they burned some coins - that is, sent them to a verifiably unspendable address. This is expensive from their individual point of view, just like proof of work; but it consumes no resources other than the burned underlying asset. To date, all proof of burn cryptocurrencies work by burning proof-of-work-mined cryptocurrencies, so the ultimate source of scarcity remains the proof-of-work-mined "fuel".
(tags: bitcoin proof money mining cryptocurrency)
The programming error that cost Mt Gox 2609 bitcoins
Digging into broken Bitcoin scripts in the blockchain. Fascinating:
While analyzing coinbase transactions, I came across another interesting bug that lost bitcoins. Some transactions have the meaningless and unredeemable script: OP_IFDUP OP_IF OP_2SWAP OP_VERIFY OP_2OVER OP_DEPTH That script turns out to be the ASCII text script. Instead of putting the redemption script into the transaction, the P2Pool miners accidentally put in the literal word "script". The associated bitcoins are lost forever due to this error.
(via Nelson)(tags: programming script coding bitcoin mtgox via:nelson scripting dsls)
-
a Java implementation of an MQTT 3.1 broker. Its code base is small. At its core, Moquette is an events processor; this lets the code base be simple, avoiding thread sharing issues. The Moquette broker is lightweight and easy to understand so it could be embedded in other projects.
(tags: mqtt moquette netty messaging queueing push-notifications iot internet push eclipse)
-
aka. lock acquisition. ex-Amazon-Dublin lingo, observed in the wild ;)
(tags: language hotdog archie-mcphee amazon dublin intercom coding locks synchronization)
Organic Cat Litter Chief Suspect In Nuclear Waste Accident
What a headline. interesting story to boot (via Eoin)
(tags: environment energy chemistry cat-litter waste-disposal nuclear-waste accidents new-mexico)
Friends don't let friends use mmap(2)
Rather horrific update from the trenches of Mozilla
(tags: mozilla mmap performance linux io files memory unix windows)
67 Books Every Geek Should Read to Their Kids Before Age 10 | GeekDad | Wired.com
Lots and lots of good book recommendations, a little US-centric though
(tags: reading books kids children education fiction development)
How the patent trolls won in Congress: Ars Technica
"We felt really good the last couple of days," said the tech lobbyist. "It was a good deal—one we could live with. Then the trial lawyers and pharma went to Senator Reid late this morning and said that's it. Enough with the children playing in the playground—go kill it."
(tags: ars-technica patents swpats patent-trolls pharma tech us-politics congress lawyers)
Dublin City North Inner City count results, animated
A nice visualisation of Single-Transferable-Vote proportional representation in action
(tags: pr-stv voting dataviz visualisation dublin elections pr)
New Statesman: Let's call the Isla Vista killings what they were: misogynist extremism
We have been told for a long time that the best way to deal with this sort of harrassment and violence is to laugh it off. Women and girls and queer people have been told that online misogynists pose no real threat, even when they’re sharing intimate guides to how to destroy a woman’s self-esteem and force her into sexual submission. Well, now we have seen what the new ideology of misogyny looks like at its most extreme. We have seen incontrovertible evidence of real people being shot and killed in the name of that ideology, by a young man barely out of childhood himself who had been seduced into a disturbing cult of woman-hatred. Elliot Rodger was a victim - but not for the reasons he believed.
(tags: elliot-rodger extremism feminism isla-vista mass-killings pua mens-rights harrassment misogyny penny-red)
-
'In essence Tcpdump asks the kernel to execute a BPF program within the kernel context. This might sound risky, but actually isn't. Before executing the BPF bytecode kernel ensures that it's safe: * All the jumps are only forward, which guarantees that there aren't any loops in the BPF program. Therefore it must terminate. * All instructions, especially memory reads are valid and within range. * The single BPF program has less than 4096 instructions. All this guarantees that the BPF programs executed within kernel context will run fast and will never infinitely loop. That means the BPF programs are not Turing complete, but in practice they are expressive enough for the job and deal with packet filtering very well.' Good example of a carefully-designed DSL allowing safe "programs" to be written and executed in a privileged context without security risk, or risk of running out of control.
(tags: coding dsl security via:oisin linux tcpdump bpf bsd kernel turing-complete configuration languages)
Handmade Kitchen Goods from Makers & Brothers - Cool Hunting
lovely kitchen-gear design from local-boys-made-good Makers & Brothers
(tags: makers-and-brothers design crafts kitchen nyc terrazo chopping-boards)
'Monitoring and detecting causes of failures of network paths', US patent 8,661,295 (B1)
The first software patent in my name -- couldn't avoid it forever :(
Systems and methods are provided for monitoring and detecting causes of failures of network paths. The system collects performance information from a plurality of nodes and links in a network, aggregates the collected performance information across paths in the network, processes the aggregated performance information for detecting failures on the paths, analyzes each of the detected failures to determine at least one root cause, and initiates a remedial workflow for the at least one root cause determined. In some aspects, processing the aggregated information may include performing a statistical regression analysis or otherwise solving a set of equations for the performance indications on each of a plurality of paths. In another aspect, the system may also include an interface which makes available for display one or more of the network topology, the collected and aggregated performance information, and indications of the detected failures in the topology.
The patent describes an early version of Pimms, the network failure detection and remediation system we built for Amazon.(tags: amazon pimms swpats patents networking ospf autoremediation outage-detection)
Dublin City Council rows back on speed bumps for cyclists
“bicycle-calming measures”. FFS, DCC
(tags: idiots dublin dcc council cycling fail holland funny bicycle-calming)
Monitoring Reactive Applications with Kamon
"quality monitoring tools for apps built in Akka, Spray and Play!". Uses Gil Tene's HDRHistogram and dropwizard Metrics under the hood.
(tags: metrics dropwizard hdrhistogram gil-tene kamon akka spray play reactive statistics java scala percentiles latency)
-
storage of structured data in a continuous block of memory. The memory can be allocated on the heap using a byte[] array or can be allocated off the java heap in native memory. [...] Use cases: store/cache huge amounts of data records without impact on GC duration; high performance data transfer in a cluster or in between processes
handy OSS from Ruediger Moeller Dynamic Tuple Performance On the JVM
More JVM off-heap storage from Boundary:
generates heterogeneous collections of primitive values and ensures as best it can that they will be laid out adjacently in memory. The individual values in the tuple can either be accessed from a statically bound interface, via an indexed accessor, or via reflective or other dynamic invocation techniques. FastTuple is designed to deal with a large number of tuples therefore it will also attempt to pool tuples such that they do not add significantly to the GC load of a system. FastTuple is also capable of allocating the tuple value storage entirely off-heap, using Java’s direct memory capabilities.
-
Teaches the basics of computer science - K-8 Intro to CS, 15-25 hours. Introduces core CS and programming concepts, with lots of nice graphics, scenarios and characters from games to get the kids hooked ;) Recommended by Tom Raftery; his youngest (7yo) is having great fun with it.
(tags: education programming learning coding kids k-8 code.org games)
-
one of the world’s leading news organizations giving itself a rigorous self-examination. I’ve spoken with multiple digital-savvy Times staffers in recent days who described the report with words like “transformative” and “incredibly important” and “a big big moment for the future of the Times.” One admitted crying while reading it because it surfaced so many issues about Times culture that digital types have been struggling to overcome for years.
via Antoin. This is pretty insightful -- the death of the homepage is notable(tags: nytimes publishing media journalism tech internet web news leaks via:antoin)
Microsoft Security Essentials reporting false positives on the Bitcoin blockchain
Earlier today, a virus signature from the virus "DOS/STONED" was uploaded into the Bitcoin blockchain, which allows small snippets of text to accompany user transactions with bitcoin. Since this is only the virus signature and not the virus itself, there apparently is no danger to users in any way. However, MSE recognizes the signature for the virus and continuously reports it as a threat, and every time it deletes the file, the bitcoin client will simply re-download the missing blockchain.
What a heinous prank! Hilarity ensues (via gwire)(tags: via:gwire av antivirus false-positives fp blockchain microsoft bitcoin pranks viruses)
Stuck in the iMessage abyss? Here’s how to get your texts back
some potential (apocryphal) workarounds for this extremely annoying Apple bug
-
an extension of the core Spark API that allows enables high-throughput, fault-tolerant stream processing of live data streams. Data can be ingested from many sources like Kafka, Flume, Twitter, ZeroMQ or plain old TCP sockets and be processed using complex algorithms expressed with high-level functions like map, reduce, join and window. Finally, processed data can be pushed out to filesystems, databases, and live dashboards. In fact, you can apply Spark’s in-built machine learning algorithms, and graph processing algorithms on data streams.
(tags: spark streams stream-processing cep scalability apache machine-learning graphs)
"Crypto Won't Save You Either"
fantastic slides from Peter Gutmann
(tags: crypto cryptography security exploits nsa gchq dual_ec_drbg rsa)
In the Zone: How Gamers Experience The Real Chernobyl
Great article. I've experienced this in LA, particularly, after playing the GTA series
(tags: pripyat gaming tourism reality virtual-reality via:oceanclub games)
Shapecatcher: Draw the Unicode character you want!
'This is a tool to help you find Unicode characters. Finding a specific character whose name you don't know is cumbersome. On shapecatcher.com, all you need to know is the shape of the character!' Handy.
(tags: shapes drawing unicode characters language recognition web)
Unchi-kun Candy - Japanese Lucky Poop Candy
What doesn't look like Christmas more than a smiling piece of poop, called unchi in Japanese? Because the shape of unchi looks similar to that of mochi used for shrine offerings, and because the sound "unchi" like the Japanese word for luck, this treat is actually a lucky gift -- at least that is how you can explain yourself when you give it as a gift. Each Unchi-kun comes packed with poop candy, taken out from the bottom. Once finished eating, you can open the slot in the back with a box-cutter and turn it into a bank.
Want one!(tags: unchi-kun unchi pile-of-poo emoji unicode cute funny japan j-list sweets food gross candy)
Bletchley Park Trust erects "Berlin Wall" to cut off on-site computer history museum - Boing Boing
The Bletchley Park trust have erected a fence, nicknamed "The Berlin Wall," between their well-funded museum and its poorer on-site neighbour, the UK National Museum of Computing, which houses the hand-built replica of the codebreaking Colossus computer. The trust received an £8m lottery-funded grant and set about shitcanning long-serving volunteers, cutting off the computer history museum, and generally behaving like greedy jerks, systematically alienating long-term supporters. Oh, and there was that Snowden business.
WTF. Stupid antics.-
Good benchmark data on the performance of JVM exceptions
(tags: java jvm exceptions benchmarking performance optimization coding)
-
Oh Apple, you asshats. This is some seriously shitty programming. iMessage on iOS devices caches the "iMessage-capable" flag for all numbers, indefinitely, so if you switch from iPhone to Android, messages from your friends' iPhones won't get delivered to you henceforth -- and to add insult to injury, it claims they do with a "Delivered." status appearing under the message. This is happening to me right now...
(tags: apple sms messaging phones mobile imessage android fail bad-programming bugs)
-
an Android-based stingray (IMSI catcher) detector that uses machine learning to detect the presence of stingray devices which can be used to eavesdrop on cellular communication.
In pre-launch right now. Via EthanZ via Antoin(tags: imsi-catcher stingray surveillance via:ethanz snooping spying privacy mobile)
-
+1. What has happened at Google? Did they fire ever employee in the UX department?
Spark - A small web framework for Java
A Sinatra-like minimal web framework built on Java 8 lambdas:
public class HelloWorld { public static void main(String[] args) { get("/hello", (request, response) -> { return "Hello World!"; }); } }
(tags: via:sampullara web java sinatra lambdas closures java8 spark)
Building a Global, Highly Available Service Discovery Infrastructure with ZooKeeper
This is the written version of a presentation [Camille Fournier] made at the ZooKeeper Users Meetup at Strata/Hadoop World in October, 2012 (slides available here). This writeup expects some knowledge of ZooKeeper.
good advice from one of the ZK committers.(tags: zookeeper service-discovery architecture distcomp camille-fournier availability wan network)
"Replicated abstract data types: Building blocks for collaborative applications"
cited at https://news.ycombinator.com/item?id=7737423 as 'one of my favorite papers on CRDTs and provides practical pseudocode for learning how to implement CRDTs yourself', in a discussion on cemerick's "Distributed Systems and the End of the API": http://writings.quilt.org/2014/05/12/distributed-systems-and-the-end-of-the-api/
(tags: distcomp networking distributed crdts algorithms text data-structures cap)
Android 4.4 KitKat Problems: HTC UK Speaks Out About HTC One Update Issues
Good advice on improving battery life with the KitKat 4.4.2 point release on a HTC One. I had serious battery problems, but they seem to have been resolved by following this advice
(tags: wifi kitkat android 4.4.2 htc-one htc battery blinkfeed mobile phones)
Transform any text into a patent application
'An apparatus and device for staring into vacancy. The devices comprises a good cage, a narrow gangway, an electric pocket, a flower-bedecked cage, an insensitive felt.' (The Hunger Artist by Kafka)
The Big List of Local Multiplayer Games
authoritative!
(tags: couch games gaming local-multiplayer multiplayer)
-
Mock Boto: 'a library that allows your python tests to easily mock out the boto library.' Supports S3, Autoscaling, EC2, DynamoDB, ELB, Route53, SES, SQS, and STS currently, and even supports a standalone server mode, to act as a mock service for non-Python clients. Excellent! (via Conor McDermottroe)
(tags: python aws testing mocks mocking system-tests unit-tests coding ec2 s3)
Why Disqus made the Python->Go switchover
for their realtime component, from the horse's mouth:
at higher contention, the CPU was choking everything. Switching over to Go removed that contention for us, which was the primary issue that we were seeing.
(tags: python languages concurrency go threading gevent scalability disqus realtime hn)
Database Migrations Done Right
The rule is simple. You should never tie database migrations to application deploys or vice versa. By minimising dependencies you enable faster, easier and cleaner deployments.
A solid description of why this is a good idea, from an ex-Guardian dev.(tags: migrations database sql mysql postgres deployment ops dependencies loose-coupling)
-
some cute brooches/jewellery here, for the next time I need to pick a nice gift
(tags: julie-moon art magic-pony jewellery brooches gifts)
Building a large scale CDN with Apache Traffic Server
via Ilya Grigorik: 'Great under-the-hood look at how Comcast built and operates their internal CDN for delivering video (on-demand + live). Some highlights: switched to own (open-source) stack; ~250 servers pushing ~1.5Pb of data/day with ~5Pb of storage capacity.'
(tags: cdn comcast video presentations apache traffic-server vod)
An analysis of Facebook photo caching
excellent analysis of caching behaviour at scale, from the FB engineering blog (via Tony Finch)
(tags: via:fanf caching facebook architecture photos images cache fifo lru scalability)
-
good advice. next time I go over, I'll have to get a Clipper card. Also: 'Brunch is its own section because I have never encountered a place that takes brunch so seriously.'
(tags: brunch sf travel california tips san-francisco clipper-card)
Alexey Shipilev on Java's System.nanoTime()
System.nanoTime is as bad as String.intern now: you can use it, but use it wisely. The latency, granularity, and scalability effects introduced by timers may and will affect your measurements if done without proper rigor. This is one of the many reasons why System.nanoTime should be abstracted from the users by benchmarking frameworks, monitoring tools, profilers, and other tools written by people who have time to track if the underlying platform is capable of doing what we want it to do. In some cases, there is no good solution to the problem at hand. Some things are not directly measurable. Some things are measurable with unpractical overheads. Internalize that fact, weep a little, and move on to building the indirect experiments. This is not the Wonderland, Alice. Understanding how the Universe works often needs side routes to explore. In all seriousness, we should be happy our $1000 hardware can measure 30 nanosecond intervals pretty reliably. This is roughly the time needed for the Internet packets originating from my home router to leave my apartment. What else do you want, you spoiled brats?
(tags: benchmarking jdk java measurement nanoseconds nsecs nanotime jvm alexey-shipilev jmh)
-
aka. "zero-shot learning". ok starting point
(tags: machine-learning zero-shot unsupervised algorithms ml)
-
Ilya Grigorik describes the design of the Bitcoin/altcoin block chain algorithm. Illuminating writeup
(tags: algorithms bitcoin security crypto blockchain ilya-grigorik)
-
The aim of the docker plugin is to be able to use a docker host to dynamically provision a slave, run a single build, then tear-down that slave. Optionally, the container can be committed, so that (for example) manual QA could be performed by the container being imported into a local docker provider, and run from there.
The holy grail of Jenkins/Docker integration. How cool is that...(tags: jenkins docker ops testing ec2 hosting scaling elastic-scaling system-testing)
-
an OSI layer 6 presentation for encoding/decoding messages in binary format to support low-latency applications. [...] SBE follows a number of design principles to achieve this goal. By adhering to these design principles sometimes means features available in other codecs will not being offered. For example, many codecs allow strings to be encoded at any field position in a message; SBE only allows variable length fields, such as strings, as fields grouped at the end of a message. The SBE reference implementation consists of a compiler that takes a message schema as input and then generates language specific stubs. The stubs are used to directly encode and decode messages from buffers. The SBE tool can also generate a binary representation of the schema that can be used for the on-the-fly decoding of messages in a dynamic environment, such as for a log viewer or network sniffer. The design principles drive the implementation of a codec that ensures messages are streamed through memory without backtracking, copying, or unnecessary allocation. Memory access patterns should not be underestimated in the design of a high-performance application. Low-latency systems in any language especially need to consider all allocation to avoid the resulting issues in reclamation. This applies for both managed runtime and native languages. SBE is totally allocation free in all three language implementations. The end result of applying these design principles is a codec that has ~25X greater throughput than Google Protocol Buffers (GPB) with very low and predictable latency. This has been observed in micro-benchmarks and real-world application use. A typical market data message can be encoded, or decoded, in ~25ns compared to ~1000ns for the same message with GPB on the same hardware. XML and FIX tag value messages are orders of magnitude slower again. The sweet spot for SBE is as a codec for structured data that is mostly fixed size fields which are numbers, bitsets, enums, and arrays. While it does work for strings and blobs, many my find some of the restrictions a usability issue. These users would be better off with another codec more suited to string encoding.
(tags: sbe encoding protobuf protocol-buffers json messages messaging binary formats low-latency martin-thompson xml)
Observations of an Internet Middleman
That leaves the remaining six [consumer ISPs peering with Level3] with congestion on almost all of the interconnect ports between us. Congestion that is permanent, has been in place for well over a year and where our peer refuses to augment capacity. They are deliberately harming the service they deliver to their paying customers. They are not allowing us to fulfil the requests their customers make for content. Five of those congested peers are in the United States and one is in Europe. There are none in any other part of the world. All six are large Broadband consumer networks with a dominant or exclusive market share in their local market. In countries or markets where consumers have multiple Broadband choices (like the UK) there are no congested peers.
Amazing that L3 are happy to publish this -- that's where big monopoly ISPs have led their industry.(tags: net-neutrality networking internet level3 congestion isps us-politics)
interview with Google VP of SRE Ben Treynor
interviewed by Niall Murphy, no less ;). Some good info on what Google deems important from an ops/SRE perspective
(tags: sre ops devops google monitoring interviews ben-treynor)
Faster BAM Sorting with SAMtools and RocksDB
Now this is really really clever. Heap-merging a heavyweight genomics format, using RocksDB to speed it up.
There’s a problem with the single-pass merge described above when the number of intermediate files, N/R, is large. Merging the sorted intermediate files in limited memory requires constantly reading little bits from all those files, incurring a lot of disk seeks on rotating drives. In fact, at some point, samtools sort performance becomes effectively bound to disk seeking. [...] In this scenario, samtools rocksort can sort the same data in much less time, using no more memory, by invoking RocksDB’s background compaction capabilities. With a few extra lines of code we configure RocksDB so that, while we’re still in the process of loading the BAM data, it runs additional background threads to merge batches of existing sorted temporary files into fewer, larger, sorted files. Just like the final merge, each background compaction requires only a modest amount of working memory.
(via the RocksDB facebook group)(tags: rocksdb algorithms sorting leveldb bam samtools merging heaps compaction)
Coding For Life (Battery Life, That Is)
great presentation on Android mobile battery life, and what to avoid
(tags: presentations via:sergio android mobile battery battery-life 3g wifi gprs hardware)
Oisin's mobile app release checklist
'This form is to document the testing that has been done on each app version before submitting to the App Store. For each item, indicate Yes if the testing has been done, Not Applicable if the testing does not apply (eg testing audio for an app that doesn’t play any), or No if the testing has not been done for another reason.'
(tags: apps checklists release coding ios android mobile ohurley)
"A New Data Structure For Cumulative Frequency Tables"
paper by Peter M Fenwick, 1993. 'A new method (the ‘binary indexed tree’) is presented for maintaining the cumulative frequencies which are needed to support dynamic arithmetic data compression. It is based on a decomposition of the cumulative frequencies into portions which parallel the binary representation of the index of the table element (or symbol). The operations to traverse the data structure are based on the binary coding of the index. In comparison with previous methods, the binary indexed tree is faster, using more compact data and simpler code. The access time for all operations is either constant or proportional to the logarithm of the table size. In conjunction with the compact data structure, this makes the new method particularly suitable for large symbol alphabets.' via Jakob Buchgraber, who's implementing it right now in Netty ;)
(tags: netty frequency-tables data-structures algorithms coding binary-tree indexing compression symbol-alphabets)
-
Patent trolls have sued or threatened to sue tens of thousands of end-users. For example, Innovatio attacked cafes, bakeries, and even a funeral parlor for using off-the-shelf Wi-Fi routers. And the notorious scanner troll, MPHJ, targeted small businesses and nonprofits around the country for using ordinary office equipment. As a recent paper explained: “Mass suits against technology customers have become too common, involving building block technologies like wi-fi, scanning, email and website technologies.” The growth in patent suits against customers reveals the importance of the Limelight case. A ruling that made it even easier to sue customers (by allowing suits against someone who performs just some steps of a patent) would encourage patent trolls to launch more abusive litigation campaigns. We hope the Supreme Court will restore the sensible rule that only a single entity (or its agents) can infringe a patent.
(tags: patents uspto swpats eff consumer law legal patent-infringement scanners wifi printers)
Hanging on the telephone – has anyone got it right on the new ban on text driving?
Some good legal commentary on this new Irish law.
There has been much hand-wringing and concern about whether or not the 2014 Regulations prohibit the use of Google Maps or Hailo, for example. They don’t, but this does not mean that drivers should feel free to use non-texting functions of their phones while driving – holding a mobile phone (which could include a tablet) while driving remains prohibited, whatever the use it is being put to. Moreover, offences of dangerous and careless driving and driving without due care and attention could cover a wide range of bad driving, and could include, for example, driving while zooming in and out of maps on your phone or sending stickers on WhatsApp.
(tags: ireland law driving safety mobile-phones texting google-maps satnav)
-
'better dates and times for Python', to fix the absurd proliferation of slightly-incompatible Python date/time types and APIs. unfortunately, http://imgs.xkcd.com/comics/standards.png applies....
(tags: python libraries time dates timestamps timezones apis proliferation iso-8601)
Holdings: Guinness's Brewery Dublin
'Guinness's Brewery Dublin. Malt House, malt on floor; sign' - One of the photos taken by my great-grandfather, Thomas H. Mason, around the turn of the century from the NLI collection
(tags: nli ireland photos t-h-mason history dublin guinness maltings beer)
Published image: 'An Irish Village'.
'Cart, man/woman; 2 men and boy serving beer outside, + sign 'Rich King Spirits'. Ragged attire' - One of the photos taken by my great-grandfather, Thomas H. Mason, around the turn of the century from the NLI collection
-
One of the photos taken by my great-grandfather, Thomas H. Mason, around the turn of the century from the NLI collection
-
One of the photos taken by my great-grandfather, Thomas H. Mason, around the turn of the century from the NLI collection
(tags: ireland history science chemistry crystals t-h-mason photos)
-
One of the SmartStack developers at AirBNB responds to Consul.io's comments. FWIW, we use SmartStack in Swrve and it works pretty well...
(tags: smartstack airbnb ops consul serf load-balancing availability resiliency network-partitions outages)
A Closer Look At OC's Anti-Vaccination Cluster
In communities such as San Clemente, Laguna Beach, Laguna Niguel, Aliso Viejo, Mission Viejo and Capistrano Beach, where Dr. Bob Sears practices, there are clusters of unvaccinated children. Last year, at 15 of the 40 elementary schools in the Capistrano Unified School District, more than 10 percent of kindergartners had [Personal Belief exemptions], according to data from the California Department of Public Health. At one public charter school, Journey, 56 percent of kindergartners were unvaccinated, at least partially, due to their parents' beliefs.
This is going to end horribly. Typical OC(tags: orange-county health vaccination laguna-beach oc dr-bob-sears kindergarten measles mumps rubella pertussis epidemiology)
-
Today we’re open sourcing Secor, a zero data loss log persistence service whose initial use case was to save logs produced by our monetization pipeline. Secor persists Kafka logs to long-term storage such as Amazon S3. It’s not affected by S3’s weak eventual consistency model, incurs no data loss, scales horizontally, and optionally partitions data based on date.
(tags: pinterest hadoop secor storm kafka architecture s3 logs archival)
Coping with the TCP TIME-WAIT state on busy Linux servers
extensive blog post
(tags: networking linux tcp performance time-wait sysctls tuning)
Flood IO Offering Network Emulation
Performance-testing-as-a-service company Flood.IO now offering emulation of various crappy end-user networks: GSM, DSL, GPRS, 3G, 4G etc. Great idea.
(tags: flood.io performance networking internet load-testing testing jmeter gatling tests gsm 3g mobile simulation)
-
Disqus' realtime architecture -- nginx PushStream module doing the heavy lifting, basically. See https://gist.github.com/dctrwatson/0b3b52050254e273ff11 for the production nginx configs they use. I am very impressed that push-stream has grown to be so solid; it's a great way to deal with push from the sounds of it. http://blog.disqus.com/post/51155103801/trying-out-this-go-thing now notes that some of the realtime backends are in Go. https://speakerdeck.com/dctrwatson/c1m-and-nginx ("C1M and Nginx") is a more up to date presentation. It notes that PushStream supports "EventSource, WebSocket, Long Polling, and forever iframe". More sysctls and nginx tuning in that prez.
(tags: sysctl nginx tuning go disqus realtime push eventsource websockets long-polling iframe python)
'The Design And Implementation Of Modern Column-Oriented Database Systems'
paper, PDF; Daniel Abadi et al.
(tags: papers pdf columnar-stores column-oriented databases storage architecture algorithms)
'Pickles & Spores: Improving Support for Distributed Programming in Scala
'Spores are "small units of possibly mobile functional behavior". They're a closure-like abstraction meant for use in distributed or concurrent environments. Spores provide a guarantee that the environment is effectively immutable, and safe to ship over the wire. Spores aim to give library authors some confidence in exposing functions (or, rather, spores) in public APIs for safe consumption in a distributed or concurrent environment. The first part of the talk covers a simpler variant of spores as they are proposed for inclusion in Scala 2.11. The second part of the talk briefly introduces a current research project ongoing at EPFL which leverages Scala's type system to provide type constraints that give authors finer-grained control over spore capturing semantics. What's more, these type constraints can be composed during spore composition, so library authors are effectively able to propagate expert knowledge via these composable constraints. The last part of the talk briefly covers Scala/Pickling, a fast new, open serialization framework.'
(tags: pickling scala presentations spores closures fp immutability coding distributed distcomp serialization formats network)
BBC News - Microsoft 'must release' data held on Dublin server
Messy. I can't see this lasting beyond an appeal.
Law enforcement efforts would be seriously impeded and the burden on the government would be substantial if they had to co-ordinate with foreign governments to obtain this sort of information from internet service providers such as Microsoft and Google, Judge Francis said. In a blog post, Microsoft's deputy general counsel, David Howard, said: "A US prosecutor cannot obtain a US warrant to search someone's home located in another country, just as another country's prosecutor cannot obtain a court order in her home country to conduct a search in the United States. "We think the same rules should apply in the online world, but the government disagrees."
(tags: microsoft regions law us-law privacy google cloud international-law surveillance)
Russia passes bill requiring bloggers to register with government
A bill passed by the Russian parliament on Tuesday says that any blogger read by at least 3,000 people a day has to register with the government telecom watchdog and follow the same rules as those imposed by Russian law on mass media. These include privacy safeguards, the obligation to check all facts, silent days before elections and loose but threatening injunctions against "abetting terrorism" and "extremism."
Russian blogging platforms have responded by changing view-counter tickers to display "2500+" as a max.(tags: russia blogs blogging terrorism extremism internet regulation chilling-effects censorship)
-
as used in the Apollo guidance computer systems -- hand-woven by "little old ladies". Amazing
(tags: core-memory memory rope-core guidance apollo space nasa history 1960s via:hn)
How I used Heartbleed to steal a site’s private crypto key
good writeup from Robin Xu
(tags: robin-xu heartbleed rsa private-keys openssl hacking security tls ssl)
Making runbooks more useful by exposing them through monitoring
Nice example of an ops runbook wiki for a service
(tags: runbooks ops devops monitoring sysadmin documentation wiki)
-
Ubuntu, C*, HAProxy, MySQL, RDS, multiple AWS regions.
(tags: hailo cassandra ubuntu mysql rds aws ec2 haproxy architecture)
They called it "big iron" for a reason: the Cray Motor-Generator Unit
I think the deal with the Motor-Generator Unit was that the Cray 1 needed not just enormous amounts of power (over a hundred kilowatts!), but also very stable power. So it ran from a huge electric generator connected directly to a huge electric motor, the motor running from dirty grid power and the generator, in turn, feeding the computer's own multi-voltage PSU. The Cray 1 itself weighed a mere 2.4 tonnes, but all this support stuff added several more tonnes.
via RobS.(tags: via:rob-synnott cray history big-iron motors power electricity generators)
Go: Best Practices for Production Environments
how Soundcloud deploy their Go services, after 2.5 years of Go in production
(tags: go tips deployment best-practices soundcloud ops)
-
'Location Codes for Irish Addresses'. Looks like, as expected, this will not have no-cost licensing terms; companies and non-profit orgs will all have to pay Capita Business Support Services Ireland for access. boo.
(tags: eircode mapping addressing geocoding ireland open-source licensing postcodes)
Why your company shouldn’t use Git submodules
'It is not uncommon at all when working on any kind of larger-scale project with Git to find yourself wanting to share code between multiple different repositories – whether it be some core system among multiple different products built on top of that system, or perhaps a shared utility library between projects. At first glance, Git submodules seem to be the perfect answer for this: they come built-in with Git, they act like miniature repositories (so people are already familiar with how to change them), et cetera. They even support pointing at specific versions of the shared code, so if one project doesn’t want to deal with integrating the “latest and greatest” version, it doesn’t have to. It’s after you’ve actually worked with submodules for a while that you start to notice just how half-baked Git’s submodules system really is.'
(tags: git source-control revision-control submodules storage)
Eyes Over Compton: How Police Spied on a Whole City
The law-enforcement pervasive-surveillance CCTV PVR.
In a secret test of mass surveillance technology, the Los Angeles County Sheriff's Department sent a civilian aircraft* over Compton, California, capturing high-resolution video of everything that happened inside that 10-square-mile municipality. Compton residents weren't told about the spying, which happened in 2012. "We literally watched all of Compton during the times that we were flying, so we could zoom in anywhere within the city of Compton and follow cars and see people," Ross McNutt of Persistence Surveillance Systems told the Center for Investigative Reporting, which unearthed and did the first reporting on this important story. The technology he's trying to sell to police departments all over America can stay aloft for up to six hours. Like Google Earth, it enables police to zoom in on certain areas. And like TiVo, it permits them to rewind, so that they can look back and see what happened anywhere they weren't watching in real time.
(via New Aesthetic)(tags: pvr cctv law-enforcement police compton los-angeles law surveillance future)
-
Blog post from the ES team. They use "evil tests" -- basically unit/system tests, particularly using randomized error-injecting mock infrastructure. Good practices; I've done the same myself quite recently for Swrve's realtime infrastructure
(tags: elasticsearch resiliency network-partitions reliability testing mocking error-injection)
Meet Ireland’s first bitcoin politician
Ossian Smyth -- Green Party internet spokesman and representative for communications, energy, and natural resources, with a top wheeze: “I think it is one of the most transparent ways of receiving donations. No one would know how much money can be donated into a bank account, but with bitcoin anyone can go to the block chain and look at the wallet." excellent ;)
(tags: ossian-smyth bitcoin fundraising greens politics ireland dublin green-party internet)
OpenPostCode demolishes the planned "Eircode" postcode system
Comprehensively ripped to shreds. Bottom line: 'Postcodes will be largely meaningless to anyone without access to the pay-walled database. It is another tax on business.'
(tags: postcodes ireland eircode addressing geocoding mapping maps open-data)
Netflix comes out strongly against Comcast
In sum, Comcast is not charging Netflix for transit service. It is charging Netflix for access to its subscribers. Comcast also charges its subscribers for access to Internet content providers like Netflix. In this way, Comcast is double dipping by getting both its subscribers and Internet content providers to pay for access to each other.
FIGHT!(tags: netflix comcast network-neutrality cartels competition us-politics business isps)
co-founder of the Boston Beer Company swears by active dry yeast as a hangover-avoidance remedy
what [Joe] Owades knew was that active dry yeast has an enzyme in it called alcohol dehydrogenases (ADH). Roughly put, ADH is able to break alcohol molecules down into their constituent parts of carbon, hydrogen, and oxygen. Which is the same thing that happens when your body metabolizes alcohol in its liver. Owades realized if you also have that enzyme in your stomach when the alcohol first hits it, the ADH will begin breaking it down before it gets into your bloodstream and, thus, your brain.
Plausible!(tags: beer science health yeast alcohol adh medicine enzymes stomach food)
-
At Comcast, our applications need convenient, low-latency access to important reference datasets. For example, our XfinityTV websites and apps need to use entertainment-related data to serve almost every API or web request to our datacenters: information like what year Casablanca was released, or how many episodes were in Season 7 of Seinfeld, or when the next episode of the Voice will be airing (and on which channel!). We traditionally managed this information with a combination of relational databases and RESTful web services but yearned for something simpler than the ORM, HTTP client, and cache management code our developers dealt with on a daily basis. As main memory sizes on commodity servers continued to grow, however, we asked ourselves: How can we keep this reference data entirely in RAM, while ensuring it gets updated as needed and is easily accessible to application developers? The Sirius distributed system library is our answer to that question, and we're happy to announce that we've made it available as an open source project. Sirius is written in Scala and uses the Akka actor system under the covers, but is easily usable by any JVM-based language.
Also includes a Paxos implementation with "fast follower" read-only slave replication. ASL2-licensed open source. The only thing I can spot to be worried about is speed of startup; they note that apps need to replay a log at startup to rebuild state, which can be slow if unoptimized in my experience. Update: in a twitter conversation at https://twitter.com/jon_moore/status/459363751893139456 , Jon Moore indicated they haven't had problems with this even with 'datasets consuming 10-20GB of heap', and have 'benchmarked a 5-node Sirius ingest cluster up to 1k updates/sec write throughput.' That's pretty solid!(tags: open-source comcast paxos replication read-only datastores storage memory memcached redis sirius scala akka jvm libraries)
AWS Elastic Beanstalk for Docker
This is pretty amazing. nice work, Beanstalk team. not sure how well it integrates with the rest of AWS though
(tags: aws amazon docker ec2 beanstalk ops containers linux)
TDD is dead. Long live testing
Oh god. I agree with DHH. shoot me now.
Test-first units leads to an overly complex web of intermediary objects and indirection in order to avoid doing anything that's "slow". Like hitting the database. Or file IO. Or going through the browser to test the whole system. It's given birth to some truly horrendous monstrosities of architecture. A dense jungle of service objects, command patterns, and worse. I rarely unit test in the traditional sense of the word, where all dependencies are mocked out, and thousands of tests can close in seconds. It just hasn't been a useful way of dealing with the testing of Rails applications. I test active record models directly, letting them hit the database, and through the use of fixtures. Then layered on top is currently a set of controller tests, but I'd much rather replace those with even higher level system tests through Capybara or similar. I think that's the direction we're heading. Less emphasis on unit tests, because we're no longer doing test-first as a design practice, and more emphasis on, yes, slow, system tests.
(tags: tdd rails testing unit-tests system-tests integration-testing ruby dhh mocks)
All at sea: global shipping fleet exposed to hacking threat | Reuters
Hackers recently shut down a floating oil rig by tilting it, while another rig was so riddled with computer malware that it took 19 days to make it seaworthy again; Somali pirates help choose their targets by viewing navigational data online, prompting ships to either turn off their navigational devices, or fake the data so it looks like they're somewhere else; and hackers infiltrated computers connected to the Belgian port of Antwerp, located specific containers, made off with their smuggled drugs and deleted the records.
(via Mikko Hypponen)(tags: via:mikko security hacking oilrigs shipping ships maritime antwerp piracy malware)
Search Results - (Author:Thomas H Mason)
Photographs taken by my great-grandfather, Thomas H. Mason, in the National Library of Ireland's newly-digitized online collection
(tags: family thomas-h-mason history ireland photography archive nli)
Syria's lethal Facebook checkpoints
An anonymous tip from a highly reliable source: "There are checkpoints in Syria where your Facebook is checked for affiliation with the rebellious groups or individuals aligned with the rebellion. People are then disappeared or killed if they are found to be connected. Drivers are literally forced to load their Facebook/Twitter accounts and then they are riffled through. It's happening daily, and has been for a year at least."
(tags: boing-boing war facebook social-media twitter internet checkpoints syria)
The ancient Egyptian word for 'cat' was pronounced 'miaow'
and many other cool-but-true factoids
(tags: fun quora interesting via:dorothy factoids true urban-legends facts)
-
kellabyte's hack in progress -- 'an asynchronous HTTP server framework written in C. The goal of Haywire is to learn how to create a server with a minimal feature set that can handle a high rate of requests and connections with as low of latency and resource usage as possible. Haywire uses the event loop based libuv platform layer that node.js is built on top of (also written in C). libuv abstracts IOCP on Windows and epoll/kqueue/event ports/etc. on Unix systems to provide efficient asynchronous I/O on all supported platforms.' Outperforms libevent handily, it seems. Apache-licensed.
(tags: server http asynchronous libuv haywire kellabyte c events open-source asl2)
spoofing the samsung smart tv internet check
If this kind of bullshit -- a HTTP GET of an XML file from www.samsung.com -- is how the Samsung Smart TV firmware decides if the internet is working or not, I dread to think how crappy the rest of the code is. (At least in Netnote we performed a bunch of bigco-domain DNS lookups before giving up...)
(tags: smart-tv samsung fail xml http internet embedded-software firmware crap-code)
ImperialViolet - No, don't enable revocation checking
...because it doesn't stop attacks. Turning it on does nothing but slow things down. You can tell when something is security theater because you need some absurdly specific situation in order for it to be useful.
(tags: cryptography crypto heartbleed ssl security tls https internet revocation crls)
-
*Really* intriguing slide deck on how Asia and Africa have invented new ways of operating a business via the internet, and are turning globalisation upside down (via Yoz)
(tags: via:yoz africa asia globalisation internet web mobile payment business ecommerce global)
Using AWS in the context of Australian Privacy Considerations
interesting new white paper from Amazon regarding recent strengthening of the Aussie privacy laws, particularly w.r.t. geographic location of data and access by overseas law enforcement agencies...
(tags: amazon aws security law privacy data-protection ec2 s3 nsa gchq five-eyes)
For world’s biggest troll, first patent case ends up in tatters
Love it. Intellectual Ventures suffers a major bloody nose in IV/Capital One patent-trolling litigation
(tags: trolls patent-trolls patents swpats capital-one intellectual-ventures)
Notes On Concurrent Ring Buffer Queue Mechanics
great notes from Nitsan Wakart, who's been hacking on ringbuffers a lot in JAQ
(tags: jaq nitsanw atomic concurrency data-structures ring-buffers queueing queues algorithms)
Uplink Latency of WiFi and 4G Networks
It's high. Wifi in particular shows high variability and long latency tails
-
vim-flake8 is a Vim plugin that runs the currently open file through Flake8, a static syntax and style checker for Python source code. It supersedes both vim-pyflakes and vim-pep8. Flake8 is a wrapper around PyFlakes (static syntax checker), PEP8 (style checker) and Ned's MacCabe script (complexity checker).
Recommended by several pythonistas of my acquaintance!(tags: vim python syntax error-checking errors flake8 editors ides coding)
-
Nice-looking new tool from Hashicorp; service discovery and configuration service, built on Raft for leader election, Serf for gossip-based messaging, and Go. Some features: * Gossip is performed over both TCP and UDP; * gossip messages are encrypted symmetrically and therefore secure from eavesdropping, tampering, spoofing and packet corruption (like the incident which brought down S3 for days: http://status.aws.amazon.com/s3-20080720.html ); * exposes both a HTTP interface and (even better) DNS; * includes explicit support for long-distance WAN operation as well as on LANs. It all looks very practical and usable. MPL-licensed. The only potential risk I can see is that expecting to receive config updates from a blocking poll of the HTTP interface needs some good "best practice" docs, to ensure that people don't mishandle the scenario where there is a network partition between your calling code and the Consul server/agent. Without any heartbeating protocol behind the scenes, HTTP is vulnerable to "hung connections" which would result in a config change being silently missed by the client until the connection eventually is timed out, either by the calling code or the client-side kernel. This could potentially take minutes to occur, which in some usage scenarios could be a big, unforeseen problem.
(tags: configuration service-discovery distcomp raft consensus-algorithms go mpl open-source dns http gossip-protocol hashicorp)
Druid | How We Scaled HyperLogLog: Three Real-World Optimizations
3 optimizations Druid.io have made to the HLL algorithm to scale it up for production use in Metamarkets: compacting registers (fixes a bug with unions of multiple HLLs); a sparse storage format (to optimize space); faster lookups using a lookup table.
(tags: druid.io metamarkets scaling hyperloglog hll algorithms performance optimization counting estimation)
HyperLogLog - Intersection Arithmetic
'In general HLL intersection in StreamLib works. |A INTERSECT B| = |A| + |B| - |A UNION B|. Timon's article on intersection is important to read though. The usefulness of HLL intersection depends on the features of the HLLs you are intersecting.'
(tags: hyperloglog hll hyperloglogplus streamlib intersections sets estimation algorithms)
Structural Integrity | 99% Invisible
'The student (who has since been lost to history) was studying Citicorp Center as part of his thesis and had found that the building was particularly vulnerable to quartering winds (winds that strike the building at its corners). Normally, buildings are strongest at their corners, and it’s the perpendicular winds (winds that strike the building at its face) that cause the greatest strain. But this was not a normal building. LeMessurier had accounted for the perpendicular winds, but not the quartering winds. He checked the math, and found that the student was right. He compared what velocity winds the building could withstand with weather data, and found that a storm strong enough to topple Citicorp Center hits New York City every 55 years. But that’s only if the tuned mass damper, which keeps the building stable, is running. LeMessurier realized that a major storm could cause a blackout and render the tuned mass damper inoperable. Without the tuned mass damper, LeMessurier calculated that a storm powerful enough to take out the building his New York every sixteen years.'
(tags: william-lemessurier architecture danger risk buildings nyc citicorp-center wind mass-dampers physics)
Linode announces new instance specs
'TL;DR: SSDs + Insane network + Faster processors + Double the RAM + Hourly Billing'
(tags: hosting linode ssd performance linux ops datacenters)
-
Fcron is a scheduler. It aims at replacing Vixie Cron, so it implements most of its functionalities. But contrary to Vixie Cron, fcron does not need your system to be up 7 days a week, 24 hours a day : it also works well with systems which are running only occasionnally (contrary to anacrontab). In other words, fcron does both the job of Vixie Cron and anacron, but does even more and better :)) ...
Thanks Craig!(tags: via:chughes cron fcron unix linux ops scheduler automation scripts)
-
They've done the classic website-redesign screwup -- omitted redirects from the old URLs.
Sam Silverwood-Cope, director of Intelligent Positioning, said: "They've ignored the legacy of the old Ryanair.com. It's quite startling. They are doing it just before their busiest time of the year." A change in [URLs] without proper redirects means many results found by Google now simply return error pages, he added. "Unless redirects get put in pretty soon, the position is going to get worse and worse."
(tags: ryanair inept fail funny via:christinebohan web google search redirects)
-
Scarfolk is a town in North West England that did not progress beyond 1979. Instead, the entire decade of the 1970s loops ad infinitum. Here in Scarfolk, pagan rituals blend seamlessly with science; hauntology is a compulsory subject at school, and everyone must be in bed by 8pm because they are perpetually running a slight fever. "Visit Scarfolk today. Our number one priority is keeping rabies at bay." For more information please reread.
(tags: scarfolk 1970s england history funny humour public-information pagan morbid)
-
OpenBSD are going wild ripping out "arcane VMS hacks" in an attempt to render OpenSSL's source code comprehensible, and finding amazing horrors like this: 'Well, even if time() isn't random, your RSA private key is probably pretty random. Do not feed RSA private key information to the random subsystem as entropy. It might be fed to a pluggable random subsystem…. What were they thinking?!'
(tags: random security openssl openbsd coding horror rsa private-keys entropy)
-
This is something Jenkins have come up to randomize and distribute load, in order to avoid the "thundering-herd" bug. Good call
(tags: jenkins randomization load-balancing load thundering-herd ops capacity sleep)
Shared Space and other bad junction designs lead to crashes and injuries
Just because something is "Dutch", that doesn't mean it's good. The Netherlands has many excellent examples, but you have to be very selective about what serves as a model. Cyclists fare best where their interactions with motor vehicles are limited and controlled. They fare best where infrastructure ensures that minor mistakes do not result in injuries. Anywhere that we rely upon everyone behaving perfectly but where we do not protect the most vulnerable, there will be injuries. Good design takes human nature into account and removes the causes of danger from those who are most vulnerable.
via Tony Finch(tags: cycling design junctions shared-space dutch holland roads safety crashes)
-
A sane Google Protocol Buffers library for Ruby. It's all about being Buf; ProtoBuf.
(tags: protobuf google protocol-buffers ruby coding libraries gems open-source)
-
When I said that we expected better of OpenSSL, it’s not merely that there’s some sense that security-driven code should be of higher quality. (OpenSSL is legendary for being considered a mess, internally.) It’s that the number of systems that depend on it, and then expose that dependency to the outside world, are considerable. This is security’s largest contributed dependency, but it’s not necessarily the software ecosystem’s largest dependency. Many, maybe even more systems depend on web servers like Apache, nginx, and IIS. We fear vulnerabilities significantly more in libz than libbz2 than libxz, because more servers will decompress untrusted gzip over bzip2 over xz. Vulnerabilities are not always in obvious places – people underestimate just how exposed things like libxml and libcurl and libjpeg are. And as HD Moore showed me some time ago, the embedded space is its own universe of pain, with 90’s bugs covering entire countries. If we accept that a software dependency becomes Critical Infrastructure at some level of economic dependency, the game becomes identifying those dependencies, and delivering direct technical and even financial support. What are the one million most important lines of code that are reachable by attackers, and least covered by defenders? (The browsers, for example, are very reachable by attackers but actually defended pretty zealously – FFMPEG public is not FFMPEG in Chrome.) Note that not all code, even in the same project, is equally exposed. It’s tempting to say it’s a needle in a haystack. But I promise you this: Anybody patches Linux/net/ipv4/tcp_input.c (which handles inbound network for Linux), a hundred alerts are fired and many of them are not to individuals anyone would call friendly. One guy, one night, patched OpenSSL. Not enough defenders noticed, and it took Neel Mehta to do something.
(tags: development openssl heartbleed ssl security dan-kaminsky infrastructure libraries open-source dependencies)
-
'a command line tool for Amazon's Simple Storage Service (S3). Written in Python, easy_install the package to install as an egg. Supports multithreaded operations for large volumes. Put, get, or delete many items concurrently, using a fixed-size pool of threads. Built on workerpool for multithreading and boto for access to the Amazon S3 API. Unix-friendly input and output. Pipe things in, out, and all around.' MIT-licensed open source. (via Paul Dolan)
(tags: via:pdolan s3 s3funnel tools ops aws python mit open-source)
-
The intuition behind Hydra is something like this, "I have a lot of data, and there are a lot of things I could try to learn about it -- so many that I'm not even sure what I want to know.” It's about the curse of dimensionality -- more dimensions means exponentially more cost for exhaustive analysis. Hydra tries to make it easy to reduce the number of dimensions, or the cost of watching them (via probabilistic data structures), to just the right point where everything runs quickly but can still answer almost any question you think you might care about.
Code: https://github.com/addthis/hydra Getting Started blog post: https://www.addthis.com/blog/2014/02/18/getting-started-with-hydra/(tags: hyrda hadoop data-processing big-data trees clusters analysis)
Stalled SCP and Hanging TCP Connections
a Cisco fail.
It looks like there’s a firewall in the middle that’s doing additional TCP sequence randomisation which was a good thing, but has been fixed in all current operating systems. Unfortunately, it seems that firewall doesn’t understand TCP SACK, which when coupled with a small amount of packet loss and a stateful host firewall that blocks invalid packets results in TCP connections that stall randomly. A little digging revealed that firewall to be the Cisco Firewall Services Module on our Canterbury network border.
(via Tony Finch)(tags: via:fanf cisco networking firewalls scp tcp hangs sack tcpdump)
Akamai's "Secure Heap" patch wasn't good enough
'Having the private keys inaccessible is a good defense in depth move. For this patch to work you have to make sure all sensitive values are stored in the secure area, not just check that the area looks inaccessible. You can't do that by keeping the private key in the same process. A review by a security engineer would have prevented a false sense of security. A version where the private key and the calculations are in a separate process would be more secure. If you decide to write that version, I'll gladly see if I can break that too.' Akamai's response: https://blogs.akamai.com/2014/04/heartbleed-update-v3.html -- to their credit, they recognise that they need to take further action. (via Tony Finch)
(tags: via:fanf cryptography openssl heartbleed akamai security ssl tls)
-
Colm MacCarthaigh writes about a simple sharding/load-balancing algorithm which uses randomized instance selection and optional additional compartmentalization. See also: continuous hashing, and http://aphyr.com/posts/278-timelike-2-everything-fails-all-the-time
(tags: hashing load-balancing sharding partitions dist-sys distcomp architecture coding)
Open Crypto Audit Project: TrueCrypt
phase I, a source code audit by iSEC Partners, is now complete. Bruce Schneier says: "I'm still using it".
(tags: encryption security crypto truecrypt audits source-code isec matthew-green)
-
In the PNAS paper, Brad Bushman and colleagues looked at 107 couples over 21 days and found that people experiencing uncharacteristically low blood sugar were more likely to display anger toward their spouse. (The researchers measured this by having subjects stick needles into voodoo dolls representing their significant others.)
(tags: hangry hunger food eating science health blood-sugar voodoo-dolls glucose)
insane ESB health and safety policy
Where it is not possible to avoid reversing, it is ESB policy that staff driving on behalf of the company or anybody on company premises should reverse into car spaces/bays, allowing them to drive out subsequently.
BUT WHYYYYYYYYYY(tags: esb health-n-safety policies crazy funny driving reversing lol safety)
Cloudflare demonstrate Heartbleed key extraction
from nginx. 'Based on the findings, we recommend everyone reissue + revoke their private keys.'
(tags: security nginx heartbleed ssl tls exploits private-keys)
When two-factor authentication is not enough
Fastmail.FM nearly had their domain stolen through an attack exploiting missing 2FA authentication in Gandi.
An important lesson learned is that just because a provider has a checkbox labelled “2 factor authentication” in their feature list, the two factors may not be protecting everything – and they may not even realise that fact themselves. Security risks always come on the unexpected paths – the “off label” uses that you didn’t think about, and the subtle interaction of multiple features which are useful and correct in isolation.
(tags: gandi 2fa fastmail authentication security mfa two-factor-authentication mail)
Of Money, Responsibility, and Pride
Steve Marquess of the OpenSSL Foundation on their funding, and lack thereof:
I stand in awe of their talent and dedication, that of Stephen Henson in particular. It takes nerves of steel to work for many years on hundreds of thousands of lines of very complex code, with every line of code you touch visible to the world, knowing that code is used by banks, firewalls, weapons systems, web sites, smart phones, industry, government, everywhere. Knowing that you’ll be ignored and unappreciated until something goes wrong. The combination of the personality to handle that kind of pressure with the relevant technical skills and experience to effectively work on such software is a rare commodity, and those who have it are likely to already be a valued, well-rewarded, and jealously guarded resource of some company or worthy cause. For those reasons OpenSSL will always be undermanned, but the present situation can and should be improved. There should be at least a half dozen full time OpenSSL team members, not just one, able to concentrate on the care and feeding of OpenSSL without having to hustle commercial work. If you’re a corporate or government decision maker in a position to do something about it, give it some thought. Please. I’m getting old and weary and I’d like to retire someday.
(tags: funding open-source openssl heartbleed internet security money)
-
a system for building agents that perform automated tasks for you online. They can read the web, watch for events, and take actions on your behalf. Huginn's Agents create and consume events, propagating them along a directed event flow graph. Think of it as Yahoo! Pipes plus IFTTT on your own server. You always know who has your data. You do.
MIT-licensed open source, built on Rails.(tags: ifttt automation huginn ruby rails open-source agents)
Why no SSL ? — Varnish version 4.0.0 documentation
Poul-Henning Kemp details why Varnish doesn't do SSL -- basically due to the quality and complexity of open-source SSL implementations:
There is no other way we can guarantee that secret krypto-bits do not leak anywhere they should not, than by fencing in the code that deals with them in a child process, so the bulk of varnish never gets anywhere near the certificates, not even during a core-dump.
Now looking pretty smart, post-Heartbleed.(tags: ssl tls varnish open-source poul-henning-kemp https http proxies security coding)
Basho LevelDB supports tiered storage
Tiered storage is turning out to be a pretty practical trick to take advantage of SSDs:
The justification for two types/speeds of storage arrays is simple. leveldb is extremely write intensive in its lower levels. The write intensity drops off as the level number increases. Similarly, current and frequently updated data tends to be in lower levels while archival data tends to be in higher levels. These leveldb characteristics create a desire to have faster, more expensive storage arrays for the high intensity lower levels. This branch allows the high intensity lower levels to be on expensive storage arrays while slower, less expensive storage arrays to hold the higher level data to reduce costs.
(tags: caching tiered-storage storage ssds ebs leveldb basho patches riak iops)
Forbes on the skeleton crew nature of OpenSSL
This is a great point:
Obviously, those tending to the security protocols that support the rest of the Web need better infrastructure and more funding. “Large portions of the software infrastructure of the Internet are built and maintained by volunteers, who get little reward when their code works well but are blamed, and sometimes savagely derided, when it fails,” writes Foster in the New Yorker. [...] "money and support still tend to flow to the newest and sexiest projects, while boring but essential elements like OpenSSL limp along as volunteer efforts,” he writes. “It’s easy to take open-source software for granted, and to forget that the Internet we use every day depends in part on the freely donated work of thousands of programmers.” We need to find ways to pay for work that is currently essentially donated freely. One promising project is Bithub, from Whisper Systems, where people who make valuable contributions to open source projects are rewarded (with Bitcoin of course). But the pool of Bitcoin is still donation based. The Internet has helped create a culture of free, but what we may need to recognize is that we get what we pay for. Well-funded companies pulling critical code from open source projects for their sites should have formal fee arrangements, rather than the volunteer group simply hoping these users will pony up some Benjamins for “prominent logo placement” on a website most people had never heard of before Heartbleed.
(tags: open-source openssl free sponsorship forbes via:karl-whelan)
The Heartbleed Hit List: The Passwords You Need to Change Right Now
Good list
-
An excellent list of aspects of the Heartbleed OpenSSL bug which need to be thought about/talked about/considered
(tags: heartbleed openssl bugs exploits security ssl tls web https)
Does the heartbleed vulnerability affect clients as severely?
'Yes, clients are vulnerable to attack. A malicious server can use the Heartbleed vulnerability to compromise an affected client.' Ouch.
R3: Announcing the next generation of Amazon EC2 Memory-optimized instances
pricing announced, and available in most regions
Scalable Atomic Visibility with RAMP Transactions
Great new distcomp protocol work from Peter Bailis et al:
We’ve developed three new algorithms—called Read Atomic Multi-Partition (RAMP) Transactions—for ensuring atomic visibility in partitioned (sharded) databases: either all of a transaction’s updates are observed, or none are. [...] How they work: RAMP transactions allow readers and writers to proceed concurrently. Operations race, but readers autonomously detect the races and repair any non-atomic reads. The write protocol ensures readers never stall waiting for writes to arrive. Why they scale: Clients can’t cause other clients to stall (via synchronization independence) and clients only have to contact the servers responsible for items in their transactions (via partition independence). As a consequence, there’s no mutual exclusion or synchronous coordination across servers. The end result: RAMP transactions outperform existing approaches across a variety of workloads, and, for a workload of 95% reads, RAMP transactions scale to over 7 million ops/second on 100 servers at less than 5% overhead.
(tags: scale synchronization databases distcomp distributed ramp transactions scalability peter-bailis protocols sharding concurrency atomic partitions)
-
wow, WFMU's "Beware of the Blog" did a really good job of assembling these classic 1960s Cambodian psych mp3s, featuring Sinn Sisamouth and Ros Sereysothea among others. I still love the start of Ma Pi Naok....
(tags: mp3 download music cambodia psychedelia wfmu 1960s sinn-sisamouth ros-sereysothea)
MICA: A Holistic Approach To Fast In-Memory Key-Value Storage [paper]
Very interesting new approach to building a scalable in-memory K/V store. As Rajiv Kurian notes on the mechanical-sympathy list: 'The basic idea is that each core is responsible for a portion of the key-space and requests are forwarded to the right core, avoiding multiple-writer scenarios. This is opposed to designs like memcache which uses locks and shared memory. Some of the things I found interesting: The single writer design is taken to an extreme. Clients assist the partitioning of requests, by calculating hashes before submitting GET requests. It uses Intel DPDK instead of sockets to forward packets to the right core, without processing the packet on any core. Each core is paired with a dedicated RX/TX queue. The design for a lossy cache is simple but interesting. It does things like replacing a hash slot (instead of chaining) etc. to take advantage of the lossy nature of caches. There is a lossless design too. A bunch of tricks to optimize for memory performance. This includes pre-allocation, design of the hash indexes, prefetching tricks etc. There are some other concurrency tricks that were interesting. Handling dangling pointers was one of them.' Source code here: https://github.com/efficient/mica
(tags: mica in-memory memory ram key-value-stores storage smp dpdk multicore memcached concurrency)
Google's Open Bidder stack moving from Jetty to Netty
Open Bidder traditionally used Jetty as an embedded webserver, for the critical tasks of accepting connections, processing HTTP requests, managing service threads, etc. Jetty is a robust, but traditional stack that carries the weight and tradeoffs of Servlet’s 15 years old design. For a maximum performance RTB agent that must combine very large request concurrency with very low latencies, and often benefit also from low-level control over the transport, memory management and other issue, a different webserver stack was required. Open Bidder now supports Netty, an asynchronous, event-driven, high-performance webserver stack. For existing code, the most important impact is that Netty is not compatible with the Servlet API. Its own internal APIs are often too low-level, not to mention proprietary to Netty; so Open Bidder v0.5 introduces some new, stack-neutral APIs for things like HTTP requests and responses, cookies, request handlers, and even simple HTML templating based on Mustache. These APIs will work with both Netty and Jetty. This means you don’t need to change any code to switch between Jetty and Netty; on the other hand, it also means that existing code written for Open Bidder 0.4 may need some changes even if you plan to keep using Jetty. [....] Netty's superior efficiency is very significant; it supports 50% more traffic in the same hardware, and it maintains a perfect latency distribution even at the peak of its supported load.
This doc is noteworthy on a couple of grounds: 1. the use of Netty in a public API/library, and the additional layer in place to add a friendlier API on top of that. I hope they might consider releasing that part as OSS at some point. 2. I also find it interesting that their API uses protobufs to marshal the message, and they plan in a future release to serialize those to JSON documents -- that makes a lot of sense.(tags: apis google protobufs json documents interoperability netty jetty servlets performance java)
The University Times: TCD Provost Under Pressure To “Re-think” Identity Initiative
Students, staff and alumni put pressure on Provost to reconsider changes to Trinity College Dublin's name and coat of arms.
alumni scholars from 2004 and 1994 who had been invited back for the dinner shouted ‘Dublin’ after the Provost welcomed them back to “Trinity College”.
Daring Fireball: Rethinking What We Mean by 'Mobile Web'
We shouldn’t think of “the web” as only what renders in web browsers. We should think of the web as anything transmitted using HTTP and HTTPS. Apps and websites are peers, not competitors. They’re all just clients to the same services.
+1. Finally, a Daring Fireball post I agree with! ;)(tags: daring-fireball apps web http https mobile apple android browsers)
The little ssh that (sometimes) couldn't - Mina Naguib
A good demonstration of what it looks like when network-level packet corruption occurs on a TCP connection
(tags: ssh sysadmin networking tcp bugs bit-flips cosmic-rays corruption packet)
DRI wins their case at the ECJ!
Great stuff!
The Court has found that data retention “entails a wide-ranging and particularly serious interference with the fundamental rights to respect for private life and to the protection of personal data” and that it “entails an interference with the fundamental rights of practically the entire European population”. TJ McIntyre, Chairman of Digital Rights Ireland, said that “This is the first assessment of mass surveillance by a supreme court since the Snowden revelations. The ECJ’s judgement finds that untargeted monitoring of the entire population is unacceptable in a democratic society.” [...] Though the Directive has now been struck down, the issue will remain live in all the countries who have passed domestic law to implement the data retention mass surveillance regime. Digital Rights Ireland’s challenge to the Irish data retention system will return to the High Court in Dublin for the next phase of litigation.
(tags: dri digital-rights ireland eu ecj surveillance snooping law data-retention)
-
a cron job monitoring tool that keeps an eye on your periodic processes and notifies you when something doesn't happen. Daily backups, monthly emails, or cron jobs you need to monitor? Dead Man's Snitch has you covered. Know immediately when one of these processes doesn't work.
via Marc. VERY high resolution scans of original Apollo 11 and Apollo 14 charts
the Apollo 11 ALO and LM Descent Monitoring charts are tidied up and downloadable
(tags: apollo space history memorabilia images scans science nasa)
Garbage Collection Optimization for High-Throughput and Low-Latency Java Applications
LinkedIn talk about the GC opts they used to optimize the Feed. good detail
(tags: performance optimization linkedin java jvm gc tuning)
Great comment from the "banking uses eventual consistency" thread...
'In the grand scheme of things, insurance trumps consistency.' Love it.
(tags: banking banks insurance eventual-consistency databases consistency transactions nosql)
S3 as a single-web-page application engine
neat hack. Pity it returns a 403 error code due to the misuse of the ErrorDocument feature though
(tags: s3 javascript single-page web html markdown hacks)
-
Tracking Irish News Stories Over Time; Irish NewsDiffs archives changes in articles after publication. Currently, we track rte.ie and irishtimes.com.
(tags: rte irish-times diffing diffs changes tracking newspapers news ireland history)
Here’s Why You’re Not Hiring the Best and the Brightest
Jeff Atwood's persuasive argument that remote working needs to be the norm in tech work:
There’s an elephant in the room in the form of an implied clause: Always hire the best people… who are willing to live in San Francisco. Substitute Mountain View, New York, Boston, Chicago, or any other city. The problem is the same. We pay lip service to the idea of hiring the best people in the world — but in reality, we’re only hiring the best people who happen to be close by.
(tags: recruiting remote hiring business coding work remote-work telecommuting jobs silicon-valley jeff-atwood)
The First Few Milliseconds of an HTTPS Connection
in excruciating detail
(tags: https tls ssl security http protocols packets networking)
-
For EVERY youtube video, I always open the video and then immediately punch the slider bar to about 30 percent. For example, in this video, it should have just started at :40. Everything before :40 was a waste. This holds true for nearly every video in the universe.
Via Joe Drumgoole -- it's true!(tags: via:joedrumgoole videos youtube skip wadsworth-constant fast-forward funny)
-
Advice from a developer who helped rebuild Walmart.ca with Scala and Play
This is really good advice.(tags: walmart scala java languages coding relearning play akka)
-
open source, system-level exploration: capture system state and activity from a running Linux instance, then save, filter and analyze. Think of it as strace + tcpdump + lsof + awesome sauce. With a little Lua cherry on top.
This sounds excellent. Linux-based, GPLv2.(tags: debugging tools linux ops tracing strace open-source sysdig cli tcpdump lsof)
Manhattan, our real-time, multi-tenant distributed database for Twitter scale | Twitter Blogs
Impressive, but a fierce whiff of "NIH" off of this
(tags: manhattan consistency database twitter eventual-consistency nosql voldemort cassandra riak time-series)
European Parliament passes strong net neutrality law, along with major roaming reforms
European fans of the open internet can breathe a sigh of relief: the European parliament has passed a major package of telecoms law reform, complete with amendments that properly define and protect net neutrality. The amendments were introduced by the Socialist, Liberal, Green and Left blocs in the European Parliament after the final committee to tweak the package – the industry committee – left in a bunch of loopholes that would have allowed telcos to start classifying web services of their choice as “specialized services” that they can treat differently. [...] Now the whole package gets passed through to the next Parliament (elections are coming up in May), then the representatives of European countries for final approval.
(tags: netneutrality eu ep europe neelie-kroes freedom isps telecom)
-
Finally got around to migrating this old CPAN module to github
(tags: cpan github ipc-dirqueue perl open-source hacks git svn)
-
an easily embeddable, decentralized, k-ordered unique ID generator. It can use the same encoded ID format as Twitter's Snowflake or Boundary's Flake implementations as well as any other customized encoding without too much effort. The fauxflake-core module has no external dependencies and is meant to be about as light as possible while still delivering useful functionality. Essentially, if you want to be able to generate a unique identifier across your infrastructure with reasonable assurances about collisions, then you might find this useful.
From the same guy as the excellent Guava Retrier library; java, ASL2-licensed open source.(tags: open-source java asl2 fauxflake tools libraries unique-ids ids unique snowflake distsys)
-
Another cool library from Roy Holder: 'an Apache 2.0 licensed general-purpose retrying library, written in Python, to simplify the task of adding retry behavior to just about anything.' Similar to his Guava-Retrier java lib, but using a decorator.
(tags: retrying python libraries tools backoff retry error-handling)
Redis adds support for HyperLogLog
good comment thread on HN, discussing hlld and bloomd as well
(tags: hll bloom-filters hyperloglog redis data-structures estimation cardinality probabilistic probability hashing random)
LastPass Sentry Warns You When Your Online Accounts Have Been Breached
This is a brilliant feature. It just sent a warning to a friend about an old account he was no longer using
7 Hidden Dublin Secrets You Probably Never Knew About
from Pól Ó Conghaile's "Secret Dublin". great stuff
(tags: dublin pol-o-conghaile history secrets ireland pranks)
-
must give this a try. performance will be the issue I suspect
(tags: metrics java annotations jersey hacking coding jetty)
How Gmail Happened: The Inside Story of Its Launch 10 Years Ago Today
the inside story of the great work done by Paul Buchheit, Kevin Fox, and Sanjeev Singh to reinvent email in 2004
(tags: history gmail email smtp mua paul-buchheit kevin-fox launches google web)
-
this HN thread on the age-old UDP vs TCP question is way better than the original post -- lots of salient comments
(tags: udp tcp games protocols networking latency internet gaming hackernews)
-
'a.k.a. Faster == Better'. Slides from a talk given at Facebook on 19th March 2014 by Norman Maurer
(tags: netty java performance optimization facebook slides presentations)
Daylight saving time linked to heart attacks, study finds
Switching over to daylight saving time, and losing one hour of sleep, raised the risk of having a heart attack the following Monday by 25 per cent, compared to other Mondays during the year, according to a new US study released today. [...] The study found that heart attack risk fell 21 per cent later in the year, on the Tuesday after the clock was returned to standard time, and people got an extra hour’s sleep.
One clear answer: we need 25-hour days. More details: http://www.sciencedaily.com/releases/2014/03/140329175108.htm --Researchers used Michigan's BMC2 database, which collects data from all non-federal hospitals across the state, to identify admissions for heart attacks requiring percutaneous coronary intervention from Jan. 1, 2010 through Sept. 15, 2013. A total of 42,060 hospital admissions occurring over 1,354 days were included in the analysis. Total daily admissions were adjusted for seasonal and weekday variation, as the rate of heart attacks peaks in the winter and is lowest in the summer and is also greater on Mondays and lower over the weekend. The hospitals included in this study admit an average of 32 patients having a heart attack on any given Monday. But on the Monday immediately after springing ahead there were on average an additional eight heart attacks. There was no difference in the total weekly number of percutaneous coronary interventions performed for either the fall or spring time changes compared to the weeks before and after the time change.
(tags: daylight dst daylight-savings time dates calendar science health heart-attacks michigan hospitals statistics)
Steve Jobs on the disease of believing that 90% of the work is having a great idea
Good quote
(tags: steve-jobs quotes entrepreneurs startups making products building ideas concepts apple history)
DNS results now being manipulated in Turkey
Deep-packet inspection and rewriting on DNS packets for Google and OpenDNS servers. VPNs and DNSSEC up next!
(tags: turkey twitter dpi dns opendns google networking filtering surveillance proxying packets udp)
Phusion Passenger now supports the new Ruby 2.1 Out-Of-Band GC
a reasonable workaround for Ruby's GC problems in web apps
(tags: ruby gc ops performance phusion passenger rails unicorn out-of-band web-services)
Duplicity + S3: easy, cheap, encrypted, automated full-disk backups for your servers
actually sounds quite nice
(tags: backups s3 aws servers duplicity ops duply unix linux)
-
This is a couple of years old, but I like this:
Turbo Boyer-Moore is disappointing, its name doesn’t do it justice. In academia constant overhead doesn’t matter, but here we see that it matters a lot in practice. Turbo Boyer-Moore’s inner loop is so complex that we think we’re better off using the original Boyer-Moore.
A good demo of how large values of O(n) can be slower than small values of O(mn).(tags: algorithms search strings coding big-o string-search searching)
-
in a field as critical and competitive as smartphones, Google’s R&D strategy was being dictated, not by the company’s board, or by its shareholders, but by a desire not to anger the CEO of a rival company.
This is utterly bananas and anti-competitive. (via Des Traynor)(tags: via:destraynor wage-fixing apple google tech paris r-and-d steve-jobs jean-marie-hullot france competition poaching assholes)
[#1259] Add optimized queue for SCMP pattern and use it in NIO and nativ... · 6efac61 · netty/netty
Interesting -- Netty has imported an optimized ASL2-licensed MPSC queue implementation from Akka (presumably for performance raisins)
(tags: performance optimization open-source mpsc queues data-structures netty akka java)
Ruby Garbage Collection: Still Not Ready for Production
disastrous GC bugs in Ruby, requiring horrible kludgy workarounds
-
[via Boing Boing:] A new, exhaustive report from Human Rights Watch details the way the young state of modern Ethiopia has become a kind of pilot program for the abuse of "off-the-shelf" surveillance, availing itself of commercial products from the US, the UK, France, Italy and China in order to establish an abusive surveillance regime that violates human rights and suppresses legitimate political opposition under the guise of a anti-terrorism law that's so broadly interpreted as to be meaningless. The 137 page report [from Human Rights Watch] details the technologies the Ethiopian government has acquired from several countries and uses to facilitate surveillance of perceived political opponents inside the country and among the diaspora. The government’s surveillance practices violate the rights to freedom of expression, association, and access to information. The government’s monopoly over all mobile and Internet services through its sole, state-owned telecom operator, Ethio Telecom, facilitates abuse of surveillance powers.
(tags: human-rights surveillance ethiopia spying off-the-shelf spyware big-brother hrw human-rights-watch)
Chinese cops cuff 1,500 in fake base station spam raid
The street finds its own uses for things, in this case Stinger/IMSI-catcher-type fake mobile-phone base stations:
Fake base stations are becoming a particularly popular modus operandi. Often concealed in a van or car, they are driven through city streets to spread their messages. The professional spammer in question charged 1,000 yuan (£100) to spam thousands of users in a radius of a few hundred metres. The pseudo-base station used could send out around 6,000 messages in just half an hour, the report said. Often such spammers are hired by local businessmen to promote their wares.
(via Bernard Tyers)(tags: stingers imsi-catcher mobile-phones mobile cellphones china spam via:bernard-tyers)
-
The most grave issue is that each recording likely amounted to a serious criminal offence. Under Irish law, the recording of a telephone conversation on a public network without the consent of at least one party to the call amounts to an "interception", a criminal offence carrying a possible term of imprisonment of up to five years. [...] Consequently, unless gardai were notified that their calls might be recorded then a large number of criminal offences are likely to have been committed by and within the Garda Siochana itself.
(tags: gubu surveillance gardai ags tjmcintyre bugging tapping phones ireland politics)
-
A cool-looking new debugging tool for C/C++ from Mozilla.
Many, many people have noticed that if we had a way to reliably record program execution and replay it later, with the ability to debug the replay, we could largely tame the nondeterminism problem. This would also allow us to deliberately introduce nondeterminism so tests can explore more of the possible execution space, without impacting debuggability. Many record and replay systems have been built in pursuit of this vision. (I built one myself.) For various reasons these systems have not seen wide adoption. So, a few years ago we at Mozilla started a project to create a new record-and-replay tool that would overcome the obstacles blocking adoption. We call this tool rr.
Low runtime overhead; easy deployability; targeted at 32-bit (?!) Linux; OSS. (via Bryan O'Sullivan)(tags: via:bos mozilla debugging coding firefox rr record replay gdb c++ linux)
-
AIB now have a dedicated customer-support forum on Boards.ie. That is a *great* idea
Microservices and nanoservices
A great reaction to Martin Fowler's "microservices" coinage, from Arnon Rotem-Gal-Oz: 'I guess it is easier to use a new name (Microservices) rather than say that this is what SOA actually meant'; 'these are the very principles of SOA before vendors does pushed the [ESB] in the middle.' Others have also chosen to define microservices slightly differently, as a service written in 10-100 LOC. Arnon's reaction: “Nanoservice is an antipattern where a service is too fine-grained. A nanoservice is a service whose overhead (communications, maintenance, and so on) outweighs its utility.” Having dealt with maintaining an over-fine-grained SOA stack in Amazon, I can only agree with this definition; it's easy to make things too fine-grained and create a raft of distributed-computing bugs and deployment/management complexity where there is no need to do so.
(tags: architecture antipatterns nanoservices microservices soa services design esb)
-
slightly ruined by the inclusion of some "deliberately Turing-complete" systems
(tags: turing computation software via:jwz turing-complete accidents automatons)
-
The next step in the Turkish twitter-block arms race.
Bridge relays (or "bridges" for short) are Tor relays that aren't listed in the main Tor directory. Since there is no complete public list of them, even if your ISP is filtering connections to all the known Tor relays, they probably won't be able to block all the bridges. If you suspect your access to the Tor network is being blocked, you may want to use the bridge feature of Tor. The addition of bridges to Tor is a step forward in the blocking resistance race. It is perfectly possible that even if your ISP filters the Internet, you do not require a bridge to use Tor. So you should try to use Tor without bridges first, since it might work.
(tags: tor privacy turkey bridging networking tor-bridges twitter filtering blocking censorship)
Adrian Cockroft's Cloud Outage Reports Collection
The detailed summaries of outages from cloud vendors are comprehensive and the response to each highlights many lessons in how to build robust distributed systems. For outages that significantly affected Netflix, the Netflix techblog report gives insight into how to effectively build reliable services on top of AWS. [....] I plan to collect reports here over time, and welcome links to other write-ups of outages and how to survive them.
(tags: outages post-mortems documentation ops aws ec2 amazon google dropbox microsoft azure incident-response)
-
This looks like an excellent new feature for parents:
A supervised user is a special type of Chrome user who can browse the web with guidance. Under the supervision of the manager, a supervised user can browse the web and sign in to websites. Supervised users don't need a Google Account or an email address because the manager creates a profile for the supervised user through the manager's Google Account. As a manager of a supervised user, you can see the user’s browsing history, block specific sites, and approve which sites the user can see, all from the supervised users dashboard that is accessible from any browser.
(tags: users chrome supervision parental-control parents safety web browsing kids)
The Stony Brook Algorithm Repository
This WWW page is intended to serve as a comprehensive collection of algorithm implementations for over seventy of the most fundamental problems in combinatorial algorithms. The problem taxonomy, implementations, and supporting material are all drawn from my [ie. Steven Skiena's] book 'The Algorithm Design Manual'. Since the practical person is more often looking for a program than an algorithm, we provide pointers to solid implementations of useful algorithms, when they are available.
(tags: algorithms reference coding steven-skiena combinatorial cs)
The Overprotected Kid - The Atlantic
Great article.
There is a big difference between avoiding major hazards and making every decision with the primary goal of optimizing child safety (or enrichment, or happiness). We can no more create the perfect environment for our children than we can create perfect children. To believe otherwise is a delusion, and a harmful one; remind yourself of that every time the panic rises.
(tags: child-safety parenting safety kids education risk danger playgrounds the-land)
Issue 122 - android-query - HTTP 204 Response results in Network Error (-101)
an empty 204 response to a HTTP PUT will trigger this. See also https://code.google.com/p/android/issues/detail?id=24672, '"java.io.IOException: unexpected end of stream" on HttpURLConnection HEAD call'.
(tags: http urlconnection httpurlconnection java android dalvik bugs 204 head get exceptions)
-
'The European election will take place between 22 and 25 May 2014. Citizens, promise to vote for candidates that have signed a 10-point charter of digital rights! Show candidates that they need to earn your vote by signing our charter!'
(tags: europarl ep digital-rights rights ireland eu data-privacy data-protection privacy)
-
amazing 80's-VHS-feel animated GIFs from Gustavo Torres, a video artist from Argentina
(tags: anigifs animated gif retro cyberpunk gustavo-torres kidmograph fx video-art via:mlkshk)
-
'Microsoft went through a blogger’s private Hotmail account in order to trace the identity of a source who allegedly leaked trade secrets.' Bear in mind that the alleged violation which MS allege allows them to read their email was a breach of the terms of service, which also include distribution of content which 'incites, advocates, or expresses pornography, obscenity, vulgarity, [or] profanity'. So no dirty jokes on Hotmail!
(tags: hotmail fail scroogled microsoft stupid tos law privacy data-protection trade-secrets ip)
Theresa May warns Yahoo that its move to Dublin is a security worry
Y! is moving to Dublin to evade GCHQ spying on its users. And what is the UK response?
"There are concerns in the Home Office about how Ripa will apply to Yahoo once it has moved its headquarters to Dublin," said a Whitehall source. "The home secretary asked to see officials from Yahoo because in Dublin they don't have equivalent laws to Ripa. This could particularly affect investigations led by Scotland Yard and the national crime agency. They regard this as a very serious issue."
There's priorities for you!(tags: ripa gchq guardian uk privacy data-protection ireland dublin london spying surveillance yahoo)
A Look At Airbnb’s Irish Pub-Inspired Office In Dublin - DesignTAXI.com
Very nice, Airbnb!
Internet Tolls And The Case For Strong Net Neutrality
Netflix CEO Reed Hastings blogs about the need for Net Neutrality:
Interestingly, there is one special case where no-fee interconnection is embraced by the big ISPs -- when they are connecting among themselves. They argue this is because roughly the same amount of data comes and goes between their networks. But when we ask them if we too would qualify for no-fee interconnect if we changed our service to upload as much data as we download** -- thus filling their upstream networks and nearly doubling our total traffic -- there is an uncomfortable silence. That's because the ISP argument isn't sensible. Big ISPs aren't paying money to services like online backup that generate more upstream than downstream traffic. Data direction, in other words, has nothing to do with costs. ISPs around the world are investing in high-speed Internet and most already practice strong net neutrality. With strong net neutrality, new services requiring high-speed Internet can emerge and become popular, spurring even more demand for the lucrative high-speed packages ISPs offer. With strong net neutrality, everyone avoids the kind of brinkmanship over blackouts that plague the cable industry and harms consumers. As the Wall Street Journal chart shows, we're already getting to the brownout stage. Consumers deserve better.
(tags: consumer net-neutrality comcast netflix protectionism cartels isps us congestion capacity)
Micro jitter, busy waiting and binding CPUs
pinning threads to CPUs to reduce jitter and latency. Lots of graphs and measurements from Peter Lawrey
The Day Today - Pool Supervisor - YouTube
"in 1979, no-one died. in 1980, some one died. in 1981, no-one died. in 1982, no-one died. ... I could go on"
(tags: the-day-today no-one-died safety pool supervisor tricky-word-puzzles funny humour classic video)
The colossal arrogance of Newsweek’s Bitcoin “scoop” | Ars Technica
Many aspects of the story already look like a caricature of journalism gone awry. The man Goodman fingered as being worth $400 million or more is just as modest as his house suggests. He’s had a stroke and struggles with other health issues. Unemployed since 2001, he strives to take care of basic needs for himself and his 93-year-old mother, according to a reddit post by his brother Arthur Nakamoto (whom Goodman quoted as calling his brother an “asshole”). If Goodman has mystery evidence supporting the Dorian Nakamoto theory, it should have been revealed days ago. Otherwise, Newsweek and Goodman are delaying an inevitable comeuppance and doubling down on past mistakes. Nakamoto’s multiple denials on the record have changed the dynamic of the story. Standing by the story, at this point, is an attack on him and his credibility. The Dorian Nakamoto story is a “Dewey beats Truman” moment for the Internet age, with all of the hubris and none of the humor. It shouldn’t be allowed to end in the mists of “he said, she said.” Whether or not a lawsuit gets filed, Nakamoto v. Newsweek faces an imminent verdict in the court of public opinion: either the man is lying or the magazine is wrong.
(tags: dorian-nakamoto newsweek journalism bitcoin privacy satoshi-nakamoto)
-
While going through her papa's old belongings, a young girl discovered something incredible - a mind-bogglingly intricate maze that her father had drawn by hand 30 years ago. While working as a school janitor it had taken him 7 years to produce the piece, only for it to be forgotten about... until now.
34" x 24" print, $40 Continuous Delivery with ETL Systems
Lonely Planet and Dr Foster Intelligence both make heavy use of ETL in their products, and both organisations have applied the principles of Continuous Delivery to their delivery process. Some of the Continuous Delivery norms need to be adapted in the context of ETL, and some interesting patterns emerge, such as running Continuous Integration against data, as well as code.
(tags: etl video presentations lonely-planet dr-foster-intelligence continuous-delivery deployment pipelines)
-
'On March 9th a group posted a data leak, which included the trading history of all MtGox users from April 2011 to November 2013. The graphs below explore the trade behaviors of the 500 highest volume MtGox users from the leaked data set. These are the Bitcoin barons, wealthy speculators, dueling algorithms, greater fools, and many more who took bitcoin to the moon.'
(tags: dataviz stamen bitcoin data leaks mtgox greater-fools)
What We Know 2/5/14: The Mt. Chiliad Mystery
hats off to Rockstar -- GTA V has a great mystery mural with clues dotted throughout the game, and it's as-yet unsolved
(tags: mysteries gaming via:hilary_w games gta gta-v rockstar mount-chiliad ufos)
Make Your Own 3-D Printer Filament From Old Milk Jugs
Creating your own 3-D printer filament from old used milk jugs is exponentially cheaper, and uses considerably less energy, than buying new filament, according to new research from Michigan Technological University. [...] The savings are really quite impressive — 99 cents on the dollar, in addition to the reduced use of energy. Interestingly (but again not surprisingly), the amount of energy used to ‘recycle’ the old milk jugs yourself is considerably less than that used in recycling such jugs conventionally.
-
This is a really good post on governmental computing, open data, and so on:
The fact that I can go months hearing about "open data" without a single mention of ETL is a problem. ETL is the pipes of your house: it's how you open data.
(tags: civic open-data government etl data-pipeline tech via:timoreilly)
-
as TJ McIntyre noted: '€100 fine for a repeat spammer. Data Protection Commissioner calls this "strong protection". With a straight face.' Next will doubtless fork over the 100 Euros out of the petty cash drawer, then carry on regardless. This isn't a useful fine. What a farce...
(tags: cheap farce dpc data-protection privacy anti-spam next spam convictions fines ireland)
-
The mass surveillance methods employed in [the UK, USA, and India], many of them exposed by NSA whistleblower Edward Snowden, are all the more intolerable because they will be used and indeed are already being used by authoritarians countries such as Iran, China, Turkmenistan, Saudi Arabia and Bahrain to justify their own violations of freedom of information. How will so-called democratic countries will able to press for the protection of journalists if they adopt the very practices they are criticizing authoritarian regimes for?
This is utterly jaw-dropping -- throughout the world, real-time mass-monitoring infrastructure is silently being dropped into place. France and India are particularly pervasive(tags: journalism censorship internet france india privacy data-protection surveillance spying law snowden authoritarianism)
The Microservice Declaration of Independence
"Microservices" seems to be yet another term for SOA; small, decoupled, independently-deployed services, with well-defined public HTTP APIs. Pretty much all the services I've worked on over the past few years have been built in this style. Still, let's keep an eye on this concept anyway. Another definition seems to be a more FP-style one: http://www.slideshare.net/michaelneale/microservices-and-functional-programming -- where the "microservice" does one narrowly-defined thing, and that alone.
(tags: microservices soa architecture handwaving http services web deployment)
No, Nate, brogrammers may not be macho, but that’s not all there is to it
Great essay on sexism in tech, "brogrammer" culture, "clubhouse chemistry", outsiders, wierd nerds and exclusion:
Every group, including the excluded and disadvantaged, create cultural capital and behave in ways that simultaneously create a sense of belonging for them in their existing social circle while also potentially denying them entry into another one, often at the expense of economic capital. It’s easy to see that wearing baggy, sagging pants to a job interview, or having large and visible tattoos in a corporate setting, might limit someone’s access. These are some of the markers of belonging used in social groups that are often denied opportunities. By embracing these markers, members of the group create real barriers to acceptance outside their circle even as they deepen their peer relationships. The group chooses to adopt values that are rejected by the society that’s rejecting them. And that’s what happens to “weird nerd” men as well—they create ways of being that allow for internal bonding against a largely exclusionary backdrop.
(via Bryan O'Sullivan)(tags: nerds outsiders exclusion society nate-silver brogrammers sexism racism tech culture silicon-valley essays via:bos31337)
Impact of large primitive arrays (BLOBS) on JVM Garbage Collection
some nice graphs and data on CMS performance, with/without -XX:ParGCCardsPerStrideChunk
(tags: cms java jvm performance optimization tuning off-heap-storage memory)
Anatomical Collages by Travis Bedel
these are fantastic
-
a utility to perform parallel, pipelined execution of a single HTTP GET. htcat is intended for the purpose of incantations like: htcat https://host.net/file.tar.gz | tar -zx It is tuned (and only really useful) for faster interconnects: [....] 109MB/s on a gigabit network, between an AWS EC2 instance and S3. This represents 91% use of the theoretical maximum of gigabit (119.2 MiB/s).
-
Abe Stanway crunches the stats on Citibike usage in NYC, compared to the weather data from Wunderground.
(tags: data correlation statistics citibike cycling nyc data-science weather)
NSA surveillance recording every single voice call in at least 1 country
Storing them in a 30-day rolling buffer, allowing retrospective targeting weeks after the call. 100% of all voice calls in that country, although it's unclear which country that is
(tags: nsa surveillance gchq telephones phone bugging)
-
a file system that stores all its data online using storage services like Google Storage, Amazon S3, or OpenStack. S3QL effectively provides a hard disk of dynamic, infinite capacity that can be accessed from any computer with internet access running Linux, FreeBSD or OS-X. S3QL is a standard conforming, full featured UNIX file system that is conceptually indistinguishable from any local file system. Furthermore, S3QL has additional features like compression, encryption, data de-duplication, immutable trees and snapshotting which make it especially suitable for online backup and archival.
(tags: s3 s3ql backup aws filesystems linux freebsd osx ops)
-
good explanation of all the new features -- I'm really looking forward to fixing up all the crappy over-verbose interface-as-lambdas we have scattered throughout our code
(tags: java java8 lambdas fp functional-programming currying joda-time)
-
a compressed full-text substring index based on the Burrows-Wheeler transform, with some similarities to the suffix array. It was created by Paolo Ferragina and Giovanni Manzini,[1] who describe it as an opportunistic data structure as it allows compression of the input text while still permitting fast substring queries. The name stands for 'Full-text index in Minute space'. It can be used to efficiently find the number of occurrences of a pattern within the compressed text, as well as locate the position of each occurrence. Both the query time and storage space requirements are sublinear with respect to the size of the input data.
kragen notes 'gene sequencing is using [them] in production'.(tags: sequencing bioinformatics algorithms bowtie fm-index indexing compression search burrows-wheeler bwt full-text-search)
How to turn your smartphone photos from good to great
some good tips
(tags: phone pictures photos tips smartphone iphone android)
How the Irish helped weave the web
Nice Irish Times article on the first 3 web servers in Ireland -- including the one I set up at Iona Technologies. 21 years ago!
(tags: history ireland tech web internet www james-casey peter-flynn irish-times iona-technologies)
Health privacy: formal complaint to ICO
'Light Blue Touchpaper' notes:
Three NGOs have lodged a formal complaint to the Information Commissioner about the fact that PA Consulting uploaded over a decade of UK hospital records to a US-based cloud service. This appears to have involved serious breaches of the UK Data Protection Act 1998 and of multiple NHS regulations about the security of personal health information.
Let's see if ICO can ever do anything useful.... not holding my breath(tags: ico privacy data-protection dpa nhs health data ross-anderson)
Why Google Flu Trends Can't Track the Flu (Yet)
It's admittedly hard for outsiders to analyze Google Flu Trends, because the company doesn't make public the specific search terms it uses as raw data, or the particular algorithm it uses to convert the frequency of these terms into flu assessments. But the researchers did their best to infer the terms by using Google Correlate, a service that allows you to look at the rates of particular search terms over time. When the researchers did this for a variety of flu-related queries over the past few years, they found that a couple key searches (those for flu treatments, and those asking how to differentiate the flu from the cold) tracked more closely with Google Flu Trends' estimates than with actual flu rates, especially when Google overestimated the prevalence of the ailment. These particular searches, it seems, could be a huge part of the inaccuracy problem. There's another good reason to suspect this might be the case. In 2011, as part of one of its regular search algorithm tweaks, Google began recommending related search terms for many queries (including listing a search for flu treatments after someone Googled many flu-related terms) and in 2012, the company began providing potential diagnoses in response to symptoms in searches (including listing both "flu" and "cold" after a search that included the phrase "sore throat," for instance, perhaps prompting a user to search for how to distinguish between the two). These tweaks, the researchers argue, likely artificially drove up the rates of the searches they identified as responsible for Google's overestimates.
via Boing Boing(tags: google flu trends feedback side-effects colds health google-flu-trends)
Implementing a web server in a single printf() call
clever hack -- shellcode in a format string
(tags: printf hax coding web shellcode exploits assembly linux)
Ucas sells access to student data for phone and drinks firms' marketing | Technology | The Guardian
The UK government's failure to deal with spam law in a consumer-friendly way escalates further: UCAS, the university admissions service, is operating as a mass-mailer of direct marketing on behalf of Vodafone, O2, Microsoft, Red Bull and others, without even a way to later opt out from that spam without missing important admissions-related mail as a side effect. 'Teenagers using Ucas Progress must explicitly opt in to mailings from the organisation and advertisers, though the organisation's privacy statement says: "We do encourage you to tick the box as it helps us to help you."' Their website also carries advertising, and the details of parents are sold on to advertisers as well. Needless to say, the toothless ICO say they 'did not appear to breach marketing rules under the privacy and electronic communications regulations', as usual. Typical ICO fail.
(tags: ucas advertising privacy data-protection opt-in opt-out spam direct-marketing vodafone o2 microsoft red-bull uk universities grim-meathook-future ico)
Good explanation of exponential backoff
I've often had to explain this key feature verbosely, and it's hard to do without handwaving. Great to have a solid, well-explained URL to point to
(tags: exponential-backoff backoff retries reliability web-services http networking internet coding design)
Sacked Google worker says staff ratings fixed to fit template
Allegations of fixing to fit the stack-ranking curve: 'someone at Google always had to get a low score “of 2.9”, so the unit could match the bell curve. She said senior staff “calibrated” the ratings supplied by line managers to ensure conformity with the template and these calibrations could reduce a line manager’s assessment of an employee, in effect giving them the poisoned score of less than three.'
(tags: stack-ranking google ireland employment work bell-curve statistics eric-schmidt)
Corporate Tax 2014: Irish Government's "flawed premise" on Apple's avoidance
According to our calculation about €40bn or over 40% of Irish services exports of €90bn in 2012 and related national output, resulted from global tax avoidance schemes. It is true that Ireland gains little from tax cheating but at some point, the US tax system will be reformed and a territorial system where companies are only liable in the US on US profits, would only be viable if there was a disincentive to shift profits to non-tax or low tax countries. The risk for Ireland is that a minimum foreign tax would be introduced that would be greater than the Irish headline rate of 12.5%. It's also likely that US investment in Ireland would not have been jeopardized if Irish politicians had not been so eager as supplicants to doff the cap. Nevertheless today it would be taboo to admit the reality of participation in massive tax avoidance and the Captain Renaults of Merrion Street will continue with their version of the Dance of the Seven Veils.
(tags: apple tax double-irish tax-avoidance google investment itax tax-evasion ireland)
An online Magna Carta: Berners-Lee calls for bill of rights for web
TimBL backing the "web we want" campaign -- https://webwewant.org/
(tags: freedom gchq nsa censorship internet privacy web-we-want human-rights timbl tim-berners-lee)
How the search for flight AF447 used Bayesian inference
Via jgc, the search for the downed Air France flight was optimized using this technique: 'Metron’s approach to this search planning problem is rooted in classical Bayesian inference, which allows organization of available data with associated uncertainties and computation of the Probability Distribution Function (PDF) for target location given these data. In following this approach, the first step was to gather the available information about the location of the impact site of the aircraft. This information was sometimes contradictory and filled with ambiguities and uncertainties. Using a Bayesian approach we organized this material into consistent scenarios, quantified the uncertainties with probability distributions, weighted the relative likelihood of each scenario, and performed a simulation to produce a prior PDF for the location of the wreck.'
(tags: metron bayes bayesian-inference machine-learning statistics via:jgc air-france disasters probability inference searching)
How the NSA Plans to Infect 'Millions' of Computers with Malware - The Intercept
The implants being deployed were once reserved for a few hundred hard-to-reach targets, whose communications could not be monitored through traditional wiretaps. But the documents analyzed by The Intercept show how the NSA has aggressively accelerated its hacking initiatives in the past decade by computerizing some processes previously handled by humans. The automated system – codenamed TURBINE – is designed to “allow the current implant network to scale to large size (millions of implants) by creating a system that does automated control implants by groups instead of individually.” In a top-secret presentation, dated August 2009, the NSA describes a pre-programmed part of the covert infrastructure called the “Expert System,” which is designed to operate “like the brain.”
Great. Automated malware deployment to millions of random victims. See also the "I hunt sysadmins" section further down...(tags: malware gchq nsa oversight infection expert-systems turbine false-positives the-intercept surveillance)
-
Burrito Justice nerds out on 'Goodnight Moon'. 'Maybe the bunny and the old lady are actually in a space elevator, getting closer to the moon as he gets into bed? Or as suggested by @transitmaps, the bunny can bend space and time? I do not have a good answer to this conundrum, but that is what the comments are for.'
(tags: goodnight-moon moon space time space-elevators childrens-books books physics)
Inside the Mind of an anti-fluoridationist
An exceptionally well-researched and thorough disassembly of 'Public Health Investigation of Epidemiological data on Disease and Mortality in Ireland related to Water Fluoridation and Fluoride Exposure' by Declan Waugh, which appears to be going around currently
(tags: declan-waugh debunking flouride flouridation science mortality health ireland water)
David Robert Grimes on the flouride kerfuffle
Hilariously, "The Girl Against Flouride" and other antiflouridation campaigners now allege he's a undercover agent of Alcoa and/or Glaxo Smith Kline, rather than dealing with any awkwardly hostile realities
(tags: flouride flouridation david-robert-grimes conspiracy funny science ireland alcoa glaxo-smith-kline)
-
fantastic piece of C=64 history -- the "Ocean fast loader" by Paul Hughes, which allowed Commodore 64 games to load from tape at 4000 baud, far faster than the built-in system implementation, and with graphics and music at the same time
(tags: ocean-loader tapes c=64 commodore-64 history 1980s freeload paul-hughes)
IntelliJ IDEA 13.1 will support Chronon Debugger
This, IMO, would be a really good reason to upgrade to the payware version of IDEA - Chronon looks cool.
Chronon is a new revolutionary tool keeping track of running Java programs and recording their execution process for later analysis, which can be helpful when you need to thoroughly retrace your steps when dealing with complicated bugs.
(tags: chronon debugging java intellij idea ides coding time-warp time)
"Dapper, a Large-Scale Distributed Systems Tracing Infrastructure" [PDF]
Google paper describing the infrastructure they've built for cross-service request tracing (ie. "tracer requests"). Features: low code changes required (since they've built it into the internal protobuf libs), low performance impact, sampling, deployment across the ~entire production fleet, output visibility in minutes, and has been live in production for over 2 years. Excellent read
(tags: dapper tracing http services soa google papers request-tracing tracers protobuf devops)
-
'a Japanese term that means "mistake-proofing". A poka-yoke is any mechanism in a lean manufacturing process that helps an equipment operator avoid (yokeru) mistakes (poka). Its purpose is to eliminate product defects by preventing, correcting, or drawing attention to human errors as they occur.'
(tags: human-error errors mistakes poka-yoke failures prevention bugproofing manufacturing japan)
The Hands That Made The Moomins
lovely New Yorker writeup on Tove Jansson, author of those beautiful children's books
(tags: tove-jansson moomins books childrens-books reading literature via:etienneshrdlu)
James Casey writes about working at CERN
I am very heartened by Minister of State for Research and Innovation Sean Sherlock’s recent announcement of a review of the costs and benefits of Ireland’s membership of international research organisations including CERN. I disagreed with the conclusion of the last review which suggested that costs outweighed the benefits to Ireland. I think it was an extreme oversight not to be a part of the engineering phase of the Collider during the period 1998-2008 – but it’s not too late. CERN will celebrate its 60th anniversary in 2014. There is no public scientific institution its equal in terms of the scale and complexity of problems being analysed and solved. No longer excluding young Irish people from being a part of this, from learning and growing from it, can only help Ireland.
Also, spot my name in lights ;)(tags: ireland cern science europe eu sean-sherlock james-casey www web history)
Digging for cryptocurrency: The newbie’s guide to mining altcoins
Mining Arscoins, dogecoins and litecoins -- CPU/GPU mining apps and how to run 'em
(tags: currency bitcoin altcoins dogecoin crypto mining ars-technica)
A cautionary tale about building large-scale polyglot systems
'a fucking nightmare':
Cascading requires a compilation step, yet since you're writing Ruby code, you get get none of the benefits of static type checking. It was standard to discover a type issue only after kicking off a job on, oh, 10 EC2 machines, only to have it fail because of a type mismatch. And user code embedded in strings would regularly fail to compile – which you again wouldn't discover until after your job was running. Each of these were bad individually, together, they were a fucking nightmare. The interaction between the code in strings and the type system was the worst of all possible worlds. No type checking, yet incredibly brittle, finicky and incomprehensible type errors at run time. I will never forget when one of my friends at Etsy was learning Cascading.JRuby and he couldn't get a type cast to work. I happened to know what would work: a triple cast. You had to cast the value to the type you wanted, not once, not twice, but THREE times.
(tags: etsy scalding cascading adtuitive war-stories languages polyglot ruby java strong-typing jruby types hadoop)
-
Attempting to cash out of Bitcoins turns out to be absurdly difficult:
Trying to sell the coins in person, and basically saying he ether wants Cash, or a Cashiers check (since it can be handed over right then and there), has apparently been a hilarious clusterfuck. Today he met some guy infront of his bank, and apparently as soon as he mentioned that he needs to get the cash checked to make sure it is not counterfeit, the guy freaked out and basically walked away. Stuff like this has been happening all week, and he apparently so far has only sold a single coin of several hundred.
(tags: bitcoin fail funny mtgox fraud cash fiat-currency via:rsynnott buttcoin)
Florida cops used IMSI catchers over 200 times without a warrant
Harris is the leading maker of [IMSI catchers aka "stingrays"] in the U.S., and the ACLU has long suspected that the company has been loaning the devices to police departments throughout the state for product testing and promotional purposes. As the court document notes in the 2008 case, “the Tallahassee Police Department is not the owner of the equipment.” The ACLU now suspects these police departments may have all signed non-disclosure agreements with the vendor and used the agreement to avoid disclosing their use of the equipment to courts. “The police seem to have interpreted the agreement to bar them even from revealing their use of Stingrays to judges, who we usually rely on to provide oversight of police investigations,” the ACLU writes.
(tags: aclu police stingrays imsi-catchers privacy cellphones mobile-phones security wired)
The Netflix Dynamic Scripting Platform
At the core of the redesign is a Dynamic Scripting Platform which provides us the ability to inject code into a running Java application at any time. This means we can alter the behavior of the application without a full scale deployment. As you can imagine, this powerful capability is useful in many scenarios. The API Server is one use case, and in this post, we describe how we use this platform to support a distributed development model at Netflix.
Holy crap.(tags: scripting dynamic-languages groovy java server-side architecture netflix)
ZooKeeper Resilience at Pinterest
essentially decoupling the client services from ZK using a local daemon on each client host; very similar to Airbnb's Smartstack. This is a bit of an indictment of ZK's usability though
(tags: ops architecture clustering network partitions cap reliability smartstack airbnb pinterest zookeeper)
FOI is better than tea and biscuits
Good post on the 'FOI costs too much' talking point.
I realise if you’re a councillor, tea and biscuits sounds much more appealing than transparency and being held accountable and actually having to answer to voters, but those things are what you signed up to when you stood for election.
(tags: foi open-data politics government funding)
Answer to How many topics (queues) can be created in Apache Kafka? - Quora
Good to know:
'As far as I understand (this was true as of 2013, when I last looked into this issue) there's at least one Apache ZooKeeper znode per topic in Kafka. While there is no hard limitation in Kafka itself (Kafka is linearly scalable), it does mean that the maximum number of znodes comfortable supported by ZooKeeper (on the order of about ten thousand) is the upper limit of Kafka's scalability as far as the number of topics goes.'
(tags: kafka queues zookeeper znodes architecture)
Care.data is in chaos. It breaks my heart | Ben Goldacre
There are people in my profession who think they can ignore this problem. Some are murmuring that this mess is like MMR, a public misunderstanding to be corrected with better PR. They are wrong: it's like nuclear power. Medical data, rarefied and condensed, presents huge power to do good, but it also presents huge risks. When leaked, it cannot be unleaked; when lost, public trust will take decades to regain. This breaks my heart. I love big medical datasets, I work on them in my day job, and I can think of a hundred life-saving uses for better ones. But patients' medical records contain secrets, and we owe them our highest protection. Where we use them – and we have used them, as researchers, for decades without a leak – this must be done safely, accountably, and transparently. New primary legislation, governing who has access to what, must be written: but that's not enough. We also need vicious penalties for anyone leaking medical records; and HSCIC needs to regain trust, by releasing all documentation on all past releases, urgently. Care.data needs to work: in medicine, data saves lives.
(tags: hscic nhs care.data data privacy data-protection medicine hospitals pr)
-
bookmarking as a future reference
(tags: timezones time world clock xkcd images midnight reference)
Only 0.15 percent of mobile gamers account for 50 percent of all in-game revenue
Nice bit of marketing from the day job:
The group of gamers responsible for half of all in-game revenue in mobile titles is frightening because it is so narrow, according to a survey by Swrve, an established analytics and app marketing firm. About 0.15 percent of mobile gamers contribute 50 percent of all of the in-app purchases generated in free-to-play games. This means it may even more important than game companies realized in the past to find and retain the users that fall into the category of big spenders, or “whales.” The vast majority of users never spend any money, despite the clever tactics that game publishers have developed to incentivize people to spend money in their favorite games.
(tags: swrve whales gaming games iap money mobile analytics)
-
'EAT CELEBRITY MEAT! BiteLabs grows meat from celebrity tissue samples and uses it to make artisanal salami.' Genius. (via John Looney)
(tags: via:john-looney meat startups food funny salami tissue-samples celebrity jennifer-lawrence)
'Bobtail: Avoiding Long Tails in the Cloud' [pdf]
'A system that proactively detects and avoids bad neighbouring VMs without significantly penalizing node instantiation [in EC2]. With Bobtail, common [datacenter] communication patterns benefit from reductions of up to 40% in 99.9th percentile response times.' Excellent stuff -- another conclusion they come to is that it's not the network's fault, it's the Xen hosts themselves. The EC2 networking team will be happy about that ;)
(tags: networking ec2 bobtail latency long-tail xen performance)
-
Charlie Stross on GCHQ's 1984-esque webcam spying
(tags: webcams porn charlie-stross funny 1984 dystopian masturbation surveillance spying)
Big doubts on big data: Why I won't be sharing my medical data with anyone - yet
These problems can be circumvented, but they must be dealt with, publically and soberly, if the NHS really does want to win public confidence. The NHS should approach selling the scheme to the public as if was opt-in, not opt-out, then work to convince us to join it. Tell us how sharing our data can help, but tell us what risk too. Let us decide if that balance is worth it. If it's found wanting, the NHS must go back to the drawing board and retool the scheme until it is. It's just too important to get wrong.
(tags: nhs uk privacy data-protection data-privacy via:mynosql big-data healthcare insurance)
Welcome to Algorithmic Prison - Bill Davidow - The Atlantic
"Computer says no", taken to the next level.
Even if an algorithmic prisoner knows he is in a prison, he may not know who his jailer is. Is he unable to get a loan because of a corrupted file at Experian or Equifax? Or could it be TransUnion? His bank could even have its own algorithms to determine a consumer’s creditworthiness. Just think of the needle-in-a-haystack effort consumers must undertake if they are forced to investigate dozens of consumer-reporting companies, looking for the one that threw them behind algorithmic bars. Now imagine a future that contains hundreds of such companies. A prisoner might not have any idea as to what type of behavior got him sentenced to a jail term. Is he on an enhanced screening list at an airport because of a trip he made to an unstable country, a post on his Facebook page, or a phone call to a friend who has a suspected terrorist friend?
(tags: privacy data big-data algorithms machine-learning equifax experian consumer society bill-davidow)
RTE star Sharon Ni Bheolain stalked for six months - Independent.ie
as @Fergal says: '[this] case shows (a) the internet isn't anonymous, (b) we [ie. Ireland -jm] have laws to deal with threats and harassment'
(tags: law ireland harassment internet twitter email abuse cyberstalking)
ImperialViolet - Apple's SSL/TLS bug
as we all know by now, a misplaced "goto fail" caused a critical, huge security flaw in versions of IOS and OSX SSL, since late 2012. Lessons: 1. unit test the failure cases, particularly for critical security code! 2. use braces. 3. dead-code analysis would have caught this. I'm not buying the "goto considered harmful" line, though, since any kind of control flow structure would have had the same problem.
(tags: coding apple osx ios crypto ssl security goto-fail goto fail unit-testing coding-standards)
Comcast’s deal with Netflix makes network neutrality obsolete
in a world where Netflix and Yahoo connect directly to residential ISPs, every Internet company will have its own separate pipe. And policing whether different pipes are equally good is a much harder problem than requiring that all of the traffic in a single pipe be treated the same. If it wanted to ensure a level playing field, the FCC would be forced to become intimately involved in interconnection disputes, overseeing who Verizon interconnects with, how fast the connections are and how much they can charge to do it.
(tags: verizon comcast internet peering networking netflix network-neutrality)
Data visualization: breaking down The Economist's classic chart style
nice piece of classic graph design
Netflix packets being dropped every day because Verizon wants more money | Ars Technica
With Cogent and Verizon fighting, [peering capacity] upgrades are happening at a glacial pace, according to Schaeffer. "Once a port hits about 85 percent throughput, you're going to begin to start to drop packets," he said. "Clearly when a port is at 120 or 130 percent [as the Cogent/Verizon ones are] the packet loss is material." The congestion isn't only happening at peak times, he said. "These ports are so over-congested that they're running in this packet dropping state 22, 24 hours a day. Maybe at four in the morning on Tuesday or something there might be a little bit of headroom," he said.
(tags: packet-loss networking internet cogent netflix verizon peering)
Hospital records of all NHS patients sold to insurers - Telegraph
The 274-page report describes the NHS Hospital Episode Statistics as a “valuable data source in developing pricing assumptions for 'critical illness’ cover.” It says that by combining hospital data with socio-economic profiles, experts were able to better calculate the likelihood of conditions, with “amazingly” clear forecasts possible for certain diseases, in particular lung cancer. Phil Booth, from privacy campaign group medConfidential, said: “The language in the document is extraordinary; this isn’t about patients, this is about exploiting a market. Of course any commercial organisation will focus on making a profit – the question is why is the NHS prepared to hand this data over?”
(tags: nhs privacy data insurance uk politics data-protection)
-
'A Monumental Land Art Installation in the Sahara Desert', by the D.A.S.T. Arteam in 1997. More correctly, near the Red Sea resort of El Gouna -- so possible to visit!
(tags: el-gouna sahara deserts land-art art via:colossal desert-breath spirals)
Harvard Research Computing Resources Misused for ‘Dogecoin’ Mining Operation
A member of the Harvard community was stripped of his or her access to the University’s research computing facilities last week after setting up a “dogecoin” mining operation using a Harvard research network, according to an internal email circulated by Faculty of Arts and Sciences Research Computing officials.
(tags: harvard dogecoin bitcoin mining misuse abuse supercomputers)
-
turn Youtube videos into animated GIFs (via Waxy)
(tags: via:waxy gifs youtube video animated-gifs images web)
'Scaling to Millions of Simultaneous Connections' [pdf]
Presentation by Rick Reed of WhatsApp on the large-scale Erlang cluster backing the WhatsApp API, delivered at Erlang Factory SF, March 30 2012. lots of juicy innards here
(tags: erlang scaling scalability performance whatsapp freebsd presentations)
Traffic Graph – Google Transparency Report
this is cool. Google are exposing an aggregated 'all services' hit count time-series graph, broken down by country, as part of their Transparency Report pages
(tags: transparency filtering web google http graphs monitoring syria)
-
I want to emphasize that if you use redis as intended (as a slightly-persistent, not-HA cache), it's great. Unfortunately, more and more shops seem to be thinking that Redis is a full-service database and, as someone who's had to spend an inordinate amount of time maintaining such a setup, it's not. If you're writing software and you're thinking "hey, it would be easy to just put a SET key value in this code and be done," please reconsider. There are lots of great products out there that are better for the overwhelming majority of use cases.
Ouch. (via Aphyr)(tags: redis storage architecture memory caching ha databases)
-
I'm going to need this pretty soon -- lots of white spots showing up with the current BenQ :(
(tags: projectors video home hardware reviews)
Belkin managed to put their firmware update private key in the distribution
'The firmware updates are encrypted using GPG, which is intended to prevent this issue. Unfortunately, Belkin misuses the GPG asymmetric encryption functionality, forcing it to distribute the firmware-signing key within the WeMo firmware image. Most likely, Belkin intended to use the symmetric encryption with a signature and a shared public key ring. Attackers could leverage the current implementation to easily sign firmware images.' Using GPG to sign your firmware updates: yay. Accidentally leaving the private key in the distribution: sad trombone.
(tags: fail wemo belkin firmware embedded-systems security updates distribution gpg crypto public-key pki home-automation ioactive)
-
On-the-fly video transcoding during live streaming. They've done a great job of this!
At the beginning of the development of this feature, we entertained the idea to simply pre-transcode all the videos in Dropbox to all possible target devices. Soon enough we realized that this simple approach would be too expensive at our scale, so we decided to build a system that allows us to trigger a transcoding process only upon user request and cache the results for subsequent fetches. This on-demand approach: adapts to heterogeneous devices and network conditions, is relatively cheap (everything is relative at our scale), guarantees low latency startup time.
(tags: ffmpeg dropbox streaming video cdn ec2 hls http mp4 nginx haproxy aws h264)
GPLv2 being tested in US court
The case is still ongoing, so one to watch.
Plaintiff wrote an XML parser and made it available as open source software under the GPLv2. Defendant acquired from another vendor software that included the code, and allegedly distributed that software to parties outside the organization. According to plaintiff, defendant did not comply with the conditions of the GPL, so plaintiff sued for copyright infringement. Defendants moved to dismiss for failure to state a claim. The court denied the motion.
(tags: gpl open-source licensing software law legal via:fplogue)
Latest Snowden leak: GCHQ spying on Wikileaks users
“How could targeting an entire website’s user base be necessary or proportionate?” says Gus Hosein, executive director of the London-based human rights group Privacy International. “These are innocent people who are turned into suspects based on their reading habits. Surely becoming a target of a state’s intelligence and security apparatus should require more than a mere click on a link.” The agency’s covert targeting of WikiLeaks, Hosein adds, call into question the entire legal rationale underpinning the state’s system of surveillance. “We may be tempted to see GCHQ as a rogue agency, ungoverned in its use of unprecedented powers generated by new technologies,” he says. “But GCHQ’s actions are authorized by [government] ministers. The fact that ministers are ordering the monitoring of political interests of Internet users shows a systemic failure in the rule of law."
(tags: gchq wikileaks snowden privacy spying surveillance politics)
"Hackers" unsubscribed a former Mayor from concerned citizen's emails
"The dog ate my homework, er, I mean, hackers hacked my account."
Former Mayor of Kildare, Cllr. Michael Nolan, has denied a claim he asked a local campaigner to stop e-mailing him. Cllr. Michael Nolan from Newbridge said his site was hacked and wrong e-mails were sent out to a number of people, including Leixlip based campaigner, John Weigel. Mr. Weigel has been campaigning, along with others, about the danger of electromagnetic radiation to humans and the proximity of communications masts to homes and, in particular schools. He regularly updates local politicians on news items relating to the issue. Recently, he said that he had received an e-mail from Cllr. Nolan asking to be removed from Mr. Weigel’s e-mail list. The Leader asked Cllr. Nolan why he had done this. But the Fine Gael councillors said that “his e-mail account was hacked and on one particular day a number of mails a were sent from my account pertaining to be from me.”
(tags: dog-ate-my-homework hackers funny kildare newbridge fine-gael michael-nolan email politics ireland excuses)
-
very good, workable tips on how to remote-work effectively (both in the comments of this thread and the original article)
(tags: tips productivity collaboration hn via:lhl remote-working telecommuting work)
Disgraced Scientist Granted U.S. Patent for Work Found to be Fraudulent - NYTimes.com
Korean researcher Hwang Woo-suk electrified the science world 10 years ago with his claim that he had created the world’s first cloned human embryos and had extracted stem cells from them. But the work was later found to be fraudulent, and Dr. Hwang was fired from his university and convicted of crimes. Despite all that, Dr. Hwang has just been awarded an American patent covering the disputed work, leaving some scientists dumbfounded and providing fodder to critics who say the Patent Office is too lax. “Shocked, that’s all I can say,” said Shoukhrat Mitalipov, a professor at Oregon Health and Science University who appears to have actually accomplished what Dr. Hwang claims to have done. “I thought somebody was kidding, but I guess they were not.” Jeanne F. Loring, a stem cell scientist at the Scripps Research Institute in San Diego, said her first reaction was “You can’t patent something that doesn’t exist.” But, she said, she later realized that “you can.”
(tags: patents absurd hwang-woo-suk cloning stem-cells science biology uspto)