242 karma · joined May 10, 2015
I wish I could give this comment more upvotes. I'm slowly learning this lesson in my personal life - I wish I could learn it faster, but the goddamn brain is just too much more insistent than the body..
I mean, I guess grocery stores already do this in some ways, in choosing what to feature... they do effectively 'advertise' certain products. But this seems more like it's trying to manipulate my behaviours, rather than trying to fulfill my desires as well as possible. I'm not sure how different it is... but it feels a lot different to me.
Would that more professional programmers had this humility. :)
I think I need to get more fresh air or something.
Admittedly not the most easily understood acronym, and I'm sort of guessing.
I was surprised, but I was not disappointed.
Interesting that the original complaint of that article/thread and this one are both the same - ie. quaternions are 'too hard to understand', and people 'use them without knowing how they work'. With this being posted so soon after https://news.ycombinator.com/item?id=18310788 , I feel like that complaint is less valid now than it ever has been, but it's kind of interesting to think about why quaternions in particular draw so much fire when, honestly, I found matrices to be equally challenging at first. Is it just an education thing, since matrices are generally taught much earlier? Or is there some intuition in matrices that isn't present in quaternions? Both of them seem to be just 'do this math, then magic happens' unless you think about them a fair bit, and that was pretty challenging for both the first time round imo.
But this has a lot of problems. Namely - most of the time, when two people change the same line, the changes really do conflict, and someone really does need to manually merge them. In fact, sometimes even when your VCS merges things happily, it still gets them wrong because two changes conflict semantically but don't touch the same lines.
So I guess I would say, I think merging is an impossible problem to 'solve', and going to a more granular merge strategy is actually a move in the wrong direction. You could maybe fix my particular case by 'whitelisting' those typename changes, and saying 'these are allowed to merge with anything else', but at that point... the effort required to specify that unambiguously and make it work properly is probably higher than just merging the changes.
https://github.com/electronicarts/EASTL
(In case it wasn't obvious, disclaimer: I work at EA, and frequently do work on EASTL, though I'm not the primary maintainer.)
The problem is not anything to do with glibc - it's the conduct of someone who, like it or not, is a role model for a lot of people in the community, and has taken on a very public role.
RMS's conduct here is just... pretty inappropriate. Jokes about abortion, rape, race, sexual orientation, etc, etc, are not something you should be touching as the maintainer of a public project, no matter what your opinions are or how strongly you hold them. The glibc maintainers (completely reasonably) decided that the man pages weren't a good place for potentially-charged jokes like this, and removed it. RMS overruled them in a pretty childlike and insensitive fashion, and that's not appropriate when you're the public face of anything.
I don't give a shit about the politics of glibc - but I do care that someone who is a role model and a public figure acts like this.
for (; vm->prog->instr[*instr_idx] != -0x1; ++(*instr_idx))
tvm_step(vm, instr_idx); class Vehicle {
virtual void Collide(Vehicle other);
}
class Car {
void Collide(Truck other) { /* hit a truck */ }
void Collide(Car other) { /* hit another car */ }
}
class Truck {
void Collide(Truck other) { /* hit another truck */ }
void Collide(Car other) { /* hit a car */ }
}
Vehicle c = Car();
Vehicle t = Truck();
c.Collide(t); // with multiple dispatch, calls Car::Collide(Truck)My one real pain point with it isn't so bad, but I dislike how perforce tends to work at a file level instead of a commit level. It's hard for me to make several related changes which all touch the same files, like a series of patches which all refactor the same area of code, but which I would like to review and discuss separately, and potentially revert some/all of.
It's hard to manage this with shelves, because perforce can't handle unshelving the same file in two different CLs. I could submit all the changes to a separate stream, but perforce streams just don't usually work well for us, and it's still hard to experiment by constantly making and rolling back changes.
I guess I'm probably only used to this workflow because I have experience with git, but this is the time when I really miss the granularity of a git commit (and I'm doing a pretty gigantic refactor right now... so it's hitting me quite hard).
So they don't actually care about compensation, they just have the right and want him to bleed.
e: it may be worth noting that I can't for the life of me remember what the I and D stand for... clearly I am much more of a KISS kind of programmer.
Never knew you personally but I spent a lot of time lurking on TL after SC2 release, and further on into the Dota days, congrats on the launch!
Seriously, really good looking stuff for your early projects! I'm not surprised someone picked you up :)
Also, this is why we have engineering codes of ethics, at least in Canada and the US (and while I'm not familiar with elsewhere in the world, I would assume similar things hold in most first-world countries). We don't necessarily have to agree on everything, but there is a baseline for what we consider ethical, and engineers are expected to uphold that baseline, otherwise they are not permitted to practice engineering. Unfortunately the line between 'engineers' and other practicioners isn't as well-defined for software engineering as it is for most engineering fields - but that doesn't mean we should ignore it completely.
I really really really strongly disagree with this. As the ones who are most knowledgable about the systems they're building, I definitely think engineers have a moral responsibility to make sure they're at the very least following applicable laws and regulations - I would argue that we have a moral responsibility to act ethically even in cases where it's not covered by laws or regulations, but I'll admit that's a bit more controversial.