Rust has two types called Rc and Arc that have this behavior. When you clone an Rc pointer, the internal reference count increments, and as each clone disappears, the reference count decrements. (Arc works like Rc, but it uses atomic increment and decrement operators, so you can share it across threads.)
That was probably just a random student who learned some fun stuff in Security class and slept through the Ethics lesson. I can't speak for UMich, but security research at my university (NC State) has a very strict "don't attack civilians" policy.
> hosting a .com commercial site
First off, .com sites are not necessarily commercial. Second, this isn't a commercial site, it's an informational page about a recently discovered TLS vulnerability.
I almost went down this route on a project once. As soon as I noticed myself writing an identity map, I slapped myself in the face and just downloaded Symfony.
It seems to me that the author's system was in an incredibly unstable state to begin with. He's running a Debian prerelease with an unsupported filesystem, that had gone without updates for months at a time. I have a hard time seeing how changing the init system would not cause problems in a setup like that.
Oddly enough, back when the cylindrical Mac Pro was first announced, a coworker and I discussed how exactly one would rack them. We came up with something very similar, but slightly asymmetric, and designed to hook into a standard 19" rack.
(This was prompted by the question of what Apple's Web site runs on if they don't make servers any more.)
Flashing reds are based entirely off of how long it takes an "average" person to cross. As a relatively tall young adult, I walk much faster than the "average," so I can frequently make it across by walking even if it's been flashing red for a few seconds. Furthermore, the "Don't Walk" sign becoming solid is timed to correspond to the yellow lights appearing for the parallel traffic, so the opposing traffic won't start moving for a few seconds after the "Don't Walk" signs appear.
(Disclaimer: This is based on Raleigh, NC's traffic lights. I don't know what level this is standardized at.)
My lightning talk - "Traversing the Montreal Métro with Python" - was accepted, and I'm super-excited!
But also I'm super-excited about the rest of the schedule. There are 36 talks that I'm really interested in seeing, and I don't think that's even physically possible. So I guess I have to decide which ones I'll have to settle for watching on pyvideo.org.
The "moderators on StackExchange" shot was good, but I really take offense to the "PyCon 2013" one. The reason stuff went wrong at that conference was because of the actions of one attendee, who specifically did not go through the process the conference organizers set up for dealing with reports of harassment.
Ah, the wonders of low-level assembly programming. I was a teaching assistant for an assembly course this semester at school, and one of the students was running a program in the debugger. (Specifically, Microsoft CodeView running in DOSBox.) F10, F10, F10, until she got to the load instruction that would fill the cx register. Press F10 again, and suddenly, the debugger shows "cx = DEAD."
She freaks out a bit, I freak out a lot. We're both worried that something really bad happened, then I realized that DEAD is actually a number in hex. I look through the data segment, and I see a AD DE in there (yay Intel byte reversal!).
I check through the code a bit, and even though it looks like the data segment is being initialized properly, it's still reading from the Program Segment Prefix. So, I find the Wikipedia article on the PSP and see that address 05h in the PSP has a cross-segment jump to CP/M compatibility code.
But, there's nothing at address DEAD (at least, nothing sensible). So I go searching through the DOSBox code for that string, and I find these lines:
// far call to interrupt 0x21 - faked for bill & ted
// lets hope nobody really uses this address
sSave(sPSP,cpm_entry,RealMake(0xDEAD,0xFFFF));
As it turns out, because DOSBox doesn't implement CP/M compatibility, they simply made it jump to DEAD instead, just to make sure that if anyone tried running a CP/M program they would get the picture. And the assembler just happened to put the variable in the right place that the load pulled the DEAD instead of random nonsense.
I can only imagine the problems that can manifest when you're dealing directly with hardware, and don't have access to commented source code.
> On the one hand, it seems ridiculous (absurd, perhaps) to fire someone over a pronoun -- but to characterize it that way would be a gross oversimplification: it's not the use of the gendered pronoun that's at issue (that's just sloppy), but rather the insistence that pronouns should in fact be gendered. To me, that insistence can only come from one place: that gender—specifically, masculinity—is inextricably linked to software, and that's not an attitude that Joyent tolerates.
They're not opposing the use of the word "he," they're opposing him saying "no, go away, I don't see any reason someone could take offense" when the issue was pointed out instead of "thanks for the patch."
He didn't quote Strunk & White to justify rejecting the patch, nor did he bring up the grammatical argument at all when reverting it. He just said "this is not worth spending time on" and closed the ticket. (And if it was truly not worth spending time on, he wouldn't have contramanded one of his fellow maintainers to revert the patch, then rewrite the repository's history to cover himself.)
I use Symfony at work. I would love to contribute some of the patches and helpers I have written to Symfony, or release them as an independent bundle, but (a) I'm the only programmer on the project so I don't really have time, and (b) my company doesn't really do OSS, so I would need to explain all this to our legal department before I could get authorization to release it.
This looks like a fairly well-designed format. My main concern is that this seems to have suddenly appeared out of nowhere and gone directly to RFC. (Presumably there was an Internet-Draft, but I have never seen anything about this before.)
Here's a point that gets forgotten in a lot of discussions of this issue:
> We’re also underlining that our events are for over-18s, maybe even over-21s, by holding them in licensed premises. Most of us know students or even those who are working professionally in our field long before they are “adult.” Should they be excluded?
Can you draw brightly colored lines on roads for a bus map? I like to mess around analyzing bus routes, but so far I haven't been able to find a computer-based tool for drawing them effectively.
I like the implementation of the "Enum" class, especially the way they allow for enums with variant behavior and "abstract Enums" (something I could have used in Java recently).
But, ever since I found out about algebraic data types from other languages, I keep wanting those. There's not quite a good way to do those in Python. (I've used both "tuple subclass" and "__slots__," but both of those have their own little quirks.)