skysight-inc/HackerNews huggingface dataset:
If you are a c++ programmer, rust is also a lot about developer ergonomics. Syntax is nicer, build system is built in, less UB to think about, package management comes built in, and finally getting rid of those damn header files is such a relief.
The page is not loading... even the cached version from http://webcache.googleusercontent.com/ is not loading!

I am really frustrated with the new c2.com pages :P
Can your C compiler vectorize a scalar product?
And people have the cheek to complain about parens in Lisp...
In my mind any evaluation of charities based on 'expected value' has to take into account not only the error bars on how good the charity is, but also the error bars on how good that evaluation is. In other words, how well the evidence stands up to an evaluation by someone who's sceptical about the whole thing. After all, the whole point of effective altruism is being rigorous in evaluating impact.

For an example, imagine a nuclear disarmament charity. Nobody doubts that mutually assured destruction would be very bad! The question is what's the chance of that happening - and estimates of the chance can vary by two orders of magnitude, putting the charity either at the top or the bottom of the impact league tables, depending on who does the evaluation.

In my mind that's a charity whose impact and effectiveness can't be measured, so it doesn't count as EA.

That's why I give my donations to the Schistosomiasis Control Initiative and Against Malaria Foundation.
> You can't protect people from themselves

You can't protect all people from themselves, but you can protect a lot of people from themselves.

If you look at smoking [1] in the US, smoking went from 42.4% in 1965 to 16.8% in 2014. Raising awareness, taxing cigarettes, outlawing advertising, warnings on packaging, these things work.

The same could be done with alcohol if society wanted. One of the reasons why it hasn't happened with alcohol is because alcohol is ingrained into our culture.

> by the percentage of people saved by life saving drugs that make it to market faster/would otherwise be blocked.

Do you have any estimates for this? Do you have estimates about how many people would die by allowing poorly-vetted drugs on the market?

> which of course goes down significantly when people realize that they shouldn't blindly trust everything in our markets

How would you suggest the average person go about evaluating a drug/treatment?

> sentenced to die directly by rejecting appeals from terminally ill patients to get access to experimental drugs/procedures

sentenced to die implies that experimental drugs/procedures would save them. Undoubtedly some could be saved, but I doubt it would be more than a small fraction.

[1] https://www.cdc.gov/tobacco/data_statistics/tables/trends/ci...
I'm interested in your take on #4: why wouldn't you allot time to run code in a debugger? Personally I would like all my code to be written against a debugger and with test suites allowing me to step through it.

I've been chided for not doing this in the past (I just read the code usually) and would actually agree with that person in retrospect.
I blocked those pesky buttons using Ublock no social list.
I agree. I seriously hope Matrix becomes the open standard for everyone to use.. I dream of the day my contacts will stop using skype.
But Clojure and Scala choose to sell theirs souls for Java popularity.
I'm impressed at how the author of this website managed to take plain text content and literally make it slower to load than a 1080p 60FPS video. You really have to try to do something like that, bravo. I normally try to avoid commenting on stuff like this, but that's pretty much all I can say considering it took me actual minutes to load (from Japan).

In lieu of the article's content, I'll spare readers the trouble and provide something better (and faster to load!):

-Read lots of code

There you go, you're well on your way to becoming a code-reading master!
1 always gets me.

My brain will tune out whatever piece of code I've already read once. So if I initially skim some piece of code, figuring out what it -really- does is HARD.

Every subsequent look at that piece of code will be colored by my initial (mis)understanding of how it works
Buying Behavior of Shoppers During Black Friday 2016
The US still charges taxes for 10 years after you renounce your citizenship if you spend more than 30 days in the country and they charge an exit tax.
Serena Williams engaged to Reddit co-founder
Why is it Facebook's responsibility to discuss what your credit card will happily sell to literally anyone?

This story is utterly baffling.
Hickey himself based clojure on a different interpretation of time (place vs value). He talked about it a a conf long ago.

Going away from falsely linear time and shared mutation is one strength. You can rely on what has been assumed much stronger. Very good for concurrency.
> Do they not bother to learn their tools, and set up simple mail filters?

Most people have similar needs, and most people's job is to actually do their job, not mess with their email config. Defaults are important.

A group conversation should be represented in a first-class way as a group conversation - flattening it down into a bunch of fake person-to-person messages and then trying to guess the information that you threw away is dumb.

NNTP is ok, but still built for a time when the network was much more expensive and less reliable than it is now. For a realtime-like conversation it adds a lot more overhead than a Slack-like system - you can't make a 1-line contribution because you have to formalize it as a post, and everyone has to read everything twice because the bottom-posting culture from the days when server interconnection was unreliable has been passed on five-monkeys style.

In theory open standards should make it easier to build archives, autoresponders, integrations etc. In practice, the state of archives, autoresponders, integrations and so on for mailing lists is much worse than that for Slack et al. (I suspect because everyone knows there's no money in it). e.g. Mailman was written by a couple of students a decade ago and has barely been updated since, and it shows.
I worked for a few years at a company that provided a SaaS IVR product. Think call centre call routing, and PBX features on any dumb phone.

As people shy away from phone calls, and with the competition of VoIP, we gradually saw the erosion of the price per minute we could charge (roughly 40% drop over the course of 5 years).

The company tried to shift by looking at the data we had available. Millions of phone calls, and we knew exactly what kind of service was being called. Banks, airlines, airports, sex lines, restaurants, customer support, whatever. We could see when people called most, for how long, and we even knew which service inside the call centre they were talking to.

It wasn't long before the company wanted to exploit this, and they started working on the ability to play ads while people were waiting to get in touch with a service representative. Targeted ads.

Based on phone habits, we could tell whether the person calling was a stay-at-home parent, retiree, teen, young professional, etc. We could also tell their gender, in 60-70% of cases.

Because of the technology, we had access to actual phone number, even when people called with restricted identity. It's just how it works when you are registered as a "network operator".

This shift from "let's provide an amazing service" to "let's mine the crap out of everyone" definitely contributed in my leaving the company.
Microsoft Launches Cloud Bot-As-a-Service Platform
On the subject of reading code, I thought this was a good article (basically, you can't read it like you read literature):

http://www.gigamonkeys.com/code-reading/
> Hmm... I don't think this is actually a secure approach, as by default X is not secure.

I think the post is more about containing what the browser has access to in terms of Unix permissions in the event of it being controlled maliciously. The attack vector of X11 is equally applicable with or without the steps in this post.
Because, in many cases, getting it into the debugger has a huge fixed cost -- imagine your code should run on an embedded platform: find the right board, get it connected it into the infrastructure (getting right signals in and out), get the debug build of the image etc -- you see the point.

More generally, studying the code under debugger means you need particular input data -- the one suitable for the part of the code you study. That can take time to get.
> constituent comments for the bills

In my experience, sites that do this sort of thing usually fail. They're ghost towns, and no-one cares what an unrepresentative sample of internet people think about bills.

I'm not based in the US, but I think the other points are covered by sites like https://www.govtrack.us/. Open Congress was another, but was shut down when the Sunlight Foundation went a bit haywire.
I agree with you. Just saying I do not have that does not mean I strive to make thins look and work better as I know it works for other people. Not that I think Slack is that brilliant UX wise, I can see why people like it more than ancient chat clients. However when productivity, again, for me, comes in, peformance is highly important.
> Just seems ridiculous to me that tweeting would be taken seriously.

I would agree, though it seems that your president-elect would not..
the sad thing is The Wiki (this is the original one) used to be a simple text thingy, with instant load.

I have no idea what happened, but I presume the new version just doesn't handle the HN effect well enough.
Check out Empire Earth and its sequels.
God, I wish I had a cubicle.
If I remember correctly, EDIT.COM was a separate binary back when QBASIC didn't ship with DOS. When they started shipping the latter in the box (DOS 5.0?), it became a shortcut.
LLVM is "proper" back-end for code generation that produce native executable optimized for any platform.

JVM execute bytecode in Java Virtual Machine. JVM abstract your hardware and have specific runtime that needs to be present.

LLVM is superior model because its avoid additional compilation and can in theory provide much better performance.
Dude, it is a open source project. You can have a look at the code.
The 'dust' in your metaphor are human lives.

Most software does not involve life-and-death situations. In cases that do, e.g. the space shuttle, they don't use rapid iteration [1].

[1] https://www.nap.edu/read/2222/chapter/5#48
Same here: I was reading and when I read the anecdote about a some basic concept being introduced only around page 216, I thought "hang on, I've read that before..."

And I had the same thought as back then, too: "Concepts, Techniques and Models of Computer Programming" also used this approach, except it's only after a few chapters that they teach you "oh by the way, Oz also supports for and while loops" whereas everything until now used recursion. All my eng school buddies found that off-putting, but I always thought that if you put the book in the hands of a completely newcomer to programmer, they would never even think of it.

(I know SICP predates CTM by decades and may not be considered in the same league, and that Mozart/Oz is rather more obscure that any lisp/scheme ever can be, but I consider it a fairly important book as well, and one of the best textbooks I've ever read: very well structured, well written, very complete, starts shallow but goes very deep and very wiiiiidddeee in terms of knowledge.)
There are a few efforts out there to provide something with near instant start up time. Can be useful for scripting, for example.

Planck, which runs on JavaScriptCore: http://planck-repl.org/

Lumo, which runs on V8: https://github.com/anmonteiro/lumo
The irony is that they also host an article about Over Engineering:

http://wiki.c2.com/?OverEngineering

I didn't wait for it to finish loading and actually read it though.
Home remedies for urinary tract infection
It would be amazing if Valve made Source Engine open source, but that would require them to replace Havok and perhaps other middleware.
Not for the single-threaded integer-arithmetic case, AIUI - ADD is 1 IPC (at least when there are data dependencies) and pretty much always will be. In cases where branching happens, modern processes can maybe do more speculative execution, and obviously going from non-SIMD to SIMD is a huge improvement in the cases where a new processor lets you do that, so there are plenty of real-world improvements, but I don't think to the core case. I'm not an expert by any means though.
You are obviously on solid internet. I am almost never and then Slack is unusable because of those performance issues; they are enlarged 100x because of performance. If my connection is wonky and I have a window of less than a second to pass my message in and get messages back, that 1s wait for the client is what makes it exactly unsusable. Wechat and Whatsapp understand this; Slack assumes only people in highly connected cities use it, which ofcourse is normally the case. But that does not make it's problem less real for a lot of people around the world. Most of China for example.

And losing messages, which actually happens when I have bad connections, is a problem; a) i have to type them multiple times and that takes me out of concentration b) i assume that my colleagues read something while they never got it. Large issues indeed.
If you're looking to avoid confusion you should refer to them as starches, they are the complex carbs (such as rice, beans, potatoes etc.) that give us energy and should form the largest proportion of any healthy diet.

- These starches should preferably be unrefined (yes, quit that white bread, discover the great taste of brown rice) and eaten alongside some green and yellow vegetables to get extra vitamins, minerals and fibre.

- If you're trying to lose weight faster, avoid consuming oil and fatty foods (e.g. nuts, avocado), use sparingly otherwise.

- Avoid dairy products at all costs.

- Add meat in small amounts if you really can't live without it.

You'll be getting more than your daily calorie/vitamin/mineral/fibre needs, and by not eating a tonne of refined carbs, fats, dairy, and meat you'll be less of a burden on the planet/country/healthcare systems too!

I mostly follow the above advice, but I'm pragmatic when eating out, not everywhere caters to a vegan/plant based diet, or even vegetarian. So while you'll occasionally catch me eating a delicious chicken burger or even possibly a steak, 99%* of the time I eat a plant based diet with zero added oil.

As for the myth of sugar turning to fat: it's a process known as de novo lipogenesis, and yes it happens efficiently in cows, but in humans not so much unless you're eating carbs in greatly excess of your body's energy needs[0]. In 99%* of normal circumstances, the human body will increase its metabolism to cope with the extra calories from carbs. The problem really _is_ consuming too much fat.

* estimated ;)

[0] https://www.ncbi.nlm.nih.gov/pubmed/10365981 "Only when CHO energy intake exceeds TEE [total energy expenditure] does DNL [de novo lipogenesis] in liver or adipose tissue contribute significantly to the whole-body energy economy. It is concluded that DNL is not the pathway of first resort for added dietary CHO, in humans."
>Go is a good enough replacement for C, for user space applications.

Are you sure you are not describing Rust?
What's more, Turbo Vision source code was eventually adopted by FreePascal, and they ship with it to this day. Their text-mode IDE that looks a great deal like Borland Pascal (but with a lot more features) is written in it.

Oh, and it's available on all platforms, not just Windows!

http://www.linux-community.de/var/ezwebin_site/storage/image...
While it would be great if you continue to maintain it, just releasing it and not supporting it any further would be still great.
You express very strong opinions about Clojure and the JVM in particular, in comparison to the LLVM. Would you mind sharing some particulars of your experience with the two and what domain you work in?
No Clojure does not have TCO, due to the JVM. It allows you to manually optimise self-recursion via recur. This is not enough for many advanced FP techniques, such as CPS. For example, using CPS and TCO, I can traverse a tree in constant stack space.

I agree with the parent that lack of TCO in Clojure is probably not an issue for most.
What's so weird about clojure interop ? I rarely find myself going back to write full java code when in a repl.
I would love a 6 month or 1 year follow up story on the success or failure of such initiatives. Hearing about the plans of a company to implement a massive software system that affects core business processes is akin to hearing about the plans of someone to change a habit--things often work out as planned, but also can fail miserably.
A program running on the JVM could do any of those three, I meant more in general that the exact state of a computer program can be seen in terms of memory, while the human brain is still more of a black box (perhaps this will change in the future?)
Improving the UX of Names with Vocalizer.js
That was the original title but someone changed it. A mod maybe?
I was commenting on the phenomenon in which random "facts" from narrow professional niches are cherry-picked to make politically motivated arguments.

The show is playing now on the usual blogs, so rest easy. If I had been making an oblique argument attempting to shut people up, I failed rather miserably.
e-bikes are knackered though for full human power because of mountain bike / hybrid frames & tyres, and weight.
We're working with the FDA to speed up access to new medical tech
Being able to target servers, web applications, and mobile apps is compelling enough for me (at least for personal projects). Throw in the simplicity of the syntax and the low dev iteration times and it makes me have to ask "Why not Clojure?" when starting something new.
10 Amazing Tips to Become a Freelancer
Disneyland with Death Penalty, Video Blogger Flees Singapore
>Much as I agree with transparency, I think we need to recognize that everyone--including political candidates--has some right to private communications.

No, they don't, unless you see the need for them to act against our interests without our knowleddge because markets or something, or see some sort of right for them to rule others.
Romanian here, living in the UK though.

Romania is a lot cheaper than any much any other place in the Western world. Granted, $1.2k a month wouldn't be enough to go on shopping sprees every weekend, but it's enough for quite a good life.

You can also take a look here to get an idea:
https://www.numbeo.com/cost-of-living/compare_cities.jsp?cou...

I think a good senior software engineer makes around $2.5k per month, but I think that's sort of on the higher end unless you're really a hot shot, and for Romania, that's an awesome salary, way above the average.
b) It justifies their ongoing employment.
I have a part of my family that lived in pretty unstable foreign countries, and they were more than happy of being french when problems occurred because your country will make sure you're safe, so it's a little benefit (plus having one of the best passport in the world).

But I find it strange that you don't have a "citizen abroad" representative, I don't know how many of US citizen live abroad but since, as you say it, you pay taxes you should have some representation. Here in France we have 11 representative for expatriates and I always thought it would be the same anywhere.
c.f. blockchain initiatives. All the announcements get wide publicity, their failure or quiet scrapping much more rarely.
This. Most other figures from the article will be remembered in history books. But Gödel's results will be remembered and learned for as long as people do mathematics.
I was not interested in that either until I had to start Java processes by hand. The initial version ran for 5 minutes. I then refactored the app to be a long running service instead of a fire-and-forget app and the run time changed from 300 seconds to 300 microseconds!
I understand the general privacy concern but what exactly is the critic here? That facebook aquires data from external source? Aren't those external source the real problem?
Looking at the single-line input I assumed it was an email address field, not physical address. I feel so dumb.
One of the distinctive things about Rust community management is how much is literally engineered, and done with software and processes so that it can scale. All of the touch points are designed: the rustup tool manages the installation experience, Cargo the build process and 3rd party dependencies, the RFC process structures online discussion, the This Week in Rust newsletter provides a heartbeat for the community, bots like Bors handle routine interactions, all of the entry points for interacting with other community members display the Code of Conduct, and so on.

It's a level of purposeful design that only the .NET and Go ecosystems approach, and because it's unusual and largely unobtrusive, it's not obvious that this really good, highly productive community is not at all accidental.

I would say that most large programming communities split into multiple communities, so different kinds of folks don't interact as much: the people on the core developer mailing lists are mostly not the same people as on IRC, or on user mailing lists, or working on issues for 3rd party frameworks in GitHub. I can't think of a sub-community that I've had experience with that I would characterize as unpleasant.
2016 and the year ahead
0. Have good contacts to Big Corp before actually becoming a free lancer.
Always leave the office on time
Functools.partial – Smart alternative to lambda
China is likely going to have one or more of the following going on:

1) Less GDP growth than the 6.5% prediction.

2) Less consumption growth as a fraction of GDP (hence deepening imbalances and higher corporate debt levels).

3) Massive wealth/income transfers to the household sector to allow for a rise in consumption.

You're right that without #3 it's pretty unlikely that consumption will rise as much as that article claims.
The Making Of: Dust
Heh.

That article ends with "My online marketing course is launching soon. Buy now and get the early bird discount ($155 saving)"

Like hell it is. He is doing the classic testing of demand. No class exists, but if enough people sign up then he will create one.
By the Big Lie theory, what's the diff?
TOP 10 BEST Smartphones to Buy in 2017
Lowell Institute: free public courses, sparked WGBH Boston (part of PBS)
The indiehacker guy is known for aggressively beating his own drum and posting and reposting his blog links.

Appears effective.
Well I finally loaded it. It's a piece about how the support code (argument parsing, error handling) around the code that "actually does anything" has more lines than the "actually does anything" code.
ProtonMail begins beta-testing support for IMAP and SMTP
It is not a limitation of Clojure but a limitation of the JVM. And you can use the recur keyword to actually do TCO.
>and mobile apps

Last time I tried (which was probably over 2 years ago by now) the CLJ android had a huge loading time to the point of not being usable for anything serious (it offered no tangible benefits that would justify the load time it had) and iOS was something based on that JVM for Android port that Xamarin bought then shut down. Has that changed ? Or are you talking about CLJS + ReactNative and similar tech ?