skysight-inc/HackerNews huggingface dataset:
> Mainstream languages are Java, JS, C++, Python, etc — languages one would hardly call “functional”.

Even so, "functionalizing" mainstream languages is a thing. Gary Bernhardt was long advocating functional ruby. I deployed a functional Python module (to keep my sanity). React is becoming a progressively more functional dialect of JS, and it's relatively easy to deploy an "all functions" JS project.

> Most developers who live today were raised on this x.one().two().three() syntactic tradition in which the code is fluent —it reads and works left-to-right

a trend in functional programming is the pipe operator, at least F#, Julia, and Elixir have it to varying levels of flexibility, where you can apply the result of one function to the first parameter of the next

start_with_value
|> do_this()
|> and_this(too)
|> then_this()

being equivalent to `then_this(and_this(do_this(start_with_value), too))`

at least in elixir the power of the construct is really that you pipe into other things, like:

value
|> transform1()
|> action_with_error_tuple
|> case do
<matches on error_tuples>
end

For developer ease, Elixir has a builtin IO.inspect(value, label: "label") which pretty prints as a side effect and returns the original value, which is invaluable for debugging, especially with modern IDEs like VS code you can add IO.inspect pipes (with line number annotation) to multiple lines in a pipeline, watch the dataflow, and then when you're done delete it with ease.
Loanwords Are A Normal Thing In Languages.
Its preventing the DNS authority to know the IP of who is making the request.

CloudFlare decided its DNS should be the authority to the end user and Archive.is's DNS should be the authority only to CloudFlare. CloudFlare is breaking the bond between the end user and the Service provider.

What CloudFlare is doing is centralizing authority to itself rather allowing authority to be distributed to all owners of the domains as intended. An argument can be made that by using 1.1.1.1 you are granting CF permission to act in this role - some users may even prefer it.
How to slice your code into continuations
If you don't mind could you look through:
https://ooni.torproject.org/about/risks/

And if they sound acceptable run https://ooni.torproject.org/install/

It'll show you more about likely interception of your traffic.
The article talks about live debugging & stepping through code, which I agree, I almost never do. But post-mortem debugging of coredumps is a different thing entirely.

In my job on the kernel team at Netflix's Open Connect CDN, I do post-mortem debugging of kernel core dumps almost daily. On a fleet the size of our CDN, there will invariably be a kernel panic which you'd not otherwise be able to reproduce. In fact, I often use 2 debuggers: kgdb for most things, and occasionally a port of the OpenSolaris mdb for easily scripting exploration of the core.

My hat is off to all the people who made my debugging so much easier. Eg, the llvm/clang folks who emit DWARF, gdb folks who make the FreeBSD kgdb debugger possible, and the Solaris folks who wrote the weird and wonderful mdb.
Why do you assume these UFOs reached the Earth in a "reasonable" amount of time? The possibility that they were roaming the space for hundreds or even thousands of years before reaching our planet is as reasonable as any other.

Even if an alien civilization finds our planet, I don't see why that would imply we are inside their logistic operational range.
It's not mathematics degree, fair enough.
Why is this an issue though? Just ignore the new technology that isn't much better than the old one.
If you are a startup with a none-Facebook growth (aka most of the startups), what you want to spend money on is functionalities, not spending effort on additional technical constraints because of restricted infrastructure.

Basically, AWS (or any cloud provider) is great for young startup with 0 money, medium sized companies who can optimize to some degree and big sized companies too big to organize efficiently the logistic of buying servers and the instrumentation of infrastructure.
It leaves the mid sized startups which have an interest of buying their own infra, but migrating away from a cloud provider also have a cost of itself.

It's not as clear cut as I am stating, you also have cheaper alternatives than AWS, Azure and GCE. You can go for OVH or DigitalOcean, less possibilities and technical offering, but cheaper prices which can compute with hosting things yourself mid-term.
Goats are tasty and their milk makes good cheese. Machines just depreciate. Goats are also (mostly) self healing and self replicating. Our obsession with machines is so silly.
Append-only development with React [talk]
Wouldn't lucky be not having the accident?
How do I do that on my iPhone?
There's a guy building this exact VR thing in a startup program I'm a part of. Looks incredible:
http://virtualnihongo.com/
if the US border police plug in these devices can’t we just infect and bring down their network?
Any recommendations on what an individual could do to help? Organizations to donate to? Challenges that could be tackled by a startup? Promising companies to consider investing in?

Also, can anybody explain why the CDC doesn’t mandate reporting?
Have they stopped whitelisting Facebook and Twitter in their "tracking blocker" yet?

The BS coming from their blog post surrounding this whitelist makes me distrust them completely: "Loading a script from an edge-cache does not track a user without third-party cookies or equivalent browser-local storage" (...) "Given that most users on the web share IP addresses with other users because of NAT, it is unlikely this can be used to reliably track users"

Not only it's quite possible to know if the user is behind CGNAT or not, meaning the tracking works just fine for millions of users, but carriers have been known to inject user IDs in the replies of users behind CGNAT.
And some projects really are just simple. Scale makes no difference to their services, it's a basic OLTP + search with resizing image proxy.

This doesn't have any SLAs nor is it critical software either. 24/7 oncall is completely unnecessary.
Huh, don’t see many CEOs writing and talking like this. And I don’t think a flunky wrote this.
Squats stronglifts.com

Focus more on form than putting up more weight
> It's not meaningless, it's precisely how it was/is used in law

I mean the current common meaning is meaningless; to wit: "Exceptions to the rule I just propounded make the rule stronger, as opposed to disproving it."

> Two other idiomatic expressions that have similar confused usage are "proof is in the pudding" and "begs the question"

The first is misquoted ("The proof of the pudding is in the eating" is immediately obvious) and the second is a horrible translation which would have gotten a failing grade in any school which taught Latin and which should be forgotten.
Linux's diversity also makes it difficult to package and distribute non-malicious software, so I'm not sure that's the poster child for how to do security without compromising usability.

(The situation is admittedly getting better with Flatpak.)
I'm not claiming the federal government is better. Only that it isn't obvious that more local = automatically better. Both approaches have drawbacks and advantages.
This sounds very unlikely. So SUN Microsystems claimed that you should run service for them because of GPL that had classpath exception? Even without that exception that is not how GPL works.
It reduced some costs

What were those?
> but I do have bookcases of read and pending math books in the living room.

That doesn't really tell me much.
> Cutting the programs will never come close to the money saved by producing just a few less bombs and aircraft a year.

The defense budget is about $680 billion. Total government expenditures are 10 times that, over $7 trillion.
Scrum isn't designed to make work more productive for the developers. It's mostly because development is a chaotic process, and it forces everyone on the team to sync regularly. The overhead for scrum is high, and gets in the way of flow. It's good for menial work, the kind where a dev doesn't have to think over a problem for several days and just ticks things off a checkbox.
I agree, most young startup goes with PaaS (Platform as a Service) like Heroku, OVH or even Elasticbeanstalk, even us we started with that and then migrated to IaaS and FaaS.
I've been in a similar Telegram group for nearly 4 years now, some of us knew each other from elsewhere online, the rest were strangers before. Its a nice thing to have.

I've never thought that much of larger scale social media, it always felt like shouting out into the void, especially Twitter.
And that’s not counting the more than $3 trillion spent by state and local governments, which are all for social services and infrastructure.
I enjoy the pure logical aspect of maths, but really dislike the notation/abstraction aspect.

I think that if we could rewind time and humanity had to reinvent math from scratch, it would probably end up very different from what we have today; most of the underlying logic and ideas would be the same, but the abstractions, notations and representations of those ideas would be completely different (and possibly better/simpler and more logical).

When it comes to code; whenever something is kept a certain way because of historical reasons, that's called technical debt and it's a bad thing.

In maths, basically all of the abstractions and notations are the way they are because of complex historical reasons. Math never gets refactored.
the moon changes shape, you can see with your own eyes. you're probably a round earther :D
Haha yeah I was taking a risk, but I was pissed of lol
> There is no guarantee the name server they are querying is the same as the server in the A result

That's ok. Let me try to explain a bit more:

Queries to 1.1.1.1 are going over public internet. And even though they are encrypted, they also carry metadata with them, including IP addresses of who is doing them, precise time, rough size, various OS specific stuff, etc. And packets going out to authoritative servers from 1.1.1.1 are in clear text. There is a very tiny window of possible queries out of 1.1.1.1 for encrypted data coming in from some IP address and therefore only a tiny number of possible responses from authoritative servers. Given that and enough intercepted data all over the world it is easy to correlate clear text DNS responses with IP addresses or who got responses from cache and on which popular website ended up, etc.
To this point, JS has been very careful to not get in the way of functional programming, as it doesn't really try to stick to a specific paradigm. There is even a proposal to add pipielines: https://github.com/tc39/proposal-pipeline-operator.

Personally, I think forcing yourself to a specific paradigm is a waste of energy. I've tend to just write code that best expresses my intention. Sometimes the code turns out more oop, sometimes it turns out more fp, and often it's more of a mix.
Paying Social Security taxes does not entitle anyone to receive future benefit. Per the US Supreme Court (1960), Social Security taxes are no different than any other income tax. This is not a theoretical distinction, as the US can and has denied Social Security benefits to Americans that have paid Social Security taxes for arbitrary reasons. The Supreme Court ruling was based on one such case.
> Doing “something else” means (1) rethinking your code so that it is easier to maintain or less buggy (2) adding smarter tests so that, in the future, bugs are readily identified effortlessly. Investing your time in this manner makes your code better in a lasting manner… whereas debugging your code line-by-line fixes one tiny problem without improving your process or your future diagnostics.

I've been a professional now for about 15 years and very, very rarely do I get to work on "my code". Almost all of the code I have to work with was written by someone else originally and I have to just modify the system for new requirements. Tests do not exist or if they do they are largely incomplete.

So the only thing to do is to step through find the problem, fix the ticket and move on.

Sure If I get to design the system I normally write it very simply / well structured with appropirate levels of abstraction and with enough tests to expose the bugs in my code. But very rarely do I get paid to work on my code, because my code doesn't need a lot of maintenance. I normally am asked to make changes to bad systems.

> Brian W. Kernighan and Rob Pike wrote that stepping through a program less productive than thinking harder and adding output statements and self-checking code at critical places. Kernighan once wrote that the most effective debugging tool is still careful thought, coupled with judiciously placed print statements.

Thinking harder when I have a project with millions of lines of code (this is normal in large financial systems) won't help me. A debugger will.

I think a lot of these famous programmers have never had to work with something terrible and probably never will and that is why they make such blasé statements.
> We continue to use Heroku as our main web platform. Despite its premium cost over AWS, Azure, and Google Cloud, Heroku’s built-in deployment and configuration tools allow our team to move faster, more confidently, and more reliably.

This is just bullshit, really. I'd buy this excuse from a service like Snapchat/Facebook in their early years, but unsplash is nothing that changes dramatically all the time.

Every single point in their analysis just shows how they like to waste money. Imgix as the main image CDN? Start serving images using thumbor and a cheap CDN like BunnyCDN or KeyCDN.

They could easily save 60% on their monthly bill. That would enable them to hire 1 or 2 engineers capable of maintaining a few dozen servers on AWS, DO or GCP.
I searched for this myself. Found a tweet from last year and the current statement on their site. https://adoptopenjdk.net/quality.html

> Java Compatibility Kit (JCK) / TCK Compliance

> At this stage the London Jamocha Community CIC (aka LJC) has not been able to reach an agreement with Oracle to use the Java SE Technology Compatibility Kit (TCK) under the terms of the OpenJDK Community TCK License Agreement (OCTLA).

> We will continue to work with Oracle on this matter.

> All AdoptOpenJDK binaries are tested with our suite of functional, integration, stress, and performance tests, including real workloads from popular languages and applications. We are very confident in the quality of our builds.
As far as I can tell they're selling data. Their API requires hotlinking so they can track everything. They know exactly how often each picture is viewed and downloaded. Unsplash knows which images are successful and which ones are duds. I'm not sure who they're selling to, but I'm sure lots of folks would be interested.
COBOL is a valid comparison in terms of its space occupied and the verbosity the language is. The difference is cobol is really mainframe era and java is mini / unix era. Its client side except via phone is largely gone. But like cobol still in mainframe apps, so would be java. We do not see that gone as mini/unix not dying.

The windows server running java is an area I am not sure and not much encountered. But windows and Microsoft languages are the only competitor here.
Why is this so rare?
I mean everything already has a cancer warning on it. Consumers just blow it off.
How about the savings of moving regular anticipated loads to traditionally colo or managed infrastructure? That type of usage much, much cheaper (CapEx+OpEx) than shoving it all on AWS for million$ per month like Apple or Netflix (who can afford it).

Cloud *aaS is best suited to several major use-cases:

0. Experimental projects of limited duration

1. "Peaking" overflow capacity for burst of transactions or daily sinus maximum load (/.-resistance)

2. Batch jobs (ephemeral computing)

3. Disaster Recovery/Business Continuity (DR/BCP)

4. Informal IT to bypass bureaucracy

Source: Hi, I'm a former client-facing Fortune 200 AWS consultant from back in the day. I don't own Amazon stock or have any current conflicts-of-interest.
Depending on how you define "functional", it's been on the rise for decades. It's just that the goal is a horizon, not a point. For example: Does the language support recursion? It's functional by the old standard. Does it have first-class functions? Ditto, but by a newer one. And so on. These days, it seems to be about making functional composition a major theme, often with side-effect-free styles being favored. Maybe later it'll shift further, to languages derived from Coq or Agda being the things people mean when they talk about functional programming languages.
Just because you haven't been affected by a virus doesn't mean you never will. For example, the patch for the zero-day exploited by WannaCry was sent over windows update a few months before WannaCry existed. I personally use Linux, so Windows Update doesn't exactly exist for me, but I still update my system whenever such updates are available. Both SIP and driver signing are both mechanisms to prevent the installation of rootkits. If you do get a virus, such mechanisms would prevent it from hiding itself or causing more damage to the system.

Not running dodgy software is indeed a very effective way to not get viruses, but that doesn't mean you shouldn't take more security precautions if they are available. What if, for example, malware exploits a zero-day in your browser and successfully installs itself without any interaction from the user? Windows Defender and related antivirus could detect malicious activity from such malware and remove it on windows and Gatekeeper/SIP/driver signing and related systems could severely limit its impact.

Mozilla probably introduced extension signing to prevent less technically inclined users from having adware installed into their browser. X.509 introduces certificate expiration, and X.509 is the most widely used mechanism for signing things. The only reason you have this problem is because the folks at Mozilla forgot to renew that intermediate certificate. While I agree that it should be possible for users to disable extension signing, as users should be able to do whatever they want on their own system, you shouldn't blame them for forgetting to renew a certificate associated with an additional security measure built to protect users from malware.
My book may work for you (free to read online): “JavaScript for impatient programmers”. http://exploringjs.com/impatient-js/toc.html
Paintings, PCBs, and Possibilities – How Chinese Copies Became Originals [video]
it does feel like the normalization of deviance

it's also entirely predictable that a non-negligable fraction of users -after enabling studies and verifying everything works again- will ... simply go on with their lives and forget about disabling studies...

I also don't understand why the certificate graph is not exposed through a user interface, so that the user can add and remove certificates, or enable and disable certificates at their own discretion. This should have been obvious when the certified add-ons were introduced. Then all they would have to do is host the certificate file on their own domain and everyone could follow the simple steps in the GUI to replace the expired certificate...
How Changing 1% of Your Financial Life Can Make You Happier
Fun fact: end-to-end latency in midrange digital wireless microphone systems is 2.7ms [0]. People sometimes wonder why we bother with 5-6 figure specialty audio and RF gear when we could "just" use general purpose computers and WiFi. This is one of the reasons.

[0] https://www.shure.com/en-US/support/find-an-answer/ulxd-dual...
Java is much closer to C++ than COBOL. COBOL has been massively obsolete for decades. Java has a lot of historical cruft but the basic syntax is still somewhat modern, mostly based off of C++ and agruable better.

Like C++, it's modern features are being slowly added. There's a huge difference between Java 8 and 11, in performance and features. Innovation is hardly dead.

Java EE and Spring are both terrible. I recommend trying some of the newer frameworks out there to see how much nicer things have become. DropWizard is my favorite right now.

I'm no Oracle fan, but Java is more "open" in many ways than it has been since the beginning. It wasn't till a few years ago we had a feature-complete high performance OSS implementation as the standard.

Oracle will try to ruin it, but the GPL JDK and history of projects being forked away from them makes it fairly safe. It's not in the interest of any Java user to have more than one standard.

IMO Java isn't going anywhere. It's been top 3 most popular language for over a decade. JS is somewhat promising but will never match Java in performance and multi-threading support due to core design decisions. Go is too verbose to get industry buyin to replace Java in most use cases. WASM is promising in the far future but it will take years to have a full browser and server ABI. The only real contenter to replace Java is C# and so far it's not getting much traction.

If anything killed Java it would be C#. Value types, no type Erasure, unsafe code and some native vector support. But it hasn't and probably won't ever dethrone Java. Java has a combination of decent features and an insanely huge amount of library support that makes it the default language of many companies.
They tell you in the blog post.

"We continue to use Heroku as our main web platform. Despite its premium cost over AWS, Azure, and Google Cloud, Heroku’s built-in deployment and configuration tools allow our team to move faster, more confidently, and more reliably.

As we’ve detailed previously, the alternatives would undoubtably be cheaper on paper. But in reality, the increased simplicity and freedom offered by Heroku for a small, product-focused team is a major cost savings advantage."
Is Switzerland really the best comparison? Most of the immigration to Switzerland is from Europe, and mostly the wealthier countries in Europe.
But for who.
Photograph of multicolored “Cloud” Galaxy combines 1,060 hours of exposure
He cite Linus, who says that not using debugger result in longer time to market. which is good for Linux in his mind. How is this convincing for me?

Anyway, imagine a detective trying to figure out a murder scene without going through it step by step. Of-curse with experience come speed. So, weird flex but OK. I will still prefer C# over any language just because the debugger in Visual Studio is amazing!

After re-reading the article, I see it as another "Just code better" which hopefully will make it easy to pinpoint the bug just from the problem itself. In complex system with a lot of feedback loops, It's nearly impossible without debugging or using logs (which for me are just serialized debugger).
As someone who used to be able to get away with 6 hours of sleep when I was young but now can't operate properly without 8 hours of sleep, does this mean my gene is somehow changing as I get older?
Actually (about 7+ years ago?), I did dip into python and wrote a stock taking and auto order generating system for one of my kitchens in it, never really got the chance to revisit it after that though. I do remember how surprised I was at how quickly I got it done (I was coming from vb6 at the time).

I may have some automation things I can do at my work soon, I might write up a blog about that, interesting idea! (Queue the 'if I only had more time' chant haha)
Assume this only covers stealth planes flying below the height of the base stations?
I also have Situs Inversus Totalis. Thankfully I haven't had any major health incidents to date, and my experiences with doctors and nurses has been similar. EKGs in particular can be quite interesting. :)

I'm also diagnosed with Primary Ciliary Dyskinesia, and your mention of asthma issues as a child had me wondering if it's something you're aware of? About 50% of people with PCD also have Situs Inversus Totalis. The primary symptoms are a chronic cough and congestion.

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