HNHacker News
TopNewBestAskShowJobs

johnm

783 karma · joined February 21, 2007

http://foundapp.com/ http://twitter.com/johndmitchell http://markmail.org/ http://krugle.org/ http://jguru.com/ http://www.linkedin.com/in/johndmitchell
submissionscomments
johnm··on Redis for win32 and the Microsoft patch
That's because you picked the wrong direction to manage things... check out libuv and how they've built their api in the other direction.
johnm··on Ask HN: How would you modify this list of best Perlis languages?
The prolog-ish syntax is to Erlang as parentheses are to Lisp -- a humungous barrier to entry for a lot of developers.

I think Erlang's legacy is the fact that it's exposing those other features that you mention to a wide audience of language aficionados that they are spreading (gaining legitimacy/traction) within other languages / libraries.

johnm··on Ask HN: How would you modify this list of best Perlis languages?
Yeah, it's a different philosophy taken to an extreme. :-)

That said, from a practical standpoint, Factor is excellent.

In fact, I'm surprised that more of the recent language implementations haven't used Factor as their backend rather than e.g. llvm.

johnm··on Ask HN: How would you modify this list of best Perlis languages?
There are a number of other homoiconic languages floating about so I think that's much less an issue other than the fact that "lisp" is the poster child.

Alas, CL is an old, bloated nightmare. :-( :-)

I think the new poster child for "Lisp" is Clojure.

Also, for learning programming, I'm still a big fan of Scheme.

johnm··on Ask HN: How would you modify this list of best Perlis languages?
Re: C -- I agree. It's the only widespread language that really matters for this.

Re: Assembly -- I disagree. With the increasing popularity of heterogenous multi-processor systems (cpu + specialized processors like GPUs, etc.) learning languages that are more constrained to the hardware is still valuable/important.

Also, note that building specialized code generators (be they stand along or embedded DSLs) to the assembly language can give you a nice payoff.

johnm··on Ask HN: How would you modify this list of best Perlis languages?
Yeah, Io never got to a (nice/good enough) v1.0 that people could do more than just play around with it. Secondarily, its radical dynamism makes it slow in those shootout benchmarks.
johnm··on Secure Distributed Programming with Object-capabilities in JavaScript [pdf]
Here's the video of the talk: http://www.youtube.com/watch?v=w9hHHvhZ_HY
johnm··on Knot DNS is a high-performance authoritative-only DNS server
Why is this needed over existing authoritative dns servers like djbdns or nsd?
johnm··on Startup School 2011 videos
In addition to the ones already mentioned, watch PG's "office hours" sessions. It's painful to watch but every founder should take the lessons to heart and then go think about it some more and then really make sure they get it.
johnm··on Startup School 2011 videos
Then you're missing the point of his points.
johnm··on How to use epoll? A complete example in C
Use libuv instead of writing this stuff yourself.
johnm··on What's the most orthogonal programming language?
Cracks me up that Lisp/Scheme have so many votes/comments when the Tcl entry is getting none.

And nobody's even mentioned Io.

johnm··on Please help! Anonymous Survey on Real-Time Analytics
Eek! Defaults are all "yes" == bad survey design!
johnm··on Chartio develops non-blocking MySQL queries using Tornado
At scales where it matters, you're correct that it's really wrong.

The rational hope is that by the time you get to that scale you have people/code that know what they're doing and can fix it. Alas, there's many cases where that's not been true.

johnm··on Is there a new geek anti-intellectualism?
New? No. Just the latest fad of rationalizations.
johnm··on Google paper comparing performance of C++, Java, Scala, and Go [PDF]
Indeed, this is ridiculous and makes their final conclusions weaker.
johnm··on Emacs Pinky
Get a Kinesis Advantage (Pro) keyboard. It's by far the best keyboard for coding. It moves all of the control/meta/etc. keys to the thumbs -- yes you can finally utilize both thumbs and it makes a huge difference.

The only downside is that it only comes in one size and so people who have large hands / long fingers might find it too cramped.

johnm··on 'Hot migrating' from SVN to mercurial, and why we choosed HG over GIT.
There are multiple approaches to "rewriting history" in a dvcs depending on what your workflow and preferences are.

In Hg you can do various forms of rebasing and rewriting history, e.g.: * http://mercurial.selenic.com/wiki/ConcatenatingChangesets * http://mercurial.selenic.com/wiki/EditingHistory * http://mercurial.selenic.com/wiki/RebaseExtension

The difference between Hg and Git in this regard is much more a question of what's the basis of their philosophy. Git promotes rewriting & rebasing while Hg is biased towards a more conservative approach.

johnm··on Show HN: Our new iPad app for pilots - totally free for now
Alas, the minimum brightness on the current ipads is a no-go for night flight use, IMHO -- it's still too bright.
johnm··on Poll: Do you know C?
Nope, the first edition gives the nice approach and if you want anything with more depth than the reference manual, you might as well go a get a copy of e.g. the C99 standard itself.
johnm··on Readable Hacker News Chrome Extension
Cool.

Yes, customizability would be key for me. There's not enough contrast now, I'd change the typefaces and font settings, and the line-height (and a bunch of the rest of the spacing as well).

johnm··on A Beautiful Race Condition
In Java, use ConcurrentHashMap.

If you're particularly interested in pushing this to the edge, check out Cliff Click's non-block hash map.

johnm··on Ask HN: Editor used by ninja devs.
Ha! Yeah, Emacs isn't sexy enough for the "cool" kids. Hahaha.

Personally, I don't even notice all of those stupid adjectives any more. They are totally content-free.

johnm··on Ask HN: Editor used by ninja devs.
Emacs. Programmability.
johnm··on Fast Facts on Node.js
Do note clearly that V8's garbage collector is fairly slow (think old Java GC) so having more instances of node with smaller heaps is a good idea anyways.
johnm··on Fast Facts on Node.js
Depending on your workload, 1 node per 2 cores is a better rule of thumb. Also, split the networking across multiple NICs.
johnm··on Poll: HOw much should startups in incubator stage pay interns?
What kind of interns? Engineering or something else?
johnm··on Scala Pros and Cons
No, it's the interactions between all of the boatload of features of the language that causes the explosion of complexity.
johnm··on Scala Pros and Cons
Scala is to Java as C++ is to C.
johnm··on Deprecating XML
FWIW, if you change "unstructured" to "semi-structured" then Norm's argument works much better.
← PreviousPage 4 of 10Next →