gukjoon's comments

gukjoon | 13 years ago | on: Dynamo Systems Work Too Hard

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.

gukjoon | 13 years ago | on: Get that job at Facebook (2012)

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.

gukjoon | 13 years ago | on: Arduino-based, urban aquaponics in Oakland

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.

gukjoon | 14 years ago | on: The Newbie’s Guide to Learning Clojure

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.

gukjoon | 14 years ago | on: YC Facelift: EXEC

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.

gukjoon | 14 years ago | on: Clojure-Scheme

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.

gukjoon | 14 years ago | on: Go is amazing, period.

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.

gukjoon | 14 years ago | on: Try Clojure in your browser

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.

gukjoon | 14 years ago | on: Please Poach Me

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.

gukjoon | 15 years ago | on: I have seen the future and I am opposed

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.

gukjoon | 15 years ago | on: Closures as life

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

page 1