skysight-inc/HackerNews huggingface dataset:
If you feel like messing around with Haskell again for an afternoon then install VSCode with ghcide (and a syntax highlighting plugin ofc). You might get surprised ;)
> Strong typing means you'll spend your time waiting for the compiler to finish

You can see this is false by running ghc in type-check-only mode ("-fno-code"). Type checking is less than 10% of compile time. If Haskell takes a long time to compile it has nothing to do with types.

(and you mean "static typing")
You're probably too late, the ordering date to get a model 3 for this year has (almost) passed. They're saying that the order has to be confirmed before today 22:00 (oct 6), otherwise Tesla cannot guarantee the 2019 delivery date.

https://www.mistergreen.nl/tesla-model-3-lease
Haskell's type system works best for me in allowing fearless changes, even significant ones to the core of a code base. The compiler won't let me overlook something.

A comprehensive test suite would achieve the same thing, but I'm rarely confident that my test suites are truly comprehensive.
Building a Photo-Based Personalized Recommendations Application
> But to understand Lens? Very few people actually understand Lens.

That's a lie. The basics of optics can be taught to even new Haskell programmers in an hour or so. Don't start in the deep end with generic optics with scary signatures like (Profunctor p, Functor f) => p a (f b) -> p s (f t). Start with something concrete like (String -> IO String) -> (User -> IO User) and then introduce the type variables one at a time. I've taught the basics of lenses, traversais, folds and other useful optics many times.
If you are into books, I recommend http://haskellbook.com/

After reading it, the language just clicked with me, although it is for complete beginners, it is a great read nonetheless.

Doing practical stuff like webdev, apps etc is a bit trickier, partly because Haskell is not the first language of choice for these kinds of projects, and thus lacks much needed documentation for starting up and best practices in those spheres.
Multi-messenger astrophysics
It's cute to talk about banning cars from Manhattan, but the Second Ave. line only has three stations uptown. And like parent said, ongoing maintenance. How's the L doing, these days?
Check out mysterium network or sentinel - better solutions that are actually implemented.

Brave was a neat idea, but I just never saw the execution piece come in. It's a glorified fork of Chrome as far as I understand.
Blog post that explains Functors, Applicatives, And Monads in pictures http://adit.io/posts/2013-04-17-functors,_applicatives,_and_...
You don’t need to understand the internals of a thing, until you do. Everything works fine as described in documentation until it doesn't for your use case. You might be lucky and find help from stackoverflow, otherwise you need someone who really grok it.
Really interesting site. Took me a while to get although I read the title!

Basically you choose your city and when you like the weather there best. Then when you select the time when you want to travel, it suggests places which match the same weather!

I also like the single button sliders to choose a reasonable range of values for the weather and dates. Haven't seen this UX before!
> In theory there's no difference between folding left and folding right

There's no difference in practice either for a sufficiently small dataset.

> in practice there is a right way and a wrong way

Sure, but that's true of all technologies.

Yes, Haskell can't help you escape the limitations of our world — or indeed our hardware — but it doesn't pretend to either.
The existing plants are getting older, we still don't have any permanent storage nor is any in sight. Finally, it was already agreed in the early 2000s, that Germany should phase out nuclear energy and an end date was set for the mid-20ies. The Fukushima disaster only accellerated the plans for phasing out nuclear.

The energy is supposed to come from reneweable sources. Just from 2018 to 2019 their contribution to the grid jumped from 40 to over 45% due to coal becoming less attractive. There are no plants to net import energy into Germany. Up today we have been net exporters of electric energy. Of course, going forward the European grid will play a larger role, as it is a great way of balancing local fluctuations in wind and sun.
Haskell is no doubt an interesting language. I have yet to work on a project where it was the obvious choice but I’ve played around with it enough to like it.

What I don’t like are some (not all) of the people who use Haskell and talk about it online. They can be incredibly obnoxious. Haskell is not a tool they work with, it’s their entrance to a class of software engineers that you’re not capable of being part of.

Just for the record: Anyone can learn Haskell. If you’re struggling with it that’s because of a tooling / literature issue. Haskell people (even the nice ones) are bad at explaining the language. The tooling isn’t very friendly and the language is a shit sandwich to debug.

The concepts therein are no more difficult to grasp than any other in programming. Is a Monad a box or a burrito? Please stop. It’s a language feature that allows you to do certain things more concisely than the alternative. Stop pretending it’s magic and show people how to use it and why they should. Stop drawing pictures.

No, algebraic data types are not hard to understand. You just make a big deal out of them because you think the word algebraic sounds cool.

I could keep going but I think I’ve made my point.

Dear Haskell people: Get over yourselves. Do not mistake the larger software community’s disinterest in your pet language for their inability to use it. That’s simply not the case. If people had to use it even ‘lowly js devs’ would master it.

Everyone else: If you haven’t used it already it is a very cool language and worth learning even if just for personal edification. Don’t let the self appointed high priests turn you off. Don’t expect their help either.
And that's having a parking garage at all. Electrified street parking is nigh on non-existent.
Hosting a bridge from home is safe. They're not in the global relay list so nobody knows which IP to block. Middle relays should be safe to host from home but unfortunately some overzealous 3rd party lists of "evil IPs" include them.
Sure there is, the ones with commit rights to validate pull requests.
GHC is fairly slow for a compiler, and Haskell has no separation of interface and implementation, so small changes can have big consequences.

Template Haskell is the worst for it, but I did have a code generator produce code that took about 25G of memory to compile recently, which was very, very slow on a 16Gb machine ;)
your just stating claims without any evidence.
The same thing they do in Europe, where cars are banned from almost every city center. We manage just fine.
Not everyone has a fit and healthy pair of legs
I can't try out your suggestion right now because I've basically quit this ecosystem. But I would be careful about making any generalizations if the user can do significant computations at compile time.

> (and you mean "static typing")

Let's not split hairs. And I think "strong" is actually what I want to say (maybe better: "advanced" or "complex"). C also has "static typing" and I explicitly don't mean a simple type system like that.
Thats the most selfish idea ever. As a single you can live in on manhattan without any cars sure, but got a family, need to do summer camps in jersey but live in brooklyn.

It would make life so much more difficult, and for what? Some wellmeaning but regressive environmentalists who dont need a car. In copenhagen its a disaster imo, and thats a small city.

Big cities are big for a reason, a lot of activity. If you want less car exhaust there are many amazing areas less than 30 minutes from manhattan.

This honestly sounds like political overreaching. We dont need it, especially when there is no actual alternative.
Sorry you've experienced this obnoxious behaviour. I've been in the community for years and never seen it. Maybe I'm not hanging out in the same places as you or I have some sort of unconscious bias that means I don't notice it.

Could you link me to an example? I have some measure of authority in the community and would like to help decrease the amount of obnoxiousness but I can't unless I know where it happens.

> Dear Haskell people: Get over yourselves. Do not mistake the larger software community’s disinterest in your pet language for their inability to use it. That’s simply not the case. If people had to use it even ‘lowly js devs’ would master it.

This is really interesting because the Haskell community I hang out with (mostly on Reddit) would love it if "lowly js devs" would master it. In fact we all too often get told by non-Haskellers that "Haskell will never succeed because it's too hard for most programmers to learn"!
Automation also often means that useful jobs get turned into bullshit jobs, that stay there e.g. for political reasons, sometimes leading even to decreased efficiency.
Security should indeed come before anything else.

If you're system gets p0wned there is hardly any audio to play.

macOS, iOS and Windows security improvements, while being the musicians choice for real time audio, show it is possible to put security first, while offering a good audio stack.
Diggning a hole is: tons of paperwork, why are you doing, risks, licences for every machine you are going to use, studie that probes that you aren't going to damage any underground tube, cable or even if you are going to affect to the natural water-flow. Then you also need to explain how you are going to close the hole...
I'd like to help you with your comment being grayed out, but excitingly, since a few weeks HN doesn't let me upvote comments anymore -- the vote button disappears and the unvote link appears, but the color doesn't budge, neither does the commenter karma. I can upvote stories just fine, but not comments. So, yeah.
Liverpool Football Club fails to trademark the name of its home city
But that is true for many other languages of the similar caliber, like Rust and C++ are also extremely complicated!
France isn't much different, except that most contamination might hit Germany with the prevailing western winds :p. The only real difference is, that France went very strongly into nuclear energy and have some more modern reactors as they continued to build nuclear power plants a bit longer than Germany. But they are facing the same fundamental problems, their plants are aging and some have to be switched off as they just get too old and a maintenance nightmare.

As France is no longer building many reacteors - I think they have one in construction, quite over budget - they will face the same decisions as Germany did.
Even consumer grade laser are regulated, they have legal limit in the power they can have. What you are going to use... It's completely regulated.
I never really understood how insane it can get until my current job. We literally have a system diagram with like 30-40 different components (proxies, lambdas, pretty much all aws services), for a system that would work just as well with 3 (front/back/database).

At this point it’s become a kind of joke for me because anything else would be too depressing.
Saccharomyces boulardii (“Brewer’s/baker’s yeast”) seems to be one such strain.

It is commonly taken therapeutically to keep other fungi and bacteria under control.

https://en.wikipedia.org/wiki/Saccharomyces_boulardii
Manhattan is different in that it connects New Jersey and Brooklyn into a super region, they are dependent on each other to thrive. Banning cars would be an absurd nightmare at least in this situation.
This has not been my experience of using technology effectively. Without an understanding of the implementation details, you inevitably use something inefficiently or for not quite the right purpose.

I cannot imagine anyone using a database effectively on any significant amount of data without understanding indexes, how different joins work, why join order is important, what effect join orders have on performance, etc. Get to a certain scale and it's not enough to know about indexes; you need to understand the structure of b-trees, disk I/O performance, how CPU cache performance affects b-tree navigation even when index is cached in memory, how to use compound indexes effectively to reduce random access through the index, etc.

The constraints of CPU and memory never go away, and if you're trying to scale something, you're going to be limited on either or both of those resources. That in turn forces you to understand execution and memory behaviour of the abstractions you're working with. All abstractions leak when pushed.
Self implantation of hardware would mean the exercise of medicine without licence for it even if it's in yourself.
For all the downvoters: powered by the average German grid, a Tesla emits about 75g CO2/100km. Please show me any combustion engined vehicle that comes even close to those numbers. Of course the "emissions" of the electric cars can only get better from there.
To run with your analogy — which I don't find particularly constructive anyway — people who are just starting to drive don't start by competing on the race track.
Similar tip: don't start a command from `rm -rf ...`, type `rm /foo/bar/` first only when finished append ` -rf` at the end.

Similarly `git push ... -f` etc.
man man
To give you a counter example: when i write code in an imperative language i always first write the logic out as fold/map/filter and then translate that into an imperative loop.
why do you think gas plants will be turned off, especially given the low gas prices?
Crypto May Be the Future of Humanitarian Aid
Why I'm going to therapy [video]
In a functional world persistence (e.g memory) cannot be a thing.

The case is convincing, but it requires you to reject your own, human, faculties.

Makes the use/expression of language rather awkward when you can't remember any words.
> There's no difference in practice either for a sufficiently small dataset.

As a non-Haskell user, just for reference what's "sufficiently small"?
In my country there are many restrictions even to do a barbecue in the summer because you could cause a forest fire. That and also you can't do fire in a city because urban fires are even worse that forest ones.

And about gathering wood in the forest, if you aren't the owner of the forest that is stealing.
Even in Python I find the vaguely more functional style of list comprehensions easier to read than explicit loops. I've taught enough classes to know that many students who've had only a CS-101 type class do prefer explicit for loops that accumulate a result rather than list comprehensions, though. Seems like any statements about clarity (in either direction) have to include a fairly big caveat about who the audience is.
But would you be more OK sharing your AlgoVPN exit? With the same sort of blacklist/whitelisr approach?
> That translation is wrong. It’s almost the opposite.

It's exactly the same thing, isn't it? You just negate the predicate you want to show everywhere.
> it does NOT work in said presentation.

You mean like the Vorführeffekt when you're trying to show the bug and then it isn't there? :)
well, it'd be more like

(fold op . map f . filter p . zip) l1 l2

Which I think is very understandable as long as you're familiar with what all of them do. Which you become, very quickly.
I really like the concise, well explained university course Brent Yorgey put together several years ago [1]. It also works well as a book club at work.

https://www.seas.upenn.edu/~cis194/fall16/
Why would a diesel generator put them on equal levels? Even if you assume that an electric engine has 100% efficiency, you lose energy because

* per amount of energy, batteries are heavier than gasoline tanks so accelerating needs more energy

* charging batteries is not 100% efficient

Is that all balanced by the generator operating at optimal conditions?
The Velove Armadillo is a containerised last mile delivery cargo bicycle especially appropriate for dense city centers.

Its use is being expanded in Germany and the Netherlands, by DHL, the big German carrier.

https://www.velove.se/news/dhl-express-taking-the-next-step-...
It's good at explaining those easy parts, though. It also encourages experimentation in the REPL. For a more complete understanding, I agree that it must be accompanied by some more reference-style material.
Excatly. German speaker here, parent is correct. I looked for a description in English, I found this exchange on reddit which IMO describes it exactly:

"What never works exactly as it's supposed to?" "Opening YouTube videos on a PowerPoint" "It works fine until the actual presentation"

But it can also refer to a bug that usually happens not happening when you try to show the bug to someone else. E.g. having no TV reception for some reason and getting someone to look at it, but when they show up, the reception is perfect.
In Spain is almost the same, you are dealing with personal data, if you automate that you have to notify people of that and they can request you to delete the data.
If you above avg intelligence, you don't need to train it to keep. Therefore it makes it easy for you to transition from homeschooling to school.
I love this one: https://atypeofprogramming.com/
Perhaps Tor should become an integral part of the TCP/IP stack. That way, exit nodes would simply be the destination nodes for every connection. (?)
Also bringing the necessary capacity for proper charging to the average underground parking of a building costs tens of thousands of Euros per parking spot (numbers I got from the electricity distribution company). That's an investment most people are simply not willing to make especially when renting.

What would be the reason for people to oppose developing the grid, especially as NIMBY? Other than the obvious cost issue, is it the disruption caused by works?
Followup on this;
Is there an interactive online tutorial like codeacademy for Haskell?
Why are cars killing more pedestrians?
Probably. Given that AWS/GCP can't trace back to me then maybe. But at the same time I'm afraid government surveillance is government surveillance and petty tactics around hiding your identity to AWS/GCP won't cut it.
> I cannot imagine anyone using a database effectively on any significant amount of data without understanding…

You'd be surprised just what proportion of systems running in the market operate on amounts of data you would not deem "significant".

And as I said in another comment, Haskell doesn't try to pretend that computations run with no hardware constraints.

> All abstractions leak when pushed

Yeah. But we might have wildly different ideas for where that boundary is.
That's just normal Vorführeffektsgewöhnungsgelassenheit, i.e. you being chill about it because you're already used to the Vorführeffekt.
I wonder whether it is worth spending as much as this would cost, but I don’t expect that to be answered in a “Conceptual Design Report. Design time is not where you justify why you’re building what you’re building; you only describe how you’re planning to do it.

Presumably (I haven’t looked hard for them) there are earlier report(s) that argue why we would want to look at 100 TeV.

Edit: https://fcc-cdr.web.cern.ch/ has some more high-level info, such as ‘FCC Physics Opportunities’ (https://fcc-cdr.web.cern.ch/#FCCPO), which refers the “European Strategy for Particle Physics” (https://europeanstrategyupdate.web.cern.ch/) which, presumably answers the ‘why’
It's essential if you are pulling any significant amount of data, e.g. shapes for dividing a country into administrative districts will be a couple MB uncompressed pulling from a PostGIS database.
Japan's methods of promoting exports has taken two paths. The first was to develop world-class industries that can initially substitute for imports and then compete in international markets. The second was to provide incentives for firms to export.

The 1970s and 1980s saw the emergence of policies to restrain exports in certain industries. The great success of some Japanese export industries created a backlash in other countries, either because of their success per se or because of allegations of unfair competitive practices. Under General Agreement on Tariffs and Trade (GATT) guidelines, nations have been reluctant to raise tariffs or impose import quotas. Quotas violate the guidelines, and raising tariffs goes against the general trend among industrial nations. Instead, they have resorted to convincing the exporting country to "voluntarily" restrain exports of the offending product. In the 1980s, Japan was quite willing to carry out such export restraints. Among Japan's exports to the United States, steel, color television sets, and automobiles all were subject to such restraints at various times.

https://en.wikipedia.org/wiki/Trade_policy_of_Japan
> I cannot imagine anyone using a database effectively on any significant amount of data without understanding indexes, how different joins work, why join order is important, what effect join orders have on performance, etc.

But conversely you probably didn't have to understand what filesystem the database runs on, whether it is in a RAID array, whether the network connection was over Ethernet or T1, etc.

All abstractions leak. The question is how leaky they are. In my experience Haskell abstractions are much less leaky than most.
Sry what?

You should not even have such a strong opinion on this topic as long as it doesn't affect you.

If I like to drink alcohol without hurting others or smoke weed or do amphetamines, who gives you the right to judge this?
> The universe would never consider running 2020 before 2019 and a CPU will never execute later instructions before earlier instructions.

Except thanks to a compile-time optimization.
That's not the case when it comes to certain types of clothing. For instance, I'm thinking of Oxford cloth button down shirts (OCBDs). Mercer makes high quality, heavy weight shirtings and as a result of the cloth and stitching the shirts last a long time and look great: http://www.mercerandsons.com/
A big problem is that you don't really choose a car based on whether it has touchscreen or not. And then there's the aspect of "distracted by the shiny" which has to be tempered by having experience with touchscreens
This isn't an actual argument against severely limiting cars. Most of the people traveling the super-region already use the subway or buses. That will become easier and more efficient without private cars.
In terms of mental concepts I will maybe give you Rust - lifetimes, and the borrow checker take some getting used to. But C++ doesn't really have any complicated concepts. Sure it has a lot of features, and some of them have complicated edges (ADL, template metaprogramming, etc.), but most application code rarely uses those things.
What are the potential use cases?
That is an UMD bundle. What is more disappointing is that Chartjs itself seems to be written in ES5.
Haskell was used in the first programming class at university and that was excellent. Some people that already know how to program had to throw their preconceptions out the window. So everyone was either a novice at programming entirely or at least a novice at functional programming. It wasn’t problem at all. I’d argue most students wrote better code in that class than they did in the imperative/OO classes that followed. Especially the students that weren’t (and likely never did become) programmers.

The thing about imperative and OO programming is that it’s hard to do well. I honestly havent seen more than 1/10 developers write ”good” OO code even after 10 or 15 years as professionals. Large scale OO is a cognitive load that requires extreme focus, skill and talent. I prefer functional (or OO using an extreme functional discipline like all immutable types etc) because I don’t have that talent, focus and skill.

My point isn’t that Haskell should be the language of choice. I think it’s a great language but I think e.g laziness makes it too hard to reason about performance and behavior. Today I’d recommend F# I think.