skysight-inc/HackerNews huggingface dataset:
It's not worth the bother. Apart from keeping patches up today --- which is a good idea --- it's probably not really buying you anything.

It's not crazy to periodically rotate keys, but attackers don't acquire keys by, you know, stumbling over them on the street or picking them up when you've accidentally left them on the bar. They get them because you have a vulnerability --- usually in your own code or configuration. Rebuilding will regenerate those kinds of vulnerabilities. Attackers will reinfect in seconds.
If you ever work on a team I can't recommend code review enough. I can't comment on how useful it is to review your own code after the fact by reading it, but you could certainly give it a try that way if you are currently working alone.

Code Review requires two skills (one interpersonal, one technical):

1. How to read code (often in diff format) and run through it in your head to look for technical correctness.

1a) How to read code and look for style issues like code structure and variable/function naming.

2. How to write constructive feedback so that the author of the code feels happier after your review than before it.

The best part of code review is that even in an environment that doesn't officially support it (e.g. no code review tool or source control, or an official policy against pre-commit/pre-merge reviews) you can easily do informal post-commit reviews. In my opinion the two major benefits are to decrease your bus-number, and to slow down the pace of code changes (at least if you have a pre-commit/pre-merge review policy). By decreasing your bus-number I mean that you force someone else to read and understand the code before it goes into "production". Even with half-hearted reviews this usually means you've got at least one other team-member who is can say "Oh yeah, I remember that $IMPORTANT_FEATURE was changed recently." And finally by slowing down the pace of code changes I mean that code spends an extra few hours/days sitting around, which gives more people a chance to look it and spot issues before releases. This is kind of a social hack, it stops from-the-hip code changes from immediately going into your codebase which increases the chances of the author or someone else giving them a sober second look.
What exactly is the point of this post?
Well, the reason is simple.

A lot of middle- and upper class people expect to talk to middle- and upper class people in other countries.

And in that case, you’d likely get people living by the Knigge, and you’d get awesome results.

Sadly, our society has thrown out etiquette in the recent times.
Designing a fast Hash Table
I think Docker or runC is pretty much mandatory. Not because it is great tech or anything.. but because of https://hub.docker.com/explore/

So BOSH needs to work with my Dockerfile. That's the first step.

Second, build a minimal cluster (1 node?) for me with my Dockerfile. All that the cluster is doing is restarting my application if it dies and helping me deploy. And let me scale out gradually from there.

Keep BOSH if you want ;)
N-Acetyl L-Tyrosine (NALT).
It was my experience it was just "Bye Felicia"

BUT it might have been how our app was coded we weren't taking advantage of some sort of built in failure hooks or something.
I'm not positive, but it looks like NALT powder is a supplement: https://purebulk.com/nalt-n-acetyl-l-tyrosine-powder/
You consistently respond to this style of CF critique by enumerating alternatives and workarounds to the individual points. But you're missing the forest for the trees. CF is by its nature too complex! No amount of justification of the complexity will fix that; no number of afterthought scripts will make up for it. The future of this space is scaling 1-dev, 1-node systems up to production, not in asking devs to wrap their minds and laptops around intrinsically huge platforms like CF or OpenStack.

I'm not saying CF is dead, because I'm sure you've got lots of paying customers, and lots of interest in larger enterprises. But I think it's pretty obvious the way the winds are blowing, and I think the smart money is on Kubernetes.
Who Is the Best Tennis Player Ever? A Network Analysis of Tennis History (2011)
I prefer flow.

https://en.wikipedia.org/wiki/Flow_(psychology)
Did they come up with Shadowmere?
We (Baqend) use an approach that is somewhat different from what has been proposed here so far:

- Every one of our servers rate limits critical resources, i.e. the ones that cannot be cached. The servers autoscale when neccessary.

- As rate limiting is expensive (you have to remember every IP/resource pair across all servers) we keep that state in a locally approximated representation using a ring buffer of Bloom filters.

- Every cacheable resource is cached in our CDN (Fastly) with TTLs estimated via an exponential decay model over past reads and writes.

- When a user exceeds his rate limit the IP is temporarily banned at the CDN-level. This is achieved through custom Varnish VCLs deployed in Fastly. Essentially the logic relies on the bakend returning a 429 Too Many Requests for a particular URL that is then cached using the requester's ID as a hash key. Using the restart mechanism of Varnish's state machine, this can be done without any performance penalty for normal requests. The duration of the ban simply is the TTL.

TL;DR: Every abusive request is detected at the backend servers using approximations via Bloom filters and then a temporary ban is cached in the CDN for that IP.
Instead of react native you can also just reuse the UI-code directly for the mobile deployment. Just add meta tags like apple-mobile-web-app-capable=true and style with @media-rules.

To be fair "just" might be over simplifying things a bit. I've been doing this for an application and thinking that it actually would be a benefit to have a different code bases for the desktop and mobile editions. It can be a bit challenging to design for both targets at once.
Well, that's an incredibly cynical and negative way to read shykes' words. FWIW, I thought his post was fine.

A more constructive response than yours would be to post examples of where Docker has failed in community engagement, rather than just re-stating his post with the most negative spin possible.
The College of Lost Arts
If you dig you can find research that indicates that caffeine is the most potent cognitive boosting chemical we know of to date.

I think the first half of your point, that we're reducing blood flow to the brain, is a valid one. However, evidence indicates that whatever negative impact on cognition occurs are overpowered by the positive impacts.

Another factor to consider is how much blood flow is correlated to cognitive abilities. Obviously some is needed, but after sufficient oxygen levels are reached I suspect other factors (such as glial cells) play stronger roles.

Definitely a fascinating field of study.
It might have been how shittilly our app was built and everyone I talked to was just shifting blame to the the Predix/CF team.

But, correct me if I'm wrong,...isn't predix and cloudfoundry all hosted on top of AWS instances at the moment?

All of our URLs were AWS urls. It was funny.

We were hosting on top of our competition.
I would say the Swedish number was an big success and very cost effective pr campaign compared to normal advertising. And that is why France trying to do the exact same thing.

It's not easy to get peoples attention in the media noise, but the Swedish number was something different and new an got viral globally.

Over 190.000 got so interested they actually interacted and called, many millions have read about it. People called from 186 different countries, so the campaign spread to almost every country in the world. People talked combined for more than one year.

To get such attention globally and so many to interact is really worth a lot, you could not have paid for that in normal ways you do pr.

By the way…
I guess the Swedish number also could have been inspired by one of the official swedish twitter accounts [1] that is curated by a new Swede every week [2]. It got alot of attention when released, so I think they got inspired on that idea. My guess tho.

[1]
https://www.twitter.com/sweden

[2]
http://curatorsofsweden.com/about/
> Well as the landlord, would you rather spend 2 months going over the appartment with 12 people or just take the first offer at 10% over list price?

Neither? We schedule an open house for the next weekend, people make their offers that day, then we accept one the following day.
Sorry, that wasn't the intention. I tried to clarify with an edit in the original post.

It looks like now is not a good time for me to participate in this discussion. Instead I'll make a list of things we can improve so that the next HN post about Docker is a more positive one.
Apart from what the others have already mentioned (buying a grinder) I think it's even more important to try switching your method of brewing. I also don't like Bialetti coffee at all, it tastes for too "dirty" (for a lack of a better word) to me.

Personally I used an AeroPress (which is now only my traveling coffee maker) quite a while and eventually just switched back to simple drip coffee machine. People often forget how good a drip brew can be with good-enough coffee and a good-enough grinder. As a bonus it's a very lazy method for brewing as well.
Forget “Earth-Like”–We’ll First Find Aliens on Eyeball Planets
I'd imagine a simple device that broadcasts noise or fake signals would be enough to throw it off. Lots of principles used in speed trap jammers could be used.
This is a debate I engage in often. You can write "prototype" code to solve an "algorithmic" or "scientific" problem and it can be sloppy, but if you are planning on integrating it into a large project your team will run into problems unless the code is extremely contained.

It's true that there is a growing rebellion against best practices and design patterns, and I think in many cases some practices are dogmatic. However, the part that disturbs me is that inexperienced programmers are using it as an excuse to not apply basic principles they don't understand in the first place.

I've seen experienced software engineers that are lazy and spend more time criticizing the work of others than actually producing anything themselves, and I've seen novices that have poor fundamentals but grind for weeks to solve difficult "scientific" problems albeit with horrendous code that proves to be not maintainable in the long run. I find that in the latter case (I'll call them "grinders"), the programmer takes much longer to solve their problem because they have such limited coding experience (I've been asked many times to help debug trivial problems that result from not understanding basic concepts like how recursion works).

The author of this article does a good job at identifying the characteristics of this low quality "scientific" code, especially that it uses a lot of globals, bugs from parallelism, and has other bugs and crashes that are not understood. The author seems to insinuate that testing is the way to mitigate the bugs and crashes, this is partially true but it's better to write code you understand in the first place instead of relying on testing to fix everything so you don't continually introduce new bugs.

Grinders can benefit from understanding best practices and learning programming and computer science fundamentals. That way they can make their code more robust, code faster, and truly understand when they should and shouldn't apply a best practice. Software engineers can improve by matching the work ethic of the grinders and explaining where the grinders are making mistakes.
Yes, it is fascinating and eminently useful for space exploration. The whole domain is a fascianting optimisation problem. Do you use natural light, and require a large surface area. Or is it more efficient to use electricity and have a larger volume fo growing space?

I would love to know if you could grow creeping vines in space, maybe around strands of led lights.
In 5 years, the Midwest will have more startups than Silicon Valley
That was my hunch too. Thanks. I'll ask more about whether I missed something on the other side of the argument.
They're talking about a different kind of best practices, but I highly recommend taking a look at the Core Infrastructure Initiative's Best Practices Project [0], which was created partially in response to the Heartbleed disaster. It's a list of 66 practices that all open source software, including scientific software, should be following.

[0] https://github.com/linuxfoundation/cii-best-practices-badge/...

(Disclosure: I'm a co-founder of the project. It's completely free and open source, and the online BadgeApp itself earns the best practices badge.)
The cost of 1 person varies heavily though :P
I agree in general, and find Docker one of those technologies that does not (yet) live up to the hype.
> It's too late! Have you seen another search engine make a dent in Google's market share? How about another OS challenging Windows on a PC? Another social network?

I don't see what your point is with regards to search engines and operating systems. There are a ton of search engines (Bing, DDG, Gigablast, ...) and a ton of operating systems (Linux, OSX, FreeBSD, DragonFly BSD, etc). You're complaining that Microsoft and Google are dominating their markets and being abusive, but also complaining the alternatives aren't dominating the market and being abusive?

And in the grand scheme of things, social networking sites are not very important. There's a million other ways to communicate with people that don't involve Facebook, so use one of them.
Central Bankers Spurn Call for Radical Approach at Jackson Hole
> Long functions
This isn't the worst thing. As long it gets refactored when there is a need for parts of that function to be used in multiple places.

> Bad names (m, k, longWindedNameThatYouCantReallyReadBTWProgrammersDoThatALotToo)
I can live with long winded names, while slightly annoying, they at least still help with figuring out what's going on.

What I can't stand are one or two letter variable names. They're just so unnecessary. Be mildly descriptive and your code becomes so much easier to follow, compared to alphabet soup.

What annoys me about stuff like this is that it just feels like pure laziness and disregard for others. Having done code reviews of data scientists they just don't want to hear it. They adamantly don't care - compared to my software engineer compatriots who would at least sit there and consider it.

But this is just my own anecdotal experience.
> Maybe they don't want solar

They will when the cost of traditional electricity is priced to better reflect it's environmental impact.

In fact, I personally think nobody should be permitted to not have solar in a new building in 2016. You can't remove the seatbelts from your car in 2016. You can't build a new building with asbestos in 2016 and you can't turn your semi-auto rifle into a fully-auto (in most states).
Just because you own it, doesn't mean you can do anything you want, that argument makes no sense.
Suitability of Tcl/Tk depends on what the goal is. For some applications, like utilities, GUI access to CLI tools, form-based data entry, etc., Tk is fine. It isn't a good option for a sophisticated drawing program, and I would try to use it for a full-bore word processor.

Within its domain, Tk is a very capable tool that easy to use, well-documented, versatile and relatively bug-free.

Future versions are planned to acquire antialiasing and other improvements, no doubt it will be a while before it's available.
Improvement:
Calculate real walking distanse using Google Maps or OpenStreetmap.
Can't we do away with all the complexity by just having 4 electric motors and a gas engine as a generator? Then each wheel can be computer controlled independently.
Renogy has 100W panels for $145 stateside https://www.renogy.com/renogy-100-watt-12-volt-polycrystalli...
I can't speak for where Predix is hosted.

PWS is on AWS. But Cloud Foundry itself can be mounted on AWS, OpenStack, Azure, GPC is coming and others I've forgotten.
If it's stateless, then why does rebuilding it change anything about the frequency of bugs popping up?
I don't find it fast: page loads in 4 requests, it downloads only 16 KB and still takes several hundred milliseconds to load.

Edit: it also does not use https.
These are some good curated books
https://msdn.microsoft.com/en-us/library/dn568099.aspx
http://shop.oreilly.com/product/0636920023777.do

These are not necessarily container centric.
Generally speaking, greater tolerance of a drug is correlated with higher rates of addiction, but... "correlated", so...?
Modern Fortran is pretty awesome though; it has pure functions, it's fast, scales well, is easy to read and understand. Probably much more suited to most scientific fields than Haskell.
7 Essential Money Questions Sure to Start a Conversation
Its still on page 3. Number 90, at the moment.
Yeah, I was thinking about just partitioning my drive to use just for this shit that I'm required to run.
Maglev Train Project to Link Baltimore and Washington Gets a Boost
Such a waste of USCIS time. This should have come from AILA (Immigration Lawyers); who has vested interest keeping USCIS busy on all wrong priorities.
Yes I accept orbiting the sun and not another object, as a reasonable criteria of a planet. That's included in the old definition. The new definition goes well beyond that though. If there are asteroids and debris in it's orbit around the sun, it no longer counts as a planet. It's really weird, and it's only purpose is to exclude the newly discovered planets from that classification.
> the products of my misguided cleverness.

To me this is the take home. For a long time I would try to find clever solutions to problems, or just try to be clever in general, and it is not just other people but your own future self that has to deal with it. This also applies to other parts of academic life as well such as grant writing. Code is also about communication with other people and if you are clever then you had bettered be able to explain your cleverness in a way others can understand. KISS.
For the versions issue, check out dvm: https://github.com/getcarina/dvm

While versions are an issue, it's at least a reasonable way to work around it.
You've got me all tied up
If it's not intentional, it's not propaganda.
"have to be able" is very different from "have to"

Sure, you want to be able to deploy quickly. But if there's no reason to, then don't.

And I would be very scared if Docker images had a 1 day uptime max
Look dude, this is hard. Most of the people here are rooting for you, even the ones complaining. I'm on your side.

But this isn't about you, or your feels, or what you think is going on.

All that's happening is people are trying to communicate with you and you're not listening. You're doing your best, I don't doubt that, but you've got to step back, regroup, and come at the problem from another angle.

Don't get defensive, don't make excuses. "When you make a mistake, take of your pants and roll around in it." ;-) Give people the benefit of the doubt that they mostly know what they're complaining about (even if they don't.)

It's a pain-in-the-ass, but it's the only way to deal with this kind of systemic (mis-?)perception in your community.
I'm not sure what you mean.

We are discussing the (dis)advantages of HOL vs constructive reasoning (e.g. Coq). The main
difference is that HOL-based provers like Isabelle/HOL has
classical built in from the start -- all proof automation supports classical
reasoning. Constructive reasoning eschews classical methods.

In order to prove the correctness of a program X, I need a
specification S, and then I construct a proof P that X |= S, i.e. that X
satisfies the specification S. I use an interactive proof assistant
to check the proof P. There is no disadvantage that I can
see if the proof P of X |= S is classical, at least from the point of
view of program correctness.

Maybe you mean something else?
There seems to be a trend among Fortune 100 management that belief = reality. This attitude makes sense perhaps if you're a personal trainer to help motivate people but management doesn't seem to understand that they need to shape up and convince a fairly low engagement workforce that they're all in it together and that they know what they did in the past isn't how they're going to run things in the future. This can be accomplished by hiring well-known rather than well-connected leadership, firing old managers, and rewarding employees in ways not seen before.
I know you probably aren't trying to address all cases, but just because you can't re-build your prod infrastructure in minutes or hours doesn't mean you aren't doing devops right.

Many larger companies can't do this; my company has 70+ datacenters with tens of thousands of servers. We can't re-build our prod infra in minutes or hours. We are still doing devops right :D

Like I said, I know you aren't talking about my situation when you made your statement... I just get frustrated when people act like there are hard and fast rules for everyone.
I'm not the original commenter, but the "--insecure-registry should be on docker pull" issue is one that impacted me personally. It was maddening reading all the comments from frustrated users who were running into the same problems I was: https://github.com/docker/docker/issues/8887
I watch a video/course, then do some exercises to get the feeling of it.
Have you guys been DDoSd before? All that sounds very nice until someone UDP floods you and you get nullrouted.

Looks like you're hosting at least some stuff at Hetzner, they're not going to do any filtering for you.
It's not even that easy to get metric nuts and bolts (as a hobbyist at least).
Talk to a lawyer. S/he will do a name search for the new name (which is important) and advise you on how to use it.
Thanks for that clarification. We are trying to get our feet wet by building a small 2 node setup.

We don't want to stream our logs or setup fluent, etc. I just want to make sure my logs are captured and periodically rotated. Now, the newer docker allows me to use journald as logger (which means all logs are sent to journald on the HOST machine)... But I can't seem to figure out how to do this in k8s.

Also as an aside, for production deployment on aws.. What would you suggest. I was thinking that kube-up is what i should use.
You can do either, but in general I hate changing the corporation name after you already have contracts in place etc. It isn't a huge issue, but to do it properly you need to update all agreements with a notice of the change and make sure all parties are updated. Then you also have bank accounts to deal with, credit accounts if any exist etc.

A lot of times a DBA is easier and even more appropriate, especially if what you are doing is brand specific. And at the bank you can just add the DBA as an additional name on the corporate bank account and deposit checks that are written to the DBA etc. Plus with the DBA you are not required to change any current agreements etc.

There are reasons to do both honestly, the earlier you are the more I personally would lean towards changing the corporate name, the further along you are I'd look more towards a DBA unless you have really good reasons to change the original corporate name.

Just as a point, most brands are not corporate names, e.g. look at Proctor and Gamble etc, they have 100's of brands under their corporate umbrella and most are not their own corporation or even a DBA, just a protected brand name. Even Google is no longer Google per se, they are Alphabet with Google as a core brand.
There are a few all-remote contracting companies out there. I worked for Art & Logic [www.artandlogic.com] for a few years and they sound like they might be a good fir for you. They especially appreciate generalists. I'd give them a look. Otherwise I'd recommend checking out FlexJobs as another aggregator of remote postings. Finally, the monthly "Who's Hiring" posts often contain quite a few remote positions.
Send your resume to the email address in my profile. My company may be hiring someone like you. 100% remote is fine with us.