skysight-inc/HackerNews huggingface dataset:
I've been using java since Pre-1.0 and professionally since 1999 and I don't see checked exceptions as being particularly high up the list of java issues.

Even with all the functional stuff they almost never seem to really create a major issue.

My biggest issue with Java is just the way they've caved and constantly added new stuff that is always grafted on so it's never quite as good as a language that focuses on that programming paradigm from the start.

But none of the problems in the language compare to the scale & scope of the problems caused by Java's default developer & architect culture. The culture is terrible... everything gets overcomplicated, overabstracted, etc. and you've got charismatic charlatans convincing wide swaths of developers to misuse and abuse language features in ways that have made a lot of people hate the language and have produced a lot of buggy and hyper inefficient code.

Java itself doesn't have to be bloated, slow, buggy, and a massive memory hog. But the java developer community has continually made decisions to structure their java software in a way that makes that the default condition of Java systems. The way the Java language constantly gets new giant features grafted on plays into this.. everyone jumps on the latest language addition and misuses it for a few years before they come to understand it. By the time it's understood there's something new to move onto and abuse.

Java became everything about C++ it was originally supposed to simplify.
"Life if for those who dare" - my grandma ;)

(Originally in Dutch: "Het leven is aan de durvers")
Wherever something is wrong, something is too big. -- L. Kohr

My goal in life is to be the kind of person my dog thinks I am.

Most people are not rational, they are TRIBAL: "my gang yay, your gang boo!" It really is that simple. The rest is cosmetics. -- War Nerd

All things come into being by conflict of opposites. ― Heraclitus

More often than not what's new isn't good, and what good isn't new.

Growth for the sake of growth is the ideology of the cancer cell. -- Edward Abbey
Serverless OAuth Proxy
Great point. I do think physical product (especially vinyl) adds a three-dimensional, tangible, aspect to intentional listening. Vinyl has the act of placing the record on the turntable, flipping it over, looking through the artwork (which may be involved), etc. It enhances the experience even more than just staring at an MP3 playback would.
Default virtual is quite the whopper, for example.

Interesting. Could you elaborate on why you find that so?

By way of illustration regarding why I ask: I've been writing Java code for 20+ years now, and I can't remember a single time that the "default virtual" behavior wasn't what I wanted. And I wrote C++ before moving to Java so I'm familiar with the approach of requiring one to mark methods as virtual explicitly. I've just always found that the Java approach makes sense. What am I missing?
Why do you want to? So you can extract money from them? Don't. So you can have someone to control and moderate and exercise power over? Don't. So you can have the prestige and status of a community owner and/or high traffic website owner and/or successful person? Don't.

Have you noticed that HN was originally a small group of smart industry knowledgable people, and gradually they trended towards disengaging as it got too big and busy and it became a crowd of jeering Redditor plebs like me? HN is a marketing machine for YCombinator, not a real community. If what you want is really "to build a big site with lots of users", the word "community" doesn't really apply, ask what you want "how do I build a site which tempts large numbers of casual users?".

Communities stay small. If your reason is you want a place where people who like X can discuss X then become a good place for those people to do that, be present, engage all the time, invite appropriate people to it and make it interesting enough that they have reason to come back, make it about what they want (could be a mailing list) instead of what you want ("my new forum written in React with a mobile app backed by an IRC channel!"). That will likely stay small - people probably already have a place to discuss X, there's probably a Reddit about X, and the real thing they'll be interested in is who else goes there (and who is excluded), not where it is or what software it uses. There's way more community in 50 people discussing a thing than in some mega-site built for ad revenue. Not much prestige or excitement in that, though.
Blocks are cold by an imprecise measurement.

Decreasing the downside means you can apply the hopefully-optimisation more aggressively for more gain so I would expect it to matter.
How do you configure tmux such that the keybindings does not conflict with emacs? To use them together, did you change your tmux keybindings, or emacs keybindings, or both? Do you mind sharing your keybindings?

As a long time tmux and vim user, I picked up emacs just so I could use org-mode, and installed evil-mode. I have been using GUI emacs but I'd love to use emacs in tmux. In tmux I had been using C-a as the prefix.
I guess my question is: as an amateur radio enthusiast, why should I tolerate a special exception for THESE people to broadcast data if I can't even do something as simple as coordinate club meeting addresses in private over the airwaves?

Even if I saw HFT as a valuable thing (I don't), it's unfair to create a new exemption for these people just because they have money. And if you suggest that he government shouldn't be involved, then keep in mind the only practical force stopping someone from jamming these transmissions is the exact same government bandwidth allocation guidelines.

This should not be understood as an infight by HFTs. It should be understood as the radio waves of the world being a public, shared resource and folks asking, "Are we changing these rules now?" If so, it should be done equitably.
Totally - the argument isn’t anything to do with developer’s not paying the 30% - it’s that a whole load of parties want to run their own stores without having to maintain the platform.
Overcoming the Limitations of UDP Options
Anything that is not hardcoded is technically input.

But there is a reason we have a word for config.

It's a specific kind of input: it feeds the boostrapping state of your program, it's not the main data your program process.

The difference is important: structure, complexity and dynamism requirements are not the same.
Generally speaking, it's good to have goals, a purpose, and a creative outlet.

Tangentially, I know that personally, something I struggle with, that has caused me frustration, is that I often feel like in my work life, I am forced to work on projects that I think are basically bullshit. I'm being asked to implement a feature that I believe is useless, or to work on a project that my intuition tells me will get axed later, have very little or no impact, or is based on terrible design decisions and just painful to work on. That leaves me feeling powerless and unmotivated, and has pushed me into a depression in the past.

As a programmer, having a side project can be a nice way to get what you can't always get at work, which is a sense of self-determination. A sense of working on something you actually believe in, something you can actually take the time to design cleanly and properly. Side projects can be a much better creative outlet than work. I hope that I can eventually find a job where I get to work on something I truly, really believe in. That's been very difficult to find so far though.
haha, downvotes. Don't be so prude, have a laugh with me.

(or enjoy the chance to double downvote if that does something for you)
> You may be furthering existing misconceptions or old grudges that really should die off. Actively invest in meeting new folks as a counterbalance.

This one hits home. I've been at a rapidly growing org for nearly a decade and have grown a massive amount in turn. Things that I thought were the case sometimes ceased being so, literally, years ago.
An alien species would certainly be incompatible with our germs, possibly incompatible with the basic life-chemisty of our planet, and would likely be far enough away that we're restricted to swapping a message like once a generation assuming we're anywhere near right about the basic laws of physics. I wouldn't worry too much about it. The worst case is they will troll us.
I'm afraid of signal drops.
There is an interesting book called
_The Fallacy of Fine-Tuning: Why the Universe Is Not Designed for Us_ by Victor J. Stenger where he shows that most of the fundamental constants that people may think can only be explained with some kind of anthropic principle, or more to the point, intelligent design, are really more constrained than that.
>Those that buy yachts and islands are a lot less frequent though.

I dunno, there's a whole site devoted to renting and buying islands around the world

https://www.privateislandsonline.com/

Some of the prices aren't too over the top.
I love articles about the cutting edge of AI - because it always ends up putting the spectacular glory of nature front and center.

Any time you see an AI promo with really big numbers claiming to be close to replicating human cognitive functions, just remember that the human brain has 100 trillion synapses. So much of our discourse around AI right now is nothing more than chimpanzees scribbling on a wall with a crayon and calling it a "self portrait".
I think that's an accurate portrayal of the "ivy league" type unis in the UK. They may not be what they once were, but they have a particular romanticism about them that people aspire to attend them.
It's the only idea that works from the point of view of those growing and making your food and shelter.

There is no magic porridge pot. Somebody has to make the stuff you want to buy, and they ain't going to waste their life making stuff for you if you're not doing anything in return. Why should they?
The Reddit founders talk about this in their episode of "How I Built This":

https://www.npr.org/2017/10/03/545635014/live-episode-reddit...

At about 19:40 is where they talk about seeding the community.
Flexible glass isn't a lost ancient mystery. We call it "silicone."
I just took some time to try this and it didn’t work. I think the Touch Bar acts as another device and UI prompts get forwarded to them. Thank you for the suggestion though.
The remarkable floating gardens of Bangladesh
Show HN: Fulfillment Service for Indie Makers
Yeah it's reasonably common for people to try and salvage checked exceptions by saying people are doing them wrong but at some point you realize the best you're doing is trying to put lipstick on a pig.

Here's a bigger problem: checked exceptions pollute your API and expose implementation details. Consider an API that stores and retrieves objects. A particular implementation does so by writing them to a database via JDBC so you get SQLExceptions. You have two basic approaches:

1. Include SQLException in your function signatures so the caller can deal with it. This exposes the implementation detail; or

2. You can hide it by transforming that checked exception into something specified for your API. At this point, what benefit have you gained from SQLException being a checked exception? You're hiding that detail.

For (1), you're baking checked exceptions into your function signatures such that it can be really difficult to change later on.

If you sit down and think about the practicalities the argued upsides of checked exceptions are essentially nonexistent and unchecked exceptions are actually strictly superior.

Here's another pattern that happens with checked exceptions in Java:

try {
doSomeSQL();
} catch (SQLException e) {
// do nothing
}

You will see people do this all the time because they don't want to deal with the checked exceptions. A better catch-clause is:

throw new RuntimeException(e);

You can argue people shouldn't do the first and they shouldn't but unchecked exceptions will simply bubble up unless you deliberately swallow it. That's a way better default. Defaults matter.
I decided to go with acme.sh instead of certbot on some servers because I am hoping that upgrading acme.sh will cause fewer headaches. But who knows...
What happens when guys add their cats to their dating app profiles
Former NASA administrator says SLS rocket will go away
The biggest environmental issue about plastics is that it gets into the ocean and kills wildlife and gets into our food supply, but recycling doesn't fix that. So whats wrong with just burying it in ground where it will eventually turn into its original form after a million years? Last thing we should be doing is shipping our trash to other countries where there is a chance it is just disposed of in improper way and ends up in the ocean.

Recycling paper doesn't even make sense. Bury it in the ground, we should be increasing paper usage to encourage more tree farms which are great for wildlife. It also is literally capturing carbon and burying it.
That's how you build hype though. I like Rust (haven't used it in years though) but the marketing hype-train is one of the most effective I've seen - perhaps other than Java in the olden days.
Didn't Apple use Java at one time for iCloud / mobileme backend?
Perhaps I'm old, but who needs an API for an SQL query? I'm not sure I understand the use case, or the advantage of something like this over a regular API call to a backend which would also allow you to do e.g. authentication. Enlighten me?
I’m sure he must have meant to change the last digit, but something went wrong. We exist because of a typo!
The title says it does. If it doesn't, the title is a lie.
The Rust community is really overboard with the cheerleading sometimes.
A Neovim plugin that lets you write your .vimrc in Lua
I imagine we could come up with some way to handle this. For example, put the storage as a responsibility in the judicial branch.
Hacking My Phone
hi
I dropped my phone on the floor the other day and now the screen is entirelly black. And ive been searching for an eternity for an answer on my question, but i can't seem to find any.

Is there a code to extract files from my phone????

please help, my phone has super important things i need
I'd be curious to know your thoughts on the Foreign Service as a post-child career. My wife and I were young when we had kids, and will be empty nesting at 46. I took the sample FSO exam online this summer and actually loved it, enough that I'm wondering about diplomacy as a second career. Did you encounter anyone in that scenario when you were younger? Did they seem happy?
Cool! I'll have to go out and buy some Pringles, I need those things done.

Normally I don't buy Pringles at all, not in decades. Because, honestly, they're the consistency of pasteboard and taste of mostly salt. The bottom rung on the snack ladder. I snack on nothing instead of Pringles if that's the only option.

But the can! That seems worthwhile now that you call out its many uses.
While that is valid, two wrongs don't make a right.
Yes, but making coffee the old way would ruin Nespresso's business model.
No, it’s actually all throughout the city, pretty much every district has at least one, many have multiple bases: https://www.berliner-feuerwehr.de/ueber-uns/freiwillige-feue...
Quality metrics surrounding depression? Can you elaborate?

Also, are you the right person to complain to about the quality of my depression? It is quite poor and I would like get a refund.
Exploring AWS Lambda Deployment Limits
Cassettes are kind of a unique creature. Dolby invented a lot of technologies that greatly improved the sound quality of cassette tapes. However, my understanding is that none of these technologies are widely used anymore in the consumer market. So anything you buy made after like 2000, be it cassette or player, will have terrible sound quality unless it's designed for studio use.

Is it possible that you used an old, higher-end cassette player to record the blank tape?
> Certainly disagree. Google has quite a few competitors, Amazon, Facebook, Apple itself (searching via Siri in iOS versus a web browser) not to mention incumbents like Bing and DDG who have taken a little bit of market share. There are alternatives that work just fine. As for Youtube, Spotify is coming after them and then you always have new products like TikTok, or streaming services like Twitch.

Again, we don't share the same perspective here. As a consumer, some of the products you've mentioned are acceptable substitutes. But I'm not just a consumer of digital products. I also produce them.

As a producer, there's really not the same sense of competition you seem to be implying here. Google owns 92.5% percent of the search marketshare (globally). Bing/DDG/Yahoo might as well be rounding errors in comparison. 90% of customers say that they primarily find new video content on Youtube. Vimeo is next. The products you've listed are not really direct competitors (and this is actually pretty normal, entrenched monopolies don't lose to direct competition, they eventually get replaced with paradigm shifts).

So to hammer home my point here - As a producer, I literally have to make results available on Google, and upload videos to Youtube in order to reach most of my audience.

Now - I also use those other services as well - I happily send folks to vimeo links instead of youtube, and DDG links instead of Google search. So at least I have some chance to promote those alternatives.

In Apple's case, I have to release on their app store. Except... wait a minute... I can't even try to promote a possible alternative! If you use an Iphone, you literally cannot choose to get my software through another channel.

They are enforcing their own store monopoly with their software dictatorship. And just like a car, no one is going to go out and buy a completely different phone to use my one app. It's just not practical.
Oh, good. Trolling. That's never been a serious problem before.
Very exciting.

Also Facebook open-sourcing its static typed Erlang prototype in November.
I've noticed that at smaller shops - IME - choosing a new language wasn't frowned upon.

However once you start getting into very heavily used production services, choosing a different platform becomes increasingly difficult.
Spain and the rest of the French colonies all over the world. And as I said, French was seen as a language from people in high positions.
BitDust CEO talking about the project, live now
My understanding is that default virtual is preferred because the JIT compiler is capable of inlining or devirtualizing most of the calls.

It would be a huge mistake in a statically compiled language because the static compiler doesn't have as much information as a JIT in flight.
I've been using Scala quite heavily recently, having mostly used Haskell for years, with distant memories of Java. Scala allows Java methods to be called, but doesn't bother with checked exceptions, which has bitten me quite a few times.

My preferred style of error-handling is Option/Either, since I can implement the 'happy path' in small, pure pieces; plug them together with 'flatMap', etc.; then do error handling at the top with a 'fold' or 'match'.

Exceptions break this approach; but it's easy to wrap problematic calls in 'Try' (where 'Try[T]' is equivalent to 'Either[Throwable, T]').

The problem is that Scala doesn't tell me when this is needed; it has to be gleaned from the documentation, reading the library source (if available), etc.

I get that a RuntimeException could happen at any point; but to me the benefit of checked exceptions isn't to say "here's what you need to recover from", it's to say "these are very real possibilities you need to be aware of". In other words checked exceptions have the spirit of 'Either[Err, T]', but lack the polymorphism needed to make useful, generic plumbing. The article actually points this out, complaining that checked exceptions have to be handled/declared through 'all intervening code'; the same can actually be said of 'Option', or 'Either', or 'Try', etc., but the difference is that their 'intervening code' is usually calculated by the higher-order functions provided by Functor, Applicative, Monad, Traverse, etc.

It's similar to many developer's first experience of Option/Maybe: manually unwrapping them, processing the contents, wrapping up the result, then doing the same for the next step, and so on. It takes a while to grok that we can just map/flatMap each of our steps on to the last (or use 'for/yield', do-notation, etc. if available). It would be nice to have a similar degree of polymorphism for checked exceptions. Until then, I'd still rather have them checked (so I can convert them to a 'Try'), rather than getting no assistance from the compiler at all!
How expensive are they?
And yet the anthropic principle is not the usual answer given to all these other issues that you apply it to here.

That is not because just about everyone is too dumb to realize that it stands as a true statement about these circumstances; it is because we have better answers - answers that explain not only why we could not exist in these alternative scenarios, but which also give a coherent explanation of how the actual circumstances came to be... at least until we extend those explanations to the point where we run into facts such as the fine structure constant needing to be just about exactly what it is for any of this to work. The anthropic principle is only invoked where we do not have anything better in way of explanation.

The anthropic principle is arguably an observation that things are the way they are, rather than an explanation of why they are that way.
> checked excpetions should only be exceptions that a developer COULD handle and not ones that he can't

And that's kinda the problem; you can declare the ones a user MIGHT be able to recover from, but there's still the chance of unrecoverable or unforseen errors, so you wind up declaring THROWS EXCEPTION anyway...

> in C# the library designers usually create a "Result" object that has a boolean of succeded or status of enum instead of using exceptions for failures. i.e. most i/o errors are not recoverable, thus c# does not enforce you to recover from them.

Depends on the operation but yes. Either There's a Try___ Pattern (where boolean is result, and 'out' parameter from method is your parsed value) or some will do an enumeration pattern.

Still, I'm a fan of Option for these sorts of things nowadays...
The issue is basically that tail-recursive functions need to have this information recorded in their signature (for external interfaces), but this is not recorded in C and thus you can't provide this guarantee at the interface boundaries.
This isn't how he built it; it's why he built it. It doesn't describe what the app does at all, just its goal ("help you deal with emotions").
It sounds like you actually didn't care about the money or risk/reward, yes? Don't you think it's a lot easier to meet your own expectations under such conditions, as compared to the calculus of startup-joiners hoping for a healthy financial outcome?
They're usually employees. They only see a chunk of that.
Sending data from a HTML form to a Google Sheet
Ideas are worthless, execution is the game
My take on sharing ideas - let me know what you think about it.