skysight-inc/HackerNews huggingface dataset:
Some rare nice words from me about C# - the not-null facility is great. It's very basic propagation that should be better and I've fought the compiler too many times over it, but I really like the compile time guarantee it gives.
You can't. The notion that people can found startups and breeze to financial success by just wanting it really badly, is delusional Kool-Aid put out by the VC-industrial-complex.
Companies paid for support contracts, so they can get the bugs fixed.
MA Department of Public Health installed Covid spyware onto 1M phones
No it doesn't, it just forces these designs to be apparent at compile type and fail there instead of blowing up at runtime.

Do you not know why Kotlin exists or why dart added null safety or why C# added null safety? Or were they also wrong in their choices?
A very good argument is that the GoF stuff should be looked at with suspicion because they didn't bother nailing down the fundamentals.
They also sold bug-fix support contracts for customers who could afford it.
>+1/-1 shenanigans

"There are two hard problems in programming, cache invalidation, naming things, and off by one errors."
> It massively helps that my wife is a partner at a law firm so we can pay bills etc, without having to have saved the cushion in advance. I also arranged to leave my previous employer with a 6-figure exit payment.

I'm happy for your success, but I feel like this should have been mentioned up front. This kind of massive leg up almost certainly does not apply to OP.
You are confusing Gemini Exchange with Genesis. Gemini Exchange for now is fine, but their earn product which actually works with Genesis (separate entity) is where withdrawals were paused because Genesis is having a liquidity crunch as a result of the fallout of FTX.

Genesis was the middle man for majority of earn products for various other crypto companies so if it goes under, which it may, this week, the fallout will continue to increase in scale as a result.
Literally all of finance boils down to trying to correctly price assets and financial instruments in regards to future performance. Anyone who can consistently and correctly price any asset at any point in the future will be incredibly wealthy.

The best we can do mathematically is to say that at small time scales, right now, things are priced what the market believes they should be price and that's as "correct" as possible.

Everything else is speculation.
If they are not happy with Zuck's decision, just sell your shares. That's how you can teach him lessons.
There are all sorts of workflows that can be arranged to prevent that while still having optimistic continuous integration on trunk.
S&P Overpromised and Overdelivered
>incompetence

I just don't buy it. I just can't believe that all these hundreds of millions of dollars moved between all these entities without anyone understanding what was really going on.
Reminds me how some folk (uTorrent team, AFAIR) thought they are smarter than those guys in Redmond and rolled out their own caching algorithm. Except they weren't in fact smarter and fucked up the memory usage by allocating all the availble memory for a disk cache... pushing everything else including OS to the swap.
The notation here really bothered me. The author defines the [closed, open) interval [a, b) as the list of all numbers number x that fulfill a ≤ x < b. Good so far, but when they talk about the empty interval [a, a) we get into problem because a ≤ x < a is a nonsensical statement. a cannot be equal to and strictly less then it self.

I think this is a problem when borrowing math concepts to programming. What the author is really talking about here is slicing, not intervals, and the slicing behavior is hopefully well defined on the construct you are working with, most of the time in a manner that makes sense to each construct, or in a consistent manner to other related constructs in the language.

If the author would stick with programming concepts, I don’t think this is a rule we should abide to, rather, a guideline which can be employed. And I think most programmers value consistency, so this really isn’t that much of an issue.
Yup, that’s why the move constructor for (e.g.) std::string has to call something like `source.buffer = nullptr;`… to prevent the source’s destructor from freeing the storage that was moved. The article covers this point pretty well.
Because it's not pro-environment, as you'd think.

More CO2 is generated by remote employees than those that go to work. The CO2 emissions generated by an office (including heating / AC / water / employee transportation - in EU it's mostly by subway / bus) are smaller compared to each individual employee CO2 emissions.

Don't have a source, but you can find CO2 calculators online.
A lot of baseless claims, I disagree.
OTOH the mere existence of committed memory makes it hellish as a user when *something* leaks committed memory. You start getting out of memory errors while half of your RAM is empty, just because some half-assed driver somewhere leaks. To add insult to injury, task manager / resource monitor is always unable to show the exact process/driver that leaks; I had to randomly kill things to find the culprit.

I'll take the linux behavior any time when dealing with poorly written software (which is most software).
With that awful `if` statement, you're calling the functions multiple times. It's negligible with the simple getters Java users use everywhere, but if that `getAccount()` call involved, say, the database, now you're making multiple calls when you don't have to.

C# at least has null propagation and pattern matching that can make that line:

if (getAccount()?.getContact()?.getPhoneNumber() is string pn) {
// do something with `pn`
}

The "idiomatic" C# way would also include properties:

if (GetAccount()?.Contact?.PhoneNumber is string pn) {
// do something with `pn`
}
If people knew about --first-parent everyone could stop complaining about merge commits in the history.
> it's the same with OS updates; people (generally) simply will not perform system or security updates unless they are forced, because everyone thinks they are smarter than the "script kiddies

Updates were not the default. And when they became almost mandatory Microsoft started bundling "features" with security updates.
That's when people started to disable this "feature".

> so now we are where we are. OS updates are forced after a time, and telemetry is not only the norm, but a very good idea for applications in use by millions of people, like Firefox.

And this doesn't change anything. Ransomware attacks are still the norm.
I still don’t understand why people watch american football over rugby. American football tried to alienate the audience by stopping the game and showing ads all the time. Rugby is a continuous game that’s much more fun to watch and has somewhat similar rules
No, (currently) fully async as long as deliverables are met. The extent of 'controlled' engineering time is requiring 1x code review from a different SWE to merge a PR which is also async via GitHub comments.
Please stop shilling your product on this website.
Can't you just convert the data to SVG and let the browser display that?
I don't see anything in https://www.mctrpayment.com/cardholder-agreement that defines "external" as outside of their bank.

It's standard banking terminology.[1][2]

[1] https://www.commercebank.com/personal/online-features/extern...

[2] https://www.lawinsider.com/dictionary/external-bank-account
I don't presume to be an expert on how reader sentiment colors an ad view. But it would surprise me if it had as big an impact as people claim, or if people actually think the advertiser is picking a side or condoning bigotry, for example. We are used to seeing unfitting advertising strewn across the web, for better or worse, without correlating it with the subject material of the page. It would at worst devalue the ad space for being poorly targeted.

Furthermore, you would need to supply evidence that hate speech is more prevalent instead of merely fearmongering that it is allowing such.
Software is often described as "tools" and so an analogy to a drill or a magnifying glass is as apt as any. In fact a car is a good analogy to a browser because we use browsers as sort of a "second home" in our computer and it allows us to "visit websites" and a browser is a whole ecosystem unto itself.

So if software is a tool and my drill is monitoring the holes I make in stuff and its efficacy in doing that, that seems fine, but if the drill is sitting in my toolbox being a busybody and sending back everything it can find about me from within the toolbox, that drill is made by assholes, don't you agree?
33 year old CTO here with a fiancee and mortgage (no kids yet, but planning in the next year). When my cofounder and I started, we did it as a side project, nights and weekends, while making sure we were still working on other things to pay the bills. Once we got it to a point we could raise VC, we did and started taking salaries. We each make less than we were before, but not incredibly lower. We're in healthcare, so our primary income comes from health plans. Personally, I wouldn't have started this if it was a strictly B2C company. Our route to profitability is a lot more clear being B2B in my opinion, which helps both my stress and my partner's stress. She also has a decent job and we've always been relatively frugal, so we could probably get by on just her salary for a bit if things got really bad.

My cofounder previously started and failed at another startup, while taking bare minimum salary. It almost ruined his marriage and was terrible for his mental health. We're also just over a year into this, so we'll see if the higher salaries works out or not.
Yes. I worked on this project for three years. This is exactly what it is. It’s also much more stable than chrome.
Just checked, what a rubbish law. Doesn’t affect the rich who drink expensive stuff while screwing the poor. In the name of protecting people as well.
... and remove the login prompt, which admittedly is one of the worst features of Twitter right now. Perhaps I'm letting my cynical professionalism cloud my judgment, but it seems to me that one of these problems takes about 4 hours to fix, while the other would be a 3-12 month research problem.

That's a neat way to guarantee partial success, though!
Sadly there is no write-up. I essentially followed the tutorial [1] on an RPi first, then split it into main and satellite after I got it to work reliably on the single node. The HASS integration (Intent Handling) is fully supported in Rhasspy, just enter the URL and the access token. I am using intents (not events, I can't tell you right now what the difference is).

I do not use the Rhasspy integration in HASS, I run the main node in a docker container. Rhasspy (main and satellite) is connected to the Mosquitto broker exposed by HAOS. The satellite pushes the STT, Intent Recognition and TTS via the Hermes MQTT handler to the main node over this connection. The acronym overload should become clearer when you start tweaking things in the Rhasspy web interface, it is very well done for the amount of customization you get.

The HASS side is done via yaml scripting. You can find my mpd.yaml at [2]. I select music to play via an ampd [3] interface hosted at the RPi connected to my HiFi (not the satellite, dedicated RPi). The sentences I use are at [4]. The names for HassTurnOff are the same as in HASS, this gets handled by built-in intents in HASS. I am considering trying out Node-RED, because I am a bit unhappy with the yaml.

I am also looking for a case. Currently I use [5] just hooked up to the ReSpeaker HAT 3.5mm and USB on the RPi with cables in a chaos on my desk. I also took apart [6] (smaller than you would expect, does not go back together nicely) and it might fit an RPi0W2 with HAT, if you take of its top. Both speakers are USB powered, so you can plug it directly into the RPi. I would prefer to stuff everything in the case of [5] and hook up the blue LED to a GPIO, but it is quite cramped in there, maybe it can "fit" by making a hole in the back.

[1] https://rhasspy.readthedocs.io/en/latest/tutorials/
[2] https://pastebin.com/M7KmQSiM
[3] https://github.com/rain0r/ampd
[4] https://pastebin.com/tsUqWwpy
[5] https://www.amazon.de/gp/product/B07DDK3W5D
[6] https://www.amazon.de/gp/product/B08GC8K8ZR
Sounds like my current job which I love.

My last job, low documentation, low meeting. Basically every bit as bad as you might expect. Every job you basically have to figure everything out from scratch.

2 jobs ago, low documentation, high meeting. Daily meetings to discuss what I'm working on and how little the rest of the team is doing. Yet nothing changes or improves.
All developers should spend time working in support. That time will make them appreciate the incredible power and utility that documentation provides to everyone...including your future self.
I have started my startup at 30 when I was engaged (now married).

Every path is different but I think there are a couple of guidelines that I recommend:
- Talk with your partner and set expectations from the beginning. Please do not romanticise the journey - it's damn hard and full of sacrifices. Others have suggested a deadline - I also did that but find it a bit unrealistic because you'll have excuses to continue devoting an unhealthy amount of time to your company. Be kind to your partner and acknowledge that they will take more load in family duties and you'll have less time to spend with them.

- Find a co-founder that is complementary to you and that you trust. Being a solo founder in your 30s with a family is super hardcore even if you already have found product market fit.

- Do not invest your own money. Finding an early champion of your project and your founder team that could be an angel investor to kickstart things is a must. The alternative is to do it as a side gig until you can reach some kind of Ramen profitability scenario - I'm not a big fan of this because you'll likely focus on revenue too early on.

Happy to chat about my experience if you think it'll be valuable (just DM)
Facebook is slowly dying.

Instagram is slowly dying.

WhatsApp makes no money.

The Metaverse has been widely rejected.

I don't understand why the Meta stock hasn't plummeted even more than it already did.
Get something running that generates money as an mvp otherwise it's a dangerous pipedream.
Ok fair. But you can formally verify your smart contracts or you can test them, so this notion of "correctness" seems orthogonal to the discussion. Even if you formally verify a normal application, you can't trust your verification once you give it to me to execute.
Cardano management has unveiled DJED, a new stablecoin that will arrive in the ecosystem next 2023. Cardano has also presented a new payment application.
Seattle is #18. At peak rush hour it is 30-40mins, the main reason being that it's across a giant bottleneck of a bridge that also has ongoing construction; driving to suburbs that are not directly across the bridge would be faster. But, I don't drive at rush hour. "Start an 1-1.5 hours later" is much easier to grant than "WFH" :)
This is inspiring and what I'd like to do, too.

I'm working on downsizing and reducing expenses. I'll have repaid a credit fully next year, that allows me to increase savings etc. Slowly those things come together.

Also trying to create small side hustles, bootstrap them, hope that something sticks and try to scale that up till I can quit the corporate job and focus on things I'd love to do.

It's probably a longer journey than expected if you've got no money advantage.
Anyone who posts baseless conspiracy theories like:

>Masha Amini died of a heart attack, a very common way for intelligence to kill people. Those who don't understand Masha Amini death as a CIA operation understand nothing about how this organization operates.

...sure doesn't have a lot of credibility when he's lecturing other people about how they're easily fooled.

You voluntarily made yourself part of a huge conspiracy when you started parroting bullshit like that. Go talk to your local mental health care professional, don't take it out on me.
with what I know of hawkeye, if they are tracking the players, the ball and have a sensor in the ball I assume you could have a pretty good chance of finding out if someone is gonna score before they do
Right, fisheries is one of the big industries in the US, not to mention that HN also whinges about overfishing in other articles
Sometimes (often?) an outdated document is still great and useful and much better than no documentation at all
Proper debugging, syntax highlighting, language servers, security audits. These are things that engineers in the real world expect a language to have, and each little language would have to reinvent each of them.

I don’t always see this as the case and this might be a very fruitful area for research. What I mean is, much like how we have tools like bison, antlr, and the k framework, I could easily see this notion extending to language servers, etc.

As for onboarding, well, who are we onboarding? New software engineers working on a general purpose language or new operations members working on a DSL?

I remember a time when CSS and HTML had yet to be consumed by a general purpose language and the onboarding for new web designers was significantly easier.
All roads lead to data collection. It wouldn't surprise me if stories like this pushed people onto Facebook or Android just because of the uncertainty that the iPhone now represents.
When you hit a merge conflict, rerere (re)members how you (re)solved it and (re)applies the same fix when the same conflict happens again. But using it can create a new problem/annoyance: If you make a mistake with the initial resolution, and revert the merge/rebase to try again, it'll remember the wrong one next time. So you have find and tell it to forget that resolution.
For people who don't spend time sorting and managing their bookmarks, tabs can be an equivalent alternative. Modern browsers will search and suggest both bookmarks and open tabs, so the UX is pretty much the same. Just that unsorted bookmarks are hidden somewhere in a separate menu/window, a bookmark bar would shrink the available space for web content. The tab bar is always there and a huge list of tabs tells me at a glance that I might want to get rid of old stuff.

> But the URL is gone when a tab is closed.

Accidentally closed tabs can be easily restored for as long as you don't delete the history. And when I reinstall a system I just restore the profile directory from the backup and Firefox will start with all plugins, settings and tabs from before.
This is the sort of thing that's great for helping engineers go from junior to mid-level and then dangerous for going from mid to senior. Thinking clearly about exceptions to "rules" is one of the most important skills you can impart.

Don't Repeat Yourself is great advice... but only if you start thinking about all the caveats where over-application leads to architectural disasters.

The GP is largely correct here: If your advice includes "never" or "always", you're probably doing more long-term harm than good.
Whether a given investment is highest return option for your investment does not change with interest rate. So it does not matter how high interest rates will go.

One thing you might be looking at, though, is if high interest rates somehow affect a given business. If a business relies on being able to get a lot of debt readily and cheaply they might be worse option than one that does not.
Other jvm languages compile to the byte code and fix this by inlining the optional transparently.

What you mean by “at a language level” would break the byte code for jars compiled with older jdks.
Amazon is making money, it's only lost a small amount over its entire lifetime.

Several of its divisions are making a ton of money and even retail could be making more, but it's constantly reinvesting to grow + it's a loss leader.
As I’ve become encumbered by life’s responsibilities, the main pivot I’ve made is to outsource a bunch of it. I spend money on this so may not be feasible for everyone but, I can project manage a small async remote team on top of everything else. Finding the team is a challenge but pulling back from the hands on technical stuff helps 1) minimize time away from home 2) I don’t end up with a hobby instead of a business and 3) I am forced to spend most of my time selling, which had always been my weakness (I’d build for the fun of it then have no plan for what to do to grow it).

I’m a night owl so I usually spend time after kids are in bed working on it. A lot of people say they find success waking earlier and getting in a couple hours before their job/family routine takes over. I think the main thing is to make a plan and talk to your spouse and ensure you’re aligned.
Comments moved to https://news.ycombinator.com/item?id=33705209, which is currently on the front page.
> You’d have to reserve much more swap than is typically ever actually used by processes, at any given time.

But if the swap wouldn't actually be typically used, then what's the problem with that?

Especially considering that the amount of disk space required for that is cheap.

And why not let the user decide for himself if he prefers to guarantee that their applications never get killed by the OS at the cost of reserving some disk space that he probably wouldn't ever use anyway (as most filesystems' performance nosedives after >90% disk usage anyway).
Kotlin (the base language) is really not that different from java. I went from 0 to standing up new backend services with limited friction. Coroutines and maybe frontends are a different story. Java doesn't yet have a coroutines equiv so that was a larger hurdle for me.

Most of the changes for me from 10/20+ hours to now we're more about identifying a style that works as effectively as I can. These types of behaviours are normal in all but the most idiomatic languages, so if anyone is doing java dev as their daily language, Kotlin felt very natural(though you really are limited to Intellij since the IDE does a ton of lifting to make your life easy).
Investers in the 1914 German stock exchange were negative for 100 years.
As they say, make it a side thing tile it has traction. If the hobby has interest, keep developing it till you can quit. Is hard but is not as risky as quitting out right unless you are able to negotiate with your wife that you will try x months and have saved enough for x month expenses.
iPhone is a phone, iPad is a tablet, Mac are computers. This is generally what people understand when you talk about the different product segment Apple divides their products in. I'd probably call of them "computing devices", but I think in general it is pretty clear what I'm referring to when I say "Apple's computers", at least to people outside of Hacker News. I think pretty much 0% of the people I spend time with AFK would think "Ah, he must be talking about the iPhone" if I said something like that.
From my experience founding companies, this is only true for high growth companies. There are loads of lifestyle businesses that make six or seven figures that were started on the side. It’s super hard if you have kids and a full-time job, but many have done it.
> Are all startups at my age generally side hustles that become profitable enough to quit my day job?

This is how I did it, but it still requires your wife to be on board. Ultimately it’s a lot of stress and if you can build a rewarding career working for successful companies you may just want to double-down on that.
How can a dinosaur bone replica be copyrighted? The original obviously isn't, and it'd be a pretty terrible replica if any creativity went into it instead of being the exact same shape as the original.
That may not even be necessary.

This demolition happened in Oregon. Despite a growing population and increasingly hot summers, Oregon’s electricity use peaked in 2000. https://www.oregon.gov/energy/energy-oregon/Pages/How-Oregon...

US energy demand has been plateauing for a while as well: https://www.eia.gov/todayinenergy/detail.php?id=38572