apotheon | 5 years ago | on: Tar is an ill-specified format (2015)
apotheon's comments
apotheon | 5 years ago | on: The political case for a blanket cryptocurrency ban
Part of that "used for crime" shit is about things that are against the law just because nobody reported buying a car or something like that, too.
apotheon | 5 years ago | on: Tar is an ill-specified format (2015)
GNU licenses are very much embrace-extend-extinguish licenses.
apotheon | 5 years ago | on: What’s up with these new not-open source licenses?
(I also consider anything that fits the Open Source Definition to be "open source" and differentiate things actually approved by the OSI as "OSI certified", which should in principle be a subset of "open source".)
apotheon | 5 years ago | on: A combo of fasting plus vitamin C is effective for hard-to-treat cancers in mice
What?
apotheon | 5 years ago | on: How to Serve over 100K Web Pages a Day on a Slower Home Internet Connection
Where's the license?
apotheon | 5 years ago | on: Elon Musk: ‘Too many smart people go into finance and law’
I was under the impression the Kansas reference was basically an insult both to the direction of society and Kansas, but then I wasn't sure how that fit in with the claims about what sciences are useful or "real". Yours might make more sense.
Then again, I'm not sure sense is what was being made, there, anyway.
apotheon | 5 years ago | on: Elon Musk: ‘Too many smart people go into finance and law’
apotheon | 5 years ago | on: Elon Musk: ‘Too many smart people go into finance and law’
Finance is about navigating the particular niceties of dealing with money as a professional, and maybe a little bit of trend-misprediction for the sake of occasionally getting to be a "rainmaker" for some employer. I think you mean economics, which is about the movements of economic agents and of whole economies.
Economics is a "social" science (ignoring for the moment the fact that some economists aren't very scientific), and finance is a (highly lucrative) job field.
apotheon | 5 years ago | on: Witchcraft and Wizardry – RPG game created in Minecraft
While I'm here, I'll just point out that the "G" in RPG stands for "game".
apotheon | 5 years ago | on: I’ve Consed Every Pair
apotheon | 5 years ago | on: I’ve Consed Every Pair
Imagine telling Dave Thomas about a cool language you found called Ruby, not realizing Dave has written a lot of Ruby.
Imagine telling Douglas Crockford about a cool language you found called JavaScript, not realizing Douglas has written a lot of JavaScript (much of it full of bad ideas, but that's irrelevant in this case).
Imagine telling Harold Abelson about a cool language you found called Scheme, not realizing Harold has written a lot of Scheme.
Imagine telling Randal Schwartz about a cool language you found called Perl, not realizing Randal has written a lot of Perl.
Like all of the above, for the respective language (LISP in Peter's case, C in Brian's, and so on), Peter Norvig is a well known master who has written a seminal work about the language.
q.v. Paradigms of AI Programming: Case Studies in Common Lisp
He also wrote Teach Yourself Programming In Ten Years, which many people who know basically nothing about LISPs have encountered and consider important.
If I would have any objection to the brief story's use of the term "ironic", it would be about the fact that many LISPers might not be as enthused about Clojure, so it's possible Peter hasn't really looked into it. Your question implied that Clojure is just "Lisp", though, and if we're talking about "Lisp" in a generic sense (i.e. the LISP family), I think Peter Norvig is one of those luminaries that everyone who pays attention to the social context and most important written works about LISP would know. I don't even pay that much attention to those aspects of LISP knowledge, and I know about him in the context of LISP.
That's not to say everyone who has an interest in LISP should be thought deficient for not knowing about Peter. It's fine if you haven't stumbled across him before. Sometimes, people just miss things that, in retrospect, might seem like something they should have known.
That doesn't mean you have to even have an interest in LISP.
This should, however, hopefully, give you a sense of why Peter might think it was "ironic", even if "ironic" feels a bit questionable as the appropriate choice of term there. I'm sure to him it felt a little ironic, and that makes sense to me as an emotional response, at least.
Does that help?
(Imagine telling William Shakespeare about the Renaissance era techniques of being a playwright, or telling James Cooke Brown about a conlang called Lojban. Of course, I suppose James might be dismissive of Lojban, given he tried to control Loglan by proprietary means after creating it, thus prompting others to reimplement it as Lojban, undermining his efforts at such control.)
edit: Note that I'm not saying there's anything wrong with someone not realizing one is speaking with a Big Name in LISP when meeting Peter Norvig. I'm just saying that Peter is perhaps justified in finding it a little "ironic", and jumping to conclusions about why he would feel that way (if that's what you're doing) might not be fair.
I would probably feel awkward in Peter's position. I've been in a similar position before, including once being told about a cool article that I actually wrote as if it would change my life, and I never know what to do in a case like that. How do you point it out without possibly making someone feel offended? Humans get offended at the silliest things sometimes, and I occasionally find it quite difficult to predict.
apotheon | 6 years ago | on: Exceptionally gifted children: long-term outcomes of acceleration (2006) [pdf]
apotheon | 6 years ago | on: Exceptionally gifted children: long-term outcomes of acceleration (2006) [pdf]
In my experience, you should prepare to be disappointed. Judgementalism is how people survive in a world that rewards niarcissism; they judge others to be inferior to give themselves the strength to go on. It's an arms race.
Intellectually, I understand that people are mostly crap. Emotionally, I keep making the mistake of trusting people's supposed good intentions when I feel like I've gotten to know them, and finding out that, once again, they're judgemental assholes who will fabricate tales to tell themselves so they can absolve themselves of meaningful guilt.
There are good people, non-judgemental people, caring people, who can sympathize with you and who deserve your trust (assuming you're a well-meaning person, as I suspect from what I've read here). From your description of some aspects of your life, it seems you've found one or two, and I'm happy to hear it.
Mostly, people want to tell you fairy tales about the good in the world. Most of it is pretty mediocre; even middling is a stretch. It's not distributed evenly, though, and it's worth holding out hope. I was lucky enough to meet one of those rare lights in my early teens, and we're still in touch. I was lucky enough to meet several others along the way, and I charish their influences on my life. I'm lucky enough to live my life with one now, and for quite a few years up to this point. They make it all worthwhile.
apotheon | 6 years ago | on: Exceptionally gifted children: long-term outcomes of acceleration (2006) [pdf]
You need to give better advice than this to people when they're five, when they actually need it.
I learned early on that being right was no defense, and that no matter what happened I would always be blamed. These were the wrong lessons, but society at large was the wrong teacher, so I guess we're even.
This doesn't stop when we stop being kids. In the so-called "adult" world, people make some of the stupidest decisions imaginable on a daily basis, and refuse to acknowledge any errors in their choices no matter how they're brought up. Helping other people turns out to be an exercise not only in futility, but in masochism as well.
I've been called "justifiably arrogant" in the past. I've been condescending. I've come out the other side, and now basically think of myself as kind of mediocre. I used to look around at how people make much worse decisions than me about the important stuff and feel a little comforted by the idea that at least I'm doing better than them. Now, it just makes me sad, because I realize I kinda suck, but 98% of people make me look good by comparison.
I've learned to "go along to get along" to some extent, with people who don't matter to me. The people who do matter to me are the people with whom I can be honest, because honesty is a great way to get yourself in a lot of social trouble otherwise.
Mostly, what it comes down to, is that basically everybody sucks, smart or not, and everybody wants to believe "My shit doesn't stink." There's a grave injustice afoot when someone actually has a good idea, by way of applying some native intelligence and learned rationality to a problem, and gets punished for it, though -- and native intelligence helps people realize they're getting burned at the stake over someone else's superstitions, thus making "smart kids" bitter, dismissive, and lonely.
I'm generalizing a lot. Exceptions abound.
apotheon | 6 years ago | on: Tell HN: C Experts Panel – Ask us anything about C
This might come with huge drawbacks, but it still seems like the only socially acceptable way to fully replace C at this time; make it so you can replace it one line of code at a time in existing projects.
apotheon | 6 years ago | on: Tell HN: C Experts Panel – Ask us anything about C
That's a good question. I'm not sure I know. I could hazard a guess at what would be "best", but I'm not particularly confident in my thoughts on the matter at this time. As long as how that is handled is thoughtful, practical, consistent, and well-established, though, I think we're much more than halfway to the right answer.
> Historically, if there was some action or construct that different implementations would process in different ways that were well suited to their target platforms and purposes, but were incompatible with each other, the Standard would simply regard such an action as invoking Undefined Behavior, so as to avoid requiring that any implementations change in a way that would break existing code.
If I understand correctly, that would actually be "implementation-defined", not "undefined".
> a directive demanding that "long" be 32 bits would provide a clear path for the implementation to meet its customers' needs
There are size-specific integer types specified in the C99 standard (e.g. `uint32_t`). I use those, except in the most trivial cases (e.g. `int main()`), and limit myself to those size-specific integer types that are "guaranteed" by the standard.
apotheon | 6 years ago | on: Google to Slow Hiring for Rest of 2020
Yeah, I didn't think it would go the way it did. That was the first time I noticed a problem.
What I really should have done is start searching for another job a week into this "process".
I'd rather give employers what they want, and -- if what they want is stupid or insane like that -- leave before I have to give the employer very much of what it wants, because I don't want to be a part of that.
> I heard later on that a VP refused to accept the solution because he insisted it must be wrong since it was completely inconceivable that it could be solved that quickly.
I loathe crap like that.
apotheon | 6 years ago | on: Technical reasons to choose FreeBSD over GNU/Linux
I agree with that position.
apotheon | 6 years ago | on: Tell HN: C Experts Panel – Ask us anything about C
> > using the new language's compiler as the project compiler front end's drop-in replacement (without having to make any changes to the code at all for this first step)
I'll look into Zig more, though. Maybe I'll like it.
---
I stand corrected, given my phrasing. I should have specified that it needs to also support incrementally adding the new language's features while most of the code is still unaltered C, rather than (for instance) having to suddenly replace all the includes and function prototypes just because you want to add (in the case of Zig) an error "catch" clause.
What makes open source software "open source" is the source code, which is subject to copyright law. Ideas, protocols, and interfaces are not subject to copyright; only their expressions are subject to copyright.
The Embrace, Extend, Extinguish approach makes things incompatible with the way others do them to cement hold on a large user base that prevents those users from changing their minds later. Sometimes that takes the form of forcing people to reimplement everything in a cleanroom setting, because they can never keep up that way; that's where the GPL excels within the open source world for EEE. Other times, it's by diverging from norms in ways that others cannot follow without breaking their own ecosystems, which is where the GNU project has excelled with its plethora of subtle incompatibilities.