HN user

tomheon

172 karma

Coder by day, scribbler by night. Co-founder at http://www.hut8labs.com.

Posts4
Comments13
View on HN

I was lucky enough to meet Clay Christensen once when he came to speak at a company I worked at.

First he delivered a brilliant lecture on how companies repeatedly found themselves put out of business by new technologies, even after having made only decisions that actually increased their profits (his famous theory of "disruption").

Then he went on to talk about how easy it was as a driven, career-focused person--like most of the folks in that room--to invest too much in your career and not enough in your family. He pointed out how you can see whether your efforts in the office are paying off after a year or two, sometimes even shorter--while you don't really know whether you raised your children well for 20 years or so. Since so many smart people are addicted to feedback loops of quick success, he argued, that put them in special danger. You could easily spend year after year making choices that increased your success in your field, only to discover--too late--that you hadn't been paying enough attention to things that mattered more.

He was one of the best speakers I've heard, picking precise words and moving smoothly from topic to topic, but every once in a while he would hold up his hand, bring his fingers together as if he were gripping a pen, and then twirl his hand in a circle as if he were asking for the check. After the fourth or fifth time, he stopped and apologized. He'd had a stroke recently, he explained, and occasionally he couldn't remember the words he was trying to say unless he pretended to write them in the air.

A brilliant, humble man, whose essential goodness was impossible to miss.

May he rest in peace.

It's tricky to figure out where replies should go, especially if, e.g., there's multiple comments from different sources on the same line.

There's also the whole "what if there are comments from multiple authors to write back" problem, since you're presumably only going to have access to the API on behalf of one user.

I came away from the time I spent looking at this thinking that you'd probably be better off implementing a separate mode that talked more or less synchronously to GH as you replied etc., rather than working on an import / export cycle.

But there might be a better way.

But the diffscuss modes parse the comments into functional structures--threads--to decide where to insert replies, etc., which is in fact functional--just not functional for the diff part.

Here's another way to think about it:

It sounds exciting to think that "all legal diffscuss files are also legal diff files!" In fact, very few diffscuss files will be used as diff files, and those that are can be trivially transformed.

It's not awesome on the other hand if "not all legal diff files are legal diffscuss files," which is where piggybacking on the diff comment syntax gets you, because every diffscuss file starts its life as a pure diff file and there's no way to transform an offensive (but legal) diff file into a legal diffscuss file without data loss.

You still get comments which, while unlikely (because they would have to have the second "enabling" character) will confuse a diffscuss parser.

I still think allowing for a state of "perfectly legal diff that would have to be altered to allow for diffscuss parsing" is a tough sell...

Hey there, one of the diffscuss authors here.

We were working for a client who used self-hosted svn and had no code review system.

As for GitHub API: there's a (beta-ish) import from a pull request into a diffscuss file ("diffscuss github-import" for more), but currently nothing to push it back, which is a tricky problem (since what's displayed on a github pull request is actually a mixture of pull request comments and comments made directly on the commit diffs). But if there's sufficient interest we'll take a look!

Good question, we did consider using #, the main benefit of which would have been that diffscuss files were still legal diffs.

Against that benefit was the consideration that there could have been comments that weren't diffscuss threads in a diff, and that would have meant that you could have legal diffs that would have terribly confused any diffscuss parsing.

Add to that the fact that you can get a legal diff back just by piping a diffscuss file through a single grep -v, and we decided not to use # (which I think was probably the right call--overloading comment syntax for functional stuff always creeps me out a bit anyway).

Hey, one of the authors of diffscuss here.

Just FYI, there's a "diffscuss github-import" command (which is beta-ish, but should work) that can import a pull request (or series of pull requests) into diffscuss format.

According to a friend of mine who is relatively knowledgeable about this law, it was originally intended to target enterprise companies that were essentially selling software for next to nothing and then charging like mad for the "installation and configuration" to avoid sales tax.

The wisdom of even that approach is debatable, but the actual language of the law is far from conveying that intent and is a total, indecipherable mess. No one has the remotest clue what is actually covered under the language of the law.

I'm part of a small software consultancy in MA, and we've now got 30 days to decide which of our customers this crazy language applies to, and which it doesn't. Is Django "pre-written" software? Does spinning up and customizing an instance count?

It's crazy town.

Thanks for bringing this up / posting the link.

Someone brought up a similar point in comments on the poem itself--I added a direct link in the attribution.

So glad you enjoyed this, and "The Little Bank"! I just started the process of moving things out of the drawer and onto the site. There's a big backlog but I'm posting every week or two to avoid a "verse bomb" effect. However there's an RSS feed if you're interested.

Thanks again for the response. It's great to see that there are other hackers out there interested in poetry.