Hacker Newsnew | past | comments | ask | show | jobs | submit | scottbessler's commentslogin

Is pricing per user? It doesn't seem like it is, but that seems like a missed opportunity.


Hi, yes it is, sorry for confusion! It's fixed now on https://airtable.com/pricing


how do you launch boot2docker on your mac, raw virtualbox? or do you mean you actually dual-boot to it?


I would be interested to know this as well.


Just raw virtualbox - I point to the ISO as a virtual drive.

It looks like they're also working on a script to automate this - like a mini-Vagrant but which always boots the same image :)


Yeah, Ansible is something we are strong considering for managing docker hosts and container instantiation. As for building and provisioning containers, I would still argue that Dockerfile is superior for most of the work that needs to be done. Runtime configuration file templating is definitely something I'd like to see included in a Dockerfile definition, but until then at RelateIQ we are looking to a simpler solution than Chef for that and Ansible looks promising in this regard as well.


No, they lock the entire database for every write.

"MongoDB uses a readers-writer [1] lock that allows concurrent reads access to a database but gives exclusive access to a single write operation."

"Beginning with version 2.2, MongoDB implements locks on a per-database basis for most read and write operations. Some global operations, typically short lived operations involving multiple databases, still require a global “instance” wide lock. Before 2.2, there is only one “global” lock per mongod instance."

source: http://docs.mongodb.org/manual/faq/concurrency/


Yes that's the part that just kills me. It was a system-wide lock, and now it's just per-DB. I just don't see how anyone can take that seriously.

Also, why bother with a buffer pool manager when you've got mmap, right?


I'm speculating because I've never used play. But I have seen threads hung inside hashmap methods, eating 100% cpu when using a HashMap (which is not thread-safe) concurrently.


I'm not if sure the author understands concurrency.

EDIT: Author of the blog post.


I'm positive they don't. Anyone who's ever written anything substantial for a Java App server should know that HashMap isn't thread safe. Magic fix: ConcurrentHashMap....better still write your own.

EDIT: I am also referring to the poster. I'm a fan of Play and echo many of the sentiments others are listing out.


Magic fix: ConcurrentHashMap....better still write your own.

I hope this is a joke. I know plenty of very good Java programmers, but only one or two that I would ever trust to write a concurrent hash map class that matched java.util.concurrent.ConcurrentHashMap's functionality (to say nothing of performance), let alone improve on it.

It's a nasty chunk of code, it's not a simple matter to get this right: http://www.docjar.com/html/api/java/util/concurrent/Concurre...


The fix you're proposing is innadequate for a lot of instances.

A concurrent hashmap is only safe in regards to its own internals, however if you're operating with keys and values that are not thread-safe, then it can still deadlock on get() or other operations. This is why this model of threading is hard, because it is not composable.

Also, threadsafe data-structures have terrible performance characteristics, unless the implementation is lockfree, and lockfree implementations are hard to get right. Therefore I don't blame devs that use HashMaps, as sometimes is better to put locks in other places, or to make sure that the variables are local to a thread.

Threading is hard, lets go shopping.


Even without multithreading, mutating the value of a key (such that hashCode() changes) after putting it in the map entry won't return the same entry. This is a HashMap basic, not just something special jujitsu you need to learn with multithreading.

I think blaming someone for using a non-thread-safe data structure without sufficient explicit locking is justifiable.


Just FYI, ConcurrentHashMap is indeed lockfree (although it's got a gargantuan memory footprint). Wrapping your HashMap with Collections.synchronizedMap gives you a blocking threadsafe HashMap.


ConcurrentHashMap is not lock free, it uses lock striping across multiple buckets.


I stand corrected.


Author of Play or of the blog post?


If you tap quickly (bouncing your finger off the screen) it tends to work fine. I believe the issue is that it is TOO sensitive, especially in regards to thinking you are trying to drag something.

If it let me install 3rd party keyboards and it solved the touch-sensitivity issues I'd keep it definitely. As it is, I'm very close to returning it. I'm hoping for a nice custom rom at this point.


While renting an apartment the dishwasher broke and I offered to install the new one. The landlord turned me down and scheduled it for a time I had to be at work and took the opportunity to snoop around and accuse me of harboring a child that I had not told him about (in reality, my niece would visit a lot so we had a bunch of toys for her). He withheld the entire security deposit on those grounds. So it cuts both ways with the unreasonable humans. :)

Happy ending though, because Chicago has fantastic renter's rights so we got all the money back and then some.


What an asshole. I've never had anything like that in my stints in the tenant role. But honestly, that just sounds like he wanted to look for reasons to keep the security deposit and nothing you had done would have changed that.

Good on you for winning.


There is a lot more complication and loophole-ability in forcing ISPs to allow others to home their services than there is in forcing net neutrality in its traditional definition.


When you log in with 2 factor you have the option to validate the current machine for 30 days.


I'd bet there will be kiosks on site to find names, and there already is a website to find names that will point you to the panel: http://names.911memorial.org/


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: