HN user

cpurdy

343 karma

co-author of the ecstasy language and the xvm

Posts0
Comments100
View on HN
No posts found.

So murder someone who wasn't involved in a purported rape because he at some point in the past introduced a purported victim to the purported rapist.

There's so much wrong with this purported claim whose purpose is likely to be the misdirection of justice ...

CrazyBob was murdered. The murderer has been convicted. The conviction does not, in any way, undo the loss, but justice is still a necessary element in the preservation of our society.

May justice be swift and appropriate. And may the family and friends finally find room for healing.

I remember when Levo started this project. At the time, he was getting fed up with the various editors that he was using while he was working on his compiler. He didn't like any non-responsiveness or slow-downs when he was trying to look at a file, whether it was a big dump of something, or XML, or whatever. He asked "How hard could it be to just write a working editor that doesn't freeze up with big files or scrolling?" and I joked that it shouldn't take more than 3 days to build. That must have been close to a year ago.

The software industry is getting harder and harder to do a start-up in, or even a self-sustaining open source project in, especially in the dev tools space. Levo's been trying to figure out how such a thing might be possible: Is there a way to build things like this, full time, and still be able to pay the rent?

This might just be his experiment to find out ...

Lobsters 3 years ago

There's a URL for each user that shows their standing. Any recent (last 30 days) reports are listed there. You can't tell who reported you, but you can tell what they were complaining about (which post, what reason they gave).

The URL is reddit-like, i.e. /u/username/standing

The problem is that there's a downside to being reported, but there's apparently no downside to reporting people. Since there's no down-voting of comments on lobsters, and since reporting comments is apparently free and unlimited, some people seem to use it as their down-vote. And since it's anonymous (the reporting person's name isn't included in the report to the person being reported), and since reporting appears to have no limits or downsides, it inevitably creates some twisted incentives.

I currently have no "reports" there, but that's because I (mostly) learned my lesson: Post your own opinion at your own risk. i.e. You'd better make sure that your opinions aren't unpopular with any users there, and particularly not with the dominant group.

I think someone else mentioned that the things that they posted that were reported, were also the things that received many more upvotes. I can personally confirm this from my own history. However, I don't find this surprising: If something evokes a response that could cause someone to upvote it, it shouldn't be surprising that it would evoke a response that could cause someone to report it. And receiving kudos for an opinion does not absolve that opinion of the responsibility to adhere to the rules and standards of the site.

Coincidentally (and AFAIK not related to this thread here), I did have a comment moderated (i.e. deleted) within the last 24 hours. I'm of mixed feelings on the rationale for the moderation. It's a thread that contains highly-upvoted comments like "I hope those responsible get sued to oblivion. This kind of stuff should result in a corporate death penalty." My comment was: "Just waiting for a case like this to make it up to the US Supreme Court so they can rule that it’s a constitutional right of companies to do this." Apparently, my post was "political". (I can only assume that the "political" aspect was my implication that non-human legal entities like corporations should not be granted legal rights by SCOTUS that expropriate or otherwise displace the rights of actual human beings.) The thread: https://lobste.rs/s/8igrxm/train_firmware_reverse_engineerin...

On the other hand, I do agree that some portion of the topic is very technical in nature (and the technical aspects are interesting), and it's hard to discuss that portion of the topic if people are constantly commenting about relevant aspects of the legal system or whatever. So since the post wasn't specifically about the legal aspects (or "political" aspects, if you insist), I can kind of see the point of the moderation.

Lobsters 3 years ago

The self-promotion on lobsters is rampant, and not surprisingly, most of the self-promotion is very low quality crap.

However, I have seen a few self-promotion links that were brilliant, so I have some mixed feelings on the topic.

I don't have any answers, but I definitely can spot the problems.

Lobsters 3 years ago

I don't think I've ever posted any articles on Lobsters, but there are a bunch of users there that use the "report" feature any time that they see a post that doesn't support their own personal opinion. That aspect of the site does get old, fast.

But most of the users there are cool. Unfortunately, it only takes a few bad users to make the experience of posting uncomfortable.

That TSS in Boston was an amazing confluence of people, mostly all unknown at the time! There was: You, Gavin, Bob, Mike Cannon-Brookes, Marc Fleury, Neelan Choski, Patrick Linskey, and at least a dozen other notables, all who went on to have outsized impact on our industry.

You were one of his favorite people that he ever got to work with. Even years later he couldn't stop gushing about how proud he was of you. No exaggeration.

I knew Crazy Bob online for a while before we met. We both ended up working with some of the same packages (early Java enterprise stuff) for some of the same big companies, and we were chatting with each other on our blogs, and posting/arguing on TheServerSide.com at the time. I was visiting one of those companies (SBC) in St. Louis in '03, and getting on a plane to fly to SF to speak at JavaOne, when I ran into Crazy Bob on the plane. We instantly recognized each other, and we ended up hanging out for most of JavaOne, and a slew of conferences after that (various JavaOnes, TheServerSide Symposium, etc.) At one of those TSS conferences in Vegas, Crazy Bob married Mrs. Crazy Bob (yup, Krista went by that name online :) Not surprisingly, Crazy Bob was pretty damned crazy about Mr. Crazy Bob, and I wish I could tell some of the stories but they'd probably get me banned from this site. Anyhow, the wedding was on the bridge of the Star Trek Enterprise, and the reception was in a ... um ... let's just call it a specialty dance club. All night. Red bull and vodka to stay awake.

Bob worked on the original Google Adwords. He created Guice. He worked on the original Android. He worked at Square. Cash app. etc. His technical chops were solid, and he actually loved doing the technical work. In his spare time, he programmed his custom garage door openers and did all sorts of other crazy projects.

But what he was best at was being an amazing cheerleader. Sure, he loved to talk about his passion projects and whatever library he had whipped up in a 48-hour coding session the week before, but he actually put more effort into bragging about the stuff other people were accomplishing around him. And he wasn't faking it -- he really loved it all, and he really meant it. He spent hours and hours bragging to me about people he was lucky enough to work with, and I've met many of them, and they're all like "he's got that all backwards". Some of them I haven't met, but I swear I know them inside and out just from all of his descriptions. :D

He was also super proud of his little brother Timmy ("Oliver"), who moved out to SF running some high end restaurants, and ended up switching into the tech industry as well.

And of course Bob was most proud of his two daughters.

I last talked with him in February, and at least I got to tell him one last time that I loved him and his family. And while I'd normally (and respectfully) say RIP, I swear there's no "Rest In Peace" for Crazy Bob ... wherever he is, the music is turned up to 11 and the lights are on all night.

Hey Sam, that's actually the JavaOne that I was flying to from a meeting in St Louis. When I got on the plane, I met ... Crazy Bob and the rest is history.

For what it's worth, he still talked about you pretty much every time we got together. He loved his time there.

That's a weird way to look at it.

The many states that have agreed to this (have passed the bill) have simply accepted that the votes of the people is worth more than the feelings of the billionaires who have sponsored the Republican gerrymandering movement.

Right now, effectively, the land votes, and the people's vote is often ignored. Wisconsin is a good example, where the Republicans keep losing the vote, but yet with less than 50% of the vote, they somehow have a super-majority in the legislature.

My boss at my previous job made $40 million a year, and he was literally single-handedly tanking the company. He got fired and so he went to work for Sundar Pichai at Google ... making even more.

People who are on the low rungs of the ladder assume that the people way above them must have been intelligent to get up there. It's not always a great assumption.

I'd be curious to know about any/all languages where types can be passed to functions, returned from functions -- and even generated at runtime by functions... that is, where the language regards types as first-class constructs...

Ecstasy (xtclang).

I hate the Python syntax using "else" for this, but I love the feature.

I've often wanted both a "then" and an "else" from both for and while loops. The "then" would be for a successful completion (no break), and the "else" would be for when the loop doesn't even run a single iteration.

But that didn't make it into our "language budget", unfortunately. It's easy to implement, but hard to argue for when it doesn't get used often

It's an interesting mix of "hex" and "array" into one syntactic composition. I do kind-of like it.

Here's how we ended up supporting byte strings (# prefix) in Ecstasy, in this case multi-line:

    Byte[] bytes = #|12 34 56
                    |78 9a BC
                    |dE f0
                   ;

    console.println($|bytes=
                     |{bytes.toHexDump(4)}
                   );
Which prints:
  bytes=
  00: 12 34 56 78 .4Vx
  04: 9A BC DE F0 .¼Þð

This is one that I like a lot. Years ago (1997 timeframe) I had implemented it in a Java compiler, and a few years later in a Java library (https://github.com/oracle/coherence/blob/4e6e343e1ffd9bbfea3...) that would create an exception on the assertion failure and parse its stack trace to find the source code file name, and read it to find the text of the assertion that failed, etc. so it could build the error message ...

In Ecstasy, we built the support directly into the compiler again:

    val a = 1;
    val b = 2;
    assert a == b;
Produces:
    IllegalState: a == b, a=1, b=2