HNHacker News
TopNewBestAskShowJobs

ek

979 karma · joined June 15, 2010

submissionscomments
ek··on What's wrong with Object-Oriented Programming and Functional Programming
It looks like your comment has been "moderated" off the blog. Such a disappointment.
ek··on Facebook Publications
Regardless of what IEEE or IBM are doing, in academia those who know what open access actually is support it, and those who don't have mostly been disregarding closed-access rules made by publishers.

Tools like CiteSeerX can help you find archived copies of papers around the Internet, which may mean that you will not have to contend with paywalls at all to read the papers you want. For example, Tomasulo's famous paper about out-of-order execution originally published in the IBM J. Research has an entry here http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.129.... and you can note that it is available on several academics' personal sites, presumably uploaded originally for pedagogical purposes. As well, CiteSeerX keeps a cache of quite a few citations locally.

ek··on Facebook Publications
Is academia really becoming more stagnated? What do you mean by that? From where I'm standing it seems like we're moving pretty quickly.
ek··on Skip Class
I skipped many of my undergrad classes to do more important stuff, and I'd go back and do it again. I showed up for the important stuff, and attended lectures that actually taught me things, but quickly figured out that just because a professor tells you you have to show up doesn't mean that it's not your judgement call any more. Most successful and highly motivated students figure out this sort of a scheme for skipping busywork and pedantry.
ek··on Don't Leak Interview Questions
I have signed NDAs in which I have agreed not to disclose interview questions I was asked, and I think NDAs are a fair solution to this problem. The only potential problem for an organization like Airbnb is that it can require a lot of infrastructure and legal horsepower, which perhaps only larger companies have the luxury of.
ek··on Ask HN: what's an alternative to windows media center?
MythTV: http://www.mythtv.org/
ek··on Pyret: A new programming language from the creators of Racket
Sure. These are basically simple contracts. Contracts are implemented in Racket: http://docs.racket-lang.org/reference/contracts.html
ek··on Pyret: A new programming language from the creators of Racket
Newlines are not a fine separator; what if you have a definition that you intend to span multiple lines? In any case, the pipes go all the way back to EBNF, since what you are really doing when you specify an ADT is specifying a grammar of types.

I admit to also being a brace weenie; I would very much prefer if all the languages I had to use had them. However, Pyret exists in a tradition of many successful, braceless languages like Python, ML, and Lua.

ek··on Pyret: A new programming language from the creators of Racket
Like it or not, universities have started to move away from teaching Scheme to introductory CS students. You may remember that much was made of MIT and Berkeley switching away from Scheme for Python. I think Pyret comes out of a precedent of Python as the new standard, so in that light, it's certainly an improvement.
ek··on Pyret: A new programming language from the creators of Racket
I would encourage you to view the syntax as "Python, but repaired", for the following reasons:

1. Pyret comes out of Shriram's group's expertise with pinning down exactly what Python and other dynamic scripting languages do right, and (mostly) do wrong. Check out their recent paper Python: The Full Monty: A Tested Semantics for the Python Programming Language http://cs.brown.edu/~sk/Publications/Papers/Published/pmmwpl... for more context.

2. Ruby is far and away not the originator of 'end' to end blocks -- this comes from Pascal and is in other languages that have nothing to do with Ruby, like Lua.

3. Languages that aren't Haskell have ADTs too; it happens that they've lifted an ML-style syntax for defining them.

4. Python is widely used pedagogically, so for better or for worse, students are already being familiarized with the colon, which I agree is a bit anomalous.

ek··on How to fill 90% of free memory?
Hah! That even happens with fairly modern games, like the PC port of Grand Theft Auto IV. The game could not fathom that I have 3GB of VRAM. You would think game developers might have wised up by now and added a few extra bits to whichever field stores that number, for futureproofing purposes.
ek··on The stupidest trend in laptop design
To be fair, Apple popularized the buttonless trackpad trend and is reasonably good at executing it; originally I was skeptical of it but Apple's clicky trackpads are very nice to use.

That said, Lenovo made the decision to integrate a Synaptics Clickpad in a lot of the recent ThinkPads and it's basically untenable - on my ThinkPad I've turned the trackpad entirely off because the Clickpad is just so unusable.

ek··on iPad Air
I really, really dislike how much hate there is in this thread. I feel like someone always ends up making similar comments every time there's a new launch from Apple/Microsoft/Google/whomever, and there is never any change. Do you guys get psyched about anything?

On the one end we have "Oh man, iPad air only has 1GB of RAM and 16GB of flash, how stupid" and on the other end we have "iPad hasn't cured cancer yet; would have expected more from Apple under Steve Jobs."

Has it occurred to people to like, take a step back for a moment and think about how amazing it is that we as a society have advanced to the point where we can even have something like iPad? The iPad, and devices like it, have done so much to enrich so many people's lives, and isn't that what we're about in this community? We're all trying to make people's lives better with computers, and Apple is as much a part of this mission as any of the people on this site.

Maybe it's easy to get karma by ranting and raving, especially on a site like this where controversy drives more upvotes than downvotes simply because more people have upvote-only privileges. But I want us to be better than this; I don't want this to be the norm for discussion in this community.

ek··on Poll: Where are you currently living in the US?
I see we are converging on "where do you live in the Bay Area", which is what I was disappointed the original poll was not.
ek··on Dear Startups: stop asking me math puzzles to figure out if I can code
> Spoiler alert: to solve this problem, you need to know how to enumerate the rationals.

This problem was addressed nicely in this functional pearl by Jeremy Gibbons, et al.: http://www.cs.ox.ac.uk/jeremy.gibbons/publications/rationals... . As interesting as the result is, however, it's a pretty well-made point that research-level ideas from the programming languages community are not really software engineering interview material in the vast majority of cases.

This is yet another example of "rockstar developer"-itis, wherein startups are given to believe that they need the best of the best when in fact they do not. This particular example is entirely egregious because they asked her about something that requires enumerating the rationals when what they really wanted was an iOS code monkey. Then they fired her, based on their own shoddy interview.

ek··on Lua: the world's most infuriating language?
Lua at present has full lexical scoping. Lexical scope is not "weird"; it's correct. All mainstream languages with higher-order functionality that aren't Python use lexical scope, and for good reason. It can be difficult to implement, but it's intuitive.
ek··on Because it needs to be said
In the US, at least, consenting adults are free to do what they like within reasonable limits, of course with a concession for obscenity while in public. There's nothing particularly obscene about doing a body shot in good company. Had it occurred to you that some might find it fun?

Two things about your "culture": 1. Why does your culture seek to prescribe sexuality in such a seemingly overbearing way? 2. Has your culture not yet moved beyond slut-shaming, which is irrational and harmful for all parties involved?

ek··on LASIK 6 months later
They are spherical, so orientation doesn't matter. I do have a slight astigmatism, which orientation-sensitive contacts correct for, but it's minor enough that it's prescribed in my glasses and not my contacts. My brand is Air Optix Aqua, but this just happens to be what I was prescribed.

In the morning or on days that I don't have to conduct business (I'm a student), I just wear my glasses, which frankly have superior optics anyway. For sport, and for activities where I have to present myself to others, contacts are unbeatable.

I have somewhat dry eyes also, but my eyes seem to be generating more moisture because I am used to wearing contacts by now. I also use Blink eyedrops very occasionally, because they're not something I want to have to rely on, but are useful in an emergency.

To be honest, I'm not hugely against laser eye surgery, and I'm considering having it down sometime before I'm 30. I'm also strabismic in one eye and although I have relatively strong eye muscles, it's something I was also considering fixing via surgery.

ek··on LASIK 6 months later
Honestly, basically all of the upsides that he lists can be gained from using contact lenses, which are amazing. Also, with plain old American vision insurance (VSP), I get a year's worth of contacts for free, every year. As a longtime glasses wearer I switched to using primarily contacts a while ago and it's amazing. Contacts have their share of (mostly minor in my experience) issues, but as long as LASIK continues to have bugs like the halo thing OP describes, I'll stick with them.
ek··on Apple's A7 is Made By Samsung
It's also fun that they found the M7, considering that the initial teardown left iFixit with the impression that it was just some marketing buzzword for a part of the A7. As has been mentioned in the thread, it is still an off-the-shelf component, but at least we know the truth now (that the "M7" really still is a separate IC).
ek··on Apple's A7 is Made By Samsung
This is potentially a bit of a loaded question, since compare the following similar question:

"Does Apple use any components which are best-in-class and unavailable to competitors?"

The answer there is "yes", at least according to a bevy of evidence from the AnandTech review/benchmarks: http://anandtech.com/show/7335/the-iphone-5s-review.

edit: To clarify, I mean this because the A7 is a custom design that just happens to be fabbed by Samsung under contract, rather than an off-the-shelf component, like the M7, that has simply been granted a marketing buzzword. Other OEMs will not simply be able to integrate the A7 in their products for this reason.

ek··on Poll: What is your favorite programming font?
Monaco actually ships as the default in iTerm (although Terminal.app has been Menlo for a while), and I always switch it to Menlo.
ek··on Two dozen mathematicians wrote a 600 page book in 6 months on GitHub
To be fair, this is a community of mostly non-mathematicians, most of whom will probably have no use for this work. But yeah, certainly that's the real "big deal" here.
ek··on Music to Let you Concentrate
Yup, trance and house for me, definitely. Trance and house are like productivity crack. I listen to trance when I'm working and house when I'm working out.
ek··on Welcome to Google Island
Ultimately, I think that this article fallaciously anthropomorphizes Google, and that is the reason why the situation it posits seems so scary.

Google is a machine, designed by people. It is true that they have lots and lots of data about individuals, but it is being handled by vast amounts of software and hardware alongside so much other data about so many things about people that there is somewhat of an anonymizing factor. If Google were an individual, what they do would certainly be creepy, but they are not. To put paranoia to rest, it might be in their favor to enact transparent safeguards of some sort that assure consumers that their data is in general not being accessed by Google employees or nefarious third parties (the most notable nefarious third party being, of course, the government).

ek··on The New University Of California Logo Needs To Die A Quick, Painful Death
When I first heard about the "new logo", as a UC student, I was mad, as were many of my colleagues. The reason for this is that UC has a storied, dignified seal, and replacing it with a watery mod-looking thing like this new logo would be a real mistake. But deeper investigation reveals that they are looking for a logotype mostly for marketing materials and that sort of thing, and are not planning to eliminate the seal from diplomas, official correspondences, or anything like that. I don't think it's a huge deal, but as a California taxpayer and fee-paying UC student, I am somewhat disappointed that it seems our money has been spent on such poor design.
ek··on How to Hack Chipotle
Unfortunately, in Isla Vista, CA, where Freebirds is separate from the rest of the chain (original location, long story, different owner), they see fit to overcharge starving college students, so Chipotle is still a better option (despite it requiring a bit of a bike ride).

The Habit having moved in across the street is, I think, causing them to feel the cruel sting of the free market, so maybe they'll become competitive with Chipotle once and for all.

ek··on Launch any browser/OS right from your desktop with Sauce for Mac
Sauce does Mac OS X virtualization using some patches Alexander Graf and René Rebe helped them bring up to date, which they've released (see http://sauceio.com/index.php/2012/08/apple-sauce-android-sau...).

I tried hacking their patches into a recent snapshot of the KVM tree but there were some issues. I sort of wonder if anyone else has managed to get their code working, because it would be a neat hack if so.

ek··on It's Not Just Writing: Math Needs a Revolution, Too
It is extremely true that mathematics curricula for schoolchildren in general require reform, and most mathematicians will agree on this point. The problem with previous attempts is that they have been designed by people who do not fully understand mathematics and executed by the same. The by now infamous example of the "New Math" was satirized by popular culture because everyone seemed to miss the point. http://en.wikipedia.org/wiki/New_Math

While pieces like the well-circulated "A Mathematician's Lament" (PDF: http://www.maa.org/devlin/lockhartslament.pdf) by Paul Lockhart argue that the mathematics taught to schoolchildren ought to resemble "real math", the sort of math that mathematicians think of as math (with theorems and proofs and much less of an emphasis on computation), they neglect the unfortunate reality that compulsory childhood education still exists largely towards a pragmatic end. Children must be able to compare prices at the grocery store and be able to reason about quantities.

Hung-Hsi Wu has done a great deal of work into how to fix the mathematics curricula of today. This is in contrast to the revolutionary approach that we have tried and failed at. His work focuses largely on fixing specific weaknesses in the core standards and fixing the way mathematics is taught, rather than what is actually being taught, in many cases. http://math.berkeley.edu/~wu/

In addition, Pólya's How To Solve It is the sort of text that teachers should read and become familiar with, in order to better understand how to teach problem solving, which is much of what mathematics at the grade school level is - instruction in problem solving. In fact, I would recommend it to every HN member - it's a wonderful little book about the art of solving problems, mathematical or otherwise. http://press.princeton.edu/titles/669.html

ek··on :syntax Off
Languages like Scala have this sort of support for unicode built-in - many operators have Unicode aliases and it is possible for you to designate your own Unicode-named functions as well. There are some nice examples of meaningful syntactic sugar, like ⇒ for lambdas, ← for enumerators, and → for tuple building (all of which have =>, <-, and -> as ASCII equivalents).
← PreviousPage 2 of 5Next →