Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
qbasic_forever
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
10 ms
·
91.
▲
by
qbasic_forever
3y ago
Queens or the Bronx in NYC. They're big city but full of real, working class people and immigrants. Parts of Brooklyn are good too (but also parts of Brooklyn are just as bad and worse than DC). Definitely not Manhattan, lol--it'
92.
▲
by
qbasic_forever
3y ago
As I understand it the drug use screening in a security clearance isn't so much because the government are squares but it's that illegal drug use is something that could be used to blackmail you. The worry is if the KGB learns ab
93.
▲
by
qbasic_forever
3y ago
LK-99 is already patented so even if Elon were making a ton of it, he couldn't do much in his products without licensing it from the creators.
94.
▲
by
qbasic_forever
3y ago
On modern systemd-based Linux systems that use its systemd-resolved DNS resolver it automatically forwards all *.localhost traffic to your local host. It works great with caddy for local development and testing of services.
95.
▲
by
qbasic_forever
3y ago
The terrible performance you remember is from slow hard drives and just a couple megabytes of RAM. Retro computing enthusiasts today have win 95 running on solid state flash disks and 32 megabytes of memory and it flies.
96.
▲
by
qbasic_forever
3y ago
No it will be the same level of skill and difficulty to do correct shared memory multithreaded programming. You'll have to manually manage locks and reason about potential for deadlock or other race conditions. If anything it will be
97.
▲
by
qbasic_forever
3y ago
Correct, it will help with CPU-limited, embarrassingly parallelizable problems... which are much less common than you think.
98.
▲
by
qbasic_forever
3y ago
Are you just reading from this data structure? If so I wouldn't do any locking or threading, I'd just use asyncio to serve up read requests to the data and it should scale quite well. Multithreading/processing is best for C
99.
▲
by
qbasic_forever
3y ago
Cybergoth culture: https://en.m.wikipedia.org/wiki/Cybergoth
100.
▲
by
qbasic_forever
3y ago
Even pure python code could have race conditions with the GIL disabled. Stuff like accessing and modifying a dictionary item in python code is assumed and currently guaranteed to be atomic because of the GIL. Remove the GIL and decades of
101.
▲
by
qbasic_forever
3y ago
It does, so much so things like virtualenv were introduced so every program can have its own set of dependencies such that they won't clash with other libs on your system. Something like flask or fastapi pull in a lot of secondary dep
102.
▲
by
qbasic_forever
3y ago
Yep I fully agree. It's going to ultimately mean 99% of people end up running in old GIL mode with deterministic behavior. Companies will get burned and have to have policies that absolutely under no circumstances will the GIL be dis
103.
▲
by
qbasic_forever
3y ago
It's good if there's a benefit for everyone, like python 3 fixing the terrible Unicode story. It's not clear non-GIL will even be a net performance improvement for most people--you are effectively moving syncronization from
104.
▲
by
qbasic_forever
3y ago
Where will you get no-GIL libraries, especially in the early days? Just yell at the maintainers of core libs like flask and requests until they use their volunteer and spare time to implement incredibly complex and tricky locking semantics
105.
▲
by
qbasic_forever
3y ago
Yep, and you'll have pip3-gil and pip3-nogil binaries because each permutation of python has separate and incompatible site-packages folders and libraries. It could get really ugly.
106.
▲
by
qbasic_forever
3y ago
You're saying, "just rewrite and re-release all your dependencies, it's easy!" which was exactly what happened disastrously with python 2 to 3.
107.
▲
by
qbasic_forever
3y ago
Presumably C extensions will have a different API name/ABI to prevent accidentally calling into GIL code when in non-GIL mode and vice/versa so that's going to complicate the compatibility story.
108.
▲
by
qbasic_forever
3y ago
Agreed--there needs to be discussion and thought about how this impacts library maintainers. How do they tell users their library supports or doesn't support non-GIL mode? Will pypi have new metadata to specify and enforce projectsde
109.
▲
by
qbasic_forever
3y ago
That's the exact attitude that lead to decades of pain with the 2 to 3 transition and libraries though. There was zero plan for how to help libraries migrate from python 2 to 3, or more importantly how does one library support _both_
110.
▲
by
qbasic_forever
3y ago
Yep there are a ton of issues like that to be found, and unfortunately they will manifest as difficult to find and debug race conditions. This is why the proposal and work is to make non-GIL mode entirely optional and not the default. It j
111.
▲
by
qbasic_forever
3y ago
Like I said in another reply that's just for drawing tiles, but it has to store level state (what enemies are alive, where they're at, what items have been collected, etc.) in RAM and is severely limited to less than 2kb of data t
112.
▲
by
qbasic_forever
3y ago
It's only more performance if you're using the threading primitives and spawning new threads, moving work to them to do in parallel, etc.--this isn't something any beginner will consciously be doing. It might actually be slo
113.
▲
by
qbasic_forever
3y ago
Slightly faster performance when you write multithreading code correctly (much easier said than done). Very few python devs are actually running into this as a bottleneck day to day.
114.
▲
by
qbasic_forever
3y ago
Yep I think over the next year a lot of python devs are going to learn threading isn't magic pixie dust that makes your code fast, and in reality is starts by making your code very unstable.
115.
▲
by
qbasic_forever
3y ago
Yeah it's going to be weird for some years where some libraries support no-GIL and others don't, while folks cry about the ones that don't support it holding them back. Like asyncio's introduction we'll probably see
116.
▲
by
qbasic_forever
3y ago
You needed to store the state of the entire level, like what enemies are alive, what treasures have been collected, etc. and that turns into a non trivial amount of stuff to store in RAM (only about 2kb on the NES!) for large and complex le
117.
▲
by
qbasic_forever
3y ago
The later keen games are legitimately good platformers, even in comparison to some of the best of the genre at the time like Mario 3. The levels in keen games are enormous and way bigger than a NES could handle or even think of loading in
118.
▲
by
qbasic_forever
3y ago
Dosbox runs old VGA games really well and on any platform, including right in your browser: https://archive.org/details/msdos_Commander_Keen_1_-_Maroone...
119.
▲
by
qbasic_forever
3y ago
Yes, which is why git is a pain in the butt to install and you have to rely on your OS packages (which includes all the kitchen sink stuff) or a GUI installer with all the necessary dependencies vs. Fossil which is just download executable
120.
▲
by
qbasic_forever
3y ago
Git includes a web interface written as a perl CGI script, so yeah it has a lot more dependencies than people realize. It is most certainly not just a simple single binary to plop on a machine and call it good.
More ›