February 2012
1 post
Dear Linksys,
Please do this.
Imagine if by default all wifi access points publish a “Public <rand#>” SSID in addition to doing their normal stuff.
- This public SSID is given < 10% of total available bandwidth to the access point.
- It’s outside my real network’s NAT zone and (if there were any) firewall so no security implication for me.
If all access points do this, the...
November 2011
1 post
October 2011
2 posts
1 tag
data centers are too reliable (sort of)
Long ago in the early days of DoubleClick (really early) we built a data center out of our mail room. We filled it to the brim. It would get very warm and we used up all the power in the building.
Obviously, this is not ideal. We then bought some hosting from a class 1 data center provider : raised floors, redundant cooling, power generators, UPS room, etc. We had hardware running in...
2 tags
September 2011
3 posts
"Did you get my email?"
This question leads to madness.
1 tag
http://www.technologyreview.com/blog/mimssbits/2719... →
1 tag
c++ : don't use pair
I’m sure I’ll get some argument on this, but don’t use pair<>. Except when you are using something already requiring it, such as stl classes and stl algorithms.
Instead of pair<A,B>, why not
struct X {
A a;
B b;
};
The above might not look so different but how about pair<int,int> versus
struct Point {
int x, y;
};
More descriptive. Templates become...
August 2011
1 post
2 tags
Where are the SSDs in the Cloud?
SSD storage technology is massively useful. However, it seems to be unavailable in cloud computing offerings (at least the ones I know about).
This seems an obvious gap in those solutions. SSDs are easily deployed in one’s own data center, but not in the cloud. That’s not good — cloud computing makes sense.
There is an opportunity here for someone in this space to be first...
July 2011
4 posts
Google 2 step authentication - way too unwieldy
I have tried the Google two step authentication, and it is…a pain. With several browsers and a couple operating systems on my laptop, it’s asking me to verify on SMS for every single one of them. Not to mention on my other computers.
There’s a real need for this — if one’s account is compromised, in your email are lots of info on other sites you use such as...
All storage except multimedia will be SSDs soon
It seems the cost today is about $2 / GB and dropping at a good clip.
The Intel 320 drives are interesting as historically on low cost style SSDs write iops have been lower than reads (albeit still very fast compared to spinning disks). The numbers below are the Intel specs.
Random 4KB Reads
40GB up to 30,000 IOPS
80GB up to 38,000 IOPS
120GB up to 38,000 IOPS
160GB up to 39,000 IOPS
...
google search - invincible
Google’s strategy with search has worked out perfectly : basically, continual incremental improvement. No one can catch up. A good example is this search:
http://www.google.com/search?q=united+5336
Providing very useful information quickly.
Never underestimate the bandwidth of a...
http://aws.amazon.com/importexport/
June 2011
3 posts
"Schemaless"
In the NoSQL world it is common to talk about schemaless databases or data models.
It would be more precise to say “dynamic schema”. In MongoDB, there are databases; a system catalog of collections; documents within collections; explicitly declared indexes for a collection. The big difference is that “columns”, or rather fields in the document data model, are not...
still needs some work i'd say →
re: ebs durability →
April 2011
3 posts
1 tag
genomic sites worth a look
This is a space I know very little about, but these I found interesting:
A firefox plugin for 23andme users
SNPedia. While a lot less information than things like Entrez Gene, SNPedia is far more digestible for the layman.
1 tag
forgot to mention in the durability webinar
that a good short term trick to try it out is to run one member of a MongoDB replica set with journaling on, even if not using yet on the others. In a 3 member set, turn on —journal for a single node. This is a good way to more conservatively start using it
A recording of the webinar on journal will be up later.
we all overuse objects in our programs
Well I do anyway. Was thinking about this when coding recently. There is an opportunity to code in a more functional style, even when not using purely functional languages, to make code easier to read and reason about.
There is a natural tendency (at least for me) to objectize everything, in part just because many languages make it so easy and it’s such a natural form of encapsulation...
March 2011
1 post
Is there no better model for science publishing...
It seems to me it only adds friction for the scientist to get access to data when it is not free. Almost everything is free online these days except academic papers!
December 2010
1 post
graceful degradation is your friend
I am a strong believer that tech systems which desire high uptime should have graceful degradation. Up and down need not be binary.
For example imagine hosting 1,000 web sites with multiple servers. If we put all sites on all servers, they might all go down. But with N servers, if we put each site on 1 server, an outage will then be 1/Nth of the total site. This is much more manageable.
In...
November 2010
1 post
SSDs are nice
I’ve seen some success stories recently with SSD - on various database technologies.
These devices are quite cheap now, especially the SATA based devices (such as the Intel cards). Intel makes both MLC and SLC versions of the cards.
Write endurance is an interesting question. My back-of-the-envelope calculation suggest there is little risk of wearing out an SLC card. MLC cards have...
August 2010
2 posts
Optimizing your Air Quality
I just did a little cursory research on air quality and health, here is what I have found. (If you know more about this, please comment!)
* If you feel worse in the summer than winter, suspect air quality : air quality is lower in the summer. Both particulates and ozone are higher. Plus more forced air usage (from air conditioning).
* Put a higher quality filter in your central air...
How to fix Microsoft
Apple and Google are focused on the consumer and not particular good at enterprise offerings. Thus, focus on enterprise, quit trying to do everything.
Azure On the right track, keep going!
Continued focus on .NET and dev tools, a historical competency and strength.
Bing
Make the search engine non-profit and spin it out.
All profits from ads on bing go to charities.
Rationale: this, unlike...
July 2010
1 post
Best wine newsletter →
June 2010
3 posts
Passwords Considered Harmful
Passwords don’t work. This is a big problem. A few notes.
Don’t leet passwords! This is very annoying. :-) It’s very easy for an attack program to try every word in the dictionary with ‘3’ instead of ‘e’. This would be a very good way to set a password *if* one were the only person doing it - but you’re not.
Requiring numeric digits...
2 tags
It's Time to Reinvent Transportation
Seems to me it would be possible to do public transport that is more flexible that what we have today. Imagine:
pod-sized transports that run on rails
computer controlled
automatic track switching
powered electrically by the tracks
What was a train then becomes more like a car — with some of the advantages of both.
There is an analogy with packet switching in computer networks....
Fun with JavaScript →
May 2010
1 post
Open-Mesh is Interesting
Yesterday I set up a 5 node mesh network using Open Mesh access points. These devices are $59 so the price point makes things interesting.
These could be a very easy way to provide open public wifi in one’s office for visitors. A splash page can be displayed with no work, and rate limiting is no work too: you can set bandwidth caps for users on both upload and download data. This feature...
April 2010
10 posts
Twitter open sources FlockDB →
http://github.com/twitter/flockdb
Prediction: Commutative DB Patterns Ahead
We will see a lot of commutative operators in eventually consistent datastores a year from now. It makes a lot of sense: we can then have some atomicity and still have the nice properties of eventual consistency.
Some example operators:
increment(field, by_n)
addToSet(field, value)
An example. The final result is the same regardless of the order of operations:
// x starts as {...
5 tags
On (Sometimes Sloppy) Quorums
Amazon Dynamo used a concept they termed “sloppy quorums”. They describe it as follows:
If Dynamo used a traditional quorum approach it would be unavailable during server failures and network partitions, and would have reduced durability even under the simplest of failure conditions. To remedy this it does not enforce strict quorum membership and instead it uses a “sloppy quorum”;...
2 tags
Chain Replication is Interesting →
2 tags
Michael Stonebraker on Eventual Consistency →
An interesting perspective.
Eventual consistency is a useful tool, but I am not convinced we should give up consistency *by default*, which a lot of folks are now doing. Historically, developers have used eventual consistency, by layering in message queues or tools like memcached. That was very explicit though, always with due thought on the part of the architect.
worth a try →
A (too simple) mongodb insert benchmark from the... →
New York C++ Meetup Group →
4 tags
Example of lack of partition tolerance
A good example of a non-P tolerant system would be a single SMP machine. Imagine writing a value to memory and the operation being lost on the bus and not happening. That could be analogous to a network partition.
In such a situation with writing to memory on a single machine, we normally assume the box is just broken and accept incorrect behavior. Thus it’s not P tolerant and a...
2 tags
NoSQL Myth #1: No Atomic Operations
The myth: “you can’t do atomic operations on NoSQL because everything in that space is eventually consistent”.
On some products you can’t - that is true. However on many you can — for single entities. An example is the latest version of Amazon SimpleDB. MongoDB supports single-document atomic operations too.
As I like to define NoSQL, all the solutions have these...
March 2010
4 posts
definitions
some useful links I received!
strict (or atomic) consistency and linearizability (p.414) serializability http://research.microsoft.com/en-us/people/philbe/chapter2.pdf one-copy serializability http://research.microsoft.com/en-us/people/philbe/chapter8.pdf
just for fun: a single server twitter design
Implementing a twitter-style system is an interesting problem. One thing that makes it hard is some people have a lot of followers - say, 1 million. One approach is outlined below, which feels to me a good mix in terms of computation time and space. It’s space efficient - we don’t store tweets (or even tweet ids) more than once. We assume the entire system is running on one machine...
master/master replication and dynamo style systems
Question for everyone: what is hard on systems like this?
For example, it seems to me doing a traditional database unique key constraint is problematic as we do not have instantly consistent global state to make that determination.
What else? Trying to better understand the pros and cons of different replication strategies.
Shocked how much I like C++ these days
It’s really surprising that a language I was using 20 years ago is now my preferred choice for a large set of problems today.
Early on, I really liked C++ for certain problems, but there were downsides. I’d almost always take it over C; if used intelligently, it’s just as fast, plus I get some benefits. The problems though were:
- lack of libraries - memory corruption risk...
February 2010
2 posts
2 tags
4 tags