skysight-inc/HackerNews huggingface dataset:
Yep, just caught that myself. Sorry, it was two large screenshots up and I missed it. :-) Thanks!
> If you're gonna spend many thousands of hours using a language, don't use initial learn-time as the one thing to optimize for!

That reminds me of this wonderful talk by Rich Hickey called Simple Made Easy, https://www.infoq.com/presentations/Simple-Made-Easy.
Pedagogically, the nice thing about the examples/tests just being code for beginners is that they are... just code!

Once we've taught students about function calls and values, it's a small jump to write an example with "is" in the middle. The syntax errors, static errors about unbound identifiers, and dynamic behavior all act the same as everywhere else in the program, so it's less friction to write the first test.

For getting off the ground writing that first test, I've been really happy with what Pyret lets us do. There is more involved in getting better testing/reporting options as systems scale up (we have lots of test-only files for the compiler), but pedagogically, the testing block infrastructure has worked well.
You get used to real s-expressions very quickly. People have a big hangup about it bit if you have an open mind it becomes a non-issue.
Or it could be that medication keeps people from hiding from their problems. I know people who have stopped going to therapy and thus, according to stats, are "cured", however, they still have all the problems they had before. Conversely, because you need to see a doctor regularly while on psychiatric medications, it makes it a lot harder for one to hide from their situation. Over prescribed meds are definitely an issue, but there is more at play than just that.

Edit:

One of the data points describes the amount of people taking antipsychotics. The article fails to tell how a lot of psych meds, like antipsychotics, have off-label used. For example, seroquel is a sleep medication in low doses. That would count as taking an antipsychotic even though the dosage is a tenth of that needed for an antipsychotic effect. This article fails to describe how psychiatric medications really are complicated.
If you're counting off seconds, you say the number of seconds that elapsed before your declaration:

"pause one, pause two, ..."

So when you get to 10, you have said 10 numbers and there have been ten pauses. The "you are only counting 9 seconds" thing would only make sense if the counting period starts when you say the first number, which is not how I usually do it...
> completely readable ...

That's very subjective and only in very simple cases. Like "markdown" version here, on HN.
I found line-drawing characters to be so inconsistent in fonts that I implemented them directly in my terminal emulator’s rendering code. For example, when I see a box-drawing symbol, I bypass the font completely and draw lines myself so that the result is guaranteed to align consistently with other cells and guaranteed to touch adjacent cells without any gaps from font layout engines. It’s amazing how much nicer it can be when you do this.

This font does remind me of a lot of other useful symbols though, beyond normal box-drawing sets.
Electronic Music with web visualizations
I just took a look, and found that I like this. Then I thought for a moment about why. The inspiration from ActiveRecord has something to do with it being "opinionated." However, there's more to it. I think I just realized that the best tools for increasing productivity are "opinionated" because they are developer "workflow-centric" as opposed to "code-centric." Code-centered tools are really good at creating blog-post sized examples, but can fall down when it comes to involved work. Developer workflow centered tools that arise from actual production work aren't quite as good at creating blog-post sized examples, but can be wonderful for getting things done.
.NET Core really needs to figure out how to become somewhat accessible. I (.NET <= 4.6 developer as my day job) recently tried to setup a new project after it hit 1.0 and I was extremely disappointed.

The first step was to create a new project, okay cool. `dotnet new MyProject` -- oh wait I want it to be a class library. Let's see `dotnet --help`, hmm I don't see an option (at least not when I tried). Oh `dotnet new MyProject -t lib`, of course!

Okay lets add xUnit and xUnit-runner. There is no simple command line utilty that I saw to add them, so I have to manually edit the project.json file (wait isn't this supposed to be csproj again?). Oh wait there are weird compatibility issues between all the .NET Core versions, I have to manually go look it up on the xUnit page (https://xunit.github.io/docs/getting-started-dotnet-core.htm...). Okay I have the correct version listed, let's run my first test.

Error... Oh the created class library is targeting netstandard15, which I thought was all I needed? I need to add netcore50. Some other unexplained error occurred and I gave up for the time being. Yea maybe I could have sat through it an persevered, but why should I? Why should it all be so complicated and require two different frameworks just to get a small class library and a test project going.

Was I using it wrong? Most likely, but oh well. It was frustrating enough for me to just not continue with it. .NET Core fatigue feels more real than JavaScript fatigue.
Scheme and Racket are both LISPs, with very different syntax. Hyphens in identifiers aren't a hazard, because binary operators don't go between two other identifiers, and operators must be separated with spaces, e.g. subtraction looks like `(- 2 1)` instead of `2 - 1`. This means that using hyphens in identifiers is quite safe.

But Pyret is using more traditional syntax, where binary operators go between their operands, e.g. `2 - 1`, which means using hyphens in identifiers is a hazard as the parent comment describes.
Prescription drugs save lives (or one's quality of life) all the time, and it sounds obvious but people forget or don't recognize that.

It doesn't always work because it's not an exact thing, two bodies can have different reactions to the same prescription. The same body can different reactions to the same prescription at different times. And some doctors make mistakes and some exercise poor judgment. But too many people latch onto the negative anecdotes and the narrative of us vs. the evil drug companies.

It's like with police. You can see them as fundamentally your enemy, or else fundamentally on your side but since they're just people like all of us, many are below average at their job and some outliers are incompetent or truly evil. The way you choose to see it says more about you than about law enforcement.
To me the most important contribution of Clojure is to not focus on OO or FP at all, but instead on data.

Data is a first class citizen of the language: data literal is part of its syntax, and it uses powerful persistent data structures behind that.

Programming with Clojure is what has made me realise that data is really what matters after all. None of that FP or OO discourse should deviate us from that reality check that computing is all about data-in/data-out. Pull the plug and/or battery of your computer and see what remains next time you power it up.

So yes, Clojure may not be revolutionary in itself, it does rely on the shoulders of giants. It is however setting a new standard in terms of being successful in bringing together a very well thought out set of features and philosophy to bring the focus of programming back towards the real complexity, instead of the accidental one created by how we think.
I think this is gonna change in time. Yes atm Microsoft is the leader of that industry and yes generally most of the larger companies and mid companies use Word/Excel/PP on a day to day basis.

Although I think the newer generations care a bit less about e.g Word etc and they are also more tech savy on doing hard things on google sheets etc, while the older generations might find it extremely hard to convert from Excel to google sheets etc.

Although another factor is laws etc and privacy policies. Google is much less flexible than office365 when it comes to who owns the data, although of course you have to pay for office365 while for google stuff usually you dont have to pay hence your companies docs might be owned by google and I don't see any sane human being wanting that.
If you represent base-b coefficients as such:
a = a[0] b^0 + a[1] b^1 + b[2] 2^2 + ... , then the exponent agrees with the coefficient, so that's nice...
What is a representative brain? Neuroscience meets population science [pdf]
This argument assumes a healthy biology. The body seeks equilibrium - that much is true and messing with it is generally not wise.

But that view is limited and assumes some linear or at least monotonic relationship of cause and effect. The bodies myriad biochemical pathways are anything but. As soon as one has non-linear relationships the door is open to latching up etc..

There are ways a person can either through genetic variations or through extreme experiences (chemical, psychological see also epi-genetics) not exhibit a "normal" bio-chemistry. In such cases targeted intervention can help to restore or long term maintain a state that is closer to "normal".
Can your Python template do this?
It actually used to do it automatically, but it got more complaints from people who were surprised that it did so than complements from people who were thankful that they could read things without squinting.
We need to 1) force owners of legacy /8s to give up on them, and 2) make sure all mobile ISPs worldwide and residential connections in developing countries have their customers behind a CGNAT

2) would also help a lot with the upcoming IoT security shitstorm
I absolutely would. I'd probably call them to get some documentation that I'd tried to rectify the situation, but if they still want to keep giving me a line of credit I'd be buying up assets like crazy.

You'd be a fool to turn down unlimited zero-interest credit.
My Experience as a Startup Guy Writing a Children’s Picture Book
Or we could just accept and implement the "pernicious three dots".

when you see `-1` in code it is often a failure of the expressiveness of 0-indexed lists. For example, the last item in an array:

arr[arr.length - 1]

Or a found item by index number:

if (arr.indexOf("thing") > -1) {

This is hardly an elegant convention.
That's like saying computers and laptops are so great -- we'll never need smart phones. Sure, classical devices / models are great and proven true, -- but that's still a limited view based on previous biases.

I know that's a terrible analogy, but proving GR kinda works doesn't really disprove the Ether, either.
I agree about the lack of community. There is also something about "artificiality" - it troubles me when walking around a city to know that all this was constructed by other people; and getting to grips with the 'documentation' for all this can be daunting.

Do you know of any other authors/philosophers who explore this idea more fully?
I wonder if this will be as sketchy as politifact? I hope it won't be, but I reckon it might be. (What I mean is: extremely uncharitable readings of things that they don't like, but overly charitable readings of anything that they like.)
Despite what the down voters think, I actually found this comment useful because I had the exact opposite reaction. I took a quick look at the examples, saw familiar syntax and features and quickly concluded it looks like a nice toy, but I'd probably never use it because there are way too many unknowns (Performance, runtime, buggy, etc. etc.).

I was actually a little flabbergasted when you said it looked like "odd text gibberish", but then I took another look at the the first example and saw it.

data BinTree:
| leaf
| node(value, left, right)
end

Unless I'm familiar with union types, what part of that code tells me this is a parameterized enum? Why should I assume we're even talking about data types?

I'm relatively flexible when it comes to syntax, but clearly syntax is a huge hurdle that almost always gets in the way of adoption. I understand Pyret isn't looking to be the next Python, but for an educational language I would argue it's not living up to Python's Principle of Least Surprise. It's great if you know Haskell, OCaml, Python and other languages, but it's not so great if you're an unsuspecting student who's sharpened your teeth on Java/Python.

I suspect most people could pick up the syntax pretty quickly, but I suspect most people still need some hand-holding on the first page. Most programmers still don't know what this short paragraph means:

Pyret allows for concise, expressive, recursive data declarations. Type annotations
are optional and can be added incrementally, to serve a variety of pedagogic
styles and curricular needs.
I assume this is an attempt at parody.
I like Ada's arbitrary array indices. If you want to loop through an array, you loop from Array'First to Array'Last.
I came here to make a Scientology joke but I can't think of anything funny.
Funny you should ask..I started this journey right here on HN. Still yet again haven't had time to get back into it but I will take your comment as a suggestion to try harder to find time for this. There is more information about this here (if you are interested in the answer to "why" it hasn't made it yet): https://github.com/dotnet/corefx/issues/10610
I was taking 60mg of adderall daily. It made me a monster. My doctor kept upping my dose so I could "feel it" and I got meaner and meaner toward my wife. Eventually she gave me an ultimatum: her and my daughter or the adderall.

The three weeks after stopping adderall were awful. Eventually I got productive but not nearly as productive as I had been at work. I was ashamed at how difficult it was for me to accomplish simple tasks, not because I couldn't do them but because I'd do literally anything but my job as often as possible.

After a few months and having a long heart to heart with my wife, we agreed to try adderall again but very differently. The main rule is that she's the ultimate decider if I can take it. I take 5mg twice a day and feel so much better. I'm productive without totally destroying my life.
What I Learned about My iPhone After Switching to the Google Pixel
They also seal the caseback with a screw tightened gasket, a mechanism similar to that used on common mason jars. Almost no other watch does that, instead using simple screw down tops. It was a necessary and clever design at the time (1960s) because Soviets weren't able to import machinery with sufficient tolerances to get good waterproofing using a threaded cap.
The idea is that the concepts of CS are universal, regardless of programming language. So instead of using a programming language that has been designed for real world use (carved with the footprints of a thousand language hackers, full of awkward inconsistencies, warts, and good-enough-for-nows), teach in a teaching language - a programming language that is very regular, with very simple semantics, not necessarily designed for speed.

However, this doesn't exclude it from being a Real Language. Scheme is both a very popular teaching language (perhaps the prototypical teaching language, being used in SICP), and has seen actual use, with a dedicated community around the various implementations of the language. For a teaching language, there are a lot of things built atop it. Like, say, this site (PG's Arc runs atop an old version of Racket, from back before Racket diverged quite so much from Scheme, and was still called Scheme).
Did you even read the second paragraph?
I am not expecting a performance but I do expect to be picked up where I dropped the pin, I expect the driver to follow traffic laws, I expect the driver to not make abrupt turns because of traffic. So yes most rides are not perfect, I don't know what city you use Uber in but the ones I do the drivers are far from skilled. Frankly, this is one reason why I feel safer in a taxi is the driver in my experience much more skilled at the job of driving.

The Uber driver who just moved to the city and doesn't know his way around without Google maps is going to have a difficult time in major metropolitans.
Thank you for the links.
GSuite is paid version. AFAIK, they removed the free version. If you have to pay for either of them, and the price difference isn't astronomical, I can see more people choosing office365 over gsuite.
How about a setting to block all link shares if this is supposedly such a huge threat?
serious question.
isn't the function* way of doing things outdated already?
I thought generators with function* and yield were replaced by

async/await?
Isn't OneDrive replacing SharePoint?
Hmm, I've never experienced that on any of my instances, apart from the Minecraft server that I run for my niece and her friends. It got overloaded once when a bunch of players signed on at the same time, and I just bumped up to the next highest slot. That was my fault, since I was cheaping out trying to run it at the $5 tier; Minecraft is a memory hog even if you tweak the settings. Anecdotal, of course.

I have had serious performance issues at Digital Ocean, which is one reason I moved away from them and to Vultr (the main reason being Vultr's support for uploading your own custom ISO; OpenBSD in the cloud is cool). One example of many: I ran a custom website on DO for a client for a couple of years, but it was constantly going down despite the logs showing no significant traffic spikes and no Apache or PHP errors. I moved it to a shared hosting plan with my reseller provider and it has been up 100% since, not counting planned downtime.

All of that said, if I ever start experiencing the issues you're describing, I'll move on in a heartbeat. I don't do anything mission critical on Vultr, it's mostly for testbed stuff and that Minecraft server, nothing I can't move to another provider with ease.
Facebook is going to use Snopes and other fact checkers to combat fake news
Yeah, the sheer amount of magic was definitely my largest complaint about webpack. It's nice to see that the process is becoming a bit more explicit.
What other similar things have you tried to organize? How many people got involved? What were the outcomes?
The cost of storage is the most interesting claim: 5 cents per kWh, amortized over the system life. If everything else about the article was identical but the cost was 40 cents per kWh then this would be just another chemistry experiment too expensive for widespread use. So I was really hoping to find more details about the cost number -- what modeling assumptions went into it, what sort of lifetime is warrantied from the manufacturer, whether the cost is genuinely based upon current prices or is one of those malleable "in a few years..." projections.

Everything that they have disclosed, technology-wise, looks believable and good. But past vanadium redox flow batteries have been fairly expensive per cycled kWh and I thought that was more about the relatively high price of vanadium than about the temperature/solubility limits of all-sulfate electrolytes. If the mixed-acid electrolyte really is the main enabler of the impressively low claimed cost, I'd like to read how. Mostly I'd like to read supporting evidence behind the "5 cents" number.
Counting things is what integers were specifically made for. Measurements (like time in seconds) should use a floating-point representation.
Land Lines: draw a line and find corresponding satellite imagery
Because without it being a legal tender it is just paper. Are you thinking it will at least be a standard looking paper with unique serial number? That is plausible, but then there is no one to check/enforce counterfeit notes which will flood the system.
Google has StatusOr<T> for this purpose: https://github.com/google/protobuf/blob/master/src/google/pr...
Its really hard to beat the price/performance of Linode. The closest match might be a dedicated machine from someplace like liquid, even then I wonder...

My only problems with Linode thus-far have been KVM related bugs. The older Xen type instances never had problems at all, at the second to largest size of Linode though I've run into a series of KVM bugs that cause the VM to lockup entirely or pause for seconds to minutes. Its frustrating, but they have been incredibly helpful in fixing the problems as they come up. I have a hard time everytime it happens of considering moving... and I always end up staying with them.
Please tell me this article is a hoax:
This guy studies Computing Science and writes :

"Javascript is written in Java and meant to script Java programs"

"Javascript only runs on the JVM, which is only available on web browsers. That is only one platform. LUA runs on any CPU that can run assembly code, since LUA was written in C which is portable assembly. It is more portable."

Just one comment : please study more.
Obama probably shouldn't have been elected twice... but the Republicans ran Romney. He was nearly as hard to get excited about as Hillary. Obama, on the other hand, was very good at inspiring people.

Did he deliver? Well, the economy didn't crater into a Great Depression, so kind of yes. But he left us with a not-really-recovered economy in 2012, so kind of no.

Look, I may be under-rating Trump's ability to genuinely inspire trust. He may be able to bamboozle enough people into buying more empty promises and lack of substance in 2020. I just don't think the "true believers" were enough of his voters this time for him to be able to pull it off.

[Edit: If, by some stroke of insanity, the Democrats run Hillary again in 2020, Trump may well win.]
An 80 Character Record in Blockchain
For readers, ODD == Oppositional Defiant Disorder.

Basically ADHD is just a symptom checklist, what causes it also causes a whole variety of other stuff not included in the same checklist for somewhat @political" reasons.

In particular ODD means being reflexively and exaggeratedly defiant and hostile to authority. Possibly because its associated with external demands that are inherently difficult to meet (because of the ADHD part) and so quite tortuous and frustrating.

What's remarkable is that the oppositional characteriststs associated wiith ADHD are significantly helped by stimulants. Which doesnt make any sense, if the oppositionality were some personality characteristic. It arises due to the very same cognative impairments.
> I don't care what gets thrown, because it's in the end going to be an std::exception (this is the part that Java messed up)

I don't understand: std::exception is entirely optional (and I, for example, never use it: I always build my own exception hierarchy; but, even though I write my native code almost exclusively in C++, I believe it is absolutely incorrect to expose a C++ API from a library, so you'd never know or care) while in Java you absolutely have to implement Throwable and Exception is actually designed well enough that most people (not me, of course ;P) generally use it... I mean, in C++ you literally can just throw a "const char *" and catch that.
Indeed. One has to wonder, then, about the controversial nature of Python breaking backwards compatibility for the sake of improvement. People are down on "Python 2.8" for changing the name, but the fact that there is no standard set-in-stone led to these problems to begin with. People want a reliable standard, so are the authors at fault for breaking that implied standard and carrying the name with them? Should they have changed the name to PythonU? Or do we always defer to the author's right to change both the VM and the implied standard at will? It's a human-party-pleasing problem because the changes obviously hurt some people (those having to rewrite libraries, which may be easy or very hard and time consuming) for the sake of helping others (who would have time-bomb buggy programs in 2). shrug
> I shouldn’t have to worry that entire programs may crash because of mistakes from exceptions.

Uh huh. And how do you feel about sefaults?