skysight-inc/HackerNews huggingface dataset:
Thanks for the name-calling. Unfortunately, it is you who is out of touch with reality: the switch to Python 3 is happening. Python 3 isn't going away, Python 2 is.

All important libraries support it by now.[1]

[1] https://python3wos.appspot.com/

All important Linux distributions ship Python 3, including typical "server distributions", even for old stable versions (like Centos 6, Debian Wheezy). They also ship most Python library packages for both versions.

Most desktop distributions have already switched their default/preferred version (e.g. Arch) or are in the process of it (e.g. Fedora[2], Ubuntu[3]).

[2] https://fedoraproject.org/wiki/Changes/Python_3_as_Default

[3] https://wiki.ubuntu.com/Python/3

The first libraries are beginning to drop Python support (e.g. pyKDE[5]).

[4] https://blogs.kde.org/2014/08/10/pykde5-status

New Python3-only libraries are popping up (at least according to the metadata on PyPi)[6].

[5] https://stackoverflow.com/questions/4948600

And in four years (2020), Python 2 will be unsupported.

Python 3 is the obvious choice for new Python projects today. And maintaining and deploying legacy codebases will become more and more annoying as support (bugfixes, packaging) for the libraries they use goes away.

So what the hell are you talking about?
Does it make sense to reverse proxy a node app behind nginx if the node app only provides a REST API?

As far as I know, using nginx in front helps with serving static files, which is a moot point on a REST API.
So many submissions, so little discussion:
https://news.ycombinator.com/item?id=10817549

Please use Algolia before you submit anything to HN:
https://hn.algolia.com/?query=the%20missing%2011th&sort=byDa...
Automate your marketing with 6 steps and 18 tools
FWIW, when news first broke I posted a translation of a news article: https://news.ycombinator.com/item?id=10698743
Didn't java change its behaviour?
A bit more modern and customizable alternative is Übersicht. Widgets are created in HTML5 and CoffeScript.

http://tracesof.net/uebersicht/
> iPad Pro and Apple Pencil is Apple's warning to Wacom: we are coming for you.

They'd need the pro software to be a threat at all.
Yes: https://news.ycombinator.com/item?id=9862556
For java it depends, it seems these days that not copying is a bigger performance issue than copying. So the recent openjdk builds have substring do a copy of the underlying char array. Which can change again. Other JVMs of course are free to do other things again, or mix and match depending on the circumstances.

edit: I believe String is overused in java land and we should have more CharSequence implementations. https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequ...
A few interesting points in there. Anchorage apparently sold off their entire investment by September 2014, near their peak price, though the shares traded around the same numbers for another year[1].

They describe Dick Smith Electronics as the largest retailer in Australia by "number of stores" - which should maybe have been a warning sign if they had more stores but less revenue.

Anchorage also mention Dick Smith taking over operating the electronics departments of David Jones department stores in October 2013 - but just six months later, David Jones was sold to Woolworths South Africa and taken private[2].

Also worth noting the "Hong Kong sourcing office for private label products". Over-investment in private label products seems to have sunk them: few people want a Dick Smith TV over a Samsung, Sony or LG.

[1] https://au.finance.yahoo.com/q/bc?s=DSH.AX&t=2y&l=on&z=l&q=l...
[2] http://www.news.com.au/finance/business/david-jones-agrees-t...
Show HN: HEY – One Word Messenger
If you are deploying to a single server, consider using `pm2 deploy` which makes life much easier for rolling new releases and deploying them on server.
Rereading my message, I wasn't clear at all :) What I meant is that if you love your work, your stress levels do not rise and if it's enjoyable enough as a hobby, you can spend a lot of hours working but still be happy because you're doing something you like (and I'm lucky enough that I have to deal with very little bullshit that detracts from my enjoyment of work).

My work/life balance is essentially balancing things between my hobbies and my family. So, it's a much nicer situation than if I was working on something I didn't love and I had to balance that with hobbies and family life.
In general, I favor the T over driving in Boston because of the reduced variance in travel time. This is not true, however, of the green line above ground or of the Silver Line. The silver line's struggle through traffic (and various airport and non-airport stops on the way to South Station) makes it up to 5x slower to use the T to get to/from the airport compared to just taking an Uber.
what if I am working in un-friendly country trying to import it to friendly countries via the App Store?
Evernote’s 5% problem offers a cautionary lesson to tech companies
Show HN: Forms – Drag-and-drop database applications (with scripting)
"After a period of exclusivity, in November 2012 Anchorage acquired the business for $20 million. "

"At the time of listing the business had a market capitalisation of $520 million. Anchorage retained a 20% stake in the listed entity following the IPO, which was subsequently sold down in September 2014. "

Nice IRR.
When I saw these, the alien city from "Rendezvous with Rama" immediately came into my head.
DDoS Protection for WebSockets
Also worth looking out for a book by Allen Strange - Electronic Music: Systems, Techniques and Controls.

There are plenty of good online tutorials too.

This is quite a dated series now, and I always found it slightly self-indulgent even when it was fresh. Some of the theory is still useful, but digital synthesis has moved on. You can do a lot more with digital code-based systems, or even modern VSTs, than you can with vintage synths from the 1970s.

Pretty much everyone uses samples when they need the sound of a real instrument or a classic drum machine, and this series doesn't spend nearly enough time on the art of abstract electronic sound design or (say) using the FFT features in Max/PD/some VSTs.
What might go wrong if you only deploy to architectures with the necessary signed integer representation and compile with -fno-strict-overflow? (not that I can imagine an optimization which would make this particular use of overflow go wrong)
I am saying the same thing.

Strings that can't make use of 0 have to be a small constant factor longer to store the same entropy, because each byte can only store log_2 (255) ~ 7.994 bits, instead of log_2 (256) = 8 bits.

Of course, if you are storing printable ascii characters only, that doesn't matter, since you are using far less than 256 possibilities per byte, and so don't care that some of them unused onces are used for in-band signalling (https://en.wikipedia.org/wiki/In-band_signaling).

As vardump points out in another comment, that's equivalent to 1 in 177 bytes.

(See also https://en.wikipedia.org/wiki/Control_character)
I'm guessing the idea is you set it up for them one day when you are visiting and then wrap the whole thing up in a script that they can trigger by clicking a nicely labeled icon.
What I want from strings in a programming language:

1) Memory-safe (can't touch memory that you don't own)

2) Opaque (standard library can change the implementation later)

3) Immutable (can be passed around like values)

4) Unicode (no fixed width chars, no default conversion to bytes)

I don't know any good reason to deviate from these rules. Even systems languages would do well to follow them, IMO.
The Best-Paid U.S. Executives Don't Work on Wall Street: Chart
If you control consumers and producers, and your data is just data, please just use a safe, common binary protocol (protobuf etc).
Are there even any sustaining (lifestyle income) desktop shareware vendors left?
Finally found it!
So crazy I've spend days looking for this. They need to do some serious SEO work or get a more memorable name in the first place, I kept thinking its a short word like 'nest'.

http://meetcircle.com

Had to do a search for "family internet pause device" before I could get it to show in a search and even then it was #13.

A bit frustrated but glad I found it.
Good point. We lose linearly one bit per ~177 characters that way. So zero termination does have linear cost.

1/(log2(256)-log2(255))

Assuming 8-bit char, at 1417 chars, zero terminated string overhead is 2 chars.
Related recent discussion: https://news.ycombinator.com/item?id=10831322
So this is why JavaScript is being mocked
I like your coding style, it's very organized.
Yup, there's a reference to the original article in archive.org in February 2003, though not an archive of the page itself then: https://web.archive.org/web/20030215133929/http://www.dexter...
Forms is a drag-and-drop database application builder meant to abstract users and developers from the same repetitive CRUD code. If you're familiar with Microsoft Access, it's like that except it's web-based and handles user management/permissions. Developers can immediately start writing code for their business logic. We have a full JavaScript API for interfacing with our servers, and presenting forms and submissions like models.

We posted here about a year ago with a somewhat hacked-together previous version. Since then we've added Zapier Support, Custom Scripting, Reports (we call them reports, but they are more like database views), and Report-based permissions. That last one means you can do interesting things like allowing a group of users to access only orders in the northeast.
I avoid it :) I had a lot of control over the HW+SW deployment, hence the software was preinstalled (although I could imagine scripting an on-demand installer as well). With reverse SSH (the workstation connects to a server outside the NAT), no port forwarding is necessary. Although the tunnel-in-tunnel method used introduces additional network overhead and latency, it is acceptable for an occasional remote session (VPNs were considered, but ultimately on-demand userspace tools without a need for permission elevation were chosen), and has performed admirably over a wide variety of connections ;-)

Specifically:

- the workstation has screen, autossh, openssh-client, openssh-server and x11vnc preinstalled.

- there's a (local user-initiated) script, launched via a desktop icon

- that opens a GNU Screen session

- inside the screen, it autossh-s into a limited account on a jumphost and remote-forwards a (preconfigured) 127/8 address:port back to 127.0.0.1:22

- this makes the workstation's SSH server accessible on the jumphost

- (actually, several jumphosts are used - not everything is accessible from everywhere on the Internet, but I've yet to see a case when no jumphost can be contacted)

- remote user connects to workstation via SSH to jumphost and thence the forwarded SSH tunnel

- localforwards a port for a VNC connection

- runs x11vnc at workstation

- connects to x11vnc via the localforward

- and/or attaches to the GNU Screen

Voila, console and desktop access, with file transfer also available. The "remote" part is a single script, based originally on this script for VNC-through-SSH: http://so.piskvor.org/87443/vncssh.sh

SSH provides enough security (pubkeys), Autossh reestablishes the connection if needed.
That's the charitable interpretation. A good lawyer might convince a judge otherwise.
Facebook secretly introduced fake errors to crash Android app for user tests
Wish there was a way to see what this is without downloading it. Screen shots at least?
> 'Use ${TOOL}' doesn't help you create or understand the contents of ${TOOL}s Dockerfile.

Many tools are popular because they provide powerful and convenient abstractions. For many folks, it's all about saving time (and therefore money). There's value in leaving the underlying working internals to specialists (that's why we don't need to understand the linux In-kernel API when we use Ubuntu Server's networking)
Would this involve a timeout or maximum plugin count? Something like that? Please do open a ticket.
Laws are pretty important, actually. IIRC, in Slovenia, if you don't work 40 hour weeks, you'll have issues with retirement (e.g. you'll have to retire later, or your pension would be smaller (regardless of your salary)). I'm assuming there are similar issues with health/social insurance.
Noise like living next to an airport, a train track or a loud street can make people sick, no matter if they are German or of some other nationality. There is scientific evidence for that, which is why there is a need for regulations and people can complain if there are violations. Maybe this is something typical German, the idea the things have to be done the right way.

We have five senses, all of which are important, which is why in my opinion, architecture shouldn't be only about the "seeing" aspect. Sound architecture is a good thing, but I never thought of it as something typical German before.

In Germany there is the opinion that if you are speaking the truth, there is no need to shout. That might be also a reason why our politicians are quieter. Being loud is often seen as a sign of passion, but not a sign of reason. Well, our political debates also become quite loud and I could only wish they were all about reasoning.

"Kids' playgrounds across Germany are notable for the lack of noisy children as parents and teachers fear neighbours' reprisals."

In my experience that's usually because many children prefer staying at home and play video games and/or because of the poor state of many playgrounds. Playgrounds are one of the few places where children can play as much as they want (in theory), but parents might fear their neighbour's reprisals if children play loudly outside of playgrounds. But all that might depend on the neighbourhood. Also, some playgrounds have certain "opening hours."

As a final remark, I don't think that today's Germany is the worldwide benchmark for quietness. I know somebody who was in Japan recently and nobody talked inside the train there (at least on the way to work), while it is quite common to talk in a train in Germany (if you get really loud, you will earn a lot of looks though). But Germany is changing and becoming more colored and multinational and sometimes also a little bit more noisy and that's not necessarily always a bad thing.
$2600 for an ECG is a ridiculous sum.

Out of curiosity, I checked how much my insurance pays a doctor for an ECG (I live in Austria). My insurance (SVAGW) pays 36€ for an ECG. Of course, the total bill would be a bit more since the doctor would likely also charge for consultation (33€), draw blood, order lab diagnostics (6€) etc. The total would probably be well under 200€.
I'm intrigued.

I believe everyone is entitled to their view on privacy, whether that's "expose all data" or "remain completely anonymous", but there's an interesting collision presented here.

> if a guest at my house is live-streaming his stay to the Internet without my knowledge or approval

Would you consider live-streaming to be audio-visual streaming or literally any data that could remotely indicate the guest is in your presence / property?

And, as a follow up, in case it's the latter: do you require guests to put phones into Airplane mode or similar?
Causes of Death
> This is a perfect example: outright, blatant dishonesty

To give them at least the benefit of doubt. Perhaps they have run this through some form of beta testing and found that?

Or, as you say, they are just using it as a psychological tool.
other "socialist" civilized countries, you know, like the ones that regularly innovate and push the boundaries of science and attract millions of people each year because of a higher standard of living and less taxes. oh, wait...
The "market" is just a synonym for individuals co-operating together for their mutual benefit. The "public" option is one where a faceless bureaucracy with a monopoly on power steps in and dictates terms. Disclaimer: I have lived decades with a single payer system and left in part because of it.
I worked on the original cold boot paper (Halderman et al.) and I understood "cold boot" as "removing power", not as "lowering temperature". (It's a warm boot if you reboot from software, and a cold boot if you reboot by removing power to the machine.) It's understandable that people would have assumed temperature was the reason for "cold" because we had lots of pictures of memory with ice crystals.

Under many circumstances, the attack worked at room temperature; one main reason for using low temperatures was if you needed to physically move the RAM chips from one machine to another.
Dafny: A Language and Program Verifier for Functional Correctness
I think we need to talk way more about cost/pricing/fraud/transparency than the "insurance" red herring, which just became a problem because of cost in the healthcare sector.
It is somewhat odd that Americans should prefer their minor-league football to be university-branded. However, I don't see that changing anytime soon.
Everything on this list is very annoying and I couldn't agree with this more.

It is however a result of the general mindset (shared by Troy) that all content should just be available for free, which clearly isn't working out for a lot of companies, thus they implement "annoying" things such as described in this list.
Advanced Plastic Surgery Techniques with Videos
>A fixed size length field commits you to a maximum string size
size_t would be enough, but I guess it would be too much of an overhead.
You're too kind - these words are enough. But if you insist, I do need some socks :) http://amzn.to/1Pd9yOt
Not so. Sigfox has a single operator model: they're the only operator for their proprietary technology. But LoRa is multi-operator: anyone can buy LoRa base station and deploy their network (it's in unlicensed spectrum). And it's already happening this way.
So several operators and even technologies will share the same limited unlicensed spectrum. Should be interesting when it scales...
Direct link to just the images (warning, disturbing scrolling behaviour): http://sub.blue/aurullia
I think your point could have been made even better if instead of quotes/numbers/strings you would have illustrated the in-band typing using square brackets and arity. Two bytes for "there can be more", so much better than the plural/singular convention often seen in XML (rarely without some creative breaches closely nearby).

In hindsight, the biggest advantage of XML over JSON was that it was painful enough to make schemas popular, a quality JSON is lacking. Unlike schema languages, which do exist.

To me, XML tooling lost quite a bit of its appeal when I realized that all the typing available via the various schema languages is completely lost to the world of xsl/xpath/xquery. I understand the reasons for that, but that does not provide much consolation.
Most of points there make sense for power users only. If you need just basic internet station (no gaming, professional video/audio editing etc) then linux works almost perfectly.
Show HN: A simple algorithm for drawing complex tables
I assume you are sleepy.

What I am talking about is that some languages make writing safe code easier, that is code that behaves well as a program when compiled to machine language (or interpreted as is). Especially in the face of hostile inputs.

As an example, it is pretty hard to make your Python interpreter crash with a segfault using just pure Python code. (It is, of course, easy to generate a Python exception.)

Even though, this safety doesn't come at the expense of power: it is easy to tell the interpreter to get out of the way and let you muck around with raw bytes (ie by calling into C).

In the case of Python, the safety-by-default comes at the expense of performance. In the case of Haskell, it is either performance or program complexity. (Ie you can write fast Haskell code, but it looks weird.)

If you do call into something low level, it will be clearly visibly in your code that something potentially dangerous is going on.

Safe and correct behaviour by default is good. Profiling can help you find the few spots where you want to take over safety obligations from the automatic systems in return for extra performance.
On its own it is, but I think the idea behind it is to quantify your goals with specific numbers and quantify how you intend to get there.

For example, one way to increase sales by 20% might be to increase visitors to your website by 20%. But another method, if only 10% of visitors download your software, increasing that to a 12% conversion rate will also increase sales by 20%. Lifting downloads from 10% to 12% might be easier than finding 20% more visitors. By thinking in specific numbers, you can brainstorm different ways to achieve the goal and choose the method that is fastest / least effort.
Thanks!

> That is not what either Rust or Haskell are.

Nor even Python.
The half-billion dollar number seems overstated, that was a theoretical market cap and doesn't imply that much money really changed hands. If I'm reading this correctly Anchorage's actual takeaway was "only" about $100MM, since they retained 20% after the float, they then sold this off in the market. For those assuming Woolworths was duped I note they got a comparable amount. This suggests they gave up roughly 50% of the extractable value in return for not having to do any of the dirty work. The big losers are anyone who bought the float at list price and still hold it, and of course the taxpayers who are on the hook for "employee entitlements".
That's fine by me. I can't control what one does on server side.
Your comment (point 2 especially) reflects the current widespread notion (among employers at least, it seems) that one hour of work is one hour of work, always. I think the main point of the article is exactly to counter that.

> "Productivity – output per working hour – improves with shorter hours."

And why should the employer get all the benefit from this? I think a lot of people would love to work fewer hours, be more productive those hours, if they could retain the same salary.

I would love to, at least, but can't afford reduced pay.
Last time I checked this tool they didn't support multiple monitors. Is that fixed now?

Also big minus was menu bar icon, such tools don't need one.
Because the ACA is the largest transfer of wealth from the youth to the aged that has ever been attempted. It also is because the fines for not buying into the system are too low that participation by healthy people isn't sufficient to pay for the sick.

The process is designed to make people so irritated with insurance companies that they demand the government take over as payer when it is the government that created the mess in the first place, approved the rates, and then set up the impossible system of not forcing everyone paying.

I am all for a system that pays for checkups and catastrophic but lets be honest, if the system is wholly free so much money will be lost to worry warts it won't be funny. there needs to be a deductible but not so high that people who need something done don't
Computational Meta-Psychology 32c3
That's a bit scary. Some of older Java code relies a bit too much on substring not copying. I think most devs understood it pins the original String char[] buffer until all references are gone.
You keep saying "she". Where are you getting "she" from?
Zero terminated strings make a lot of sense when programming 8 bit microcontrollers:

1) No protection exists there.

2) Abstraction costs too much.

3) Store it in Flash.

4) Be happy your characters may even use the 8th bit.
I prefer using AddressSanitizer for finding bugs like these now. In addition to heap overflows it can also find stack and global overflows.

As a second option I'm using valgrind which can find uninitialized memory (and doesn't require recompile of all libs as MemorySanitizer does).
Thanks, the lexer implementation helps me a lot for my compiler design course :-)