skysight-inc/HackerNews huggingface dataset:
The problem with reading this in BS thesis form is that it hasn't gone through the wringer enough. Most of the performance comparison results vs C are bogus because (to its credit, as noted), the author accidentally compiled some important support libraries for the C version without optimization and used those on the cluster. Oopsie.

As briefly mentioned in the previous chapter this performance regression might have been caused by the two unoptimized libraries that were compiled on the development laptop and copied to the cluster.
Shameless plug: if you want themes for your site generator, you could join this effort I came up with while writing CMSes and page generators: http://fiatjaf.alhur.es/classless/showcase
I agree, but then I genuinely believe you are mistaken in what makes you faster: it's not the feedback that the touch is pressed (what you described in the above post, and what haptic feedback currently solves), it's the feedback that the touch is even there ! In other words, it's not the pressing, but the finding/reaching the next key.

Again, I agree that current phone keyboard are faaar beyond an actual keyboard in speed, only arguing on the cause.

As I hinted in my previous message there are new haptic techs that aims to actually give a sensation of where the various keys are, I have never tried it but I hope they can do even half of what they claim.
The biggest problem I have with skiplagged is that I know the airlines WILL find a way to prevent this if people are doing it en masse. Make no mistake. And it's virtually guaranteed that whatever they do to stop it will not benefit passengers. In the best case, it will only hurt the people using these tricks, but I'd be willing to bet there will be some collateral damage.

That's the main reason I think it's shortsighted to massively publish loopholes like this. If just a few people are doing it, they'll ignore it. But when someone creates a highly visible service like this to encourage it, there's a good chance it will become too common for them to ignore. If the expected outcome of that would be that the loophole was closed in a way that makes pricing more fair for everyone, great. But I can't see how anyone who pays attention to how airlines operate could expect that to be the case.

In the short term, we win. In the long term, we lose.
This is my rifle,

DataElixir http://dataelixir.com/issues/33?#start

DevOps Weekly http://devopsweekly.com/

Ansible Weekly https://devopsu.com/newsletters/ansible-weekly-newsletter.ht...

Servers for Hackers https://serversforhackers.com/register?email=#

This is my gun...

CoolTools Newsletter http://kk.org/cooltools/ (and the related WinkBooks and WinkFun sites)

BrainPickings http://www.brainpickings.org/

MakerPro newsletter http://newsletter.makezine.com/t/ViewEmail/r/13D299B4C46EE7C...
Interesting work.

It has some pretty basic flaws that are pervasive that the reader
should be aware of. First off is the "productivity" measure: the last
time I looked around, this was nearly impossible to quantify for
software development. The author chose SLOC and development time as
stand-ins for productivity. SLOC has a connection with code quality
and time of development, but development time is well known to vary[1].

In particular, development time in this thesis is linked to results in
a pretty classic "Psychologist's fallacy"[2]; the author generalizes
their experiences as conclusive. This implies in particular that
"development time" in this thesis should be thrown out for meaningful
conclusions, as the sample size is 1. It is, however, an interesting
experience report.

Another basic flaw is the connecting of 'modern' with 'good'. The
author remarks the main disadvantage of C and Fortran are their age;
this crops up here and there. Workflow tooling in Go and Rust are
major focuses by the developers: C workflow tooling is usually locally
brewed. This does not make C-the-language worse.

More on a meta level, my advisor in my Master's work drummed into me
that I should NOT insert my opinion into the thesis until the
conclusion. So I found the editorializing along the way very annoying.

And finally, and very unfortunately, the experience level of the
author appears to be low in all three languages; this is significant
when it comes to implementing high performance code.

---

Now, for the interesting / good parts of this experience report.

Standout interesting for me was the Rust speedup on the 48-core
machine. I did not expect that, nor did I expect Go to make such a
good showing here as well.

In general Go performance/memory made a surprisingly good showing
(to me) for this work. I shall have to revise my opinion of it upward
in the performance axis.

I am both surprised and vaguely annoyed by the Rust runtime eating so
much memory (Would love to hear from a Rust contributor why that is
and what's being scheduled to be done about it).

Of course the stronger type system of Rust catching an error that C
and Go didn't pick up is both (a) humorous and (b) justifies the type
community's work in these areas. I look forward to Rust 1.0!

One note by the author that is worth calling out stronger is the
deployment story: Go has a great one with static linking, whereas C
gets sketchy and Rust is... ??. I believe Rust has a static linker
option, but I havn't perused the manual in that area for some
time. For serious cloud-level deployments over time, static linking is
very nice, and I'm not surprised Google went that route. It's
something that would be very nice to put as a Rust emission option
"--crate-type staticbin".

Anyway. I look forward to larger sample sizes and, one day, a better productiv

[1] http://www.amazon.com/Making-Software-Really-Works-Believe/d...
The situation is actually far worse than just varying developer time.

[2] https://en.wikipedia.org/wiki/Psychologist%27s_fallacy
Nice job calling misogyny, very thought comment that added something to the reading. Next time provuding arguments might be a good idea.

This article cites facts about mariage: it has went down and tries to show why that could be so, how is this misogyny? I didnt see hate torwards women, just someone arguing that mariage laws advantage women and men are being cautious and do not want to marry.
> I agree, but then I genuinely believe you are mistaken in what makes you faster: it's not the feedback that the touch is pressed (what you described in the above post, and what haptic feedback currently solves), it's the feedback that the touch is even there

That's my point. Haptic feedback doesn't solve this, as evidenced by the keyboards that have haptic feedback on keypress but no tactile indication that the key has been located.
Because people dressed in suits get taken more seriously and (usually) get better service.

Try to take out a mortgage dressed in a T-shirt, shorts, and flip flops, and then try to do it dressed in a suit.

It sucks, but it's a real thing.
Revisions can keep coming back. No one in the patent office can stop the patent outright and prevent it from coming back. If someone file a patent for something obvious, the examiner cannot completely reject it.

Ideally, the rejection should go in a searchable database/knowledgebase and prevent from anyone else, including the original filer from filling again.
> Would love to hear from a Rust contributor why that is and what's being scheduled to be done about it.

I haven't spent time with the code yet, so I can't comment. It shouldn't be the runtime, though, as our runtime is about as big as C or C++'s. My first thought would be that Vec's growth factor may be poor in this instance, but without reading the code, who knows.

> Rust is... ??

Rust statically links everything but glibc by default. Experimental support for musl was added last week.
On the topic of processing power where you wouldn't expect it, Macbook chargers contain a 16-bit TI processor (MSP430), which seems like overkill. (This is separate from the switching power supply control chip and the power factor correction chip.) I believe the TI chip handles the fairly complex startup sequence of the power supply as well as detecting faults. It's basically the equivalent of a minicomputer in your charger.
Who in the seven hells do you hang out with?

If this is really your observation on human sociology, perhaps I may suggest you need some new friends.
My thoughts exactly. This has caused some amount of cognitive dissonance because I know a significant number of people who are Stanford students and coming from a modest socio-economic background.

That being said there is definitely a lot of money hanging out around there. It'd be a hasty generalization to say that everyone at Stanford is part of that Silicon Valley Elite though.

It's more nuanced than what it seems.
Great tool guys. something that was missing in windows for a long long time and we used to wish for something like this. i really love *nix terminal (especially mac terminal) and the best i could bake was putty with a monokai theme. but this is really cool tool.
Those are features!
There's no need to reduce the range, you can just treat correctly the full counter range (see my other comment).
That's the same argument used by spam apologists.
Show HN: XML Schema to JSON Schema Converter
An ELI5 answer:

Think about "talking a walk" along the Euclidean Line -- the real-number line, if you like. Face in one direction, and then start taking steps.

Stepping Example #1. Start at 0 and face toward the positive numbers. Step to 1. Step to 2. Step to 3. Step to 4. Etc. Each time you take a step, just a bit more of the line is behind you. And if I pick a point on the line, then no matter which point I pick, this way of stepping will eventually put that point behind you.

Stepping Example #2. Start at 0 and face toward the positive numbers. Step to 1/2. Step to 2/3. Step to 3/4. Step to 4/5. Etc. Again, each time you take a step, just a bit more of the line is behind you. But this time, I can find points -- 6, for example, or 300 million -- that will never be behind you.

(There is a technical term for the first kind of stepping. We say that the set of points you step on, is cofinal in the order on the Euclidean Line. The second kind of stepping does not have this property.)

One of the curious properties of the Long Line is, first, that "locally", it is exactly like the Euclidean Line. Stand anywhere on the Long Line and look around. "Looks like I'm on the Euclidean Line," you say. But, second, every possible way of stepping ends up like Example #2 above. No matter what steps you choose to take, I can find a point -- lots of points, in fact -- that will never be behind you.

And that is why we say it is "long".

(Formally, the Long Line is locally homeomorphic to the Euclidean Line, but the order on the Long Line admits no countable cofinal subset.)
Any HPC language evaluation that doesn't include vs FORTRAN is pointless. It's still king of computation for a reason.
In addition you can get some insight for the "why" questions by reading through their mailing lists (dev and nuts).
Basically a prettier experience by default. If you've already customized Conemu to be prettier than default, you may not care, but if not, it is quite a difference. Also add Clink, which gives you a bunch of cmd tools that are defaults on Linux.
Absolutely stellar, and dead simple. Will be using this!!
The value of the recruiter to the employee is that. The recruiter isn't being paid by the employee. You could consider an agency model, but honestly I don't think that's likely to actually work because of the temperament of the developers in question.
> Of course, every bee wants credit for their own find. So there needs to be a countervailing costly mechanism to prevent bees from simply over-promoting any pollen source they know. Bees must spend a lot of energy to bring their fellows around.

That is wrong. Bee spends lot of energy with promotion, but what really decides is snow-ball effects. When other bees try that source, they will start dancing as well.
Doesn't do anything in Safari, it's just a textarea. Is it supposed to give you a unique URL per document?
"You try to hire people you could become friends with" is a profoundly stupid maxim.

People who come from conservative and religious societies will always be pressured by friends to not make new friends who are of different ethnicities.

Thiel is basically ensuring each company Will become a little Island of segregation and this is what I have seen in the bay area: companies that are 90% Indian, 90% Chinese, or 90% white guys.
I wouldn't deliver a scathing code review even though it would probably make you feel better, at least for a little bit. Instead, I'd approach the person and see if they misunderstood the task, were overwhelmed etc. Approach it from a teachable moment first, if a pattern of behavior and bad code continues then address it with increasingly direct feedback.

I state this because I have done the opposite and it can backfire in ways you don't initially think. So I have learned it is always best to start of with an inquisitive mind on why he/she wrote it this way and what were their instructions and then use it as a teaching moment to help them be better.

I have seen companies where people got rewarded for the most convoluted stupid ass code you can imagine, generally in larger enterprises. As an example, I all but stopped hiring financial services programmers in the late 90's early 2000's in my area because we found we had to get them out of so many bad habits. Not saying all were bad, but our screening of someone anytime I saw financial services (especially big banks) on their resume as a developer was quite a bit tougher. Its not quite the same today, but I still know teams that I wouldn't hire from without really screening someone heavily.

Also, I guess one other point. If this person was hired at a senior level vs a junior or mid level, I would still approach it the same but be more critical (and direct) why they would write code that increases the likelihood of defects.
> A failed YouTube would represent a loss of equally epic and/or mythical proportions.

Indeed. While most people may not realize until it is too late, my hope is that there are people out there working on plans to rescue large amounts of data from companies that may fail. Whether they be the government, wealthy individuals or organizations such as the Internet Archive, it would be a tragedy if all of this history was lost simply due to the financial failure of the company hosting the service.
Does it still have the issue where you have to take the cluster down to create a new index or modify existing ones?
>journalist

There's your answer right there. They write stories for a living, not programs.
If we'd had that attitude 80 years ago there would be no electricity or phone service in rural areas.

So far as the cost, when you consider the effect on property values, income and stuff, the eye-popping numbers for what it costs to wire a house really are not that much, particularly when you realize services can be offered over them for 50+ years.

Often those eye-popping numbers are offered as a bluff by providers who don't want to serve an area. If you work in the IT field, $20,000 to get cable at your house pays itself back and you can put it on your HELOC if you don't have it an cash.

The problem here is not just a lack of competition but it is the competition for capital against bling-bling LTE phones and harvesting old copper wires and other things that make money quicker.

It is generally the case that government redistributes money from urban areas to rural, largely because rural areas subsidize urban areas in other ways. For instance, Silicon Valley would not have the stream of young labor that it has if there weren't places where people could afford to raise children.
This is an addon for that "something" (spotlight).
They have some sort of strange "SmoothScroll" contraption going on in tie-scripts.js

That's what's causing your issues.

edit: Ah, it's actually a minified version of https://github.com/galambalazs/smoothscroll
https://www.youtube.com/profile?user=justinrotnluk
Funny to notice the profile was suspended... Twists.

Edit: that user was especially thanked by YouTube on the latter IA blog post.
5000 rows isn't laggy in Firefox on a current genetration MBP, so I've nothing to compare to. It would be good to have an additional step with 500,000 rows without clusterize (or increase the number of rows in the first step).
Design details of the Tokyo subway ticket machines
The reason I did not show code is that there is 1/ no notion of a monad type class in C++ 2/ no std::optional in the current C++14 standard and 3/ you have to work around side effects, making an actual implementation highly dependent on your environment and so on.

I'm playing around with what is now my second iteration of Monadic Bind and Kleisli Composition for boost::optional, which looks something like this right now:

// tag dispatch work around for void returning functions (that make no sense in a purely functional world)
namespace detail {
template <typename A, typename Fn>
auto monadicBindImpl(const boost::optional<A>& a, Fn f, std::false_type) -> decltype(f(*a)) {
if (a) return f(*a); else return {};
}

template <typename A, typename Fn>
auto monadicBindImpl(const boost::optional<A>& a, Fn f, std::true_type) -> void {
if (a) f(*a);
}
}

template <typename A>
auto pure(A&& a) { return boost::optional<A>(std::forward<A>(a)); }

template <typename A, typename Fn>
auto operator>>=(const boost::optional<A>& a, Fn f) -> decltype(f(*a)) {
return detail::monadicBindImpl(a, f, typename std::is_same<decltype(f(*a)), void>{});
}

Kleisli Composition can then be build with C++14's generic polymorphic lambdas exactly like the Haskell implementation does it: https://hackage.haskell.org/package/base-4.6.0.1/docs/src/Co...

There are other articles on the web for Monads in C++, that probably do a better job at an actual implementation.
Please see this as my personal playground code :)
pretty sure all programs were multithreaded.

I do agree that the advisor should have pushed back lots harder on the methods; it's a weak paper, even as an experience report.
So this is like a Carousel for sets of <tr>'s in a table? Seems like a neat idea but on Chrome 42 (64-bit) OSX 10 scrolling fast with the trackpad causes the entire page to scroll. I assume it's because scrolling has reached the last <tr> in the table and the next set of <tr>'s has not yet been appended to the table.
Even in C's own domain it still faces issues with undefined behavior. AFIAK, this is a problem Rust still doesn't face even while issuing ASM commands.
I mean npm shrinkwrap.

Depth of tree is reasonable: if you install them at the top.
HowTo: Centralize Docker Logs with Fluentd/ElasticSearch
I think we are essentially in agreement here. I said that recruiters goals more closely align than realtors, but I need to clarify. While a realtor can represent us in either the purchase or sale I'm considering representation of a purchase. Here the realtor's goal is directly at odds. I want to purchase the house as cheaply as possible, but the realtor wants the largest commission so they want the price to remain as high as possible.

The recruiter wants the largest commission possible and I want the highest salary possible. Notice I said these "more closely align". You are right, it is not a perfect alignment. The recruiter would rather get some commission rather than none. If they are afraid you may take an offer on your own or from another recruiter they may try to get you to accept a lower offer. This is why I work with recruiters I trust and I establish clear non negotiable guidelines up front. "I am looking only for promotional level opportunities. My current salary is X; do not trouble me with positions unless the salary is paying a minimum of X + (X * .3)".

With this type of relationship we must establish clear guidelines. If we fail to stick to those guidelines then it is on us.
How to Teach or Influence
"Malfunction Edition" as it was sometimes known
Source is the Daily Mail which is a ridiculous rag. It's kind of surprising that it's not already in a blocklist. If gawker is auto-killed anything from daily mail deserves to be auto-killed too.

EDIT: honest, the daily mail is scum and noone takes it seriously. Try an HN search for [daily mail rag] to see other HN users give their opinion of this joke of a newspaper.

http://www.badscience.net/2010/10/the-caveat-in-paragraph-nu...

https://news.ycombinator.com/item?id=7437425

Why the daily mail is evil: https://youtube.com/watch?v=r9dqNTTdYKY
>> I find it ironic that he brings up example of Google and the monopoly it holds over the market... but wasn't Google entering the search market as a competition to multiple other internet firms before they leap-frogged them with all the talent they gobbled up from DEC?

Google was Page and Brin's research project. Search engines at the time ranked websites based on a simple method of counting how many times a search term appeared on the site. Google's method, PageRank, was technologically superior and helped them differentiate themselves from the competition in a major way.
The incentive matrix: The one thing every Entrepreneur should know
~12-14 hours.
Oh, cool! Thanks for the information!
I mean it when I say look into the topics in depth. Lambdas are done in a more machine code efficient way than anything else I have seen. It is basically just syntax for a functor, whose calls can be inlined right inside the callee.

Stl is similarly elegant from the narrow perspective of inlining, and getting rid of indirection that people tend to write when doing abstract data types in C. It took me a long time of hating C++ and preferring C before I was willing to see this. I still kind of prefer C but these days I am much more willing to concede that there are strengths in C++ that you can't easily match with equivalent C code.
I am baffled by this and feeling stupid
While I don't necessarily disagree, I do find that this depends entirely on how ES is used. All too often people dive headfirst into using elastic search in ways it really should not be used.
My biggest criticism of this work is that it does not consider C++. Most of the big HPC projects today are written in C++, not C, and to the best of my knowledge this transition happened in the 90s.
Then either I misunderstood or you weren't clear enough, your first message said

> As a touch typist, I depend on a certain amount of feedback to my fingers to identify when a key has been actuated [...]
> how could I know the spacebar registered properly

Which specifically means when the key is pressed, not when you are on it / reached it, which I believe is the thing causing the slow down of our speed.
I hope they can use that $70m they raised last year to throw some engineers at their architectural issues and fix the data loss issue.

or maybe they're spending that money on marketing and re-branding.
Meeting Snowden in Princeton
An interesting case study, though not really HPC or scientific computing related. It would be good to see some profiling to understand exactly why each implementation was slower in particular ways. From a HPC context, linking with Fortran and C codes, and exchanging data with them, is very important.
Spring 2015 AutoMicroFarm Progress