skysight-inc/HackerNews huggingface dataset:
> We replaced 1,000 lines of YAML with 10 structs ...

I looked, but target URL didn't spell it out, and I lack sufficient domain knowledge to dive into the repo to find it -- but I'm curious as to how big, and indeed how complex, those 10 structs are.

It seems disingenuous to swap units mid-sentence when comparing size or complexity.

My gut feel is the set of people who could understand thoughtfully designed YAML should be larger than the set of people who could understand thoughtfully designed structs (+ wrappers?).
Here's a non-nonsensically opaque mail I recently got. Blocking early-adopters and developers won't go well. Infuriating.

Hello,

Thank you for your interest in Coinbase. Our primary goal is to make digital currency safe and secure for our customers. Coinbase is a regulated Money Services Business under FinCEN (FinCEN.gov), and as part of achieving this goal, we are legally obligated to implement regulatory compliance mechanisms.

Upon careful review, we believe your account has engaged in prohibited use in violation of our Terms of Service and we regret to inform you that we can no longer provide you with access to our service. We respectfully request that you follow the on-screen instructions presented when you log into your Coinbase account to send any remaining balance offsite to an external address.

Should you have any questions or need assistance, please let us know and we'll be happy to help.

Respectfully,

Coinbase Customer Support

And the follow up:

Hello,

Thank you very much for your phone call about your account restriction.

There are a variety of factors which have been weighed in your case, and we unfortunately are unable to elaborate on our internal decision process. Please know that we do not make these decisions lightly, and do regret losing you as a customer.

We wish you all the best in your future endeavors. If you have any additional questions, please reach out to us by directly replying to this thread.

Regards,

The Coinbase Team
I haven’t seen a good explanation of the arguments against this kind of thing. Who doesn’t want to fix the UB weirdness? Are there really many people worried it will completely break optimization? If so I’d love to hear about it.

Even if you don’t agree with this proposal, or with Regehr’s, surely a reasonable response would be “okay, yeah, it would be good to do something along those lines, but not that; how about this?”
> By bringing up UFW which is an iptables wrapper, you're not looking for a pf alternative so much as a pf wrapper. But it was the complexity of iptables that drove development of wrappers like UFW in the first place - pf doesn't really have the same level of need that iptables did.

I fully understand that Pf is equivalent to iptables, and is a lower level abstraction than UFW. But the question stands; Is there a simple foolproof utility for blocking ports on BSD with a single command? I just don't feel like whitelisting port 80 should require authoring a config file.
He said "we shouldn't automate what we shouldn't automate", not "we shouldn't automate anything."
wow.checkout this cool forum http://mawazo.tk
Gigafactories (second one coming soon) are a joint effort with Panasonic and Tesla enjoys the economies of scale from them. They just recently started delivering their solar tiles. Solar -> batteries -> chargers -> cars. This level of integration makes them potentially 10 times more valuable than other car companies.
> simple
YAML is much, much more complicated than JSON.

Quoting a single word from the parent’s sentence is misleading. The sentence "YAML can be employed as a simple JSON-like language with comments." is true because JSON is YAML, so you can parse a JSON file with #-comments using a YAML parser.
DigitalOcean announces new CEO
Show HN: Offline First Todo App Made with PouchDB and ServiceWorkers
Aren't both pfSense and FreeNAS running their php-backed webinterfaces as root?
>and also a top-tier surgeon.

The only people who can differentiate between 1)surgeons who are expert in the O.R. whose patients do well in the long run and 2)those whose reputations exceed their abilities and results are anesthesiologists. Trust me, I was one for 38 years, at UCLA, the University of Virginia, and in private hospitals. I will never forget the time a world-renowned cardiac surgeon at UCLA at the height of his career — holder of an endowed distinguished chair, first author of the then most widely acclaimed textbook in the field, whose surgical skills were so sub-par he was only allowed to operate with a senior cardiac surgeon as his "first assistant" — was repairing a child's AV septal defect by sewing on a patch (on full cardiopulmonary bypass) only to be interrupted by his "first assistant" who quietly told him, "You've got the patch on backwards." I was standing literally two feet from the two of them, behind the drape.
> It worries me that almost no one seems to be thinking about the range of possibilities that might lie at the end of this outsource & optimize for GDP/efficiency/profit, rinse and repeat ad infinitum approach

good point. and even when they do think about lost jobs the best solutions they come up with are feeble.

too often it's poorly funded government worker training wherein middle-aged washing machine plant workers who live in upstate Michigan are supposed to learn to code (or something equally likely to fail for the majority of retrained workers.)

another dubious aspect of this policy is that government officials are somehow supposed to both accurately predict the industries where the economic growth will be and what sort of training these industries will actually require from job hunters. that's really really hard. wall street investment firms are constantly trying to that sort of thing, and it's very difficult to get right.

this is where the globalization story unravels. the replacement careers don't materialize for the displaced workers. so the defense of the policy becomes a loud repetition of "it's great for consumers!"

but, somehow, it's "absurd and irrational" to ask if Walmart/Target/Amazon's massive quantities of cheap imported throw-away garbage (aka "consumer goods") are actually useful at all.
I would give Oe's Silent Cry a read. I think he mostly stopped writing(?) after his Nobel.

and if you're interested in a japanese Gogol-like author, Kobo Abe is generally alot of fun

Another huge standard in Japanese translated into english in Yukio Mishima. sea of fertility tetralogy is worth reading. like most readers I have kind of mixed and weird impression of the author himself.

Kauzo Ishiguro is really accessible to the western reader, maybe too much so if you're looking for the alien aspect, but I do like his work alot
Because it's an emotional rant that was shipped in <15mins. It's not designed to please. It's designed (inc UX of a code editor) to be an over the top 'too close to reality' realistic experience for any engineer in the devops arena.

PS: I accept PRs to make it work better on mobile including accessibility. Send PRs.
The first Murakami I read was Kafka on the Shore, and it's still my favourite.

As far as other authors, Revenge, by Yoko Ogawa is in my all-time top ten.
> why is it `nobody.wants.to.read` but `no.body.wants.to.write`?

Made me think there's also a big difference in what nobody prefers reading vs. what nobody prefers writing.
On the international stage, de Gaulle had a strong drive to have France stand on its own, following the humiliation of the capitulation during WW2. As a result, he pushed for some policies whose impact we still feel today:

- During Bretton Woods, he directed his delegates to maximize the allowance France had to buy back gold with American dollars, and use it to its full extent. This eventually led to Nixon abolishing the Gold Standard, turning the dollar a fiat currency. [1] To this day, France is the 4th largest hoarder of gold.

- He pushed for nuclear development, founding the CEA (Nuclear Energy Commission) in 1945, and pushing for an independent nuclear deterrent against the USSR. Today, nuclear power provides 40% of France's electricity needs.

[1] https://en.wikipedia.org/wiki/Nixon_shock
What I have is a Lenovo T480s, running GNU/Linux.

I don't do anything fancy, some web dev, and some other dev that I do for hobby (nothing like running a game engine heavy).

It's got the following specs:

- 14 inches, 1440P with IPS panel

- Intel iGPU

- GREAT keyboard and no numpad

- webcam in the right position (which I rarely use)

- no OS X (although you /could/ probably run Hackintosh which I wouldn't recommend)

- I would like it to be powerful enough for 5 years

- Great cooling system in my opinion (< 60 deg C under decent load)

If OS X is a must, you should probably get a native MBP.
Over the past few months, I've built up a somewhat masochistic relationship with YAML, as I've been writing my own JS library for it [1]. Yes, the spec is more complicated than it ought to be and yes, writing yet another implementation might just mean more overall variance within the spec, but it's still the only config language with decent usage that supports human-readable multi-line strings and comments. And it would've been really nice if someone else had supported editing comments, so I wouldn't have needed to do that myself.

Still, I'm optimistic, especially now that Prettier is getting YAML support. [2]

[1] https://eemeli.org/yaml/

[2] https://github.com/prettier/prettier/pull/4563
I did say not everyone buys it! :)

More seriously, the earlier comment complained that the indentation for the non-significant-whitespace examples was artificial. I’m saying it’s not artificial because in practice you would indent it.
Where in the US do we have a problem with random people hanging out in schools undetected? Pretty sure that human face detection would spot that pretty quickly.
Super cool bot that enforces title and label guidelines on all your PRs. Seems super useful for us OSS maintainers. Looking forward to trying out the WIP feature.

Seems to me that the critical features are auto-linting and enforcing test guidelines on PRs. Would it be possible to include these for the next release? I'd be super excited to use it then.
By that logic, McDonald's burgers are so magic, Jobs would have dropped his reality distortion field and ran home crying. And Osteria Franciscana must be selling complete crap because they will never achieve sales not only of McD but even of White Castle!
REPORT:It’s So Easy to Buy Expert Ratings on ICObench
> > you’re going to be indenting anyway, so why bother with the brackets?

> Because brackets are explicit. Whitespace is implicit and difficult to distinguish without editor support.

I'm with parent on this one. Most people who complain about python's reliance on indentation still indent their code, and rely on the visual & editor hints (ie. they're profoundly confused when they muck up their indentation, but their brackets are still correct).

But I digress.

Whitespace is explicit in some (markup) languages, and there's nothing *plicitly wrong with that. If you're trying to do any kind of editing of a (markup) language that relies on sensible indentation with an editor that doesn't understand whitespace then you've probably got bigger problems.
The links are:

https://tinyurl.com/lessons-in-over-engineering and https://twitter.com/ellism/status/1008728148131733504

I accept accessibility PRs. Mash the octocat.
It's true that you need to remove cycles before you can create a tree, but acyclic graphs are still graphs (and most relevantly they're probably the kind of graph you want your config to be). And YAML actually can contain cycles, so even if you only want to consider cyclic graphs, YAML still qualifies.
> What exactly is that scenario? Shipping an app with a built-in web server?

I've had this need a couple times. My scenario: web-based application that needs to use some usb-gadget (NFC reader for example).

You cannot access the device directly because there's no (standard) Browser <> NFC Reader API implemented in the browsers. You need native code to access that device.
Yet your entire application is web-based, and it would be fine if only you could interface with that pesky gadget.

In the past, people used NPAPI plugins for that, but those days are gone (browser plugins are much more sandboxed now, so they just don't have those capabilities anymore).

Solution? You ship a companion small native app. That native app is supposed to interface your web application with the usb device. How do you achieve that? Simple, the native app exposes an http/websocket-based API at "localhost:someport" on the one side, and talks to the device using native drivers on the other.

If you don't use https in your web-app, that is it. Your web-app can now communicate with your native app (by making requests to "localhost:someport"), and through your native app communicate with the device. Problem solved... right?

Wrong, because your web application should be using https. For security reasons, the browser will _not_ allow connections from an https-page to a non-https (or secured web sockets) server. Thus, your native app's exposed API must use https/wss too. And here is where the article's ordeal begins.

> And could you not solve it with certificate pinning?

Pinning a certificate is not secure because using the same certificate in all installations is not secure: notice that your native app must have the certificate and the corresponding private key (because it must serve requests under that "localhost:port"). At this point, any of your users could just grab that cert/key pair (from their local installation) and use it to man-in-the-middle your other clients (the cert is valid for them too!).

The problem is exactly the same if you obtain a publicly-recognized certificate and distributed it with your native app.

The secure solution is, as the article says, to generate a certificate _specific for this user_ during the installation of your native app, and adding that certificate to the user's certificate store. This way the certificate is only valid for that user. Your native app can use this user-specific certificate to serve https/wss requests, and the user's browser will connect to that without warnings because the certificate is trusted. However, if user A extracts the certificate and key from her installation and tries to use them to main-in-the-middle another user B, it won't work because the certificate B trusts is his own installation-time-generated-one, not A's certificate which is different.
The page is GDPRed. Cached copy: https://webcache.googleusercontent.com/search?q=cache:JDyVEp...
Honestly if things keep trending this way, I would. Assuming I have a choice which it seems I don’t. Luckily as the other commentator pointed out it is not an either or decision.
As a group, women tend to get a high percentage of their support through personal connections -- family, marriage -- based on a value of "caring" for them. If men don't prove themselves, they are much more likely to be kicked to the curb.

A very high percentage of street people are male. Women who are homeless are much more likely to crash with family or couch surf.

There are complex factors involved in both cases. Male homelessness is also, to some extent, an expression of agency that women often lack and the care that helps put limits on the bottom for women is also a contributing factor to the glass ceiling above.

But it is essentially accurate that the world cares less about men and pressures them to prove themselves or GTFO. (So some GTFO permanently by commiting suicide.)
> I started using Rails probably at 1.0

> I've been doing web development since 1994

> some CGI programs in C, CGI.pm (Perl), Struts (Java) and occasional PHP

I said junior developer, didn't I? :) and also mentioned that this was my first ("permanent") job (after college)?

Getting to know what's in a web framework, is exactly the learning curve I'm talking about. People complain about magic in Rails. I just wrote an ERB view "index.html.erb" and declared an empty method "index" in my controller. Add in a route definition, and now somehow they are all connected.

What is actually happening? Why does that even work?

If you've never used any web framework before, that's inscrutable magic. If you know what a correctly designed controller method looks like (it should maybe fetch some values, then render a view... and probably nothing else) then it's obvious. Getting over that hurdle is ... definitely not the kind of shit my first boss hired me to do. I'll say again, most of my assignments for the first year had nothing to do with "on a web page."
You were right, I was.
Yes, which is a pointless tautology.
> We would laugh if it was "Zuckerberg says..."

I mean ... I laughed. Didn't you laugh?

> I often hear how Hackernews is such a bastion of objectivity and critical thinking.

That gave me another good chuckle.
>I'm sorry, but saying that as long as your process isn't broken (whatever this means) and your system isn't poorly designed then Rails is maintainable seems to be a pretty weak argument

If you've got a dysfunctional team and poor design, the language/framework choice isn't gonna help you. There isn't a framework in the world that will save you from tight coupling, lack of styleguide, business logic scattered all over the place, poor test suites, or monoliths made by bootcamp graduates.
The closest analogy in technology would be the Internet, IMO.

A CPU or a single computer is still a fairly homogeneous, consistent creation. Sure, it has a lot of transistors, but it's just the same pattern over and over.

Think about the Internet: many of the billions of things on the internet are similar enough to be called the same, but many of them are ... a little not. This computer is Intel, this is AMD. This one runs Microsoft, this one Ubuntu. This one Ubuntu 15.07 with a 5.3.2.2 Linux kernel, that one with a 5.3.7.1 kernel. This part uses IPv4, that IPv6. This HTML on this site is a little nonstandard, that one relies on an expired SSL certificate.

The body, and modifying it, is a lot like the Internet. You set up 1.1.1.1 as a DNS server and accidentally partition the Internet.
Attention: TRON-Mainnet-Migration is coming up – TRX price reacts
This discussion seems to be largely about configuration files. Those usually are written and maintained by hand.
Fuck, this sounds like something I had in an office day dream.

So it is that easy...
Or you know, start by simplifying the rules to be closer to what is actually necessary. Things like food and greasy pizza boxen that contaminate other co-mingled stuff are obviously only ever bad to put in the recycling bin. But there are plenty of things that are clearly recyclable yet deemed unprofitable or whatever - eg styrofoam, steel, many plastics - that cities assert are prohibited. These things can still be easily sorted, so a city making a policy that they should not be put in recycling bins is unreasonable. If the sorting center sees enough of it, maybe they can find a better destination for it.

This article completely leaves out the cost to get rid of trash that doesn't go in recycling stream. A city having to pay to get rid of their recycling, while novel, isn't the right comparison. The fallback is to have to pay to get rid of it as plain trash.
I wrote this article, and at this point I don't really have a strong preference for any one format. I think a lot depends on what it's used for.

YAML can actually be pretty useful. For example, recently I wrote a tool to generate OpenAPI/Swagger files from Go source code, and outputting that as YAML works pretty well, as YAML is quite easy to read for that.

YAML can also be a good choice to serialize some things to disk, like program state. JSON can also be a good choice for that, as can TOML.

But for other things ... it's not so great. I should probably write an article detailing this at some point, but ...

$ ls -1 /data/code/arp242.net/_drafts | wc -l
64

So much stuff I need to finish :-( I've added your suggestion there though!
One which happens to also work for YAML.
Bitcoin Regulation: South Korea Is Making Progress
Miniaturizing electronics, increase battery, signal processing, improved cameras, ML on phones, voice and command recognition on phones, computational photography, object detection on phones - are just some of the stuff that can be used to improve phones, but are really easy to find military uses for.
That's basically a "guns don't kill people, people kill people" argument.
I read a story once where ongoing changes in the timing of salmon runs were (of course) being blamed on climate change by scientists. But then someone who is actually in the fishing industry pointed out that for ages now we've been artificially selecting out those salmon which run during the "standard window", leaving in their wake mostly survivors who show up a little bit sooner or a little bit later, outside of that window. This person was of course then treated with absolute disdain by the online community which was discussing the issue; he might have even been banned outright for saying that.
I'm with you on this one. I enjoyed reading the arp242 article, but this one's like a bad meme - an incomprehensible mish-mash of links and emojis.
I'm surprised that nobody else has brought this up....
> You'd rather call the taxi company and make an appointment with a person than use Uber?

Not the OP, but yes, I actually do that, I mean, I've avoided installing an extra app that would track my every move (the Uber app) and I prefer calling the taxi company on the phone. I also very frequently take random taxis from street corners or the like.
If only HTC had not dwindled. Remember when they used to quietly make the majority of Android phones?
Another major pain point was the constant dependency churn in the RubyGem ecosystem, but all of that noise seems to have moved on to NPM along with the hype and bootcamp curriculums.
Your proposed statement “conforming implementations cannot transform code on the basis that some behavior left undefined by the standard is impossible” would have no meaning in the standard, even if it were written somewhere other than a non-normative note.

The standard doesn’t describe transformations; it describes behaviors. You can’t just say that undefined behaviors can’t be “transformed”, because there was nothing to transform them _from_. If you want some behaviors to be possible and some behaviors to be impossible, then you need to define those behaviors.

For C, that’s not something we can realistically do in every case. There’s no way to reasonably constrain the set of allowed behaviors after a program does some crazy pointer operation like * (int *) rand() = rand(), because any implementation of those constraints would more or less require an expensive run-time check at every pointer access.

What you could meaningfully ask is for particular situations (like negative shifts) to be considered unspecified or implementation-defined rather than undefined. That way you don’t give up the ability to constrain the behavior of programs after those situations arise. There are already many unspecified behaviors in the standard, such as reading the value of padding bytes in structs.

Such proposals could be considered on their merits, but they’d have to be discussed individually. There’s no way to remove all undefined behavior from C and still have something that would be recognizable as C.
In 2017 alone, the EU signed 430 international agreements, passed over 3400 pieces of legislation, passed 103 adjustments to various EFTA regulations.
Local sorting for compostable, definitely trash and possibly recyclable would be an improvement over what you're suggesting, then separation of recyclables can be done on the dry pile without the compostable trash ruining it (cardboard that has been wet is no longer recyclable, for example).