HN user

gukjoon

52 karma
Posts0
Comments27
View on HN
No posts found.

Great article, Damien. This idea that network partitions are exceedingly rare was the reason why ElasticSearch goes CA vs. the AP many other NoSQL datastores choose.

http://elasticsearch-users.115913.n3.nabble.com/CAP-theorem-...

Not only are network partitions rare, the most disastrous case where the cluster splits in half is even rarer. Usually, you have a small part of the cluster partition away.

I hope people don't take this as a Dynamo vs. Couch discussion, because the relative importance of partition tolerance is a topic that spans all datastores that give up on ACID.

This is a great question. I can't speak to Facebook, but I ask hard algorithm questions and this is why I do it.

The point of these hard questions is not to assess if you know some obscure algorithm. The algorithms in these questions are obscure precisely because you're not supposed to know them. If the candidate clearly knows the algorithm I switch to a new question.

The point of these questions is to assess your ability to perform under pressure in an unfamiliar situation, which is a fundamental skill that all productive engineers require. I expect that any engineer I greenlight to encounter novel situations. These are not necessarily Hard Problems dun dun dun, but these situations will challenge your problem solving skills and you won't be able to look up the right answer on StackOverflow. I expect candidates to have the ability to deliver a solution that works and makes the right tradeoff between time, quality, and scope.

I have also had interviewers ask hard problems for the wrong reasons. Frowntown to that.

The real question is whether aquaponics can create higher quality food than organic produce, which is not subsidized. Subsidies are also unsustainable in the long run. The major costs in aquaponics are in the technology, which will inevitably get cheaper. If aquaponic agriculture truly represents an order of magnitude improvement in water use and space use, and can produce better food, it's only a matter of time before not even subsidies can keep traditional agriculture economically sustainable.

This is just what I needed to see after the front page of HN was dominated by bullshit about Surface and iPad mini. Finally, technology used to make something other than toys for bored rich people.

I think the site load time is an allegory for how long it takes for the JVM to start up.

There are some good links in this blog. If you are a Clojure newbie, definitely check out the text-only cache of this blog.

I also want to note that "Clojure newbie" has many meanings, depending on which direction you approach Clojure from. Depending on whether you come from Java, LISP, Python or nothing, you will start with different tracks. I would recommend that Java programmers actually start with protocols and reify, typically billed as advanced subjects, then the concurrency primitives, before getting into macros and advanced LISP stuff.

YC Facelift: EXEC 14 years ago

Ugh. Spoken like a true Ravens fan.

In all seriousness, yeah. Gilt went from black/yellow to predominantly black/white for a good reason.

I do like how the yellow pops though. Unfortunately, it also makes my eyes bleed. Maybe try a duller yellow, like goldenrod. My emacs theme is goldenrod on dark gray and it is pleasant.

Clojure-Scheme 14 years ago

This is awesome, but what gives me pause is the part where you have to write a foreign function interface for every single Carbon API call. Also, I would assume that Cocoa is completely unavailable when going to C. Is that correct?

I'm very happy to see the multi-platform vision of Clojure becoming closer to reality. I'm not in the "write once, run everywhere" camp. That goal is a bit ridiculous, but the choice of VM and the choice of language should be independent decisions. I like Erlang's VM a lot, but the language itself is not very nice. When writing iPhone code, I don't want to be forced to use Objective C.

Wow. 1. Have you written or debugged C sockets code? Because if you have, I doubt you would be dinging him on not wanting to do that. 2. He doesn't want to handle C/C++. I would say that most people who write application code are with him. 3. Yeah... I'm pretty sure Python, an interpreted language, is slower than Go, a compiled language. Even with the progress PyPy is making, I doubt it's going to beat Go.

The author needs no age defense. He makes a ton of valid points for why you should try out Go.

Not recommended. Matrix multiplication is really slow, even with Incanter. I doubt you'll get very far with data analysis without multiplying a few matrices so avoid.

Please Poach Me 15 years ago

This is a great idea. The only feature I think you need is the ability to block companies, specifically the one you're working for right now.

I disagree. We're just so jaded by the speed of change that we don't ascribe much significance to changes that have completely changed how human beings interact. While many of these technologies are built on the internet, saying that they're insignificant because of this is kind of like saying the internet is insignificant since it's built on telephony.

Furthermore, it's almost without exception that these technologies have weakened big companies, especially in the software industry. Cheap computing power that you don't even have to manage, a massive ecosystem of open source code, and powerful communication tools are available to anybody now. Big companies rely on economies of scale to offset the costs of organization. It's becoming increasingly difficult for them to win in an industry with almost no barrier to entry.

Software environments, languages, and other such abstractions aren't there to be perfect. They are there to help human beings manage absurd numbers of machine instructions. Maybe when we fully understand the human mind, we'll figure out the perfect way to map machine instructions to concepts that humans can grok. Until then, we'll have to make somewhat subjective design decisions in the face of uncertain constraints and priorities, which is certainly not going to lead to a "best" solution.

Why is it un-PC to acknowledge that there are fundamental differences between men and women in terms of both innate talents and, more importantly, motivations? Differences that would lead to huge demographic disparities in incredibly niche fields like software engineering and starting technology companies?

Mike Arrington says flat out that the reason why there aren't enough women in tech is because "not enough women want to become entrepreneurs." It's a question of motivation. This statement is easily falsifiable and I don't think any of the responses make even a meager attempt to do that.

Is there a disproportionately higher number of women-lead start-ups applying for venture funding and then not getting it? Since this is a question of motivation, even showing that a significantly higher percentage of women-lead start-ups fail would suggest that Mike Arrington is wrong.