The engineer ends up under the car. The hacker doesn't even change the bulb.
HN user
gukjoon
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.
Love seeing this. Is there a bigger Erlang community now in DC? I went to a meetup in 2011 and it was like 4 people.
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.
Is one of those patents "A novel technique for running a company into the fucking ground"?
A bit of the ole Ralph Nadar effect going on here, I presume. Java's share is being cannibalized by Groovy, Scala, Clojure, etc. They should start making a JVM ranking to start consolidating all those languages.
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.
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.
Very neat. How does this treat forks? Does it consider only the commits you make?
You could say that it's ironic.
You know what? I realized that I didn't read the whole question. I switched from Octave, not Python. Oops.
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.
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.
It's a lot more like being able to read and write in medieval Europe.
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.
I don't think this is complete nonsense. At the root of all this, he's weirded out by the concept of entropy. Entropy exists, yet the complexity on this infinitesimal speck of dust in the universe is increasing. Why is that?
tmsh, I wrote a equally disparaged blog entry a while back that you might be interested in: http://www.jierenchen.com/2009/10/memory-and-evolution.html
On the seventh day, they rested.
On the eighth day, it falls over: http://gizmodo.com/5304233/entire-new-13+story-building-tips...
Maybe that red tape is there for a reason.
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.
Which infinity?
Hahahha maybe.
But maybe it's a good thing we don't have to churn butter anymore, right? Improvements in technology mean that we don't have to deal with the low level stuff that's been done a million times before, allowing us to focus on high level stuff that nobody's done.
I've always thought that this criticism didn't make sense. Improvements in software are highly dependent on improvements in hardware: http://prog21.dadgum.com/29.html What would have once taken incredible software engineering skills is now trivial. Hardware is a big constraint on software development. How can you possibly expect software and hardware development to be neck and neck?
To be an extremist, you need to be pretty damn irrational. I assume that the correct allocation would be something at least partially rational?
I mean... firebombing houses is probably not going to help us find the Higgs boson.
Two dimensional objects representing one dimensional data? Tsk tsk.