skysight-inc/HackerNews huggingface dataset:
> I’ve come to appreciate that this attitude may be necessary… that companies (with headcounts in the 50-500 range at least) cannot afford to have some of their people pulling in a different direction than their roadmap. And that people who will do that must be excised.

There's a big difference between differing opinions and outright insubordination though, and one should not mistake one for the other.

IMHO, a good leader should encourage his underlings to express their opinions and giving him feedback and advice, but when the boss has made a decision then that decision should be followed.
A leader who does not allow the former is a weak leader.

But it is difficult sometimes, because being able to give and take criticism in a constructive way is a skill that not everyone has, but it can be learned.
Peter Norvig summed it up in one of his presentations https://norvig.com/design-patterns/design-patterns.pdf

"Dynamic Languages have fewer language limitations Less need for bookkeeping objects and classes Less need to get around class-restricted design. Study of the Design Patterns book: 16 of 23 patterns have qualitatively simpler implementation in Lisp or Dylan than in C++ for at least some uses of each pattern[...]"
If it makes you feel better, this is the glorious endgame for American companies as well, and the fact that it hasn't yet come to pass is not by virtue of the federal government being effective.
You can use the TypeScript API to generate this information at whichever level of detail you want.

The level of detail TS has about types during the checking phase is much higher than you would want in practice for 99% of projects (e.g. 1 + 2 + 3 has 6 different types associated with it).

The level of detail TS has about types during the checking phase is potentially lower than you would want in practice for a lot of projects (which is critical since that makes the whole feature useless if that happens). For example, the list of properties of a particular generic instantiation is lazily computed, but it's possible your program never pulls on the list so it never exists in the first place, yet is something your type-based tool might want to know.
> In my experience, it's always the junior who shouts "This could all be so much simpler!".

20+ years later and I’m still saying this. Quite possible I’m still the junior in terms of skill though.
Knuth doesn't mean "art" as in "fine art to be admired" but rather "art" as in a description of something about which it is not possible to be purely scientific about.
I think this is the slight rollback response to when they originally locked everything until it became known that I doing so they began DDOS’ing themselves. My guess is making top level tweets public mitigated this for now.
Have you ever known someone who had a goal that they hadn't already achieved?
You can build far better abstractions than what we have here. A lot of games that support more than two platforms have graphics abstractions that leak less than this.
Why not just let the compiler build the deserialiser out of the runtime information during compile time, and then throw out all the types?
I have found that the United States Bureau of Labor Statistics is a comprehensive and unparalleled treasure trove of current, accurate salary information, and much much more. (US jobs only, natch.)

https://www.bls.gov/
Hard to argue with that! I wonder why this isn't considered a solution to the author of this site.
Porn adjacent material. Technically SFW usually but not the kind of thing you want your coworkers seeing you look at.
I don't like bluetooth earphones, for the same reasons you stated.

A couple of months ago, when shopping around for a new smartphone for my son, I made a point of considering only models that have the 3.5mm jack. It's getting very difficult to find newer models. I am not an Apple fan so I considered only Android-based phones.

Ironically, I also don't like any of the wired earphones I have used in the last 10 years. They all seem to break within a year or two.

Several months ago my latest set of wired earphones broke down, and I gave up and bought a bluetooth set, a JBL model with a wire connecting the earphones, so it's a bit like wired earphones. I don't like them either, the sound quality is off for some reason, and I don't like having to charge them, but the battery life is pretty much as advertised. We'll see how they'll hold up. I still feel kinda dirty for buying them. At least I'm still with my 6-year-old phone with the 3.5 mm jack.
Focusing on Developers
shared memory, https://go.dev/blog/codelab-share although of course go added thread primitives. it's just that the language creators explicitly wanted to steer people away from the "subtle" details of multithreading.
Look, if you don’t like React just say so.
Yep. I’ve experience almost exactly the same in the past.

I’ve always just assumed glassdoor was a fake / scam site since.
Definitely this. Flask is old and well-tested, with a solid feature set and little need to change how it works.

Also you'd use Flask for basically anything that isn't an "API", but where you still want something lighter-weight than Django. I believe other traditional Python web frameworks like Pyramid fall into the same category.

The "Fast" in FastAPI refers to the speed of getting a working prototype running, specifically for an API that accepts and emits JSON and implements an OpenAPI schema. If that's not your use case, then you might not need or want FastAPI.
A strong position? They are going head-to-head with one of the largest social networks and their odds are... OK at best. They have every incentive to make their new service as desirable and accessible as possible (until such time they are too big for people to leave and then they can do whatever they want).
I still don't see the point. There is a long list of libraries that do exactly this, and do it well enough. The author has linked to them himself. The overall benefit of this would be maybe slightly better syntax for these libraries (even that is doubtful, because plenty of them already have a `reflect<T>()` interface), but still zero runtime benefit. And getting it to be accurate for 100% of cases would entail exactly what I mentioned – writing an entire runtime to do this inference.
And presumably you need to also trust your third party libraries, unless you're also compiling them from TypeScript. Right?

And even if you are--that might also involve ensuring their tsconfig.json is compatibly similar to yours. Otherwise the compiler might allow them to return null instead of the object they say they return, among potentially many other "gotchas" that are bound to appear.

EDIT: Though I think I do agree with you, ultimately. Runtime type checking imposes non-negligible costs and complexity that still theoretically should be able to be guaranteed at compile time for cases where one isn't validating untrusted user input.
Rarely do people get what they deserve.

The idea of Karma only "works" when embedded in a spiritual belief system that adheres to some form of iterative life cycle, e.g., reincarnation.
The author explicitly calls out the existence of all of these tools as being the problem. They seem to want a canonical version that TypeScript itself officially supports.
I cannot think of a dumber thesis than that ChatGPT's DAU is in any way linked to the usefulness of AI as a technology
The languages target different use-cases and rusts ownership model does indeed slow you down vs not having to think about it at all.

Esp. closures, which Go uses a lot all over the place, are quite cumbersome in Rust.

(I like both languages a lot)
Eric Schmidt: The Future of War Has Come in Ukraine: Drone Swarms
My mom was a teacher and for some reason I ended up the entire school's IT dept as a preteen, despite the school's IT dept being acceptable, just not staffed 100% of the time. I did pretty well at running a photocopier and stuff, though when I was older I eventually realized that letting a ten year old run and DIAGNOSE AND FIX the photocopier was not something that should have happened.

My mom was single and poor so I also got to spend from 3pm to 7pm most evenings sitting in her classroom, which for some years was an actual server closet, desperately trying to note die of boredom while my mother had meetings and graded papers.

This was so useful, important, and necessary for my future /s
http://web.archive.org/web/20180927070411/http://discuss.joe...
It would be trivial for sketchy websites to have fake (but real looking) "official" Visa/MC forms, or even for multiple fake "official" sites to be set up. So redirecting everyone to the One True Payment System is no solution to fraudulent websites.
s/React/React Native/

Pretty sure they're using it on web everywhere and IMHO that's a decent choice when you need state management / DOM updates.

React Native is a whole other ball of mud, taking UI decisions out of the main thread where phones want them to be and delegating them into a bolted on javascript environment.
If I've conflated Ruby and Rails, it wasn't by intent.

I do think Rails was like it was in large part by direct derivation from, and enshrinement of, Ruby's allergy to rigor - which isn't to say they're the same thing, but that the latter directly predated and heavily informed the former.
I hope the response was a single poop emoji
It would be cool if it was Archive.org scans of newspapers from 100 years ago. But I'd pay nearly as much as this costs to not have current news beamed into my brain by my home furnishings.
It’s a purity question. You can assign any attributes you want to an element. And some of them are formalized in various ways.
The article says that any new ICE designs that have been started should be completed. Given that's a 7 year cycle, that means that manufacturers who follow the advice will be introducing new combustion vehicles for the rest of the decade.

Those designs can then be sold for at least another decade. I hope by 2040 there is little demand for combustion vehicles...
You're right that today's high school diploma has little meaning. There's nothing wrong with the idea of the diploma, but plenty wrong with the institution that issues it.

For example, you found tech certifications to be valuable to you, and indicated a GED was valuable as well.
<raises hand>

I played Nethack a lot during school. The only obstacles to ascending any character were my free time, patience, ability to stay focused, and occassionally the unfavorable early-game RNG.
It's meant to represent a hypothetical TS compiler builtin that does codegen for you.
This is taking a shot at Java, and a pretty old "joke" but I've heard of this actually being a thing out in the wild:

https://stevenheidel.medium.com/a-factoryfactoryfactory-in-p...
This must be a Java joke I'm too C++ to understand.

But I was actually hoping for a factory automation online game because I feel like I need to sink the next 2 - 14 days of my life into a shapez.io or mindustry or something like that...
Hibernate predates ActiveRecord, if I'm not mistaken, and to this date I can't decide which of the two I hate more. They both do different things very wrong. So I'm not sure if you can blame ORMs on Rails.

Also I'm not sure what you mean by the documentation criticism. I criticised Rails elsewhere in the comments, but I can't really fault it for the documentation, which IMHO was always excellent. And then you also had Michael Hartl's excellent Rails guide (which was available online freely, at least at the time) which was what basically taught me modern backend development (including what automated testing is).
https://www.instagram.com/ is a thing, so I imagine it's just a matter of time. I can't disagree with their choice of releasing for mobile first in 2023 though.
http://web.archive.org/web/20120625100022/http://benjismith....
They could learn something from the software industry. We're famously good at estimating.
Harvard Professor may have found fragments of an alien spaceship
They are missing substantial features like hashtags and follows, leaving you at their mercy to show you content. That would imply it's just a WIP shipped to nearly 100M people. It's doubtful it will ever shrink, given how much is missing, unless it's in there but not production quality. My guess is they shipped it in a hurry, and now there is enormous pressure on them to add all the missing features quickly, never a good plan.
http://web.archive.org/web/20180924092925/http://discuss.joe...
Which for a depressing number of kids in Louisiana, is one of their only hopes of breaking a cycle of poverty.
Mexicans in computer engineering/science feel like wage slaves every day in mexico. those temporarily in the US get to feel like they're making bank, absolutely cleaning up. Typical computer scientist/programming in the US makes $93,000. Not sure what he makes in mexico but the median income in mexico is about $20k.

Why is the US based computer scientist superior to the mexican? Why must we address his prosperity more than theirs? To "protect" the programmer from making cash?

And remember, development is expensive, people have to pay for it. Maybe if you already have enough saved for your application, that's fine for you, but if not? It absolutely makes it harder for young people to create businesses. And on the national scale we can use more mexican app developers.

US developers are neither morally superior nor economically sounder for the US or world economy. It is the specific laborer themselves who benefits.

PS Your argument is that the country you live in shouldn't value the citizens of that country over some other country's citizens - its basically the end of the social contract and of society in general. Its a bad idea but I guess if it saves you $15/h on a construction worker its now moral in your eyes?

Absolute drivel.
http://web.archive.org/web/20080609170037/http://benjismith....
What I want to know is how "the regularity of completed calls, call duration, long-term inactivity, range activity, or successful incoming traffic" translates to a trust score. Do less trustworthy people tend to make longer or shorter phone calls than more trustworthy people? And what even is range activity, not to mention how does it relate to trustworthiness?
> Slowly piecing together the fates of all the people on the ship is deeply satisfying, sorta like a sudoku puzzle.

Return of the Obra Dinn relies completely on the fact that you can make guesses and the game will confirm for your benefit whether or not those guesses were correct. The information you're "piecing together" is not actually present in the game - you have to guess it, and sometimes the game will tell you that that's what the game developers were thinking too.
Aren't all these sites limited by (and biased by) the selection of offer data they collect? Unless they are working directly with payroll companies to obtain a uniformly random sampling of offers, they're not going to be accurate. What incentivizes employees who get below-average offers and companies who give below-average offers to share that data with these salary sites?

Example: Everyone who even knows someone who makes $500K at Facebook seems to love posting about it here, but nobody who makes $100K there seems to feel the need to boast about it.
Sleep sort - invented by 4chan.

The rest of the short story also reads like it came straight from r9k
The criticism of open source software the author presented is a lot more nuanced, and I for one agree with it. Even long before loot boxes etc, the overwhelming majority of "original thinking that used to create interestingly novel experiences" in gaming did not originate from the OSS community.

It is a completely different story when it comes to non-gaming software though.
http://web.archive.org/web/20180223065908/http://discuss.joe...
I still can't stand Pydantic's API and its approach to non-documentation. I respect the tremendous amount of hard work that goes into it, but fundamentally I don't like the developer experience and I don't think I'll ever feel otherwise. I use it because my coworkers like it and I've learned its advanced features because I had to in order to get things done, not because I like it.

I would love to see a FastAPI alternative still using Starlette internally, but using Attrs + Marshmallow + Cattrs + Apispec instead of Pydantic. It would be a little less "fast" to write a working prototype, but I'd feel much more comfortable working with those APIs, as well as much more comfortable that my dependencies are well-supported and stable.

The problem of course is not that gluing those things together is hard. The problem is that now someone has put untold hundreds of person-hours into FastAPI, and replicating that level of care, polish, bugfixes, feature requests, etc. is difficult without putting in those hundreds of person-hours yourself.
if you just want to draw a triangle, there's higher level libraries for that purpose. this is a low level library built to abstract (but map as close as possible to) modern backends (Vulkan, DX12, etc). the idea with these backends is to give precise control over the pipeline - that kind of precise control does not lend itself to the higher level abstractions you are looking for.

that said, it's not like this scales linearly so that 1,000 triangles is 385,000 lines of code. there's a lot of plumbing to setup the pipeline for your application's specific use case.

again, if your use case does not require the flexibility, look elsewhere.
Cold Email Marketing with Open-Source Email Extractor
Oh, my daughter listens to Lemon Demon. She shared some of it and I told her she has good taste.

This, um, artwork, seems very on-brand. I like it.
That's because Zod doesn't use type annotations as input. We're talking about wanting to use type annotations as input so that we don't have to make our code as ugly as Zod makes it.
Presentation: Magic Pocket: Dropbox’s Exabyte-Scale Blob Storage System
Location: Paris

Remote: Yes, but I would prefer an hybrid mode in Paris.

Willing to relocate: No

Technologies: Django, Nuxt, TailwindCSS, Docker.

Résumé/CV: david-dahan.com

Email: david.dahan3 [a] gmail.com

I built multiple ambitious products from scratch in early-stage startups and created my own startup. I have a deep understanding of the requirements of a startup, and I'd like to become the founding engineer (future CTO) of an early stage startup. I have more than 10 years of experience. You can read my blog: https://david-dahan.com/blog (mix of English and French).
The message passing queues in CSP aren't any different from buffered queues, right? I've been asking people this for some time and never have heard a convincing "no, and here's why they are different". There are CSP implementations in C++ and Python and their implementations seem to be buffered queues that block if there are no readers.
So now you're stuck writing for an awkward inner platform language rather than using the TS syntax itself.
Am I the only one who Eric Schmidt rubs the wrong way?

The Google name lends him a certain cachet and credibility, but after reading the book "The Age of AI" he did with Kissinger, I really see him now as just a rich guy who likes to talk about many things, but doesn't really offer any real insight or anything new.

Sort of like a middle manager who thinks he's brilliant...
72 MB is egregious for a Twitter-clone MVP. For comparison, the full-featured Twitter app itself is 40 MB. The Mastodon app weighs in at 1.6 MB.
Related:

Why I Hate Frameworks (2005) - https://news.ycombinator.com/item?id=28920095 - Oct 2021 (296 comments)

Why I hate frameworks (2005) - https://news.ycombinator.com/item?id=12635142 - Oct 2016 (66 comments)

Why I Hate Frameworks (2005) - https://news.ycombinator.com/item?id=9203959 - March 2015 (63 comments)

Why I Hate Frameworks (2005) - https://news.ycombinator.com/item?id=6542817 - Oct 2013 (37 comments)

Why I Hate Frameworks (2005) - https://news.ycombinator.com/item?id=6283601 - Aug 2013 (118 comments)

Why I Hate Frameworks - https://news.ycombinator.com/item?id=2787525 - July 2011 (100 comments)

Why I hate frameworks (2005) - https://news.ycombinator.com/item?id=1533274 - July 2010 (55 comments)

Why I Hate Frameworks - https://news.ycombinator.com/item?id=431786 - Jan 2009 (125 comments)

Why I Hate Frameworks - https://news.ycombinator.com/item?id=95722 - Jan 2008 (18 comments)

----

Edit: related ongoing thread:

A FactoryFactoryFactory in Production (2017) - https://news.ycombinator.com/item?id=36638525 - July 2023 (62 comments)

Normally we downweight follow-up posts but that thread is quite good!
Okay. Map the Five Eyes database of 'all humans' to output public websites.
My experience with Goroutines is that eventually you run into the limits of working with them and your code explodes in size. Your

for item := range channel {
// code goes here
}

becomes

for {
var item Item
var ok bool
select {
case <-ctx.Done():
break
case item, ok = <-channel:
if !ok {
break
}
}

// code goes here
}

(If you have a solution to this pattern, please do share! I would _love_ a better way.)
Once I requested an insurance reimbursement for a transportation expense of about $20.00, on the basis that their chosen service failed me that night.

The reimbursement was denied, so I appealed. COVID lockdowns were active, and the petty bureaucrat on charge of my appeal barely knew how to use her phone. She said the request was denied due to illegible documentation, which was bullshit.

They announced that the appeal was still undecided, but they wanted to grant themselves an extension of several weeks to study it more closely. I appealed the extension, and presently I was mailed a check for the full amount.

How much is your time worth? Is $20 worth an hour of wrangling bureaucracy?
You're missing the point. CUDA is easy but also powerful, and it shows there is no reason that other APIs need to be hard and cumbersome.
> I think they made assumptions that engineers cannot be trusted.

Having spent ~2 decades working with engineers, I'm inclined to agree... Past, present, and future self included!
Funny coincidence. Just yesterday The Far Side featured this comic: https://www.thefarside.com/2023/07/06/1
This wouldn’t help you since Unity wouldn’t target it.

Unless you were to switch to a homegrown solution that would make use of this
Yes, Ruby has always prioritised readability and "developer happiness" over predictability and rigour, but that doesn't mean that it necessarily encouraged incomprehensible meta-frameworks. Sinatra or similar projects show how things can be done more decently in Ruby, while still utilising its malleability in order to create a nice DSL.
Internet is still full of weirdos.

What changed are primarily two things:

1) The social media war hasn't been won by those platforms that offered users possibilities to customize their page (MSN spaces, myspace, tumblr still survives) but by pre-canned, limited but simple platforms.

2)Internet citizens are increasingly less anonymous on all those platforms which makes them further unwilling to be unfiltered.
Situation: There are 14 competing type representation formats

TypeScript: We can write our own type file format!

Situation: There are 15 competing type representation formats
It would be great if McDonalds would serve first class sushi, and pizza, and seafood, and pasta, and steak, and if they would deliver frozen meals, and iron your laundry, and ...

They just serve burgers and fries. And they are doing very well with that strategy. Same goes for TypeScript.
No problem! Cheers and thanks for making this. :)
> Rust has a lot of features and paradigms but I can be productive in it by remembering that just because it's there doesn't mean you always have to use it.

The problem with kitchen sink languages is that someone on the team will use a feature you don't know about.

If enough people on a big enough team do that the project inexorably moves towards the most complex representation of any idea.

On solo projects, some of the most complex languages can be used by effectively by a newcomer. On any other project with the same stack, you need to add in significant ramp up time.