skysight-inc/HackerNews huggingface dataset:
They aren't missing out. They aren't buying new iPhones. Apple is missing out on a lot of revenue but they know their customers will wait for them.

I'm still on an iPhone X and will be until there is a compelling new iPhone.

Switching to android would require paying for a lot of apps that I use regularly all over again. Not worth it for me.
Well it is referred to as "the vine that ate the south".

Where I live anything left alone for a few years will be consumed by it. Its everywhere.
I agree. I did cs50 and also rails tutorial when I learnt to code. At the time rails tutorial used a normal text editor but it seems learning to set up a proper dev env was too much for many and now it uses some cloud ide. This is a step backwards. Setting up your system correctly is a critical pro skill. It's the first thing I learn when diving into a new language.
Few houses have electric driers. Japan's energy consumption rate is also lower than America's. The good and the bad.
This part of the culture boggles my mind from a distance, but I haven't experienced it firsthand. Wouldn't a side effect of this common practice be a negative opinion of merchants? Like, if you go into every shop with the implicit understanding that the merchant isn't charging a fair price, and you're going to have to talk him down, doesn't that make the merchants seem dishonest by default?

That seems like it'd bubble out and affect the surrounding communities, but I don't know how exactly. Do you have first-hand experience there?
The plane still crashed twice which is many many times higher than the non-purely-human-cause crash rate of other airplane types. Probably even then 737 MAX is still safer overall than cars, but airplanes have a higher safety expectation than cars do.
Whether I was alive is irrelevant.

It is very since you didn't experience it, and seem completely oblivious to what was going on. I wouldn't argue history with someone who had actually lived it.

eBay made a profit in 1998: https://investors.ebayinc.com/investor-news/press-release-de....

Ebay was an exception. There weren't any (many?) others. Try again: maybe you want to Google "Boo.com", "Webvan", and "many more." Archive.org "fuckedcompany.com". Or read the PG article about Yahoo.
+1 on querying model challenges: https://docs.aws.amazon.com/amazondynamodb/latest/developerg...

DynamoDB, however, has:

1) 1st-class integration with aws-sdk

2) A cool feature "streams" which can trigger other services when your data changes: https://docs.aws.amazon.com/amazondynamodb/latest/developerg...

For what it's worth, this tool kit (components) could be useful useful for the toy case of someone setting up something like DocumentDB. DocumentDB (not DynamoDB) is the mongo-emulating nosql document-based DB option-- it has automated vertical/horizontal scaling (up to 64tb https://docs.aws.amazon.com/documentdb/latest/developerguide...)

A DocumentDB cluster has no public endpoints so any resources that interact with it (ie a lambda function) need to be in the same. You can't modify a lambda's VPC unless that lambda function has a special permission set from an IAM blah blah

Automating that bit would be cool
The perfect language is the one humans won't have to write.
It's quite logical, if there were small rocks with water hitting later Earth then those small rocks with water must have hit early Earth as well; thus water was part of Earth from the beginning and it simply got entrapped when Earth grew.
> Being smarter doesn't necessarily make you more likely to be right (...)

> (...), but it makes you a hell of a lot better at rationalizing your position and persuading others.

My reading has said the opposite: smart people are far more likely to be right, but it does no good because the important thing is to be able to communicate
CBOR is MessagePack. At least cbor-ruby started with the MessagePack sources. The story is that Carsten took MessagePack, wrote a standard and added some things he wanted, and called it something else.

I wrote [1] a pretty comprehensive (and admittedly biased) critique of the CBOR standard years ago.

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

Disclaimer: I wrote and maintain a MessagePack implementation.
If you re-read your parent comment, it says "A lot of people in their 20s". That's clearly different from "All of the people in their 20s".
> That doesn't mean you won't need a "not a valid object" for a type.

This confuses two different concepts, and that confusion is precisely the problem with "null".

Most types neither need, nor have, a "not a valid object" value. The "not a valid object" value is typically disjoint from the type.

Null can't be used instead of some other type, as though it were that type. Instead, you have to perform a comparison to decide whether you're dealing with null, or a value of the expected type.

The problem with null, in languages that have it, is the inability to statically prove that terms cannot be null.

This means null is a pervasive possibility that almost always has to be checked for, which is an unnecessary source of bugs. Strictly speaking, you always have to check for null, except in those cases where you can prove (informally, since the compiler doesn't help with this) that you already did that.

> That's why there all these Optional and Maybe constructions - you're still checking for it.

The point is that option types allow you to choose whether you want to allow non-values at a particular term. If you don't - e.g. if a function returns a value not wrapped in an option type - then you're statically guaranteed to be able to use that value without having to check for null.

The only place where you need option types are where you're explicitly allowing for an optional value. And in that case, the option type helps because it statically disallows you from treating the value as though it were an instance of the underlying type.

So while it might seem like "you're still checking for it," there's an important difference in the context of that check - the compiler will give you an error if you try to use the value without unwrapping the option.
Ars literally copy pasted the reddit thread, the quality of writing is almost blogspam at this point.

https://www.reddit.com/r/NintendoSwitch/comments/ckaiiv/an_e...
It is odd to read in the RFC section 1.1 this sentence,

The format should use contemporary machine representations of data

...and then see in section 1.2,

All multi-byte values are encoded in network byte order (that is, most significant byte first, also known as "big-endian")

I know it's largely a choice of tradition, but it seems almost anachronistic to specify any new protocols as BE when LE is the overwhelming majority of machines today, and probably has been for at least the past two decades.
Unfortunately I’ve seen most project managers, BAs, and product managers that have no understanding of the VOC, requirements, or the engineering.

Very common:

Product managers typically come from sales/business development and can’t articulate VOC or requirements in an intelligible way, even though that may be a listed duty of theirs. They are great at taking their customer base to the baseball game and knocking back a few beers, but engineering ultimately has to collect those insights on their own.

Project managers that have only a PMP or a some kind of tangential management qualification treat every project the same way but do not have the technical understanding to be useful. In their eyes rushing schedules, gate clearing, and release trumps any other concerns and often the result is shipping a turd product with bare bones checkbox requirements (that they never actually appreciated, understood, or cared about) that flops. But they get to claim they navigated X number of product releases on their resume.

Business analysts possess half the knowledge they need to be competent. You need expertise in the business, customers, products, requirements, research, and analytics (basically a step just below the base knowledge you need to do systems engineering without having the technicals to develop a systems solution). You usually get someone with just enough knowledge in one area of computer science, analytics, or business (but almost never a complete suite of knowledge to provide useful input into the process).

Engineering is hard. It’s a mixture of multiple disciplines of knowledge and wearing many hats. What holds back engineering salaries is that management, sales, and business types compete with engineering to improve the bottom line, seeking to minimize/outsource the importance of technical solutions and maximize other methods/budgets like marketing gimmicks, cutting costs, and inserting processes in a kludge or bureaucratic manner with the illusion of accountability (I have never witnessed actual accountability) via their hierarchies being closer to executives and board members who tend to have a disproportionate influence on matters like budget for competent engineers.

I have seen enough turd products released that do insurmountable damage to a company that I run if I detect the scent that engineering is treated as just another resource that translates requirements into shipped products and is not on equal footing and input as sales, business process, and management.
СPUs aren't getting more powerful. Haven't been for years.
Suppose you are a Series <X> startup with a very large amount of technology to build before you surpass your competitors. In order to do a better job, you have to adjust things constantly in response to customer feedback.

Presupposing that there are years of feature work to be done, do you go with Agile, or waterfall?
Michael Kaplan's blog was indeed great; Microsoft took it down, then he started blogging elsewhere, then he unfortunately died in 2015, taking his second blog with him. Happily, archives are available at http://archives.miloush.net/michkap/archive/
10 people go blind drinking moonshine, Wisconsin officials urge people to stop drinking. Wtf is wrong with them giving this overreaction after a cluster of bad cases of people who smoked “THC” juice.
A Seattle Times article from a few days ago seems to contain more detail: https://www.seattletimes.com/business/boeing-aerospace/newly...

It includes e.g. a description of FAA bit-flip testing to induce incorrect system behavior that Boeing intends to solve by using two computers.
Wolfram is like the sole survivor of the AI winter.
VXLAN is just encapsulating L2 VLANs in UDP packets. Sounds like some confusion about linux implementation details.
In case you haven't read it: https://en.wikipedia.org/wiki/Flood_myth
Businesses typically go through phases of growth, maturation, and consolidation in that order.

It's important to understand that late in its lifecycle a business often knows that the end is near and consequently reduces its value proposition and focuses on extracting as much value from customers as possible before it's too late.

That's exactly the situation with network TV now, and the article says as much. Networks are losing viewers and cranking up the ads to meet short term profit targets, which cause them to lose more viewers. They do it because network TV has no long term future anyway. They know that Netflix, Prime, and the streaming model are murdering their aging business that was designed in a different era. They know this is not a battle they can win. So they are working on their own alternatives like CBS All Access Pass and milking the old cash cow for whatever's left before the end comes.

Meanwhile if you're still watching conventional network TV, they're just going to screw you till the cows come home with a progressively shittier product because that's what a business in its end stages does.

The most valuable commodity of today is your attention. Never in history have other people (i.e. firms) had so many ways to bombard you with things that attempt to command and manipulate your attention for their own purposes (i.e. making money). As a consequence, your attention has become extremely scarce and valuable. Network TV is now 12min of advertising per hour. Why are you giving away 20% of the most valuable thing you possess for free? Are the (increasingly lame) shows really that good?

Take back your life from the attention mongers. Cut the cord, switch to Netflix, set up uBlock and a PiHole, never look back.
This IDE was one of my favorite parts of the class.

You open it in a tab and immediately have an ubuntu instance + file system + terminal + text editor running. It has an excellent GUI, it's fast, if you mess up horribly you can just close your tab and restart the instance, and it's a standard environment for all the students which makes teaching assistants' jobs easier. It's so convenient I've used it instead of my own computer at times.

For more context, the class almost immediately dives into C and later gets into web programming, and being able to open up a tab, create `hello.c`, `CTRL-s`, `make hello`, `./hello`, or quickly run a publically-facing webserver is a great combo of convenient, simple, and realistic. The class used to use a VM which was much more of a hassle to set up, a lot slower, and overall not as nice of an experience. When being taken by 800 students a year at Harvard and hundreds of thousands a year online, that change alone has probably introduced a lot of people to programming.
it advertises itself as an actor language and being distributed and concurrent to the core, but the actor documentation has nothing but “please document me!” messages. :(
Many years ago I wrote navigation software for ocean going vessels/ships. We used double and triple redundancy on many of our sensor types. We generally used three control computers that would 'vote' before deciding to make vessel navigation changes. We also always included a "Dead man's switch" that allowed the bridge crew to take control at any time.

I can't even imagine designing aerial vehicle autopilot without redundency. The stakes are too high...

I would be interested in having a look at the statistical model they used to prove 'the system was reliable with zero-redundancy'. While designing these systems for ships the only way we were able to get an error probability near zero was when we used triple redundancy.
On HK the downvote button is in fact an "I disagree" button (or more specifically that is one valid use of it). See:

https://news.ycombinator.com/item?id=16131314

Now if it is reasonable that a designed in "disagree" button is also used for automatic moderation (greying/hiding/easier flagging/etc) I'll leave up to the opinions of the reader.

Multiple sites have implemented some form of upvote/downvote. That within itself is a great proxy for agree/disagree. The problem sites have is when they take a downvote to mean both disagree and low quality/bad/de-modded. HK technically has flag to solve this, but that isn't how the site is implemented.

PS - I didn't vote on the post above at all.

PPS - You should downvote this very post per (last line): https://news.ycombinator.com/newsguidelines.html
Correct, workers do. Unions don't. They are fundamentally parasitic, which isn't necessarily a value judgement.
What's a good way to learn more about the history and function and current status of unions? Are there any good books/resources that aren't particularly biased toward one side or the other?
> Notice that the doctor didn't disagree with that being a course of treatment for this disease.

Yes, but having a PBM tell a doctor that their diagnosis is wrong and try to change their professional recommendation, without ever having seen the patient, and with unknown qualifications, is downright evil and probably malpractice.

We have doctors for a reason. They took a hippocratic oath to do no harm, and allowing unqualified people who took no such oath to tell someone to "just take out the kidney" is abhorrent.
Microsoft Natural Ergonomic 4000
Part of AWS sells those things. AWS started 12 years after Amazon.com. Amazon has large BI orgs to build custom systems costing tens of millions of dollars.

AWS was not considered secure enough for Amazon.com critical data as of a few years ago, maybe still is not. Look at the capital one breach due to S3.

Amazon does not just give a no-limit AWS account to each of their thousands of team. In fact they are more likely to tell the team to solve it with no resources. Rival teams will want an unpopular cost savings project like this to fail so they can have more headcount and budget.
This already exists, but it isn't trendy.

It's FreePascal. Nobody believes me, but we have perfection already. No crap you don't need. No crazy corner cases. No C++ templated metaprogramming lambda auto pointer garbage. No "I can't write a linked list without a Grimoire" Rust.

It's great. You get a ton done, and simply ignore the language wars. No VM trash (Java). No web trash (JavaScript/"Webasm"). No crap.

Try all the others, and try FreePascal. It's old enough that people aren't bolting on stupid shit. The community is awesome. Everybody just gets shit done. There's a lot of art if you go looking, but none of it requires a kilopage book to describe.
OK. I've only formally backcountry camped in Arches (mile from any trail - no amenities or sign of previous camping where we were), Yosemite (we quietly camped on top of Clouds Rest so obviously no amenities), Joshua Tree (off trail, random spot with amenities), Canyonlands (Needles in a designated spot but no facilities just a marker, and Maze in a random spot with no indication of previous camping), and a few monuments/areas (Coyote and Buckskin Gulch, etc).
Compilers have a lot of relatively independent pieces, unlike a text editor. Better luck at looking at those pieces instead (Lexing, parsing, type checking, etc...)
"Ask HN: Which keyboard do you use?"

17 days ago, 22 comments: https://news.ycombinator.com/item?id=20466157
Where I work we use overlays (flannel) and it just works. I don't think we've had issues. AFAIK the primary reason was that the network can be secure/encrypted. Otherwise you're running everything with TLS and managing all the certs can be more painful. Or you're running without encryption which is a potential security problem. You still need to do that for external facing stuff but that's a lot less.
A Tour of Tagging Schemas (2015)
What I found helps the most, is to have frameworks that make implementing secure code hard. XSS is much more rare now that most people use Angular or React (plugins can be trouble tough).
It's sad to see so much hate in the comments. It would be amazing if there were more discussions with genuine curiosity rather than a dismissive attitude of intellectual superiority. Unfortunately words can only express so much.

Fascinating discovery by the way. Makes me realize how much there always is to learn and discover despite how much we already know.
Likewise. Nuance is gone on almost all topics. It's very frustrating.

I honestly believe the Internet, specifically places like Twitter have destroyed civil discussion and consideration of alternate viewpoints.

Also, I don't think the video is absurd at all. What advantage would Amazon have by being pro-union or pretending to be pro-union? And what advantage would they have by not addressing it at all?
Unions strengthen workers. A company that negotiated 1000 small contracts has the upper hand in each of them, if it is forced to negotiate 1 big contract, then they are on equal footing.
> I've seen exploitable bugs related to a pointer unexpectedly being null twice.

I've never heard of one, what I hear about endlessly are buffer overflows.

Can you give more information about these? I want to learn more.
That's very invasive. I keep all of my underwear in there in the summer.
Agree with most of the points above, but can't resist pointing out that 12 min / hour is 20%, not 12%.
There are PE's and people that have been there for years even decades that have lots of power and clout to do things associated with revenue and not get canned on multi-year or multi-month projects. Then there are the thousands of new hires that are just fodder to try to quickly get a select few managers and engineers promoted before they are canned. They essentially don't get anything of value done and do throw away work. A lot of it has to do with perceptions.
Fixed that, apparently I shouldn't attempt basic arithmetic before I've had my coffee :)
If you are speaking about Java, the only mistake they usually talk about is how the serialization algorithm and the API implementation, there are no regrets about the binary support.

And as for .NET, Python I never saw any reference about such regrets, while ISO C++ is still discussing papers for some kind of future support via static reflection.
New TV deployments at Extended Stay America include Chromecast. I am deploying them now. :)
> IMHO starting with a "heavy" IDE like Eclipse or VS just furthers the notion that useful software must necessarily be big and complex, or that such software is obligatory to development

The problem with starting with Notepad is that students then don't get the idea that the 1) editor can help you and 2) the editor is programmable.

And, sorry, vi(m) (or emacs) is simply a non-starter. We live in a GUI world and fighting against that is a disservice to students. I'm not teaching a class to promulgate a religion; I'm teaching to benefit the students and the VAST majority of them will land in Visual Studio, for better or worse. The remaining minority will land in Android Studio/IntelliJ or Xcode.

> not really a good thing to instill in beginners if we want them to be mindful of efficiency in the future.

Sorry, efficiency just isn't on my teaching agenda, like, ever. Even if students wind up using algorithms that use terrible O(n^2) (or worse) behavior, I'm just happy to have correct code.

And, please, Javascript is the lingua franca of the web. Talking about efficiency at that point is like trying to close the barn door after the horses have escaped and died of old age, and the barn has burned down 10 years ago.
I haven't studied this extensively but it looks like a great bit of sample code for someone who wants to see how to do some networking in Go. I echo the other comments that find the use of a custom transport interesting, since writing a transport is one of those things that I've always been glad I haven't had to learn how to do, especially since I'm usually just using HTTP for which Go is very much batteries-included.

This whole thing raises the question though, is this hard to do in other languages?
ergodox ez: https://ergodox-ez.com/

- very solidly built. perhaps best build quality of any keyboard i ever had

- the z and / keys are ctrl keys, and you need to type , and / twice to type those keys

- there are "mod" keys, which shift into secondary, third, ... layers

- you can control the mouse from the keyboard. i don't use it, but would like to see development in this area

- when you transfer back to a normal laptop keyboard, you have to orient yourself again

- firmware can be customized: https://configure.ergodox-ez.com. You register, "fork" the config, download the firmware and flash it. There's a graphical flashing tool that works on Ubuntu (probably other distros too) called wally (https://ergodox-ez.com/pages/wally)

- it's shipped from TW (Formosa!!), you have to pay a lot of money to ship it back if you want to do it within the return period.

- expensive

- my "a" key sticks sometimes. i haven't nailed down why yet.

have also tried kinesis advantage. recommend it. it takes up more space, but is also well built. it has a feeling like it's medical/industrial grade. above average build than even an expensive mechanical keyboard.

check out g305 for mice. it's small, accurate, and wireless
It's also a very strange way to spell "shareholder"
> The hissing cassette was never music lovers’ first choice.

In fact, musicians used these things for recording demo tapes, well into the 1980's, using equipment like the Tascam Portastudio (a four-track recorder using both directions of the tape at the same time).

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

Check out some of the notable users, like Bruce Springsteen and Weird Al Yankovic.