skysight-inc/HackerNews huggingface dataset:
The obvious explanation is that Sf tech workers have increasingly worked remotely since 2020, and working remotely encourages them moving to further-away housing with lower rent.
'Cryptogram' in a silk dress tells a weather story
Few years ago a neighbor in my apartment building found out I knew about computers, and he wanted me to "just build his app for him". Being polite, I tried explaining to him that I really don't know anything about app development, I just move and shift data around on servers and draw pictures on whiteboards, but I think he thought I was just being humble. Eventually after some relenting, I told him to email me with the details, and gave him my email address.

He emailed me the next day, and "all" he wanted was a website that allowed users to upload arbitrary videos of any length, and recommend fun videos that could be shared, and have a comment system.

I replied back explaining to him that that's a lot more than "just an app", requiring a fair bit of server infrastructure and storage to keep all the videos, even if my labor were free. He replied asking how much it would cost to run. He thought it was on the order of like $12 a month. I explained that closer to like $1000 a month to get started, like $200,000/month if it gets popular, not counting the ~$25,000 it would take to get a really crappy prototype built.

He stopped talking to me after this.
The program was written in 1988. I ran the text through LZSS which was published in 1982, so was available before 1988. I used a 1989 public domain version by Haruhiko Okumura, which is after 1988, but I don't believe it is optimized to improve upon the compression level of the 1982 algorithm.

It took it from 2357 bytes to 534 bytes, which is smaller than the Xmas.c program which I counted as 917 bytes, but another poster counted 913 bytes.
While the author has a point, this website really makes me feel also the ideas guy dodged a bullet
I used to believe this, but the sad reality of modern society is that the current "meta" is suppressing viewpoints that damage society from your point of view, and if you decide not to play the meta by, say, opting for carte blanche free speech, others who have damaging views that actively harm your position will embrace this "meta" instead and YOUR views will eventually be suppressed (see Karens flooding local school boards to get basic LGBT literature banned, who have no problem being hypocritical about the fact that they just want to censor things they disagree with but will leave literal Nazi literature alone). It's an arms race of who can control the dialogue and get their views in front of the most eyeballs, unfortunately, and if you fail to see it that way, you will lose.

In the face of fascism, restraint in the name of principles make you weaker than the fascist.
The core of a GUI framework is nearly always written as asynchronous events and drawn responses, with the developer at that level responsible for the state machine in the middle and invalidation of the GUI in response.

Coordinating large asynchronous systems by hand is challenging. There can be surprising interactions. For example, tapping a button again in the middle of an animation is an example of something where the complexity often leads to the program getting in a bad state or even crashing.

This is one reason that structured concurrency and asynchronicity primitives have been added to many programming languages - to make reasoning about and managing such state machines easier.

Some modern GUI frameworks attempt to simplify this by instead let you declare the UI and its relationship with your data, the interdependencies there, and may have sophisticated means to monitor data changes. This breaks you from having to maintain most GUI state within your program - you respond to user actions by updating your program state, and the GUI responds to those updates.
The biggest issue with GUI programming is always "when to reflow" and "when to relayout".

Take fading in sidebars, for example, which influence how the main content frame is rendered and are different in size on mobiles (e.g. icons, icons with labels, bigger icons, bigger labels or even a more nested structure on desktop, with a burger icon for fade-in and fade-out).

This is almost impossible to implement if you only have horizontal and vertical box layouting at your disposal, which is the most common denominator among frameworks and their renderer concepts (GTK, Springs, QT, etc).

Flexbox and tweenable properties like transparency, rounded corners, margins, paddings, colors and z-indexes are almost a hard requirement these days in terms of UI design. And those features are very hard to implement without a renderer pipeline that can influence both fragment and vertex shaders.

And this is not talking about state management of the UI elements, which is a whole world of problems on its own. React Native's approach, for example, is utterly broken on older mobiles due to how they re-flush the whole state tree on every single frame (which makes old mobiles lag due to them not being able to keep up with the amount of FPS required).

Getting the reflow right with e.g. calendar widgets and calendar popup views which are rendered by native APIs is a nightmare. As there is no unified way to do it across platforms, there eventually will be a lot of redundancies that are implemented, and a whole lot of quirky code behavior.
A cheap shot that misunderstands the so called "crisis" in psychology, which almost comes entirely from the fact that brains are non randomly exchangeable, unique, samples differ, the brain is complex, multiple ways to solve problems, and sussing it all out is complex as hell.
I think this is sometimes referred to the Dunning–Kruger effect.
> We've lost a significant amount of people in Russia/Ukraine, and now Gaza.

There must be this dick and today it's me. Warfare these days is mostly precise. It's no more throwing tanks at a problem but rather precise actions to destroy infrastructure. There is no dehousing strategy to break people's support for war.

Statistically seen, significant without numbers doesn't mean anything anyway. However as we are talking about people, any discussion like that is in danger to enter a terrain of technocracy. Ad an unaffected, we shouldn't lead such a discussion
It's not dangerous to hire a CFI to give lessons. Arrogance (even if it's unintentional) about one's own competence is dangerous in the pilot seat, even with a CFI in the other seat to monitor and try to take over if/when this person does something dangerous. Imagine a trainee filled with the OP's nonsense in his head thinking he can recover from a spin forcing the CFI having to fight him for control of the airplane, for example. Or maybe he lies and says he has more experience than he does, and the CFI fails to do his diligence (e.g. checking the trainee's logbook): even merely starting the engine can be a disaster waiting to unfold, much the more so taxiing or, god forbid luck get the trainee that far, takeoff.
It sounds like they work in a genuinely toxic environment, and utterly exhausting. I get that the Chinese have few options, but why would you voluntarily subject yourself to this level of physical and emotional abuse?
Alright now, let's restore some order to this thread.
You are not misremembering, it could/can still do this.
> In Ruby 3.1, IRB introduced the autocompletion feature. While it has proven to be a useful feature for many users, it also came with some issues that were hard to overlook <lists several>

Really appreciate the attention to detail. I know little of ruby's internals, so usability flaws like those mentioned are difficult to put into google and try to fix (some usability hiccups are not due to bugs but due to misconfigurations - i.e. something I've set up incorrectly). These little quality of life improvements make a world of difference when using IRB for hours to get stuff done. Thank you to all those that make ruby awesome!
The story I heard is that they needed to retool an existing factory for new ultium vehicles, and they were prioritizing production of more profitable vehicles (which I guess they consider the Cadillac Lyriq, Blazer, and Hummer to be). Supposedly they will be producing Bolts before the end of 2024. So a gap of about one year, with a much better specced platform... If only they can get the reliability of the platform right. Chevy insists these issues aren't ultium related, but I have doubts.
It already is, taking into account differences in income.
To Ruby’s credit, they foresaw what others bolted on years if not decades after.

Remember Python didn’t start with being fully object oriented, everything is not exactly an object, they bolted on the useful functional stuff later (like every language has now after a weird period of people crapping on FP for some reason) and to top it off bundler, and Ruby version manager again were just largely copied over to Python as pip and venv. I like both languages, and I say this after getting schooled a few times about great things I thought Python did that I was a few times rather embarrassingly shown to have just been Ruby ideas picked up by others.

I’ll give you the language looks a bit funny and I’m not saying it’s better or anything, I work in Ruby and am all too aware of the warts. Just trying to share what I’ve learned that they did well because it’s a good and thoughtful community.
My (possibly incomplete) understanding of ‘gardening leave’ in finance is that it’s based on the idea of specific knowledge of trading positions or specific deal term sheets. It’s not that you can’t compete against us in general or use general techniques, but for 30/60/90 days you have specific knowledge of ongoing operations you can’t use.

The hiring firm pays for, but cannot use, the hired person.
Don't geniuses also tend to score better on stuff like reaction times as well though, rout calculation, etc though?
Data races are definitely exploited! If we are considering TOCTOU issues then this is a very easy way to get fairly reliable and simple exploits. If we are talking about races of the “two threads access the same value” kind then it’s easy (well, assuming reliability is an exercise for the reader) to turn this into a UAF or OOB access by having one thread work with a stale version of an object that has been modified elsewhere.
New York’s history of progressivism is checkered and contradictory, so the real irony is (unfortunately) that this is not ironic, but rather a highly predictable weave in its tapestry.

New York might have abolished slavery in 1827, but they also were the only state to perpetuate literal feudalism until a mini civil war prompted a constitutional rewrite in 1846.

The sociopolitical history and the scale of intrigue and corruption within New York would rival most countries. The name Empire State is well-earned.
Exactly; it takes a long time to build an application, and even longer if you want it to not completely suck. I don't feel I was any "good" at programming until I had been a software engineer for like 6-7 years. I really don't think I'm that great now, but at least I've gotten a lot better at knowing the rough effort required to do things.

Obviously I'm not going to claim that what I do is as exhausting as digging ditches or laying concrete (fundamentally I do get to sit on my ass all day and stare at a big screen), but it's not zero effort.
>it is more important that the implementation—or the design of the implementation—of a piece of software be simple than that it be correct.

This is true and when your compiler actually abides by these values it is shocking how many issues just go away. The problem is that gcc and clang are nowhere near a simple implementation, asking the question of how exactly gcc or clang arrived at some given assembly for some given input is a really complicated answer. So much so that it makes me say that the relationship between the programmer and the compiler becomes adversarial. It would be one thing to just have very complicated optimizations but the whole "undefined behavior lets us to anything" approach is what makes it unbearable.

People can (and do) point at the C spec for fault of this and it is true that if the C spec was more strict then these compilers would not have the free pass to do these crazy miscompilations. However there is nothing stopping these compilers from just not doing that, there is nothing stopping them from just defining their own sane behavior for what the C spec defines as undefined behavior. It is no longer the case where we have a dozen or so C compilers that people need to target with their programs, the spec is not the bottom line anymore.

The Plan 9 compilers are the perfect example of getting this right. They define sane behavior that a reasonable programmer would expect for what the C spec calls undefined behavior. They are not gargantuan, their optimizations are not crazy. It is generally easy to understand how the compiler ended up with the assembly you see in the binary. Yet they are competent enough to selfhost an entire OS. The insane complexity of these other C compilers is simply not mandatory. They are not perfect of course it is still possible to write bad code but the result is no longer pathological, which is a giant help when you're actually trying to figure out what is going wrong.
It is not.

The more bans on non-competes spread in the US, the more the SF Bay Area loses one of its main competitive advantages.

Silicon Valley would not exist as a tech leader if non-competes were a thing in California

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

https://computerhistory.org/stories/spinoff-fairchild/

https://computerhistory.org/blog/fairchild-and-the-fairchild...
"We just need some software that does X", this is as reasonable as saying "we just need a building where we can do X".

People get this idea because they see companies create programs over and over. The same applies to buildings, building are created reliably over and over and over. If all that stands between you and success is a building, or some software, you're in a good place.

The difference is people have respect for the value of a building, they understand the cost, they understand the reason for those costs. People don't have the same understanding for software.

Nobody would say "I thought you could just throw a 4,000 square foot house together for me, it's nothing special, just a common house", but apparently some people will say "I thought you could just throw a website with a database together for me, it's nothing special".
That shouldn't affect the drivetrain. The infotainment system definitely has some issues, but something bigger is happening.
I always thought Go as a GC'ed language is unsuitable as a caching instrument?
100% bullshit. No amount of flight sim prepares you for how a real plane feels or how to handle it. Down-voted for bullshitting people without a warning and potentially endangering people

source: 11 years of flying experience
And also produces so much waste since almost no one writing python thinks at all about performance leading to some of the dumbest looking architectures i have seen to scale up to even a small amount of requests.
Address spaces are typically difficult to mix things in, unfortunately. If you sandbox harder then it’s not actually very useful to have them in your process anymore.
> 15 seconds of internet for the first things that entered my mind. It's really not that hard.

You know full and well what I’m talking about. Virtually nobody that’s far away from those conflicts posts pro-whatever side content on their social media. Mainstream media basically doesn’t talk about any of those.

My claim was that “nobody cares”, not that “there are no articles whatsoever being written about children dying in other conflicts”.
A famous writer told this same story. People would come up to them and say "I have your next book. It'll so be easy, I've got the outline, you just have to write it." They really believe "just write it" is a small detail.
You shared things and people used them, yes. Now the new approach is… what exactly? Write software aimed at a minority of activists who pass its purity test? Be my guest, but spare me the piety and attitudinising of OP, and don’t be surprised when small scale results in high unit costs and missing features.
This is a really nice idea! Excellent encapsulation with minimal setup. You could slap a SOCKS proxy (via -D) on top of that for even more usability (although, oddly I find that these days all I ever need is DNS, HTTPs and SSH...)
All the packages are signed. But one practical reason might be that a computer doing a fresh install may not have an accurate system time, which TLS depends on.
The thing is: it is simple. But it is hard too. Non-technical people have trouble figuring out which parts are simple and which aren't.

Slightly outdated, but in principle still relevant: https://xkcd.com/1425/
From the article:

> Ubiquitous presence of HTTPS allows you to pass your data through very restrictive middle boxes!

This is, in fact, why all — or nearly all — proprietary VPN protocols (so-called "SSL VPNs") implement a mode that initiates a tunnel via HTTPS, at least as a fallback if not as the primary mode of operation: precisely in order to have a mode of operation that works with almost any connection to the global Internet.

I'm one of the main developers of https://gitlab.com/openconnect/openconnect, which implements many such protocols, and wrote https://github.com/dlenski/what-vpn, which sniffs or identifies even more flavors of TLS-based VPN servers.
I remember playing an Eragon version of this game when I was a kid. I couldn't figure out what the software was for years, and finally figured it out a couple years ago. Unfortunately I couldn't find any information on the specific instance I played, but it was nice to get an answer :) Good memories there
Everyone does warmup before you measure. But measuring isn't always done right because we actually measure the GPU time only but some people naively use CPU time which is problematic because the process is asynchrenous. They have a few timing scripts though and I'm away from my GPU. There are some interesting things but they look like they know how to time. But it can also get confusing because is it considering batches or not. Some works do batch some do single. Only problem is when it isn't communicated correctly or left ambiguous.

Their paper is ambiguous unfortunately. Abstract, intro, and conclusion suggests single image by motivating with sequential generation (specifically mentioning metaverse). Experiment section says

> We note that we evaluate the throughput mainly via the average inference time per image through processing 100 images.

That implies batch along with their name Stream Batch...

Looking at the code I'm a bit confused. I'm away from my GPU so can't run. Maybe someone can let me know? This block[0] measures correctly but is using a downloaded image? Then just opens the image in the preprocess? (multi looks identical) This block[1] is using CPU? But running CPU. (there's another like this)

So I'm quite a bit confused tbh.

[0] https://github.com/cumulo-autumn/StreamDiffusion/blob/03e2a7...

[1] https://github.com/cumulo-autumn/StreamDiffusion/blob/03e2a7...
Coincidentally the infotainment system in my new F150 has crashed more than my partner’s Tesla. But I really hate the lack of buttons in the Tesla. It feels so incredibly unsafe to have to look at the screen to turn heated seats on.

And I think I like CarPlay more than Tesla’s infotainment setup these days.
I still get the occasional aspiring entrepreneur reaching out to me on LinkedIn asking me to build an app for them in exchange for free, or very nearly zero equity with no cash payment (like 0.05% of the product).

I usually don't respond, but occasionally I tell them that what they're doing is unethical at best. If they have an actual business plan then they can pay the person doing the lion's share of the work or at least offer a sizeable equity package.
Your first day of flight lessons? Reminds me of my first day, except I was blindfolded, hands tied behind my back, flying a helicopter in a hurricane. Instructor said, "It's your chopper," and jumped out with a parachute. Managed to land it on a moving train. The train conductor, who turned out to be the President, offered me a job on the spot.
IIRC Visual Basic 6 was good in many ways but in (at least two) areas, it wasn’t:

* re-laying out the UI controls when the user resized the app window
* nicely handling long-running tasks, with progress updates, allowing user interruption

In both cases the “drag and drop controls, then connect them to each other with a smattering of code” paradigm didn’t work too well.
> Apple has been looking sleepy on LLMs, but they've been consistently evolving their hardware+software AI stack, without much glitzy advertising

They don't sell compute time to other companies to run AI, or massive custom hardware for AI training.

They aren't after VC funding.

Their core business isn't threatened by AI being "the evolution of search"

Product-wise, so far all you hear is messaging around things like pointing out the applicability of the M3 Max for running ML models.

Until they have real consumer products ready, they only need to keep tabs on analysts, with lip service at financial meetings.
I've also had my por palestinian posts flagged. the really insane thing is I never call for violence and every assertion I make about human rights violations I make gets backed up with a link to a documentary or news story. I even tryto avoid using aljezeera as a my lone source. Over the last to months I've spent a lot of time researching teh history of the conflict and it becomes clear that the israeli side depends on people being apathetic to whats going on.
I don't doubt people like the author's acquaintance exist, but I think that putting them up as "the norm" is really just setting up a straw man, and so many of the "assumptions" in this article feel like straw men. To be clear, I don't doubt some people hold those assumptions, but given all the obvious evidence to the contrary, those people can be safely ignored as having no idea what they're talking about.

For example, the largest, most profitable companies in the US are all tech companies, where software is either the primary product or an integral part of the product: Apple, Microsoft, Google, Amazon, Nvidia, Meta, and Tesla. So if you're someone who thinks "software engineers are interchangeable cogs" or "in a business, software is just the icing on the cake", then sorry, you're an idiot, because you're oblivious to the fact that the top companies won largely by having the best software. And these companies also legendarily pay mightily for the best talent - why would they do that if "writing software is easy" or "software engineers are interchangeable cogs"?

It just irks me when people take idiotic statements and then hold them up as "assumptions" in need of myth-busting. It's like when journalists find a couple outlandish Twitter comments by a few rando mouth-breathers so they can put together an article with a "Look what people are saying online!!!" headline.
I believe MA (which overhauled its noncompete laws a few years back) requires "garden leave" in the case of a noncompete — the employer would have to pay the employee's salary for the period of enforcement.
I wouldn’t be so harsh, as to call it gross, but I also much prefer Python, because Ruby reminds me of Perl. It feels clever, but not in a way that I expect to shorten its BNF. It still bugs me a bit, that ruby has pascals ‘end’, and Python uses whitespace, but it worked out in the real world.

Given just the syntax, I would always recommend Python as a first language to scientists in a lab, rather than ruby. The code just reads and writes itself better, without special characters.

But, I think it’s not fair to call Ruby gross, given some people love C++, php, bash, JavaScript… I’d take ruby over many languages, given a choice.