skysight-inc/HackerNews huggingface dataset:
I know a lot of math majors thrown into c++ jobs that write unreadable code almost forgetting they are allowed to use words and not just single letters (though they would probably be fine in the functional programming scene). There's a learning curve either way, write like your co-workers unless you have the experience to know your co-workers suck.
I am curious because I think I am in the same boat as you are -- did you try first seeing if you experienced the benefits (better sleep) if you cut caffeine at a certain time during the day, i.e 3p.m seems to be the magic number for a lot of people.

I am very curious about this topic because I am considering dropping caffeine, but then again I have read so much scientific literature about coffee's antioxidant properties, and caffeine being good for memory, etc, plus I love the taste of coffee, and always prefer to drink it black (I can just eat coffee beans)
Quite a lot has happened since then.

https://arxiv.org/abs/1608.01316
Iran ships First petchem cargo to Brazil
> You don't have to worry about the driver attempting to move the car with the parking brake enabled; the information of "gas pedal depressed" goes through the "brain" of the device, where it also knows that the "parking brake engaged" line is high, so its desired-torque output should just stay at zero.

You can do all of this centralization in an ICE car. Electronic throttles and switches aren't new. (Though the design I've seen for this case is "oh, driver pushed the pedal, let's disengage the parking brake since they probably just forgot about it.")
Disclosure: I'm a recent astronomy grad who specialized in computational astrophysics. Definitely biased.

The issue is that at least for many scientists and mathematicians, mathematical abstraction and code abstraction are topics that oftentimes run orthogonal to each other.

Mathematical abstractions (integration, mathematical vernacular, etc) are abstractions hundreds of years old, with an extremely precise, austere, and well defined domain, meant to manage complexity in a mathematical manner. Code abstractions are recent, flexible, and much more prone to wiggly definitions, meant to manage complexity in an architectural manner.

Scientists often times have already solved a problem using mathematical abstractions, e.g. each step of the Runge-Kutta [1] method. The integrations and function values for each step is well defined, and results in scientists wanting to map these steps one-to-one with their code, oftentimes resulting in blobs of code with if/else statements strewn about. This is awful by software engineering standards, but in the view of the scientist, the code simply follows the abstraction laid out by the mathematics themselves. This is also why it's often times correct to trust results derived from spaghetti code, since the methods that the code implements themselves are often times verified.

Software engineers see this complexity as something that's malleable, something that should be able to handle future changes. This is why it code abstractions play bumper cars with mathematical abstractions, simply because mathematical abstractions are meant to be unchanging by default, which makes tools like inheritance, templates, and even naming standards poorly suited for scientific applications. It's extremely unlikely I'll ever rewrite a step of symplectic integrators [2], meaning that I won't need to worry about whether this code is future proof against architectural changes or not. Functions, by and large in mathematics, are meant to be immutable.

Tl; dr: Scientists want to play with Hot Wheels tracks while software engineers want to play with Lego blocks.

[1]: https://en.wikipedia.org/wiki/Runge–Kutta_methods

[2]: https://en.wikipedia.org/wiki/Symplectic_integrator
Not a disagreement, but it's interesting that at least 3 of 4 of the people you mentioned are game programmers (not sure about Mike Acton because his name doesn't ring a bell). Some, like Carmack, are definitely brilliant programmers. But game programming has very specific constraints, doesn't it? Speed and size are comparatively more important than in bussiness/enterprise software, and maintenance is comparatively less important.

That said, I welcome anyone trying to knock OOP off its pedestal.
Are we talking about the "gay marriage" kind of gay marriage, or the "exposing people to the single biggest threat to life and limb, without telling them that you don't have insurance" kind of gay marriage?

Either way, I guess you caught me. I'm a giant hypocrite. I am of course quite angry at you for exposing my terrible secret. Fortunately for me, you are a supporter of individual rights against all laws and public consensus who will gladly support my right to hit you in the face with a piece of rebar.
All stuff that can be done by 1 person at your company. Go forth and live in the __future__!
"Things like land title, equity rights or non-expropriation (government's taking/buying private assets) are centuries old doctrine in the west. Those looking to invest billions into 'next-gen' manufacturing facilities want legal stability, stability measurable in decades. China isn't there yet."

There are stories in the news from time to time about situations where you have an old woman who's been living in the same place for decades (see the movie "Up" for a fictional example), and she's the last person on the land to accept payment for the land and move. The builders - either a company or the government, wind up having to build around. The way they do it is very passive-aggressive, but there /is/ law over there when it comes to land ownership. It's not all state property.

Further, do you really "own" your land here in the US? Nobody I know does. You either pay rent (taxes) to the government on the land or the land is taken from you.

There is no such thing as totally private land ownership.

WRT manufacturing plants:

Every new company in China has to be majority Chinese-owned. The government has smartened up over the decades and left behind the "everything is owned by the state, even your toothbrush" to something in between total private ownership and public ownership. So they have rules like the above which anger US investors, but are geared to the interests of the Chinese public.

They take care of their own. We used to do that here in the US, but it's all become "fuck you, the free market fixes everything!!!" wharrgarble.
5 minutes at least for most resources like instances

As of this evening, in eu-west-1 it's about 70 seconds.
One of my guiding principals as a programmer is to never add code because I might need it some day.
Caching not necessarily means more speed. Sometimes it can make things slower.

1. Get from cache

2. Determine if cached value is valid

3. Query data store

4. Put data store value in cache

5. Return data

Instead of just getting it directly. In order to be able to cache you need to think about good cache invalidation. And client side caching won't work against malicious users.
Ask HN: Software development best practices?
I've been writing software professionally now for about a decade, but I feel like I've never learned how to do it 'properly'.

For example, I've never experienced agile methodology, never used unit testing on my code, and only just recently started using source control tools.

What are the current best practices I should consider following? And conversely, what worst practices and non-best practices should I avoid?

My projects have delivered just fine and my clients and employers have been happy with the work I've done, but I feel like I'm missing important techniques. I've mostly worked solo rather than on a team of developers so that might be a contributing factor.
A swarm of small functions is a worse maintainability problem --- it's not obvious how they interact to solve a particular problem, and the amount of plumbing you need to ship state between these different functions is frequently brutal. Sometimes it's easier to stick things in local variables and just have a long function.

Languages that make it easy to define "local" functions that operate on implicitly captured state can help --- e.g., C++, Lisp, sometimes Java --- but only where it makes sense. I don't believe in splitting functions solely because they're too long.
I would love an update on efforts to find planet 9, unfortunately this article is from January 2016.
See [1] for a Hacker News thread from Jan on Planet 9, and [2] for a blog from Batygin and Brown.

[1] https://news.ycombinator.com/item?id=10939306https://news.yc...

[2] http://www.findplanetnine.com/
From the US communist parties of the 1930s to the overleveraged anti-American sentiments of US citizens in the 1960s to the massively expanded and nebulous academic rush to redefine oppression in the 1990s to the "European socialism is so perfect" fantasies of the American lower class in 2010s, Russian propaganda has long been the bedrock of modern America leftism.
I was trying to add constructive advice. Not sure why it's being downvoted?
Try [ "FileIO.fromPath(" filetype:scala ] on Google :)
Yep that's the one.

I read the state department report too. The 'disguised subsidies' they called China out on included 'advertising' the solar companies' existence on local government websites.

Clearly they didn't expect anybody to actually read that.
Bayesian inference completely solves the multiple comparisons problem
There's a lot of great web-tech based solutions. Other commentors are covering those, so I'll suggest something different: For a take outside of the web, Golang with OpenGL bindings has a lot of promise for shipping $everywhere.

The https://github.com/go-gl github org has repos with comprehensive pre-generated OpenGL linking. When building off these, you need almost zero interaction with any host libraries. Cross compiling is a breeze. I made a demo application on Linux one afternoon to try it out: I was able to hand the code to a friend with a Mac, and he compiled and ran it first try. It's hard to understate the level of "wow" there.

Golang+GL also ships to mobile devices. There's a little squeeze dealing with the app stores, but fundamentally, build on GLES2 and you can go anywhere.

https://github.com/google/gxui/ is one library on top of these foundations that went all the way to providing (beautiful!) cross-platform widgets that can be used to quickly build a desktop application.

Unfortunately, gxui, though a very attractive proof of concept, is now unmaintained. (At the same time, it's worth mentioning that it still works; there's no insane deprecation schedule or fast-moving/fast-breaking libraries to wreck your day here.) If anyone Out There is interested in renewing this project or starting more frameworks like this, I'd love to collaborate.

Overall, there's work to do here, but if you have some appetite for cutting edge, the foundation is in place to nail portability properly.

Finally, this is unrelated, but I feel compelled to give an anti-pitch to pretty much everything in C/C++ ecosystem of GUI tools: it's a landscape of last decade's promises, and today's despair. I've had comrades complain bitterly over time they've spent in codebases where the wxwidget string objects got out of hand. I have a half dozen applications suffering from various C++ linker hells on my various computers and can't recommend QT with a straight face. I still haven't gotten all my gtk3 and gtk2 configs to line up on my last debian reinstall and all the font sizes are fragged on the computer for no known reason (I literally the gtk configs in my dotfiles in git; I can't imagine how different machines drift)... And I haven't even said a word about build and shipping infrastructure required to really tackle cross-platform. I'll say it again: the entire C/C++ ecosystem of GUI tools is a landscape of despair.
Subscribly-Dashboard for Subscriptions
> Regular caffeine use alters your brain’s chemical makeup, leading to fatigue, headaches and nausea if you try to quit.

I drank my last drop of coffee three and half years ago, because I was noticing those same symptoms on days I didn't get my "dose", which got me worried. So I've endured the headache and irritation for about 2-3 days, then it was over.

Interestingly I never craved coffee after, nor did I replace it with tea or something, it must have something to do with that I mostly drank coffee when hanging out with people. Now I order a vitamin powder drink with cold water that's sold in my country. In the mornings, I enjoy cold water or cold milk for refreshment and focus.
Subscribly is an one-stop solution for all your active subscriptions.

With a simple and intuitive UI, adding subscriptions is very easy. You can choose from the popular services or add a custom subscription. With monthly/weekly/bi-monthly and many other subscription cycles, you can easily track payments at the micro level.

Subscribly also notifies you when a bill is due, so you'll never have to deal with the sudden expiration of services and late fees. Also it helps you to plan your expenditures so, you know which subscriptions are no longer required and need to be terminated.
There's the Hitler mention I was waiting for! A new record!
American Poverty
I've never seen a Java-based app on the Mac that didn't look slightly wrong.
I believe there are certain genes which cause people to be slow caffeine metabolizers.
Looking Good 'On Paper,' This Exhibit Merges Mundane Paperwork and Fine Art
Still, apply common sense. Sometimes the probability of adding something is so high and the cost of making an extension point so low that it makes sense to design with extensibility in mind. These extension points are rare, though, and usually occur at major module boundaries (e.g., plugins), and don't need to be scattered through random bits of your code.
> For this reason, caffeine isn’t technically a stimulant on its own... but a stimulant enabler: a substance that lets our natural stimulants run wild.

This is the bit I find fascinating and perhaps explains why some people are so sensitive to caffeine and others don't experience discernable effects. There are probably underlying physiological (and/or psychological) differences in individuals self-stimulant production, and caffeine magnifies those effects.

Armchair scientist conjecture: I'd suspect that people who are considered "Type-A" are more strongly affected by caffeine as it enhances their natural, self-stimulating mechanisms (whatever those are).
I'm not sure what I said has anything to do with agriculture. Could you explain why agriculture makes lone people safer? Humans are not going to be bear/lion/tiger food even alone if prepared properly. We are very dangerous/inefficient prey with just a sharp stick or two functional legs.
How great that the American information distribution system lets us see the truth, whereas the Russian one just fills heads with nonstop lies. For instance, it lets us see how America always has other countries' best interests at heart, even if the policy implementation is sometimes misguided, whereas non-allied countries are just aggressively seeking power. It's a good thing our media is dedicated to the truth, and not towards perpetuating narratives that are useful to those in power.
I started blogging a while ago but it is very hard to blog daily.
This article did get published in the American Journal of Physics, and there was some back and forth discussion also published in the Journal. Unfortunately, the published version and the ensuing discussion is effectively inaccessible ... they want 30 USD from me to read each published response.
lol, reminds me of my teen IRC days.

Wrote a bot that generated a name and joined a big public channel.

Stuff like jenny21 tina123 etc.

Then it spammed some generic greetings and waited.

"Hello, anyone wanna private chat?"

When someone started to talk to it it would start another private chat with another person choosen randomly and copy the messages of the first person to the second and vice versa.

Then it copied the whole conversation in a different channel.

Hilarity ensued.
Businesses that show commitment to sustainability inspire greener customers
GTK+'s Windows support is mixed. It mostly works, but bugs reports don't seem to get much attention and you're on your own if you want Windows binaries. macOS support is effectively an afterthought. The only teir 1, actively supported platform appears to be Linux which makes me wonder why the project advertises itself as "cross-platform."
>> If Pluto is #9, what numbers are Ceres, Sedna, Eris, Haumea, and Makemake?

I don't care about them. This is a cultural issue. There is no fundamental principal governing how humans are to name space rocks. This is map making. Exceptions and one-off special rules are made all the time. We accept europe and asia as separate continents. If that can be a thing, then Pluto can remain a planet.
You've probably used wxUniversal. Try wxOSX/Cocoa, it wraps native controls such as NSButton. You can even get this object and use Cocoa API directly (inside appropriate #ifdef block obviously).
I don't really see what the relevance of a foggy coastal city is to the general solar market.
I've seen the same stupid crap said about the japanese, koreans, etc., over the past 40 years. The story remains the same: Corporate US management sits on its hands and watches the rest of the world innovate. Because thinking is too hard and investing in R&D and capital equipment is too expensive.
>Note that the article is about big solar, not home solar.

The article mentions "residential systems" twice as points of comparison. It also references the 5% reduced costs in home installs in the subtitle of the article.
Yes the windows link above is for Universal Windows Platform apps which isn't what most people think of when they think "windows app". For React Native on desktop I've been bundling my React app into a Electron shell, works pretty well.
the author of the blog isn't pluralsight, it's Troy Hunt.

Troy isn't an employee of Pluralsight and it's his content that he publishes via their platform.

It's his choice as content creator where to publish the content he creates.

Obviously if users don't like the platform he's chosen, they can choose not to consume his content, this isn't some situation like a Marvel movie say, where only one company can produce that type of content.

There are many other options for security courses.
Is any of it available on Sci-Hub, or be made to be available there?
But why does it matter that these are not part of TTIP? If CETA is signed into law and includes those regulations, then US companies can just route their business with the EU through their Canadian branches and get the same benefits.

(Unless, of course, European parliaments discover some leftover spine in their bodies and vote against CETA.)
Worth noting that Incapsula had _multiple_, _world wide_ outages back in March. Akamai is a more expensive, but more reliable/proven alternative.

http://www.bauer-power.net/2016/03/incapsula-had-major-world...
Why do this to your customers. It means Amazon video money is wasted unless I own a fire stick--and who the hell owns a fire stick? The only reason to buy it is Amazon video!
+1 on this, I'm having a very pleasant time working on a couple Electron+React apps right now. I've been starting my apps based off https://github.com/chentsulin/electron-react-boilerplate but diverging greatly after getting it running.
Bringing security and agility together in DevOps
It's either this, or something like objective collapse really does happen, physically, which seems less likely.
It's just a different type of DRM lockin. It's absurd the store from which we buy content can dictate how and where we consume it.
It is, but every once in a while when game engine or library gets posted on, say, HN, you get the usual arguments how code is not unittestable, functions pack boatload of different behaviour into themselves or take in 20 arguments, because if it works for me in my rails app, why shouldn't it work for game engine?
Scientists discover a Massive galaxy consists almost entirely of dark matter
Agreed, but really long functions are an indication that the code could benefit from some judicious refactoring.
Newer cars have sensors that do it for you. Either the cheap-style "show a light if pressure is too low" ones or the nicer "real time readout of tire pressure available on an info screen somewhere."
Well since the first part of the argument is "The USA is like Hitler so Russia is flawless", I'd give the post 0 out of 10 and conjecture that 4chan must be down right now
Algorithmic Generation in Ultima Ratio Regum [video]
WW3 POPE SEZ ITS Not a RELIGiOS WAR,ISIS REPLY YES IT IS
Sure, it's complex. Take your example. The Hoover dam sells power into California. So installing solar panels in Boulder City is not that different than installing them in Los Angeles (there would be some extra grid losses in LA). If the Hoover Dam had the capacity to supply the entire southwest it would matter, but it doesn't have that capacity.

There's also the question of whether buying Chinese solar panels makes China more or less likely to convert to solar itself.
I don't understand your argument. A Powerwall, if it can get you through the trough, means in an emergency you have the same amount of power you'd have in a non-emergency.
For what it is worth, there are no long term detriments to ones health from drinking coffee. A lot of studies actually show that it is quite good for various aspects of ones long term health.

There are only some negative short term effects, like raised heart rate or mild withdrawals.

So there's no reason to be worried about drinking coffee, unless those short term effects bother you.
WhatsApp changes its privacy policy: Here's what you need to know
Startmarke is looking to create synergy with other startup companies anyone interested?
The worst thing to ever happen to "best practices" was when managers found out about them. Suddenly, we were not allowed to think for ourselves and solve the problem at hand, we also had to figure out what "best practice" to use to implement our solution.

And it's not like you can argue against "best practices". They're the "best" after all. So that makes you less than best, to oppose them!
Instead of giving me the tools to make a modal pop-up, but then leaving me to match that modal pop-up to the stylistic conventions of each OS GUI, why can't a UI framework give me a "YesNoModalPopup" that looks and acts however a "YesNoModalPopup" is supposed to act on the respective OS—even going so far as to actually be a modal sheet or a command-line prompt instead?

This, I think, is one of the bigger but oft-unstated reasons that people actually prefer to target the web rather than targeting native. Javascript's window.alert() is a function with a semantic behaviour-contract; it will alert the user. It doesn't specify how it'll alert the user, that's up to the browser to define. (And, therefore, up to the user to pick the browser whose definition they enjoy.)

Perhaps what I'm really craving, here, is a XAML-like or XUL-like constraint-based declarative view format, which has a very high-level and abstract set of controls available to be specified. Then, different GUIs could have renderer-clients for this system, that rendered those controls in all sorts of different ways. Maybe you could even mix-and-match your favourite concrete controls, like with browser extensions.