skysight-inc/HackerNews huggingface dataset:
The article should be retitled 'proof that life became net better between 1800 and today'.

No evidence is given that life at any point in the future will be better than it is currently.

Disappointing and misleading.
What I don't like is how the government demands to wiretap EVERY person's account regardless of there being no suspicion of crime in every account. How can that be justified? To stop future whistleblowers?

It reminds me of the Investigatory Powers Act in Britain which demands ISPs to log everyone's internet browsing history and the end of end-to-end encryption as all encryption will have to have backdoors.

All that will happen, is that anonymous email providers will move to countries which are privacy friendly. It's a game of whack a mole. There's already Sigaint which is an anonymous email provider which is hosted on Tor. I'll be using Sigaint, offshore hosting and I2VPN when I launch my anonymous website.
Profanity check:

$ grep -i fuck * -r
Opus/asm/wordgrep.asm:; BP is used as always, the other registers are free to fuck with.
Opus/asm/wordgrep.asm: je another_fucking_out_of_range_jump
Opus/asm/wordgrep.asm:another_fucking_out_of_range_jump:
See also: there was a big discussion on HN when this article was published over 2 years ago:

https://news.ycombinator.com/item?id=7774158
I wonder why it feels like I can't move at the same pace with C++ compared to C#; want to have a file copied to your output dir? Create a post-compile task; with C# you can just set a property to 'copy always'. Want to add a reference? Set up which dir's to look for, type names, etc. with C#: add reference, choose your dll/whatever and you're done! And those are just a few. One of the biggest hurdles with C++ is type conversion; I recently wrote a small app; most time was spent writing functions to cast/convert all the 9000 ways to define numbers and strings... It's when you start to appreciate the System.Object model that makes sure everything can be represented as a Unicode string that everything knows how to work with.
Looking at all these "enterprise" horror stories, I don't think ESR's 1 year is nearly enough.

3 or 5 years might be more suitable.
ServiceWorker/Progressive Web Apps is the way to go. Works in any* browser.

* Any modern and recent browser, so no Safari support, at least until summer '17.
The author is Max Roser, the economist behind the Our World in Data website (https://ourworldindata.org/). The data is all sourced from that site and seems to be well researched when I have casually browsed the datasets.

I have a lot of respect for his work, but I can't really judge it's accuracy without diving more into the data.
This is silly and pointless. The blogspam states "[RMS] agrees that C++ sucks" when in fact he's talking about using C++ for a very specific use case (Emacs).
Ask HN: How can I issue a single monthly invoice for aggregate software sales?
I want to sell products X and Y to many customers each month. X requires a one-off single payment, Y requires a monthly subscription payment.

My accounting software's invoicing system is clunky and so I don't want to have to issue an invoice for every single customer myself. I want a payment processor / provider which will issue an invoice and/or sales receipt to customers, collect the money paid, and then allow me to issue them a single monthly invoice. Also, I am based in the EU and so EU VAT rules apply.

I am thinking that a setup like ChargeBee + Stripe might work for this, though my accountant says that since Stripe is just a payment processor I still have to issue an invoice myself for every sale :/

How have others solved this issue?
I would recommend reading Paul Graham's Paul Graham's Plan for Spam- one of the early extremely useful ML approaches to fighting spam.
http://www.paulgraham.com/spam.html

In the article he outlines the challenges of taking a rules based approach:

The statistical approach is not usually the first one people try when they write spam filters. Most hackers' first instinct is to try to write software that recognizes individual properties of spam. You look at spams and you think, the gall of these guys to try sending me mail that begins "Dear Friend" or has a subject line that's all uppercase and ends in eight exclamation points. I can filter out that stuff with about one line of code.

And so you do, and in the beginning it works. A few simple rules will take a big bite out of your incoming spam. Merely looking for the word "click" will catch 79.7% of the emails in my spam corpus, with only 1.2% false positives.

I spent about six months writing software that looked for individual spam features before I tried the statistical approach. What I found was that recognizing that last few percent of spams got very hard, and that as I made the filters stricter I got more false positives.

False positives are innocent emails that get mistakenly identified as spams. For most users, missing legitimate email is an order of magnitude worse than receiving spam, so a filter that yields false positives is like an acne cure that carries a risk of death to the patient.

The more spam a user gets, the less likely he'll be to notice one innocent mail sitting in his spam folder. And strangely enough, the better your spam filters get, the more dangerous false positives become, because when the filters are really good, users will be more likely to ignore everything they catch.
My first thoughts exactly.

My work has increasingly become creating software for enterprise clients. They all want it to be delivered through the browser. Over time, chrome has become the primary target because its simply unfeasible to target IE. Organisations have bizarre and arcane rules for who gets which versions of IE, so it inevitably leads to developing for the lowest common denominator, which in turn leads to disgruntled clients who see some fancy feature on the web and can't understand why we can't give them the same thing in the time and budget they've allocated. Now, we generally say we'll target chrome and provide "some" support for IE.

But I absolutely guarantee that an orgs IT dept will seize this opportunity to convolute and complicate who gets which versions of Chrome.

And its all for nought. In my experience, IT departments cite vague security requirements, but when you scratch the surface there's typically no security at all. For example, at one company who really does need strong security policies, it was common knowledge that you could circumvent their stupid auth process by opening the task manager and quitting the process. You could also open up the developer tools console and send whatever requests you wanted to any service because features were enabled and disabled in the UI only.

My point is, IT departments in my experience only talk about security and use it as an excuse to do bizarre stuff that looks smart, but is generally the opposite.
Counterexample: an AI can give you a full stacktrace and memory dump or allow you to attach a debugger when it makes an error.
What's with the vacation shaming?
After years of hyperinflation, Zimbabwe's currency was entirely discarded last year. The final exchange rate was 35 x 10^15 Zimbabwean dollars for one USD:

"Bank accounts with balances of up to 175 quadrillion Zimbabwean dollars will be paid $5. Those with balances above 175 quadrillion dollars will be paid at an exchange rate of $1 for 35 quadrillion Zimbabwean dollars.

"The highest – and last – banknote to be printed by the bank in 2008 was 100 trillion Zimbabwean dollars. It was not enough to ride a public bus to work for a week."

https://www.theguardian.com/world/2015/jun/12/zimbabwe-offer...
The Hard- and Software of the Amazon Dash Button [video]
There quite a few ways around that with async APIs and WebWorkers, even ServiceWorkers now. A lot of devs just don't use them properly.

Edit: Did you mean the browser itself could freeze? That's a thing of the past with Firefox being the last browser to separate the content and chrome process. So the web page may freeze, the browser window itself shouldn't.
Free business directory listing india
Years ago when I was a remote employee, I definitely did become marginalized. Projects I took on and completed were often assumed to have been done by an on site employee. People on calls sometimes spoke of me as if there was no chance I was on the call. The CEO even talked about getting me to train my replacement, apparently assuming I wasn't part of the call concerning the department of which I was the lead.

I've found that the issue with being a remote employee is the employee part. My experience has been that trusting your job security to an employer is just not as safe as it used to be. Nowadays as a freelancer who works on mostly long-term contracts, it's possible that some of my clients wouldn't think much of replacing me, but if they do decide to stop using me, I can grab another contract. My office doesn't change. My machine is still my machine, i.e. they're often the more replaceable one.

However, and as others point out here, this only works if you have lots of experience in something highly in demand.
Tech Differences Explained
I put the Ubuntu Utopic Unicorn as my desktop* for my Windows machine to help me feel better when I have to use it :P

*Edit: I mean as my wallpaper.
I think this is a weak argument. The problem here is that companies think that software can exist in some sort of "done" state, where no further updates or development is required.

That has never been true.

The hardware and software changes. The infrastructure it connects to changes. But most importantly, your workflows must evolve if you are to remain efficient.

If you roll your own software, you either commit to constantly updating it, or you commit to throwing a ton of money down the drain when its rots away to the point where it is no longer fit for your workflow or for the world it operates in.

Software is never finished, only abandoned.
You are comparing apples to oranges here.

I also agree that type system in C++ is not perfect and is rarely used in a sensible manner. Yet I would rather look for inspiration in functional statically-typed languages rather than in specialized "multi-paradigm" dynamically-typed ones.
True. Also, the smallest unit in which prices are quoted is not in all cases sufficient for calculations. A million + 1 rounding errors after the 8th decimal place adds up to an error measured in cents.

In my particular case, 64 bit integers might be sufficient. I thought about it but then decided I wanted to be on the safe side. Maybe not the best decision.
"I hate anything that asks me to design on the spot. That's asking to demonstrate a skill rarely required on the job in a high-stress environment, where it is difficult for a candidate to accurately prove their abilities. I think it's fundamentally an unfair thing to request of a candidate." Scott Meyers

I'll take this guy's word over yours I'm sorry. Your supposedly simple use case is given in a different environmental surrounding than a typical day on the job.
Seconded!

This is a great way to make daily $instrument exercises. Mine's a bass clef.
Same here, not a person in the office.
Hello Thomas.

I wrote the PIC with overall intention of minimizing code size and while I was aware of the unauthenticated length, lack of RSA padding and potential for MitM attack, I didn't think anyone would be even remotely interested in the code for its intended purpose. For me, it's just a bit of fun.

I've since added authentication of length but I'm not suggesting it's solved any other problems that might exist. If you spot them, I'd be happy to fix.I'm not aware of anyone that bothered to test it so that tells you how much interest there is in it.

I've looked at some of the AEAD algorithms from CAESAR and will probably choose between OCB and KetJe unless the results indicate something better.

But for now, this code is really just experimental. It's merely a PoC and nothing more.

As for using OpenSSL BN/RSA library, the reasons for this are simply to avoid implementing a PRNG with random tests and the additional math routines to generate the key pair.

I intend to implement those routines later which would also be used for signature verification but for now OpenSSL gets the server component working with client (which was my main focus).

Anyway, thanks for your interest. I appreciate feedback good or bad.
China has made obedience to the state a game (ethics violation anyone?)
I think it became harder to write true desktop apps once VB6 was killed off in favor of .Net with its higher learning curve.

As bad as a real language VB6 and it's GUI builder were, it did allow even amateurs to write a decent working crud app in minimal time.
There is a point where that stops, no? I mean we don't provide links to the wikipedia page for the Holocaust...

https://en.wikipedia.org/wiki/CIA_Tibetan_program
I experianced this myself and was pretty sure this is on purpose. If you request desktop on Chrome for Android you get a stretched out version of the mobile site and the auto complete of your keyboard makes the textbox on messages impossible to use. I think they want to funnel people to the app I just don't go on the site anymore.
I agree with what you're saying, but what you're saying is not how it works at Google. At least the teams I've been at. Design docs aren't a prerequisite to start working, and in many cases a design is nonsensical if you haven't actually at least prototyped what you want. It's just a tool to help you be comprehensive when you want to decide between alternatives, and let other eyeballs help you decide.

"this will never work", without an actual argument, isn't Googley :)

A big design doc is a liability for sure, in the same way as code is.
33C3: Where in the World Is Carmen Sandiego [video]
I made a job board aggregator featuring only remote front end jobs
Snap’s IPO Roadshow Message: We’re the Next Facebook, Not the Next Twitter
Not sure what sort of assets you are looking at but prices are rarely quoted with a very large number of decimals. Having chunky increments is sort of necessary to match bid and offers on markets.
I know it's not fair, but because I write identical apps in both languages, it's one that comes to mind frequently and it becomes very apparent how powerful C# is when it comes to Rapid Application Development.
> But no branch of human inquiry has cut itself off from the whole – and from the other social sciences – more than economics.

In Bratislava, the town I come from, there's Comenius University which has many faculties, one of them being Philosohical Faculty. Among many departments in Philosophical Faculty there's a department of sociology.

There is also a fully separate Economics University, with its own faculties and departments.

It's a nice example of how the fact that economics is just one of many subdisciplines of sociology is concealed and instead, an impression is created that economics can exists as a fully separate discipline independent of any sociological factors.
(Living in continental Europe) That's funny. After reading your comment I went to the grocery store and found that brand and that 'model'. As I never know which kind of toothpaste I should buy I am eager to see if I am going to like this one.
What Does Any of This Have to Do with Physics?
Twitter unveils 360-degree live video
Check out what I did in one commit several years ago. Maybe you can get a multi-million dollar idea from it like others have (meteor, app.js, etc)

Somehow people could change the internet to suit this project to fix everything. Single files of jquery on disparate servers that connect to one frontend could transform the web and undo the big problems.

https://github.com/tblobaum/nQuery
> If you can freely choose to leave then that's a strong indicator that your nation is not fascist.

So the people who decided to flee from Nazi-Germany, the Soviet Union or North Korea were not fleeing from a fascist country?
I agree, the compile times are my mine problem with C++ right now, and they are not getting better.

If you listen to the C++ advocates, they all say use the STL as much as possible, use boost if there is solution for your problem there, etc.. It's true, you probably will quickly get a solution that works and looks pretty, but if you do this a hundred or a thousand times your code suddenly needs several hours to compile.

I am not against the STL, or boost, but there is a cost associated with using them that is often ignored, but IMHO is actually a productivity killer in codebases that are a bit bigger.
Everything you always wanted to know about Certificate Transparency
Nuance needed in debate about technology’s role in children’s development
A dynamic programming solution to the n-queens problem (1992) [pdf]
That is great to hear. I have personally turned down opportunities that ask for these high stress ridiculous tests in front of a bunch of strangers.
Stick to <h> <a> <img> and <hr> and you can probably have that now.
They are taking apart Threema. While it's not open-source, it's not exactly a "black box" either -

https://threema.ch/press-files/cryptography_whitepaper.pdf
So I was an IT manager (well the only IT person for a ~50 person accountancy firm) back in 1995 and I can tell you how it unseated wordperfect in my org. Easy really... it was free!

So basically if you bought Gateway PCs with Windows 95 you got Office 95 Pro for free with them. In a cost-constrained environment it was a no brainer compared to spending money on Wordperfect licenses.

When I got there it was mainly Wordperfect for DOS and Lotus 1,2,3 for spreadsheets but when we rolled out new PCs with Windows 95 we migrated to Excel and Word.

In terms of productivity there was a definite hit for "pro" users where they were faster with Wordperfect than Word but it was possible to get past that and Word used to have a pretty useful compatibility layer so you cold use Wordperfect commands in Word.
Become a Host – Earn Money During the Day
holy cow, I never would have thought in 2016 compiling a C++ program could be so slow that it makes it impossible for someone.

Can you put numbers on these figures? By "Unbearably slow" how many minutes (or hours) did you mean? Do you use a heavy desktop with a fast SSD and a lot of RAM?

Finally what is the total output program size (roughly). Like are we talking about an application that is in the gigabytes, like the complete Adobe suite or something?

I would like to know more information about how it's possible for this to happen. tell us as much as possible :)

Thanks!
https://www.youtube.com/channel/UCYdf53MwhmY0roTmHddpHyw
In fairness, It's a well documented problem with a ery easy solution. I wonder how much code would break if they removed it..
Same for me. Boggles my mind there still isn't a p2p (IPFS-like) system that allows you to take control of your bookmarks and use them with any browser. Then again, Chrome doesn't allow you to specify your own bookmarks server... :(
It's true, but you can turn that stuff off.

You want to turn off things under Privacy like "Use a web service to help resolve navigation errors", "Use a prediction service to help complete searches and URLs typed in the address bar", "Automatically report details of possible security incidents to Google", "Use a web service to help resolve spelling errors", and "Automatically send usage statistics and crash reports to Google." And not login into Chrome.

The problem is that even if you tell all your employees what to disable, some of them will probably not comply. So a truly paranoid IT team might want to make their own fork of Chromium with those features removed.
Wait, you mean to say you run unity as the DE for the windows OS?
"I hate anything that asks me to design on the spot. That's asking to demonstrate a skill rarely required on the job in a high-stress environment, where it is difficult for a candidate to accurately prove their abilities. I think it's fundamentally an unfair thing to request of a candidate." Scott Meyers
We don't really have a class: Like any writing, you just need to be aware of what's your goal. For a design doc, you want to say three things: (1) what are yo doing/planning to do, (2) why, and (3) what alternatives you've considered and why do you think they're worse.

We just use Google Docs, and it's easy to share the doc and have people add comments or propose changes. There's a template somewhere, but I don't like it much.
> So why can't it voluntary via donations to universities?

You could say that about any tax founded expense?
Is anybody aware of any compiler/tool which tries to enforce those rules? ideally, on code blocks enclosed in some special markers?
Hi Nikhil, Do you have a personal email address?
Rust is mostly safety
Unity (and many other Linux UI projects really) current state: reinventing the wheel, with chances of hitting a usability sweet spot just before the next rewrite.

https://en.wikibooks.org/wiki/Guide_to_X11/Window_Managers
Yeah the problem is they hired big software companies to develop sub-par software (in terms of being future proof, platform agnostic, and standards-compliant – if there were any standards to begin with) that worked for their needs at that point in time. Now they have to deal with the legacy.
Try the Citrine programming language online
Best Portrait Artist in the World
I don't own a car but have a license and occasionally drive one. I'm not used to driving on highways with more than two lanes and when I spent a few months in the US I had panic attacks the first few weeks when riding at speed limit and there was no escape path. I had to leave the highway twice to recollect.
True but you can create a reliable UDP implementation and get the same TCP features you need (resending/ordering/ACK). Many games use UDP and then some form of reliable UDP where important messages are ACK'd (game start, game end, global events etc).[1] Almost every multiplayer game I have worked on has a flavor of this, where there is a bit or flag on important messages that need reliable tracking over UDP. Everything else is just broadcast like player positions, local action and more where packets can be missed and extrapolated/interpolated, predictive methods and lag compensation.

There can also be some packet loss increase when using TCP mixed with UDP[2]. Most games built recently probably use more RUDP than TCP. But when you need to use any UDP at all you may as well just go reliable UDP. TCP definitely works for non-realtime games and turn based especially but if you ever want some non essential systems updating where packet loss is ok (maybe world physics, or events that are just decorative/fun) then reliable UDP is best in my opinion.

SCTP was supposed to fix much of this but really reliable UDP does almost everything you need for realtime and not, so if investing in a network lib/tech that is the best choice.

enet[3] is a popular reliable UDP framework that was the base or basis for many others. RakNet[4] also has some nice implementations of it. There are many others now but some larger common systems based their systems on these, Unity is one.

[1] https://en.wikipedia.org/wiki/Reliable_User_Datagram_Protoco...

Characteristics of UDP Packet Loss: Effect of TCP Traffic

[2] http://www.isoc.org/INET97/proceedings/F3/F3_1.HTM

[3] http://enet.bespin.org/

[4] https://github.com/OculusVR/RakNet
Thoughts about Rust in 2017
Misery Parody Starring Billy Jackson and Stormi Epps-Jackson