skysight-inc/HackerNews huggingface dataset:
That sounds killer. I can't wait to see what you post. One of the things I find fascinating is the limitations that each generation of engineers deals with in order to get the next problem solved, or the next product out the door. Those were the days when bits and megahertz were expensive.
Google Science Fair 2014 winners
Actually the more complex it is, the more beneficial encapsulation can be.

I think maybe I know what his actual problem is. It didn't detect a change to the requirements.txt, or it is _always_ detecting a change.

In the Dockerfile you want to ADD your requirements.txt first, then RUN the pip install, then ADD .

http://stackoverflow.com/questions/25305788/how-to-avoid-rei...

Also check for a --no-cache
> Fallacy #2: "Lots of people use systemd, therefore you should too"
> This is a classic example of the bandwagon fallacy.

On the other hand, network effects are real. You'll have an easier time finding help if the system you use is used by many others.
I find this to be somewhat wacky. Go applications are portable by design. There's no dependencies in the first place. As long as your web servers don't clash on ports or directories, you can deploy as many as you want, built with a dozen different versions of go.
Yahoo to close its directory
In interactive theorem proving HOL4 (http://hol.sourceforge.net/) and Isabelle (http://isabelle.in.tum.de/) are written in SML and are actively developed.
I believe in both functional and encapsulated patterns. It all boils down to scope of the task at hand. There is a certain kind of beauty in programming in a pattern than can compliant to a particular interface and a pattern that's efficient and scoped to the result required. Inline is a great way to encapsulate in a functional way.
Activist investor buys stake in Yahoo, urges AOL merger
HTC G7
You've already been corrected with regard to the rest of your argument, but I'll correct you on the last part too: they could do so just fine. That's the power of a modular, non-tightly coupled system. Any script that uses ksh, zsh, bash, csh, tcl, lua, rc, whatever, runs fine under sysvinit.
I think we need a separate term for "internal modularity" (Linux, Systemd) and "external modularity" (Unix, the Internet).

The former depends on internal interfaces, where individual modules help separating concerns but can't be swapped out or reused in other contexts, whereas the latter relies on formal interfaces, allow components to be swapped, and promote reusability. (Also, the former can be monolithic or not, but the latter can never be monolithic.)

"Unixy" is sometimes used, but it's not a great term.
But lacking raid5/6, even N-way mirrors.
ZFS is not perfect, but btrfs is not even close in terms of features.
I think your Google example makes sense, but perhaps government regulation is a special case.
That's right, all my Light Table plugins are GPL, my Julia packages are MIT. (My bad for not mentioning this in the right places, I'll fix that.)
It's interesting that there is an apparent discontinuity in views between 9 list items and 10 list items in the last graph.
I'm glad you asked! The answer seems to be, while there's little direct evidence on music, in general spacing does seem to help motor activity although the evidence is not as overwhelming as for declarative memory: http://www.gwern.net/Spaced%20repetition#motor-skills
Nobody blamed hammers, or said they were bad. He said stop using hammers to smash other people's thumbs.
There are tons. Check challengepost and hackathon.io
It's doing the same thing, except in this case for clarity/ease of debugging.
I understand the author's point; he's not being oblique at all. I just disagree. He explicitly claims that the kernel providing socket functionality is enough. But it's not. The example using mkfifo for example, is terrible for instance. It provides no lifecycle management and you'll end up launch multiple versions of a daemon if you accidentally send multiple signals to the pipe. There is a huge difference between "this is technically possible," and this is doable in a way that doesn't have many unforeseen pitfalls. Systemd asks much less of professionals than sysv and that's it's chief selling point.
Couldn't get it to work: Couldn't connect to Julia

INFO: Couldn't find Jewel package, attempting installation...
-----------------------------------------------
We couldn't install Jewel.jl for you.
Try using Pkg.add("Jewel") in a Julia repl.
This reminds me of the "Every dev should be senior" mindset that is all too common in this industry.

I don't see how supposing every devOps specialist is replaceable by average engineers is a real solution.
My problem with the "you can't pronounce it" argument is that it seems to have more to do with ignorance of chemistry [0] than with health. The idea that having industrial applications makes a chemical compound less likely to be healthy, or that chemical nomenclature has any impact on health at all, is just wrong - and while I'm not opposed to people making their own choices as to what to eat, I'm equally not going to ignore the effects of those choices (and of activism) on the wider food industry [1] (and by extension, on other people).

It probably doesn't help that I keep some of these ingredients in my pantry. What qualifies as an easily recognizable substance is very much a matter of background.

[0] http://pipeline.corante.com/archives/2013/06/21/eight_toxic_...

[1] http://pipeline.corante.com/archives/2014/04/30/is_that_food...

(I can't match Dr Lowe for eloquence, so I really do recommend reading him for yourself. The same holds for the rest of his blog, too!)
The Case for Peewee ORM
> I'd like to know if anyone has anything nice to say about Sharepoint.

Its marginally less of a total failure for issue tracking than Excel.

I'm not sure that that counts as something nice.
Yes, I do remember. If the function name isn't sufficient, you need a different decomposition of the problem.

Another advantage of doing it my way is that you can put multiple comments inside those "small" functions if you need to. So you get two levels of decomposition. That really helps if your overall algorithm is broken into smaller parts that still need some explanation.
how long should i expect to wait? i've been waiting >90 minutes already
> Not eating ingredients you can't pronounce or recognize is a great rule of thumb

Bullshit. So because we call cacao beans cacao beans, they're okay to eat, but because we call whatever whatever, it's not? Do you really base your decisions for what's okay and not based upon whether you've heard the English word for a substance? How do you cope when you travel to a place wherein you do not speak the language? Do you engage in a panic when someone tells you about residual radioactivity in almost every living thing on the planet?

So you have vanilla in your chocolate. Should I explain to you the chemical composition of vanilla? What you call "vanilla" is actually a compound of unpronounceable things; would you be concerned if I told you a number of them have MSDS sheets? The primary component of vanilla is vanillin. You know what vanillin is really called, its IUPAC name?

4-Hydroxy-3-methoxybenzaldehyde.

Your comment represents everything wrong with the Internet era of pseudoscience. Absolutely everything. You're really in the same bucket as Jenny McCarthy with a comment like that. I realize this is a mean reply (I'm honestly just passionate about willful and flagrant misinformation on the Internet), but come on. You are actively harming the public if you proselytize stuff like this, especially considering that most people just parrot what they hear without comprehension; one need look no further than Jimmy Kimmel's "which is better, the ACA or Obamacare?" segment for evidence of that.
Soooo... exactly where in an hour and a half of talk do they actually demonstrate the software?
"Fully private" is not really an option. If you kill Medicaid, you also kill people who can't afford health care. The current system certainly isn't great for the poor either, but it's better than nothing. A single payer system would be better than either, but like you say, it's not going to happen anytime soon.
"ethics is dictated by the market"

How can you seriously say that? It's fine to hurt people as long as they're willing to tolerate it or remain ignorant to it? Preying on ignorance isn't ethical even if it markets well.
Very cool idea. Somebody pointed me at https://github.com/FriedSock/smeargle which implements this for my text editor (see also https://github.com/syohex/emacs-smeargle), so I couldn't resist trying it out. But I can't think of a concrete situation when I'd want my text editor to look like these screenshots: http://imgur.com/a/ufqRV
I agree that dividing the largerFunction into smaller ones has a non-negligible cost, and that cost is never mentioned at school. However, I still think that the benefits provided by moving them out outweigh it.

One think that I found beneficial is that by dividing the big functions into smaller ones, the resulting functions have the same abstraction level. To give an exaggerated example: I try to split my functions so that I never deal with Countries, Provinces, Cities, Buildings, People, Body Members, Organs & Cells in the same scope. I try to only deal with one of them per function (sometimes two, in parent-child cases).

I find that 1-abstraction-level functions are easier to understand, and I gladly "pay the price" of having extra one-use names around for this reason. I do try to restrict the scope of those "extra functions" as much as I can, put related functions together, and reduce side-effects as much as I humanly can.
Ask HN: Need advice on my next direction
Let's just say I've recently come into a lot of free time. I really want to get down to some intense programming, and my goal is to learn a new language and contribute to an open source project. My background is in Python and Java, and I have little experience with anything else.

My question for all of you is what language? And some potential open source projects that you find interesting and need more contributors. I've been thinking about Go or C++, but throw whatever you think at me.
Thank you, I couldn't agree more. It's a tall order and we have work cut out.

I've started to do some DR testing myself, but it will take a little while to publish our findings and recommendations.
>Yes, simplicity leads to understanding and I don't understand why more people don't get this simple concept.

I too have seen this time and time again. It pops up constantly in poorly managed software projects, especially those that have changed hands over years. In addition to this, I believe simplicity is lost because many engineers/managers struggle to step back from the their immediate task and instead visualize the whole system in its entirety. This is difficult and takes a special combination of knowledge and procedure to do well.
Coke Reverses 10 Years of Sagging Sales by Slapping Names on Bottles
You might also want to consider Scala. There are lots of open source projects to help out with anyway.
The key difference is that those who built the abstraction understand exactly what it abstracts, and thus what its capabilities and limitations are. Those who didn't, don't get quite the same picture.

I'm not a fan of excessive abstraction either - the main thing I use it for is to reduce code duplication, which IMHO is one of the real benefits. Code that contains lots of functions-called-once or classes-used-once feels like a terribly inefficient and obfuscated way to do something, and far less straightforward than it could be.

The whole "abstraction is good because it allows us to build large complex systems" notion is all too common in beginning courses in programming/software engineering architecture, and it tends to make people think that large complex systems are also good. Thus the feeling that somehow all software should be large and complex, and the resulting architecture-astronautism and disturbingly inefficient software. I completely disagree - abstraction should be taught as being a necessary evil for managing complexity, for use only when that complexity is actually justified and cannot be simplified further. Abstraction hides complexity but does not eliminate it; in fact it could be said that it probably adds to it. Code hidden by abstraction is still code that gets executed, consumes resources, and could contain bugs.
You could try the MSDN forums: http://social.msdn.microsoft.com/Forums/en-US/home
>I think it's obvious to people who have written both system v init scripts and systemd or upstart configurations that the latter are dramatic improvements

Except that is a false dilemma, which he points out. Sysv init takes more work because nobody has bothered to fix it. You don't need a massive complex set of software like systemd to make this easy, see the BSDs init scripts like he suggests.
No, my point is that you cannot just take a script written for bash and run it on Zsh or Ksh and expect it to just work. (Well, sometimes you can, but that's beside the point.) Yes you can write your init scripts in whatever language you want, even Lisp or Python, but you have to do that for every daemon you switch over. Imagine a lot of these Linux distros which often implement their own init scripts for each program they support having to switch shells. That's hundreds of scripts to rewrite, or at least proofread and test.
Lots of people (including me) have actually toyed with keeping bees. I think it's just one of the things that appeals here, like eg practicing martial arts. (Even though we don't get many articles about that.)
Soylent (YC S12) Is Hiring Engineers – Full-Stack, Database, and More
What non-negligible costs are you talking about?
Soylent Day 1: First Taste
I've been taking this tack more and more as well and while the syntax is never elegant, one at least grows used to it.

I also try to explicitly name which variables I'm capturing (within reason) as it makes it obvious at a glance what can and can't be modified within the lambda. I really wish it was possible to force constness on captured variables :/
My Kill-A-Watt meter helped me determine that the best home server is a almost always going to be a fast laptop (around 2 years old) stashed in your bedroom closet. You'll get the most computer per dollar of purchase price/power price available plus a built-in UPS and quiet operation as a bonus.
I'm sorry, there's no other way I can say this.

Those numbers are idiotic, and it couldn't be more obvious that they're made up. You don't just pay for "sponsored posts" on peoples walls and magically make money.
Modern DDR2 SDRAM busses are a bit more involved. They use the address lines as a command word for putting the chips in the correct "link trainging" mode at startup, selecting burst access lengths, enabling self-refresh mode, setting on-die termination values, &cetera so they may not be swapped. Each "byte lane" of 8 data lines is allowed to have a different signal path length difference between clock and data (that is measured during training for compensation during operation) and signals may be swapped arbitrarily within the byte lanes.

Furthermore, the high-performance DDR3+ controllers typically hash the data word with the address so that when a repetitive data stream is transmitted it doesn't generate more EMI. (Some controllers also hash with a random seed gaining resilience against chilling the DIMMs of a running machine and reading them out on another machine in search of sensitive data.)

I find it really cool that any time you change the DIMMs in your computer, it essentially has to measure the length of the wires to the ICs on it. (I've found it less cool to have to manipulate timing values to compensate for deviation from PCB design rules, but thankful that it's possible. The fun of board bring-up.) If your BIOS has a "fast boot" option, mostly that means it remembers the wire lengths from last time so it doesn't have to do the measurement again every boot.
Don't forget that heating almond based saturated fats can create a significant amount of free radicals...at least in almond flour.
I think it's something different. "Junior devs shouldn't reinvent the wheel in production [1] until after they understand the solutions of the senior members of their field." I.e., don't use MongoDB until you fully understand SQL and don't build your own fancy planning algo until you you understand linear programming.

[1] When learning, reinvent all the wheels.
I was thinking more along the lines of competitors who are in the same space as you (let's say, light bulb manufactures) -- you patent a new type of bulb, your competitors could patent a bunch of improvements on it to deny you future market on improved versions.
There was a JPL probe years ago (can't remember which, and can't seem to find a reference) that had a radiation hardened memory IC with error correcting codes and a system to detect and correct the bit flips that were expected due to cosmic rays.

After launch, the number of unrecoverable errors (due to multiple bits flipped within the same codeword) was higher than expected. It turned out that someone had swapped some combination of address or data lines, which ended up changing the physical grouping of bits within the codewords. Some of the bits within a logical codeword were so close together that a single event was able flip both of them, causing the error correction to fail.
Why must it be single payer or fully private? Plenty of countries with well functioning healthcare systems have a mix.
How Often Do People Arrive Late to Appointments?
Line 457-470 of vicissicalc.c: why do you use else if here rather than switch-case?
sjolsen did a good job of illustrating what I meant https://news.ycombinator.com/item?id=8375341 Improvements on his version would be to make everything const and the lambda inputs explicit.

AwesomenessT largerFunction(Foo1 foo1, Foo2 foo2)
{
const ResultT1 result1 = [foo1] {
const Bar bar = barFromFoo1(foo1);
const Baz baz = bar.makeBaz();
return baz.awesome();
} ();

const ResultT2 result2 = [foo2] {
const Bar bar = barFromFoo2(foo2);
return bar.awesome();
} ();

return result1.howAwesome(result2);
}

It's my understanding that compilers are already surprisingly good at optimizing out local lambdas. I recall a demo from Herb Sutter where std::for_each(someLambda) was faster than a classic for(int i;i<100000;i++) loop with a trivial body because the for_each internally unrolled the loop and the lamdba body was therefore inlined as unrolled.
I have absolutely no idea why this comment has been voted to the bottom of the page. Friendly, innocuous, and thoughtful.
Well, following your line of reasoning: If you don't like these articles, too bad! You have been outvoted. Go build your own news website from scratch.
That makes sense - though most of the time if a method call only makes sense give a particular state, it's generally set to be protected. You can still call it with the wrong state from within the same class, but I can't honestly think of a case of that happening in my work.. You generally are familiar with the workings of the class you are currently touching. If you aren't able to do that practically, then that generally means your class is simply too large.
These links seem pretty beginner friendly to me.

http://tryclj.com/
http://www.braveclojure.com/
http://aphyr.com/posts/301-clojure-from-the-ground-up-welcom...
http://clojurekoans.com/
http://www.4clojure.com/
Pillars of App Security
I agree. I don't think the translation is doing anyone any favours by introducing a hokey metaphor that obscures the simple geometric meaning of the term. Even "thin/fat" would be better.
Looks like 'you can do it, or you can not do it, or somebody you depend on can do it, and if you don't like it you can leave, everybody has made the decision and you have lost, get out, yadda yadda' has been deemed a good argument in this thread. Scary.
Many people do just that. Here is a post I wrote outlining the details, including how to handle cases where you want to disable CGO, but still need access to an SSL cert bundle. https://medium.com/@kelseyhightower/optimizing-docker-images...
> Do you really remember what do_small_thing_X does

I don't need to wait a year, I forget what functions do the next day. So I try very hard to give them descriptive names. So I don't have to remember (and I just have to read).
DRAM refresh circuit, not SRAM. The "S" in SRAM means that it doesn't need to be refreshed.
What the hell is Ello?
I agree with you. Most people who own a business wouldn't call themselves an entrepreneur as a label. But they are entrepreneurs and would consider themselves one. I could be wrong but what I got from the article is that he wouldn't call these people entrepreneurs at all.
WARNING: Can't handle command editor.block

This is what I get on Linux 64bit and Julia git build when I press Ctrl-Enter to evaluate the line.
Any ideas?
Most likely you have an outdated version of the package, try Pkg.update() from the Julia repl.
iPhone 6 and 6 Plus not as bendy as believed
... and in this case systemd is popular not because users decided to use it, but because distributions decided to use it, which means that systemd is going to have a stronger support network and more developer attention than a system which is not popular.

Good support and active development are pretty big advantages.
This is a nice approach and I have done it too.
I appreciate people who care about their code.
Those lambdas are immediately applied, so it's defined in the type returned by them.
You clearly don't work on a large code base =)

Whatever its other pros and cons, I find OO style tends to result in significantly larger code bases.

Most programming concepts are really about code organization and not expressiveness or the ability to express an algorithm clearly.

You imply a dichotomy where none exists. For non-trivial algorithms, the ability to express them clearly and the ability to organise code at larger scales are very much related.
L&T Technology, Cisco team up for 'internet of things' biz in India
I would never suggest a programmer learn Clojure as their first language, because of the enormous Java stacktraces. Then there's the setup involved (Java, usually Leiningen) to get to "Hello, World" compared to Python or Ruby. Just too many places where the student can get seriously stuck. Clojure's strengths (immutable structures, expression freedom, macros, Java interop, JVM) are not relevant to the new programmer.
So if I try to define `$reql_type$`, it will throw an error? That means that I can't store arbitrary data / use user data as a key. Can't something be done about that at the driver / protocol level (eg. translating literal '$' to '$$' and back again)?
Even in the headline, it was obvious that Docker wasn't the problem. In the article itself it was abundantly clear that Docker was just the misused hammer closest to the front of the author's mind. It's almost as much a defense of Docker from abusers as anything else.
Great device to be used during the sleep.

As an epileptic I doubt that this kind of device "can help them (the epileptics) adjust their medications." My neurologist adjust my medications every 6 months after studying my blood analyses, standard EEG and sleep EEG.
Roger Federer asks fans to Photoshop him into scenes in India, Internet obliges
Docker seems to give applications the portability of a binary, so packaging a binary in Docker seems a bit convoluted. However, in a shared hosting environment (e.g. CoreOS), there are advantages to being to run different docker containers together independent of what is on them.
>I might be alone on this, but whenever I read things by John Carmack I get a vague sense that he doesn't really get object oriented programming.

I get the impression that he understands it quite well, which is why he avoids it.
Entrepreneurial advice from the horse’s mouth
Is that one of those "all the RGB colors" images in the header?
Would it really be so difficult to redirect my request...
Also, don't use SQL until you fully understand MongoDB.