skysight-inc/HackerNews huggingface dataset:
Being a Puppet user (until we've finally retired that nightmare), I couldn't be happier with this migration to containers.

Docker itself is problematic for all sorts of reasons, but it at least does the most important thing, which is to run pre-packaged code in isolated containers. With Puppet, as with Ansible, you just can't guarantee an isolated environment, nor is the environment easily "replicable", in the sense that if you need more instances of the exact same thing (e.g. more data processing workers), there's nothing in the system built to treat things as N-of-anything. The only unit of provisioning is the VM. Puppet/Salt/Ansible are highly static systems.

Meanwhile, Kubernetes smoothes over a lot of the rough parts of Docker: Ports, IPs, DNS/discovery, monitoring and volume management are all neatly captured by Kubernetes, where in Docker Engine they're just low-level primitives you need to manage manually. It also handles exec'ing into an existing container. The pod as the unit of orchestration is also much nicer than Docker's single-process containers.

For me, the value proposition is the cloud. When I boot up N nodes, I know that Kubernetes will optimally pack them with my container, and if I boot up N+1 nodes, I know that the containers will spread to the new node, and back down again if I go down to N (either intentionally or accidentally). Orchestration, scheduling, autoscaling etc. take care of this "cloud of containers", if you will, and since every container is an isolated, identical, versioned, stateless (for the most part!), fully redundant thing, I rest assured that what is running is what I deployed.

Then there are all the other nice things, like rolling deploys, cordoning, self-healing, job scheduling, secret management, being able to boot up a parallel, different version of a stack without clobbering everything else, etc. We run production and staging in the same Kubernetes cluster (different namespaces), and we can use things like resource requests/limits and node affinities to ensure that they're scheduled differently, but still using the same underlying hardware resources.

Docker, to me, isn't particularly interesting without Kubernetes, although it has its uses. It's terrific to be able to "boot" a temporary Ubuntu or Elasticsearch or whatever in order to do something that I can just tear down afterwards. Build/test containers are great, both locally and in a CI environment.

What pains are you referring to, specifically?
I'd be much more likely to pay if the instance had a different name!
All you need are the same IAM secrets that you already needed for terraform. Keeping the state out of repos and in encrypted buckets is definitely the way to go.
Interesting. How do you describe the difference between two successive real numbers?
If you install git for windows, you get msys built versions of most of the unixy tools you're used to (ssh, bash, etc).. that's what I've been using, mostly, under conemu for a couple years in windows... or, I'll SSH into a linux VM, and edit via samba/cifs share. Or, you can use the ubuntu/bash integration in windows.

Or, you can do what I know a lot of people have and run Ubuntu or another Linux environment as your primary OS... it's much better today than even a couple years ago, for most use cases.
Design Sprint Kit
Depends where you are, but where I live in Queens, and I think in Manhattan, parking is often free on the streets, cheap on the avenues (a buck or two an hr), and the parking garages (privately run) are astronomical in price. So, as you can imagine, drivers spend a very long time circling to find a free spot before biting the bullet and paying for a parking garage. This circling of course adds to the traffic problem. I'm of the opinion that if all street parking spots were metered, and prices were higher than they are now, traffic would be reduced significantly.

Then again, I haven't had a car since living here (10+ years) and don't plan on getting one.
I've worked in the financial sector as recently as 2006. Without getting too specific, some of the financial systems I worked on underpin large sectors of the economy, across many banking chains. While Java was starting to take over these systems, thankfully the banks and regulators were hedging their bets on JEE with the knowledge that someone would eventually have to take over these systems.

They were starting to think about growing an intergenerational community and started hosting applications in smaller chunks that individually comprised less risk (long before microservices was a coined term) and thinking in terms of APIS not implementations. They're not idiots.

Having said that it might be good to ask your local bank how much of their systems are implemented in COBOL.
Compared to Java or PHP? Or did you mean "trendy" rather than popular?
You should blame E-Ink. They've never been able to meet the promise of inexpensive production, screens printed in large sheets, etc.
Wow, I always thought retailmenot was like a small 2 person company with a bunch of scripts to scrape coupons and rank high in SEO. What do their 500+ employees do.
>>Having a small, arguably aesthetically pleasing object on a desk vs even a Mini-ITX case is a no-brainer for a lot of creative folks

No, the people I know who do fine art are already broke after buying a $2 mac.
I think it's important to consider the implications if Rust doesn't become a mainstream programming language.

I'm not shy about my dislike of Rust. I like C, I don't think avoiding buffer overflows and memory errors is that hard, and I chafe at the idea of a language I dislike aesthetically taking over systems programming.

But even I have to admit the arguments for using C instead of Rust are niche. Sure there's probably always going to be some instance where C makes sense technically, but if we could wave a wand and convert the world's C/C++ code to Rust, we'd immediately fix millions of memory errors and data races. It's impossible to overstate that benefit.

Think of the things the Rust team has to deal with:

"Is Rust a good web language?"

Is C or C++? Is Ocaml?

"Is Rust a good language for an OS?"

Is Python? Is JavaScript?

"Is Rust too big?"

Is C# or Java? Rust is a pretty small language, both in terms of features and implementation size.

"Is Rust powerful enough?"

Is Go? Go deals with this all the time ("Go ignores decades of PL research"). Rust's feature set is pretty good, but more importantly it's well thought out.

"Is Rust fast enough?"

Is Java? Is C#? Is Go?

"Does Rust compile fast enough?"

Does C++? Does Clojure?

"Will your Rust program be memory safe and free of data races?"

It sure will be. This is a monumental achievement. Your options for a memory-safe language without GC are... Rust and Ada?

"Does Rust have a good concurrency/parallelism story?"

Rust has one of the best, actually. It doesn't use segmented stacks so it doesn't achieve the M:N performance of Go, but it has memory and data race safety, OS threads, and futures, so no problem.

"Is Rust too hard?"

Honestly, programming is hard, other languages just let you ignore it. There's an example about manipulating a string as a global array in this thread somewhere, which is not really something you should do, and the argument was "this was wildly difficult". It is, yeah, because safely managing concurrent access to a global, bounded section of memory is wildly difficult.

Again, I'm not a Rust fan and I sort of can't believe I'm writing this. But look at what Rust has:

- memory and data race safety

- scripting language ergonomics (after you internalize the borrow checker)

- the speed and memory usage of C

- a low surface area

- advanced features

- great community outreach and documentation

- familiar structure (as opposed to something like Erlang or Haskell)

If a language like that doesn't succeed, you have to start wondering what will.

My personal belief is that it is succeeding, but I think success looks a lot different than most expect: new projects that need a systems language are far more likely to be written in Rust than in C/C++.
In the Videogame Industry, Hiring People Is a Last Resort
Articles like this are embarrassing. Here's how to fix the schools:

1. When a parent withdraws their kid from a school that's not doing the job, the parent's money GOES WITH THEM to whatever other school they ultimately choose.

2. If any kid in any class disrupts the class and prevents anyone else from learning, the teacher informs the principal. The principal says "Yes, sir/ma'am, I'll take care of it", removes the kid from the room, places them in a different room, and informs the kid's parents.

3. If any kid in any classroom verbally threatens or physically assaults a teacher for any reason at all, the kid is immediately expelled. Any lawsuit over this by any parent is dismissed via lack of standing to sue, and the parent pays the school's court costs.

Problem solved.

If you work at a school that can't seem to fire incompetent teachers, you'll be out of business and good riddance.

If you teach at a school, your word is SCRIPTURE when it comes to a disruptive or dangerous student. That means you have the last word about when or whether a student is returned to your class, not the pricipal or the board or some parent who can't discipline a kid.

If you're a parent and your little snowflake can't handle the concept of "don't hit the teacher and don't start screaming in class", you are free to educate him yourself.
Anecdotal, but my friend knew VP of Information Technology at one of the big 4 banks in Canada really well. The VP told my friend to learn COBOL and if he passed the interview, they give you a blank paper where you write down your salary.
I would think that the rationale for any language with the syntax of Lisp but semantics similar to X is obvious: you want a language like X (that can be used for the things that X is used for) but with the meta-programming capabilities provided by Lisp-style macros.

I can definitely see a Lisper thinking this rationale is so obvious that it does not require mentioning.
Oh, it's totally overkill, but I don't have any regrets. I have a couple VMs that can sit on a lot of CPU time when they're in active use.
That used to be true - up until sometime in the late 1970s/early 80s. Since then, banks are IT. Take that away and what's left?
Eh you got me. I still think it's pretty surprising (especially for systems languages), but OK :)

Also Ruby is a kitchen sink language, so I don't know if we should be using it as the baseline for a language with a small surface area.
Well, regarding the laptops.. I have yet to use a better touchpad... I have a logitech keyboard for my htpc that is close, but the right click region is horrible and after 2 years is "loose"... beyond that, I like the aluminum unibody shell, but wouldn't mind a black anodized version.

The touchpad is what kept me with a rMBP 2 years ago, today, would probably go with a different vendor.
Rust is also pretty attractive for use in AWS Lambda and Google Cloud Functions. It's ability to strictly control memory usage and make the most of CPU resources is really powerful in an environment where you're billed based on memory and CPU time.

If you've got a particularly hot lambda function, rewriting it in Rust is a pretty simple way to save a bunch of money.
Si quieres practicar Español escríbeme un email (if you want to practice some Spanish send me an email).

I also know some programmers Slacks in Spain, which might be easy as all the technical words are in English.

What country Spanish are you aiming for though? They are slightly different (more than American English vs British English).
No land is plenty, even in markets like bay area, its the schools that are limited commodities. add to that various building restrictions and you have perfect recipe for the mess SV is in.

I recall around 2006 Elizabeth warren did a study for most markets in US and found for every single point deviation in school performance there was 2 point deviation in housing cost. translation people are mortgaging themselves to the hilt to get the best opportunities for their kids. commute is the second factor. essentially people extend their commute till they can afford the house/school.
Yeah even though COBOL is called out by name here, the problem these guys are getting paid to solve seems like as much of a "domain knowledge" or "business rules" problem as a language one.
I have been happy with Evernote for years. My user number is absurdly low (like in the 200ks). However I no longer keep any information in evernote I consider sensitive. Just research notes.

I would love to find a reasonably well made self-hosted note app.
I think when I came to California, I shared your position on Prop13... namely that it was a unnecessary market distortion that distributed wealth from the new to the old that ultimately worked against the apparent intent of the legislation (to make California more affordable).

I've sinced developed a more nuanced view. I believe Prop13 for owner-occupied, primary residences is perhaps flawed, but something I believe two reasonable people can disagree on (happy to explain more fully). I believe Prop13 for anything else has absolutely no rational justification and needs to be overturned at the earliest opportunity.
I've seen similar malware target Firefox on macOS (been a while, but I have seen it).
PLAGIARISM

Third paragraph of Intro in original DeepMind paper https://arxiv.org/pdf/1312.5602.pdf

&

Second paragraph of Intro(5th line) of this project.
http://nihit.github.io/resources/spaceinvaders.pdf

They didn't even bother to do something original except for using the RAM state instead of pixel values like the original paper. It's something that's easily doable with the openAI gym. This seems like a course project at stanford.
> DO_NOT_USE_OR_YOU_WILL_BE_FIRED

What could possibly be in there?
You wouldn't see police acting like that in, say, Germany. So it's not just the structural situation that you describe because that obtains in any country. You would see a scene like that in, say, America, or the Philippines, or many "non-Western" countries.
verify coupons probably.
Serious question: It seems like Microsoft is making an "App Store for Minecraft". Does HN think being a "Minecraft App developer" will be a full time job in the future?
Often those discount codes are advertised quite blatantly on the manufacturers site. A lot of PC Manufacturers tend to have long running discounts on their website that will save you a lot over the original retail.
It'll saturate a 1Gb link, obviously. I've been eyeing 10Gb configurations for a while, that will be my next upgrade. I'd really like to stick with copper so I can wire the whole house for 10Gb and have some super fast X11 nodes, but we'll see.
Rust requires at compile-time that you handle each case.
I'd probably be snarky and say "I don't know - but I can google it!"

/actually I'd probably hit up the man page first...
Rust is targeting all meanings of the word "systems programming". If you need some feature that Rust doesn't have, file an issue or write an RFC.
This thread of conversation is unproductive. Could you link me to both of your respective github accounts so I can nitpick without any stake or contribution in your projects?
There are going to be some fascinating stories from inside LeEco once it all falls apart. My guess is it was originally just supposed to be a shell to evade Chinese capital controls, but Jia started believing his own hype and the whole thing spun out of control.
15 years of bad executive decisions adds up to a problem? Oh man. Say it ain't so.
I used to charge $90/hour in Australia to set up wordpress brochure websites (and poorly at that).

Anyone who thinks that's a lot in the contracting world is undervaluing themselves terribly.
You are basically stating that we should be doing both try/catch AND result/option at the same time, everywhere. That would get annoying fast.
This sounds very interesting and fun. Would be cool for a raspberry pi picture frame type of thing
(I meant to reply to you several hours ago, but HN wasn't letting me post comments for some reason...)

I've got rclone set up to encrypt and upload everything to ACD. There's a section at the bottom of the article that goes into some depth on this and some other backup strategies I've tried in the past (including CrashPlan, Backblaze, and Zoolz, all of which are awful). Check http://jro.io/nas#rclone . I never considered building a second NAS, it does seem pretty stupid, even for an enterprise setup. The whole idea is to get the data off-site.

As a side note, some of the so-called "FreeNAS people" can tend to blindly parrot a given general guideline without really understanding the reasoning behind it or why it might be perfectly valid in certain situations to disregard it. For instance, ask them about bhyve and I promise you'll get at least one response along the lines of "bhyve isn't officially supported in FreeNAS so you shouldn't use it under any circumstances, period."
I blame the ad blocker / ad network arms race.
You got that right. I had to deal with an interesting banking file format and I asked a question on Stack Overflow and got this gem of an answer.

I politely accepted it as the right answer but boy oh boy does it feel like it's from an alien civilization.

http://stackoverflow.com/questions/28640159/what-is-the-diff...
So basically chat heads from Facebook.
It started out as bugmenot, for sharing logins to web sites to deal with mandatory signups.
> The whole point of Linkerd is moving logic out of your app. Linkerd is like a library but, instead of being in-process, it inserts itself between the app and whatever the app needs to talk to. The app just dials http://foo.svc/, and Linkerd sends the connection to the right place; it doesn't need to know where foo.svc is.

That's just DNS.

> Many companies, including mine, already run an internal load-balancer (such as HAProxy) that takes care of routing traffic between microservices.

Why not DNS round-robin?

> I recommend reading the documentation, because drop-in resilience is really the whole point.

Fundamentally, the application itself needs to be resilient. No proxy will make it so. It could help, but it can't do it.
Whatever reasonably progresses federated social networks - like Gnu Social-based networks like Mastodon - forward sounds good to me!
A short story in this vein that I really like is "Fat Farm" by Orson Scott Card. The copied dude looks wistfully after his copy who just walked out the door, and asks "Now what?" The answer is not pleasant.
Tired of enterprisey programming
First post here. Cheers to all.

I work as a Java programmer since 1999, but with all this mileage I do not consider myself a great programmer, only an average one.

Unfortunatelly most of this time I dealt only with Java, thus being a monolingual programmer... but I've never been a fanboy or evangelizer:
I stayed with it for too long because as they say, I accomodated in my 'confort zone' instead of exploring new lands.

After reading and dabbling with few other languages (Clojure, Scala, Python and a little Common Lisp and Haskell) I became acutely aware of Java's limitations.
This added to a slow but ever increasing impression that the Java's development/SW lifecycle is painfully slow, with low productivity and full of accidental complexities, like
those absurd apparatuses Tom or Willy E. Coyote used to catch Jerry/RoadRunner in the cartoons (design patterns anyone? want a RefreshAuthorizationPolicyProtocolServerSideTranslatorPB class?).

Now, I'm growing tired of Java and am thinking of quitting it (how ungrateful), but I confess I don't know how to do that! Here in São Paulo / Brazil, Java is king, still has most of the jobs offers and pays fairly well.
I'm in 40's, with two sons in high school and a housewife, so seems like I cannot risk too much.

What would you do if you were me? Try for example to learn and start contributing for something open-source as a ticket to enter in the brave not-so-new world of non-java programming?
That seems not a bad idea, but how to start?
This article couldn't be further from the truth. Earlier today, I counted and no less than half of all submissions on /r/all were related to the United incident in one way or another. I've never seen such a saturation of reddit of a single topic that wasn't Trump related in a long time.

One single subreddit decided to remove the video and they're currently suffering a lot of shit for it but every other subreddit let the video float to the top.
Japan's NicoVideo seems to agree. 550K lines of Erlang, and 20K lines of Rust.
The Qt-based phone OSes (Sailfish, LuneOS, Tizen, Plasma Mobile) all seem to have adopted Wayland. So the claim that Wayland was unsuitable for mobile seems hollow 4 years on.
First employee/architect of Kraken here. (Now does >USD$10M+/day of volume by my estimate)

Accounting systems of all kinds should be generic and open source. Why do we need banks at all? It's not like this infrastructure really has any special characteristics. Most of it even has downtime and batch jobs. Fact: The bulk of banking is just recording some numbers at a stupendously simplistic resolution, with maybe 64 characters of description and a date.

A few weeks ago I spent a day interviewing 20 different Hong Kong banks about API availability for cross-border RMB transactions. None at all offered it.

We're reaching a point where the financial systems of a mid-level company exceed those of the banks they are forced to utilize.

Modern requirements include things like: 24x7x365 availability, multilingual, arbitrary asset type support (energy, carbon credits, cryptocurrencies, space, time, etc.), multi-asset type accounts, new settlement networks, real time reporting and AML/KYC, all features API-available, new and established customer interaction through non-snailmail/physical means, customers routinely in different countries, multi-user accounts with disparate access levels (eg. accountant/auditor/spouse/kid), multiple legal jurisdictions with clashing regulatory frameworks, settled-means-settled, regulator-forced free market integration for non-core (ie. account-related) financial services such as loans/forex, redundant service provider availability for every function, meaningful SLAs/reputation for service providers, routing and/or provider selection based upon nontraditional metrics such as ethical investment rationales, etc. The same set of requirements goes up and down the supply-chain: people want to reason with their suppliers and customers about stock, settlement status, payment and contracts, they sometimes need backups in case of failure down the chain, and they care about reputation.

Frankly the whole area is such a mess I am expecting an open source core accounting project to take over the sector. Probably it will begin in smaller/developing world banks and move toward the big guys like a meteor.

For some evolving thoughts on the area (from 2012, but literally picked up again in the last 2 days) see http://www.ifex-project.org/our-proposals/ifex
Ask HN: Programmer/Producer Happiness
In what regard is programmer happiness important to you guys ? E.g in my case I drag my feet when I have to do assignments in Java, but I can work with Swift anytime of the day with quickness.
Yeah I'm aware that it's a system call that only knows about file descriptors. It's just that it just now hit me that a consequence of that is that a web server configured to use ssl _and_ sendfile isn't really using sendfile, short of some hairy hack of writing/encrypting the response into a file (maybe in-memory with something like memfd_create) and using sendfile on that, which would defeat the purpose of avoiding user-space entirely.
Finally, a reason not to bother with IPv6 emerges
https://ru.wikipedia.org/wiki/%D0%9D%D0%BE%D0%B6%D0%BA%D0%B8...

https://en.wikipedia.org/wiki/Bush_legs