I have just had my first real production interaction with systemd. I should warn partisans in advance that the conclusion is not clearly pro- or anti-systemd, the upshot is, there's a surprise interaction, and the means to manage it. Also the Debian community is awesome.
My issue was, for several systems, mostly VMs and cluster nodes in a test cluster that I'm setting up, the default config on Debian Jessie upgraded from Wheezy, SSH sessions do not cleanly exit when the system reboots. This is bad because my cluster-management tools, which push commands out to all the systems via ssh, will fail to exit or generate error codes which are false positives in this circumstance. Rebooting is rare, but important.
There's a Debian bug thread about this, linked below, and there are two solutions, both of which work, and I have used each in different circumstances.
The first solution is to enable "UsePAM" in your sshd config. Apparently, with UsePAM turned on and libpam-systemd installed, SSH sessions get registered in some global set of connections, and can be found and cleaned up at shut-down time. To my mind, this is a pretty strange interaction, and represents the kind new, poorly-managed global state that we were all freaking out about when we first learned about systemd. I have implemented this solution on the head node of the cluster in question, and it works.
For the client nodes of the cluster, I didn't really like this solution, it has the bad side effect of making all SSH connections display the message of the day and other status info (last log-in, etc.) that comes from working the PAM mechanism. Because client nodes do daemon-driven MPI connections, it's important that these connections be clean, there should be no status messages or other system traffic, once the SSH handshake is finished, it should go straight to the MPI traffic, otherwise MPI can get confused and behave poorly. One can in principle edit the PAM config to eliminate the superfluous messages, but you might still want them for console log-ins, and even so, you can still do it, just have the pam-ssh files not use any of the common-auth or common-session stuff, but then there's a lot of near-redundancy, it feels like the wrong scope.
Fortunately, there's the second solution -- if you disable "ssh.service" and enable "ssh.socket", you get clean session termination without requiring PAM in the sshd_config. This is what I have done on the client nodes of my cluster.
So, as I say, my first real operational issue connected with systemd, and so far so good.
The Logitech G710+ has also some good mechanics, and even some programmable (Emacs or Unicode) keys, but a bad linux driver.
The only other option is the Razer BlackWidow Ultimate, which is IMHO not suitable for programmers.
I tried now about 20 mechanical keyboards. In Germany they don't have US-English keyboards for programmers at all, so you have to try the mechanics on a German layout, and then order the US variant.
At first they thought it was going to take them a long time to port their code because it is a new language for them, but it's been a few weeks and most of it ported.
They loved it so much, that we're now working on porting their front-end music player from JS to Dart.
Thanks Dart Team! You guys are doing an amazing job.
Once the product is ready to launch, i'll share it here!
My old attempt was fast, but destructively modified each inlined function in the definition.
More memory (max 10 copied ops per inlined cv), but more speed. No costly arg handling, no costly call and leave handling. Using the stack naturally and not as hackish and expensive as currently. Supporting fast call-by-ref, constants and literals and call-by-value, everything compile-time.
Now the loop-unroller will also be trivial.
BTW: nextstate is horror. It ends a statement, every ';',
and it resets the SP, the stack pointer, for each new line. A normal compiler would keep track of the stack context and would not pollute the stack with unconsumed data. lhs expr should not push their results to the stack, unless it's the end of a function.
For my inliner I added 2 new state ops, to keep the SP inside inlined functions, setstate and keepstate. Horrible, but so far an easier hack than rewriting the compiler to honor the lhs context properly.
Metasploit: Major Android Bug is a Privacy Disa... | SecurityStreet
On the night of September 7, 2014, Joe Vennix of Rapid7's Metasploit Products team wrote, "I did not believe this at first, but after some t
Goalkeeper scores from own penalty area in Austria – video
USK Piesendorf goalkeeper Leo Hannes turns defence into outlandish attack against Berndorf when he catches an inswinging free-kick in his ow
YAPC::Asia Tokyo 2013 特別座談会 「Rubyの良いところ語ってください 〜そんなPerlで大丈夫か？〜」 - YAPC::...
U.S. Seemingly Unaware of Irony in Accusing Snowden of Spying
At a press conference to discuss the accusations, an N.S.A. spokesman surprised observers by announcing the spying charges against Mr. Snowd