HNHacker News
TopNewBestAskShowJobs

Hexstream

3,090 karma · joined August 22, 2007

20+ years of programming, 15+ years of Common Lisp, 10+ years of Common Lisp Open Source.

[ my public key: https://keybase.io/hexstream; my proof: https://keybase.io/hexstream/sigs/LEcxc2CHs5onKwnA7vtRPPYzR00wDTaKI3kCKUhdYXI ]

submissionscomments
Hexstream··on Dropbox hits 1.0
I never understood this sort of overblown digital hoarding attitude. Can you shed some light?
Hexstream··on How to impress Joel Spolsky
What if he actually is the smartest person in the room? Maybe even by far?

On the other hand, if you have that kind of attitude it will probably be mutually beneficial if you stay the hell away from him so it's a good strategy.

Hexstream··on Persuasion Triggers in Web Design
Uh?? I thought they gave you a sample chapter so that you can see if the book interests you, not so that you'll feel obliged to buy the whole book to return this "favor".
Hexstream··on Everest is littered with dead, exposed bodies
Uh? What am I missing? "Because-it-is-there." The 's counts as one word, no? At least that's what I was always told.
Hexstream··on Top Test Scores From Shanghai Stun Educators
How about at humility?
Hexstream··on Everest is littered with dead, exposed bodies
Wouldn't that be 4?
Hexstream··on The humble programmer...
My personal highlights (I'm a DSL fanatic):

"We all know that the only mental tool by means of which a very finite piece of reasoning can cover a myriad cases is called "abstraction"; as a result the effective exploitation of his powers of abstraction must be regarded as one of the most vital activities of a competent programmer. In this connection it might be worth-while to point out that the purpose of abstracting is not to be vague, but to create a new semantic level in which one can be absolutely precise.

[...]

Now for the fifth argument. It has to do with the influence of the tool we are trying to use upon our own thinking habits. I observe a cultural tradition, which in all probability has its roots in the Renaissance, to ignore this influence, to regard the human mind as the supreme and autonomous master of its artefacts. But if I start to analyse the thinking habits of myself and of my fellow human beings, I come, whether I like it or not, to a completely different conclusion, viz. that the tools we are trying to use and the language or notation we are using to express or record our thoughts, are the major factors determining what we can think or express at all!"

Hexstream··on 1001 Things To Hack Before You Die
(disclaimer: I'm a bit of an ambitious guy and I probably won't achieve even a "sizeable" portion of this, but I will try)

Make my own versions of these pieces of infrastructure in one or more variants of Lisp, using various novel approaches or combining some "old" approaches that are nevertheless not used as much as they should be today, and comprehensively document it all:

My own web framework (in progress), window manager, UI toolkit and layout system, 3D engine, video editor, image editor, video and sound codec, emacs-style editor, operating system, kernel, Common Lisp implementation, virtual machine, BIOS, OS bootstrapper.

Also, maybe an NES or SNES emulator, for fun and maybe trying to make a full blown modern development environment to make it easy to make whole new games for these consoles instead of just making more or less elaborate hacks to already existing games.

Learn to play the piano, guitar and violin. Learn to compose my own music.

Not that I expect or count on it, but it would be convenient if a treatment to stop aging appeared while it's not too late for me, cuz I'm pretty sure I'll be out of time before I'm doing what I want to do properly...

Hexstream··on Code icebergs
Try to beat this one:

I spent 4 months, full-time (I think I was a bit depressive and unproductive, though (that might have to do with the difficulty of the problem a bit)) to make a goddamn "error message merging" system where you specify some merge rules for error messages, and then said messages are "merged" efficiently at runtime (with another of my adaptations of the awesome Rete algorithm).

For instance, as a trivial example merging "Please enter your Username." and "Please enter your Password." could yield "Please enter your Username and Password."

Merging error messages efficiently with a great concise syntax looked SO EASY =/ I was wondering why the hell no websites (that I know of) do that because it's a pretty obvious feature to me... Well, now I know. People don't really mind that much about these things (maybe they just have low expectations) AND it's really hard to implement.

I finally made it, right now the implementation is utter crap, with some missing features and some bugs but the general architecture is there and works. I'll clean it up and document it within a few months, probably.

It's one of the hardest things I ever made so far in programming.

Hexstream··on Technology principle: The toy will win
"But as the years passed and hardware became faster the relative slowness of dynamic languages became less relevant, while their advantages in programmer productivity became much more relevant."

Let's not discount the fundamental advances to compilation and performance of "dynamic" languages of relatively recent years. Just look at Javascript.

Dynamic languages look much less amenable to optimization at first than static languages, but many new techniques have been discovered, and sometimes there are even optimizations that are only possible to do at runtime if the environment supports it.

Hexstream··on I Buy and Sell Domain Names AMA
For one thing, having a crappy useless domain with ads should count as less "usage" than having just a page indicating that some project is being developed, without ads.
Hexstream··on Thank HN: 7 months ago, I asked for help. Now I've got 5 employees.
Hum. Do you always check a user's profile before downvoting if you don't remember seeing him before? I can't imagine myself doing that.

Or are you using some sort of plugin that gives you more info inline?

Hexstream··on Java as we know it is over. Time to fork?
What about: let Java die and let something better take its place?... But it's true I live in an alternate reality.
Hexstream··on The Lean Startup Bundle
Are you telling me I can finally have a Lean Startup AND save $1031 by encumbering myself with all these things I probably don't need by spending $42?!

Sign me up! (Hum. So I'm a bit of a "savings" cynic.)

Hexstream··on Poll: Do you have Silverlight installed?
No keyboard detected.

Press any key to continue.

Hexstream··on You and your job
What a brain-damaged article. Seriously, what's next?!

"If you have a good life, commit suicide. If you have a great wife, leave her. If you have kids, leave them and never return. If your company starts making a profit, sell it at a loss. If you're healthy, recklessly endanger yourself. If people like you, start acting like an asshole. If you have a nice social network, cut off all ties. If you're rich, waste it all and then go live in the street. If you like this article, write me a scathing piece of hate mail."

Hexstream··on Rootless Root - The Unix Koans of Master Foo (Eric S. Raymond)
"Except there is. When you do "git -p file" (which I do a lot and would not have switched without this capability) you are put into a graphical editor to pick which parts of the hunk to commit."

Not if $DISPLAY is cleared ;P

Hexstream··on Good enough never is (or is it?)
I cannot fathom why merely moving the mouse over a simple text-based webpage shall peg my CPU to 100%.
Hexstream··on Start ups, please don't force me to log in with Facebook
You can just let users initiate a request with their login name, no?
Hexstream··on The Ironic Truth About Stupid People
Also called "strategic incompetence".
Hexstream··on Rootless Root - The Unix Koans of Master Foo (Eric S. Raymond)
gitref.org makes it really easy to understand and use git, at least it did for me. No graphical tools required.
Hexstream··on How a WWII Jet Fighter Was Designed in 150 days & shipped in six months
"There are plenty of programmers that have never held a soldering iron either."

But those might not be designing hardware either...

Hexstream··on Code for open-source Facebook riddled with landmines
tptacek is a recognized world-class computer security expert. He knows his stuff.

Watch your tone. Mindlessly contradicting him in his field of expertise is not advisable.

Hexstream··on Self-Control Matters Far More Than Raw Intelligence
And you did...
Hexstream··on Damning Zuckerberg IMs confirmed
But it seems he was corrupt even before he attained much power...
Hexstream··on Redundancy vs dependencies: which is worse?
I thought this was hilarous:

> No, seriously. Take command line parsing. You want common syntax for options, right? And you want some of them to accept values, right? And those values can be strings, and booleans, and integers, right? And integers can be decimal or hexadecimal, right? And they can be values of user-defined types, right? And they can have help strings, right? And you’d like to generate help screens from them, right? And GUIs with property pages? And read them from configuration files? And check the legality of flags or sets of flags, right?

> Sure. It’s not a big deal. Trivial, even. (If you’re smart, everything is trivial until you fail completely due to exceeding complexity. And admit that you failed due to exceeding complexity. The former takes time to happen, the latter can never happen.)

Hexstream··on The Deal Is Simple. Australia Gets Money, China Gets Australia
I can only guess $120k is less than pocket-change for an operation like this.
Hexstream··on I'm not a spammer, I just need to blast these potential customers
I'm so fucking tired of "opt-out" bullshit.

So-called "opt-out" must DIE DIE DIE!

Hexstream··on Dijkstra on the cruelty of really teaching computing science (1988)
>>> Like all digitally encoded information, it has unavoidably the uncomfortable property that the smallest possible perturbations —i.e. changes of a single bit— can have the most drastic consequences.

>> Error correcting codes do exist!

He acknowledged this explicitly immediately after, on the next sentence:

> [For the sake of completness I add that the picture is not essentially changed by the introduction of redundancy or error correction.]

Think of what happens if a single bit is changed in the error-correcting part of the program.

Hexstream··on Dijkstra on the cruelty of really teaching computing science (1988)
However, a concise, expressive, very high-level domain-specific language can make it impossible to express many idioms that would break the semantics of the domain.

As an analogy (I hesitate to use one because of the article), you could have a high-level representation of HTML that would make it totally impossible to generate <HTML></NOTHTML>, which is not the case if you use a general-purpose system. (not a foolproof analogy but anyway)

← PreviousPage 2 of 34Next →