skysight-inc/HackerNews huggingface dataset:
I think we're saying exactly the same thing, and I agree that people have the incorrect casual estimations of exercise calories vs food calorie density.

However...

"It's not consistent. You're only seeing the results on the people it works for."

I think this isn't correctly stated, and dangerously gives one the impression that athletes are born not made.

In fact, it is extraordinarily consistent. Outside of disease processes anyone who takes up training like an athlete will begin matching the physique of an athlete. People are athletes buy choice, not by physiological imperative, and this is proven out extensively by people who take up athletic behavior anywhere at any time in life.

As I pointed out with the Sumo example, I'm specifically including all behaviors of athletes not just the exercise portion. That was my point about the value of 'fasting' before going to sleep. Something most athletic diets recommend (also eating more and smaller meals even with the same total calories per day).

As you point out it is psychologically difficult to reduce calories with diet alone. This psychological effect becomes increasingly successful at causing us to consume excess calories the longer or larger a deficit we attempt to maintain. This nearly invariably results in a bounce back effect, and often resulting in a higher 'set weight'. The net effect of diets being a progressive increase in weight over time.

Athletes are consistently successful, dieters are consistently unsuccessful (with the exception of anorexia).

It makes sense that this is true when you start digging into it. Along with improved self image and mood a higher metabolism allows athletes to hold a better physique for longer even with excess calories, while a dieter will 'rebound' more quickly due to lowered metabolism, and the bodies tendency to store fat in response to famine. Further, other than protein sparing diets the diet only approach can lead to loss of muscle as the body consumes it for energy, so after any success with dieting taking in excess calories leads to muscle being replaced with fat.

Eating a bunch of Twinkies is bad, eating them right before going to sleep is worse.
It would be nice to know the amount he is trying to recoup.
Come on guys, I know the comment wasn't exactly on-topic but it's a harmless question and I don't think downvotes are really called for.

http://i.imgur.com/LGp4rmw.png

Chromium on Linux.
Joint Allocations in C++
Obama Releases Average Debt and Earnings Data for Every University in America
"Breach of Contract" on it's own might not be a crime, however some contracts may be enforced or protected by criminal laws here is a simple example your divorce settlement especially alimony (which may or may not include child support).

When you divorce some one you sign the divorce papers which are a contract certain parts of that contract can be enforced by filing criminal charges, as in the US at least if you don't pay what you affirmed to pay you can be charged with non-support which in many states is a felony.

http://www.ncsl.org/research/human-services/criminal-nonsupp...
Agreed. GitHub has really done a lot to harm the quality of commits. Their tools emphasize looking at and commenting on the total diff of the patch set rather than inspecting each commit on its own. I tried commenting on the patches themselves once only to realize that the pull request page didn't show them and they were hard for the author to find. Unfortunately, it doesn't seem that GitHub is willing to change their code review tools since even Linus Torvalds complained about them and nothing important was changed.
Very good essay. However, Carmac's view that there is very little quantified info about what works and what doesn't overlooks the work of software engineering practitioners, such as Capers Jones, who has long studied projects quantitatively and published detailed statistics on the effectiveness of different development approaches. His book "The Economics of Software Quality" is an excellent summary of his findings across thousands of projects.

Reading it is like the first time you run a profiler and you realize that what you think you knew is true in part, but that other factors you'd not counted are have an outsize effect that you've misestimated.
The Fed may hike, but here's why it may not matter
You can simply use `git add -p` to stage hunks individually (or `git reset -p` to unstage some hunks).
>It's probably also possible on the cli, but I imagine that would be too 'hard' or time consuming, hence you will probably start to be lazy about doing it correctly.

I do it all the time, you just use `git add -p` and it steps through hunks letting you stage them or not. As long as you don't make too many changes without committing, it's not particularly tedious.
I would think that scanning through commits is a pretty inefficient way to find out which commit introduced a problem anyway.

"git bisect", "git blame" and "git log -S" are my tools of choice.
I work in the defense industry. Sometimes it is indeed easier to ask for forgiveness than permission, but you must be very careful. Obviously anything that violates any NDAs or security agreements is not to be pushed at all, but I've had no problems writing and running Python and MATLAB programs.

Point is, defense industry doesn't automatically equal a locked down environment.
I tend to agree, the Alumni group posts starting salaries here: http://web.mit.edu/facts/alum.html but I can't find their 5 year and 10 year numbers. I expect that the median for 10 years would be north of $200,000.
Using this fork on El Capitan now.
> Python 2 usage is still strong while Python 3 adoption has actually slowed down

Hypothesis: distributions started installing python3 by default now, so people don't have to download it separately anymore. Python 2 downloads will stay at the same level as they were and actually 2.6 will go up as it's not available in supported distributions anymore. This is strangely opposite trend to actual adoption.
And `git checkout -p` to erase hunks from the working directory. (i.e. delete without saving!)
Reverse engineering an ancient wireless security keypad using RTL-SDR
It sometimes feels to me that we're missing some essential component of the software creation toolchain: a configuration-time or link-load-time equivalent to a compiler's "dead-code elimination" or a linker's "whole-program optimization" or a runtime's profiling JIT.

In other words, presuming a given program was shipped to you as a source package, your package management system could contain a pass from a generic program that takes the software "seed"—the generic version that does a lot of things—reads a configuration file specifying your particular use-case—and then hardcodes policy-level choices like protocol flags, strips out every code path that you won't be invoking, removes conditionals altogether where only a single path is left, inlines functions that have then been made trivial, etc.

It would be sort of like a version of autoconf that works at an AST level; but also built on the expectation that you'll be able to run it again to generate a new binary if your business needs change, rather than just serving to enable you to cook up your program with whatever nasty ingredients are left in your OS's fridge.

The result of such a source-transform pass should be something like one of the djb programs: a terse piece of code to achieve your particular goal. Ideally, you would then take that program and read it before using, because, well, if your particular goals are reasonable, then the code should be small enough to fit in your head!

On a tangent, the "unikernel" philosophy, as I understand it, is simply that if you could throw the entire kernel + OS + your application into such a goal-oriented streamlining woodchipper, a unikernel application is what would result.
Could even flip it around: prepare a simple implementation of a hash map, maybe even in sudo code, and then show it to the interviewee and ask them what's going on/discuss it.
It occurs to me that the configuration-time and maintenance-time "weirdness" of djb's software is a lot less of a big deal if you stick it in a Docker container. I've seen daemontools being used as a container-internal PID1 a number of times.
"git add -p" can be fun, but it's a little scary because it's super easy to end up making commits that don't actually stand on their own. Super simple to miss an import here or a new field there. If you do a whole series of them, it might actually be worse for others to come back to (or bisect in) if they don't realize the original developer never actually compiled and tested each commit as-is.
Just because you don't get a 1099 doesn't mean you earned that income tax free. It still needs to be reported and people are breaking the law if they don't report it as non-1099 income.
You're confusing a breach of contract and the settlement of a suit. You sue for divorce and eventually reach a settlement. A settlement is enforced by the courts. (Having decided a breach exists and decided damages, the court can force a party to abide by the terms of the settlement.)
Yeah, per that site, the average starting salary for all MIT undergraduates is $75K/year. That's really damn good. Filter it down to just the software engineers and it'll be a good deal higher. And there's so much upside left too.
This is incorrect. As I believe the author notes, Same Origin Policy prevents you accessing the results of endpoints you can CSRF with at least one exception (JSONP). The author uses the timing of the forged response to determine if the value was cached. Again, the attacker cannot access any information from a cross-site forged request in this case other than timing data.
Oh I'm fully aware it's income tax evasion, I'm just saying that, realistically speaking, a lot of people tend not to pay taxes when on unreported income.
Are College Lectures Unfair?
Stupid regulations, anyway. They only created value for people.
Price discrimination and 50% ARPU improvement
Well ideally you could use `git stash -k -u` (-keep index, stash -untracked) to set your working directory to the state you're actually committing, and then run some tests.

For the most part though, I just try to avoid having so many hunks to step through that this is even an issue.
Apple TV – A World Without Webviews – BPXL Craft
I think you should usually be able to reword any "self-action" commits into system action commits.

For example, you could say "Don't issue unnecessary cache directory warning".

Prefacing a commit message with add/remove/delete seems unnecessary.
I skipped reading the article, as I thought there was no way MI6 existed in 1916 when Rasputin died. But just to be fair I decided to Wikipedia it - and discovered it was founded in 1909 https://en.m.wikipedia.org/wiki/Secret_Intelligence_Service

So now I'm off to read the article.
My experience:

I've tried Python 3 and enjoy it very much.
A few things drove me nuts at first, trying to figure out why syntax that worked in Python2 is not longer working in Python3.
But a little bit of googling and I was on my way with Python3.

I have a project that I started a long time ago in Python2 using web.py.
I tried to migrate to Python3, but unfortunately, web.py is not supported.
I know Flask has python3 support and I could migrate to that but I'm not ready to move my whole code base over yet.

From someone who tried to migrate to Python3 with no compelling reason to, hit a roadblock, I immediately shelved the problem till later as I'm not missing anything critical from Python3 to warrant the effort.

I wonder how many other projects go through this? Especially much larger, more complex code bases.
Pulsar[1] and pulsar-odm seem to be the python equivalent of akka-http. (Actor based concurrency and ORM[2])

[1] http://pythonhosted.org/pulsar/
[2] https://pypi.python.org/pypi/pulsar-odm
Foreign Service Institute Language Courses
In the past few teams I've led, the requirement was to include a JIRA ticket number in the commit message. With tools like Fisheye, you can click from the commit message to the JIRA and get much more context about the particulars of the commit. It worked exceedingly well. The point is that there is only so much context you can put into a commit message. Sometimes the context lives outside the system and good tools support like Atlassian's suite makes life easier.
Indeed, there are lot of good resources that came out when it was introduced. But that's not quite the same as someone being able to put the story into context of today's technology and status quo. Ideally the history lesson comes from someone with knowledge of SMF from many angles.

For instance Bryan Cantrill (full disclosure I worked for/with Bryan while at Joyent) was at Sun for the development of SMF, he's had experience using SMF in production, and more recently from his LX Brand work he's been exposed to the facilities that Linux has created to deal with the same sorts of issues.

Bryan is a superior technologist and a hell of a story teller, I'm sure I would enjoy reading/hearing his telling of why things like libproc and contracts were created and how they evolved over time, and if that as any relationship to why SMF is designed and behaves the way it does.

Note, Bryan is just an example -- there are many other people in the community that were there and could tell the stories. He's just the first person I thought of.

The point is that [re]creating interfaces/subsystems is ok, so long as we do that with the full view of history, such that we avoid that repeating cliche.

(I prefer run on sentences)
FM capture, perhaps? FM reception is naturally much more resilient to interference so long as the absolute magnitude of the interfering signal is lower.
> the world will continue to run on systemd, because it _works_.

Does it?

When Debian switched to systemd my system stopped booting. When I managed to "fix" it, it worked superficially but displayed "Segmentation fault" at every boot [it still does that on another one of my machines, which in fairness never "broke".]. This in addition to boot-time fsck breaking and my bluetooth audio and keyboard setup no longer working. Based on this I am not inclined to think of Mr. Poettering as an "it just works" kinda guy. On a related note I have never successfully gotten pulse audio to perform its intended function of playing audio samples.

After ~15 years of mostly tracking Debian sid on my personal machine, I switched to FreeBSD on my laptop when seeing these issues. No major issues since.
10 Science Fiction Movies That Predicted the Future
I have worked with people who are obsessive about keeping auto increment numbers in databases "tidy". It's obviously nonsense but some people aren't logical. The same thing applies to some projects fears of actually following semantic versioning. Numbers are infinitesimally cheap, there should be no fear about burning them.
I think Linus Torvalds coming out in support of systemd helped a lot (or at least confused the UNIX purists enough to calm them down a little). Linus response from [0]:

> I have to say, I don't really get the hatred of systemd. I think it improves a lot on the state of init, and no, I don't see myself getting into that whole area.

> Yeah, it may have a few odd corners here and there, and I'm sure you'll find things to despise. That happens in every project. I'm not a huge fan of the binary logging, for example. But that's just an example. I much prefer systemd's infrastructure for starting services over traditional init, and I think that's a much bigger design decision.

> Yeah, I've had some personality issues with some of the maintainers, but that's about how you handle bug reports and accept blame (or not) for when things go wrong. If people thought that meant that I dislike systemd, I will have to disappoint you guys.

[0] http://linux.slashdot.org/story/15/06/30/0058243/interviews-...
I've seen this practice very often lead to less atomic commits, what are your thoughts?
The Next Genocide
At a glance, the code is clean and idiomatic C written by an experienced professional programmer. Comments are sparse and describe intent. Variable and function names are consistent and well chosen.

I'd be happy giving it to a new programmer to use as a style guide. I have no idea if the architecture is suitable for the purpose, but anyone who is dismissing this based on code quality should be ignored.

Representative Sample:
https://github.com/ServiceManager/ServiceManager/blob/master...
I've generally taken the tone of what the commit does "Fixes widget 22", "Adds foo bar"
You should use a namedtuple for that sort of thing, and then refer to the members as pt.x and pt.y.
> The Republican alter-ego laughs and says "we already fixed it because you can't get rid of that shit, even in chapter 7 and 13 bankruptcy."

This is actually one of the problems.

If you could dismiss college debt via bankruptcy, then lenders would start pushing back against both the colleges and the students.

The degree mills would still exist, but they'd magically price themselves much cheaper.
By the way have you tried out CherryPy? Another web library to consider when dealing with Python 3 projects.
Interesting. Javascript is actually adding something very similar, calling it destructuring. It's actually quite handy - although admittedly more handy for destructuring object arguments than array arguments.
I love all the performance improvements to the standard library. That Serhiy Storchaka has made an impressive amount of contributions, a doesn't seem to be working for anyone?
A lot of people do something similar on GitHub. If you're going to do this, please include the issue subject in the commit message somewhere. "Fixes #135" is absolutely meaningless outside the context of whatever tool. And it absolutely falls apart if the project lives long enough to change issue trackers.
Sweet! I never bothered to check how to do it on the cli, and instead of being interactive, I just assumed you would have to reference the hunks by line number or something. Naive of me.
hledger, an accounting tool.
shelltestrunner, a command tester.
rss2irc, a feed-announcing IRC bot.
Nikki and the Robots, a game.
Boy, that brings back real memories!

Harvard got the first Unix v7 outside of Bell Labs in, I think, '75, and my office mate in the old Harvard graduate computing center (a medieval beast compared to the new Gates/Ballmer cheese wedge building), Geoff Steckel, had some kernel listings on his desk which I of course devoured without really understanding their provenance.

Being teethed on (post-IBM mainframes systems hacking) PDP-10 assembler, TOPS-10, TENEX and Lisp (Harvard's ECL was a Dylan-like algebraic syntax on top of a Lisp internally), reading the C kernel listings was like a revelation: here was an operating system written in a high-level language!

The line printer listings were printed on an upper-case-only printer (not many lower-case-capable printers existed in the DEC world at the time) with strike-throughs (overprinted) used for upper-case letters.

In any case, it was immediately clear that this was something special. I didn't actually get involved with Unix until a few years later in grad school at Columbia, and then ending up as a Unix (BSD) kernel hacker at Multiflow, a Yale spin-off, some years later.

(Sorry for waxing "old duffer...")
Cpusets (2004)
Not very closely. The "inception" in the title of this piece refers to the so called "inception" layers in Google's convoluted neural network architecture. These layers are unique to Google - no one else really uses them.

In that blog piece it was more a reference to the recursive nature that produces that "deepdream"-style artwork. The code for that is available here: https://github.com/google/deepdream/
Rereading, my comment was utterly misleading about "machineless"! I meant no local development. All in the cloud + browser (or another client). So a phone just needs a browser. [see my other reply]

I missed the Barrister IDL-JSON binding... kinda important! I must check how they bind choice/sum/polymorphism to JSON...

2) JSON by example schema: Thanks! It's never been used; the above comment is the only documentation. Maybe I should write a RFC... or at least first draft of a spec. And a reference implementation.

Actually using this schema to validate JSON instances requires using all the fields to determine which branch you have. They can have fields with the same name, provided the entire set is distinct. So these are OK (letters as fieldnames):

{a,x}+{a,y}; {a,b}+{a}; {a}+{} (empty object)

Thinking further, duplicate fields implies a different data model, and most JSON parsers will use a hash. Maybe it would ease adoption to fake up a syntax (eg addr-1, addr-2, addr-3 for the "same" field, with escaping rules for '-'). I wonder wonder about usage: maybe apps don't use this approach (same field can have different kinds/types of values); maybe they use a field for each type, only having a value for one of them? (or an explicit "type" field). It's important to model common practice.

But I think JS coders do use polymorphic behaviour (same method names with different code).

3) Add more primitve types. Thinking further, although people end up wanting more precise primitive types for storing data, if JSON is mainly used for transferring values between languages, it really need only be as expressive as the languages themselves, which generally don't go into details like syntactic nature of primitive values and ranges of integers and lists etc. (They wrap these concepts in objects; JSON can too).

I'm stepping back from the idea - I just liked that you could add richer types without losing the property of looking like JSON - but you do lose the property of representing types with the types of JSON values. Can leave the extra sophistication to xml schema (and json schema) for those who need it. Unless JSON itself add more primitive types (which I doubt!).

PS: one more comment to go. I plan to reread your previous comments on CORBA etc now I have a better idea where you're coming from.
> more than one atomic change into a single commit

There is no such thing as an "atomic change". Sometimes, fixing a single bug ,adding a single feature requires the edition of multiple files or even complex changes. I personally don't like these projects with 1 commit per file change ,that's ridiculous and it's noisy.
Show HN: A pure Ruby interface to the Wordnet database
I see this done from time to time as [feature] also.
At work they're consolidating systems, and we might lose our entire code review history. Having some redundancy isn't necessarily a bad thing.
>My question was more about the GP elaborating why a new system would be something "[no one] wants to go through this again."

Because the migration was terrible that is why. And I still continue to find stuff I hate about systemd. The latest was just yesterday, while troubleshooting some disk issues I wanted to fsck root before rebooting. Which normally means just remount root as read-only. Tried that and it didn't work, "disk was busy". Jumped into runlevel 1, still disk was busy. Rebooted into rescue mode, remount ro, still disk busy. After googling and digging through lsof, I could see it was systemd processes and journal that was holding onto files and preventing a remount. Tried killing systemd, journald, even kill -9, it just restarts it self and holds the disk. Darn. Did the touch /forcefsck trick, rebooted, yet no fsck. Darn again. More googling later, I see you have pass kernel parameters at boot time to force a fsck, and no, you can't select which FS either, it just does all of them. Rebooted again, fsck is running of course. I just wanted root checked but now it is doing all my terabyte partitions as well. Gave up at this point and just left the machine and hoped for the best.
None of your personalities are quite seeing the problem. The problem is that student loans are too easy to get. This creates the demand for the shit.
Xerox PARC have developed a chip that will self-destruct upon command
Glad to hear that!
I'm the guy who wrote that thing. You can change the syntax with the built-in GDB command `set disassembly-flavor intel`.