skysight-inc/HackerNews huggingface dataset:
There are a ton of people on the fringes that make extra cash hauling scrap metal, at least when the prices make sense. I had a couple uncles that would regularly go out "junking", picking up old cars and stoves and stuff.
What is this, bag-on-YAML day at HN?

I am really beginning to hate programmer-centric tooling. It has turned all of us into these miserable, cretinous engineering snobs. It seems impossible for anyone to contemplate why people would choose to work differently than them. Zero empathy. Fucking pathetic.

Make software hard again, I say. Treat the compiler like you would treat your dominatrix. Life would be so much better that way!
In TOML:

nobody.wants.to.write = [ "YAML" ]
> licensing, certification

You're a business now and this is upkeep. Business expense. You would receive training and licensing under normal circumstances through your job.

> life insurance

This is provided as a benefit by most businesses to their employees. Talk to your HR. If you're working for yourself, you pay for it now.

> vacation

This should be obvious. No work, no pay. So vacation literally costs you double. Loss of time + the cost of vacation.

> technology

Computer equipment to do the actual work. Nobody will provide this to you for free.

> bills, travel, parking

Nobody will reimburse you for these expenses. If you have to visit the client on-site, they're on you.

> emergency funds

You must keep 3 month's of salary at a minimum sitting in a bank account at all times. This is a cost of doing business. There are ups and downs, don't expect contracts to come in immediately one after another. It doesn't happen.

> general and umbrella insurance

This should be obvious, you bear 100% of the cost of all types of insurance.

> car maintenance, car fuel, carl detailing and regular cleaning

If you use a car to get to the client, well, this is obvious.

> house maintenance (yard, inspections, upgrades, insurance, etc.) or rent

If your home is your office, all of these are now business expenses to some extent even if you had to do them before. You're spending double the time in your house. That will increase upkeep, electricity, etc.
My preference:

# I guess you could put ["YAML"] if you need it as an array and not a string
no.body.wants.to.write=YAML

Easy to type, is on a single line, only breaks once you're so many layers deep that you need to scroll horizontally - but let's be real - if that happens the config isn't the problem but why is your program so complex? is the problem.

Drawbacks of this are when the program is inconsistent. Was it `nobody.wants.to.write` or `no.body.wants.to.write`? Or alternatively, why is it `nobody.wants.to.read` but `no.body.wants.to.write`?
It can be, in some circumstances.

I mean, clearly, consider: Microsoft, Oracle, IBM, Adobe, AutoCAD, etc. They all license their software, either as a one-time license purchase, or (increasingly) as an annual license fee.

On a smaller scale, I've worked at several companies that license their (proprietary) financial trading software to trading firms. The software is used to connect the customer's algorithmic trading applications to stock exchanges, etc. Licensing fees are tens of thousands of USD a year.

For something like Microsoft Word, there's a bunch of circumstances that contribute to it being a viable product despite the existence of eg. LibreOffice. Those circumstances are probably hard to replicate for an individual or small team though.

For something targeting a more specific niche, it can be easier to deliver enough value to the potential customers that they're prepared to pay for the software. Often, the licensing is part of a package deal involving ongoing support, customisation work, and access to the software.

I've noticed that some customers seem to actually prefer to pay for something, for a combination of reasons including a feeling of access to something others don't have, a feeling that they'll have more input into the future development, having someone (contractually) responsible for answering questions/fixing bugs/etc, and even just a general desire to contribute to the upkeep of something they leverage in their business.
Lifeline Australia
13 11 14

Stay strong brothers. You are useful and wanted.
This proposal may be problematic because they seem to want to tie it into other computer systems/databases (e.g. state and federal crime, immigration).

There's a lot of paranoia about new technology, but the biggest threat isn't strictly from the technology itself, but our use of the resulting data and how it is disseminated.

For example fingerprints for lunch payments/library books isn't inherently problematic, it becomes problematic if the fingerprints are stored beyond the student attending the school or sent to others (who could store it indefinitely or misuse it).
Or you could simply say "We performed a chemistry...":-)
This will be a common topic this century. A lot of consolidation is happening especially with FAANG innovating vertically and horizontally. A lot of old companies won't be able to compete when Mil, GenX and Y take over.
Someone live coding a distributed content network similar to YouTube
I would bet its globally more optimal to have all trash sorted and cleaned and recycled at a plant than to have each individual in every household do a poor job of it themselves.
This can be easily checked.
Replicating data in consensus groups gives some nice guarantees, in particular it can guarantee monotonic read consistency even if you're not reading from the leader, at the cost of a network round-trip. Switching between master-slave replicas might cause you to go back and forth in time, even if replication is synchronous.

There are also some potential availability benefits to storing data in consensus groups, though most implementations use leader leases to improve performance, which reduces availability in case of leader failure. A master-slave system that does synchronous replication could do failovers that are just as fast as leader changes in a consensus protocol.

The pain of storing data in consensus groups is in performance, especially concurrency. Every write to the log requires some synchronization with a quorum to ensure consensus on the order. That introduces extra round-trips and makes it hard to handle high concurrency.

There are quite a few bleeding edge distributed databases that have trouble matching the throughput of a single node RDBMS unless you're willing to spend an order of magnitude more on hardware or your workload follows a very specific pattern.
Let’s find the best possible explanation that doesn’t acknowledge the insanity of accepted consumer packaging practices and made-to-replace product cycles.
They only claim support for Windows and Mac, but do you know if it happens to work with Linux too?
Depends on location and tax law also a PLC limits your liability - that's why sole traders and partnerships can be so deadly.
Weapons reveal how this 5,300-year-old ice mummy lived – and died
dogshit, horseshit or cowshit; which would you rather eat for dinner?
At least the other link was a clear, well-written, well-reasoned article. I have no idea what this one is.
If you make manufacturers label the material, it becomes an easier AI problem to solve.
If the problem YAML is size / formatting, that's something a good IDE can simplify even more. For loading up configs that would otherwise be properties files, I have found it to be quite clean. If you think of it a domain language for configuration, YAML is great. It can be understood pretty much intuitively, and it does some things quite well. On the other hand, when it comes to exchanging data, JSON > XML > X12 EDI... EDI? Yes, it's still a thing... a terrible thing...
I like the idea, but there is the problem that not all cities/recyclers have the same capabilities, though.
More infos (including doxygen doc): http://dailyprog.org/~kenster/
Can you survive without air, water, or food?

If you haven’t tried it to see what happens, you can’t be certain....
bag-on-on-YAML-and-provide-no-useful-alternatives day
Still it seems like this would be a great automation problem to work on - not your standard shiny tech problem but something that would really make a difference.
That's not self employed though? which is what the OP as asking about I think.
> but if we offload this to computers we're actively removing humanity from the situation.

This massively reminds me of the "The machine fired me" [0] post from today morning's HN front page. Or, for what it matters, of the inhumanity that currently goes on in the US, with even toddlers being detained (https://www.huffingtonpost.com/entry/tender-age-shelters-tru...).

Following orders, eh?

> I can't fathom a situation where we want to automate what should be human interactions.

I can, it's called fascism. Break the individual responsibility of a human down and you can get them to do anything. There is a reason why in firing squads some members always have blank magazines [1] and why in the lethal injection sites a random of the required buttons for delivery will not work[2]. The individual member can try to evade responsibility by thinking "it was my button/gun that had the blanks" (apparently called "Diffusion of responsibility").

I recommend everyone able to do so a visit to Europe and one of the concentration camps the Nazis built. No matter which one, there are more than enough sites to remind us of what humans can do.

[0]: https://news.ycombinator.com/item?id=17350645 (thanks to @larkeith for pointing it out)

[1]: https://en.wikipedia.org/wiki/Execution_by_firing_squad#Blan...

[2]: https://en.wikipedia.org/wiki/Lethal_injection#Procedure_in_...
>Ha ha, I remember writing a command like that (made it into a script for repeated use, with args) when one of our HP-UX servers in the company where I worked then, had a DAT drive failure. The script allowed us to take backups of the source code and data on one such box from another box (connected on the same network), until the bad drive was replaced a few days later.

Didn't know about nc or rysnc at the time. Good to see those other solutions, and good that there are many ways to do it, with different pros and cons.
I like YAML. It's ok if you don't. It's ok that I do. Want to use TOML? Awesome. Want to use JSON? Go for it. I prefer YAML, it works for me and I'll keep using it until something better comes along that I like.

Preference is preference. Stop acting like it's not. This page might have been "Nobody wants to use VI" or "Nobody wants to use Emacs" or "Nobody wants to use [insert thing I hate here]"
This is a terrible idea for numerous reasons. You will be personally liable for any defects in the work. If you get dragged into court, it can ruin you for life. You will be unable to take advantage of tax benefits that would accrue to you if you incorporated. Various business-only services would be inaccessible to you (like a business bank account, lines of credit, etc.). Also, good luck getting health care in the US as an individual.
SDL identifiers start with a letter or underscore, and a key must be a valid identifier.
I can think of a few use cases. Identify when non custodial parents are on campus. When sex offenders are in the area. Identifying drug dealers that target school children. Identifying arsonists, vandals, kids triggering emergency systems. It might even be used to track bullying, tardiness, and absenteeism which is less workload on understaffed teachers.

If it was all confined to local systems and access was limited to a few authorized persons it may make parents a lot more comfortable and give them solid data for parenting.
I've contributed https://go-review.googlesource.com/c/go/+/117615 thanks to appendCombine check. :3
Can't speak to race issues, however there is a difference between anger at a specific situation and anger at the straw that broke the camels back. It has to be an issue everyone can immediately understand without needing a back story for it to be effective. Otherwise to observers without context it just looks like an over reaction.

The problem is most often anger comes from a series of injustices at the office. Not one singular event.
That's distinctly different from D's, which has a pointer to the enclosing stack frame.

If it is the enclosing function, it's just a single pointer to it. The "walking" comes from if you're accessing the enclosing function's enclosing function's frame.
There's this half baked one I built once because we wanted untyped config and had never heard of JSON

https://github.com/EamonnMR/Zond/blob/master/RedShift/src/co...

It ends up looking like this:
https://github.com/EamonnMR/Zond/tree/master/RedShift/assets...
For salaried supposedly so - its up to you to manage your time.
Is it really magic or is the genetic code just defining something much more like a CPU or OS than an application program?

If you took a bug report and did a statistical analysis of what transistors contributed to the bug, in most cases it would tell you "pretty much all of them". In very rare cases, it would tell you there were specific broken transistors. Similar for OS instructions. Because it's just the wrong level to be analyzing problems with the ultimate behavior of a system that's mostly functional. 99.9999% of the time, you don't have a compiler bug or an OS bug or a hardware bug, because if you did, everything would be dead.

My kneejerk reaction* is that genes are like transistors or OS instructions and not like application program instructions, and it really shouldn't be surprising or mysterious if they don't correspond to specific behaviors. It's just a different level of abstraction.

*having not studied biology and genetics, and just assuming living organisms have to be like computers.
Officially our recycling program takes a lot of surprising stuff, including wax cartons, all types of plastic, and even pizza boxes; glass and metal, too, of course. But no plastic bags and no styrofoam!

Unofficially, though, they only want plastics 1 & 2 and very clean cardboard and paper, if even that. And the metal, but probably not the glass. The thing is that around here the same folks who handle the landfills also handle the recycling, and they will take whatever they can get for free (no money changes hands) if they think they can monetize it - a situation which seems to change on a daily basis. I suspect that an awful lot of what we think we "recycle" around here actually ends up in one of their landfills instead.
Thanks! Last time I checked my domain got penalized for having abnormal low markup or some such, which apparently makes it look like a spam site. I am proud of this.
For most things lately I've been using TOML because it gets me that, and it's a relatively simple (to a human) standard. Combined with there being parsers and emitters in just about every language now, it's a great option. You get sections in the config that map easily to native data structures in the languages, good string handling, can create a few more advanced things like arrays (really useful for adding multiple ports or listening addresses, etc.).

I do still use YAML on the rare occasion where i just don't like how the TOML ends up looking[1]. My plan with that example is to eventually make a more simplist DSL that can handle the usecase, but my first attempts didn't produce anything I liked.

[1] https://github.com/perlbot/App-EvalServerAdvanced/blob/maste...
Ask HN: Which dev laptop to buy?
I was planning on switching my work laptop sometime around next year, which could change a bit the landscape(macbook pro keyboard...), but I have an opportunity to get one right now from the US which makes things much cheaper for me, so I wanted some input.

Currently I own a 15" Dell (don't remember the version). I really like the 15" display, seems much better for my work (I usually don't use a external monitor) than 13", it has a decent keyboard (I love that it has a numpad) a decent trackpad and display. The display is touchscreen which makes it gather much more dust than usually and I have never used it. I have had trouble getting linux to work well with it's trackpad sometimes and shutting down, hibernation, suspension has also been troublesome. This is the only laptop I have used for heavy development duty.

I was considering getting a mac this time around for the OS, due to working well out of the box and been UNIX. I am not a guy that really likes configuring things too much, I rather have a good experience out of the box and be able to do small adjustments when needed. But recent keyboard issues + touchbar has gotten me a bit afraid of it.

Ideally I am looking for:

- Display: 15" Without touch

- Video Card: Nvidia (CUDA)

- Great Keyboard with numpad

- Webcam in the right position (Dell XPS camera on the bottom seems weird to me)

- OS X

- Good Battery

- Great trackpad (I rarely use mouse whilst working)

- Powerful enough for 5 years

- Good cooling system (My current Dell has the air intake on the bottom, needless to say it doesn't work greatly)

I hope you could share some of yours experience with the recent versions of top development laptops.
You're right regarding the value of text files. ConfigNode is really for management of configurations for use cases where you can have huge JSON/YAML files and you want to be able to manage them, facilitate dynamism (often using templates)...support collaboration..etc...it is a gold-plated solution and not necessarily suitable for simpler needs.

Here's another example of ConfigNode used to manage Akamai configurations:

https://youtu.be/gcPAmpKo9fs

Akamai configurations can be very complex and need to be maintained and managed, you can't really do that effectively using text files.
If browser and server are on the same machine, you remove a whole host of the barriers to identification. You could use any sort of local knowledge like system files or your NIC as identification. NB: I haven't thought this through, but I'm sure there's something to it :)
wow.check out this cool blog http://mawazo.tk
Get a grip on reality dude. Nobody is going to risk their livelyhood to stop somebody being in relatively[0] moderate pain for an hour. The fact that you expect strangers to do this for you is really very selfish.

Not sure how suing is related to the comment you replied to. If a chemist hands out drugs to people without prescriptions and they get caught, they will lose their licence, be barred for life, lose their store, get a massive fine, and in some cases serve jail time. Nothing to do with suing.

[0] Relative to medical emergencies.
Extensive discussion a month ago about the latest version of Firefox:

https://news.ycombinator.com/item?id=17029513

Also: https://news.ycombinator.com/item?id=17189396
{"no":{"body":{"wants":{"to":{"write":["YAML"]}}}}}; // A one-liner.
I think the relevant guideline puts it well:

> Comments should get more civil and substantive, not less, as a topic gets more divisive.
I generate Swagger/OpenAPI files, and use YAML because it's easier to read.

If I had to write OpenAPI files manually I'd probably choose to jump out of the window.
I hope you got paid 2.5 to 3x for the extra risk other wise why bother.
A Casio watch was given to me as birthday gift in 1998. It is still on my wrist, showing time.

I can't think of a better tribute for that man.
That, not too mention how often do you actually write data files by hand? Maybe a small sample file for testing, but beyond that all data is going to be read in from files or come from an API.

JSON is not bad to write by hand. Simple XML isn't too bad either, but I still prefer JSON.
I haven't read that one (yet), but I liked her novel _Out_[1]

1: https://www.goodreads.com/book/show/25365.Out
I'd argue that = only feels imperative if you're used to imperative languages. Prolog and Haskell, both of which focus on being declarative, also both use the equals sign.
none of your examples actually resemble valid config files

Neither does the YAML one? So?

you’re forcing them all to have the same indentation

I don’t know about you, but I always pretty-print JSON, just like I always indent my code no matter which language I’m using.

In fact that’s one of the arguments in favour of significant whitespace -- you’re going to be indenting anyway, so why bother with the brackets? It’s not an argument everyone buys, but everyone still indents their code.
> depending on the expertise of the developer

The more experienced the developer, the faster they are. The faster the technology enables you to be, the faster you'll produce something. Both go hand in hand.

An experienced developer would absolutely love Serverless for most problems they face. Having the option of doing as little Ops as possible and just solving problems in software is the very definition of a software developer (which certainly might be changing over time) :)
That's why you have agents
Apparently he originally used to write in English first and then translate into Japanese. His English isn't good, so it forced him to write in a highly simplified fashion. It seems he now writes directly in Japanese, after he settled on his style. I haven't read more than a page or two of his books (browsing the bookstore) and I found it extremely easy to read (in Japanese). I suspect that's the appeal. Like you, I'm not a huge fan, but the number of novels I've read in Japanese is fairly small in number so I'm not the best judge of Japanese literature :-)
Right. Didn't mean to imply that there weren't other substantial bases, just prefacing the link for the one associated with an article.
I think some of it is PLOP (Principle of Least Power).

$CFG = random() > 0.5 ? "yes" : "no";

...is likely "too powerful". It'd be nice if there were ways in certain programming languages to do something like "drop privileges" to avoid loops, function calls, external access, etc.
The Summer Solstice and the Search for Life in the Cosmos
Good timing, I was working on a short tutorial on how to setup HTTPS for localhost, including how to get a green lock even in Chrome 58+:
https://gist.github.com/cecilemuller/9492b848eb8fe46d462abeb...
We built a PKI on top of Lets Encrypt to deliver certificates to all of our users for Rainway: https://rainway.io/technology/

Similar to Plex, users run our software on their PC and then our web based client can connect to it from elsewhere.

It’s mainly used as a fallback if WebRTC fails (https://blog.rainway.io/real-time-communication-for-everyone...). If there is interest, happy to do a blog post.
With Emacs vs VI we have a choice.

Kubernetes...devops tooling...CloudFormation?

You better <3 YAML.
AMDs Zen architecture uses 32KB for data and 64KB for instructions (was curious if there are differences between AMD and Intel designs regarding L1 cache).
IIRC the whole debugging took half a day. There wasn't exactly an Aha moment either. Enough trying different accounts/platforms/devices/environments made me realize that debugger might have changed the result. Once it was confirmed I actually felt defeated. Hard to feel good when you are hit by observer effect and at the same time realize that the a native JS API could be problematic.