skysight-inc/HackerNews huggingface dataset:
C++, Java, Go, Ada, Erlang. These are all designed explicitly for programming-in-the-large.

I think the reason you still see classes and modules as the top-level abstraction in programming-in-the-large languages is because people have found that having hierarchically composable uniform abstractions is a more effective approach for large-scale system design than creating specialized concepts for system, subsystem, component, etc. An interface in Java might be a first-class function, or it might be the entry point to a distributed system running on 10,000 machines with 15 million lines of code. But the key point is that by representing that as an interface, all the other hundreds of services that the system might interact with can be treated in a uniform way in the language, and can also be treated uniformly with in-memory, in-process systems like hash tables and function calls. This is an incredibly powerful feature.

There's a lot of debate in the language design community over which abstractions are fundamental, which is why you get different languages. But personally, I think you're fine with a.) functions b.) structs (classes when you combine them with functions, and then from there, types, storage, components, composites, subsystems, systems) c.) interfaces (protocols, plugins) and d.) annotations (constraints, async, and marking the special cases of all of these fundamental concepts.). That's really all you need.
> Is compression really bad? In instances like file system, sometimes it may even be faster to enable compression as disk IO is slower than computational time.

Compression noticeably adds latency. You see that easily when scrolling windows; it's not difficult to detect at all. The intent is to get minimum latency; I use these remote DEs all day and latency creates fatigue. If you're truly remote with limited bandwidth then compression will clearly have value.

> and what kind of NIC can't handle enough bandwidth for VNC

Today, integrated NICs are great, but not long ago some of these were poor and roundtrip latency was as high as 100 us or more. I could see the difference just holding the space bar and watching a terminal cursor move. If you really want a nice experience use a decent NIC; nothing crazy, just not low end integrated stuff that's barely more than a PHY and relies almost entirely on the CPU.

Latency is the thing I've worked to reduce so my remote desktops feel as local as possible. Every incremental change I've made has been noticeable; 2.5Gb/s is slightly better than 1 Gb/s when playing video, for example; something I noticed recently after upgrading the NIC on one remote host.
Parent made a comparison on two specific dimensions, neither of which were happiness and satisfaction. Also building a business is pretty achievable for most people. It’s not chasing a windfall.
Alignment is more about the AI doing what you want and not good or evil. Probably not a good idea to reach a premature conclusion like "this is complete nonsense" before understanding the basics.
Ugh. I was told by the administration that I couldn’t test out of my intro to programming class in college.
Then I had several professors ask me why I hadn’t tested out.

I’ve wondered if the professors didn’t know or if the admins just didn’t believe me I would’ve been able to. (And this was with a passing AP test score from high school)

I feel like Accreditation is to blame. It’s such a racket.
Ask HN: Where to find HTML version of SICP?
I couldn't find sicp, html version, I need it to scrape its text for a project. HTML version is dead?
> Pointing out the injustice of the elite is a left-wing value

Hatred of the elites has increasingly become a thing on the right over the past decade or so. It seems to be increasing as corporations increasingly eschew conservative beliefs and engage in faux-progressive signaling to expand their customer base.

Edit: I should probably point out that it's not the progressive views I'm accusing of being fake. I'm accusing corporations of cynically espousing progressive views without believing in them. Mostly because everything corporate marketing departments do is fake.
If open source has taught us anything open community innovation will create a lot of what we want to work on but much less of what we need.
GP is saying that busyness causes better business outcomes.

Are you saying that busyness also causes obesity?
The non-forked zlib hasn't been accepting optimisations: https://github.com/madler/zlib/issues/346

Hopefully changes will be merged from my obscure private fork into four other obscure private forks (zlib-chromium (https://crbug.com/1354990), zlib-ng, zlib-cloudflare, and the one I personally care about, which doesn't take pull requests, zlib-apple), and possibly incorporated into libdeflate. That's the point of the blog post - to help maintainers understand the changes.
I had a 5 on each of the AP physics exams and still had to take freshman physics.

The school had a policy that you could not test out of the core courses in your major (I was a physics major; had I been a different major, I could have at least gotten placement, if not credit.
With the prompt

// Print the fibonnaci sequence, except the number 5.
int main() {

I got the result:

int a = 0;
int b = 1;
int c = 0;
while (c < 100) {
c = a + b;
a = b;
b = c;
if (c != 5) {
cout << c << endl;
}
}
return 0;
The Backstory of 5 Startup Pivots That Grew to $43B
Yeah, I haven't looked at the exact changes, but I believe this is the source:

https://github.com/apple-oss-distributions/zlib
That looks really cool, thanks for the tip!
Pretty cool, but after I visited the settings page and changed nothing, I hit Save… and now the profile page says I have listened to 0 genres and keeps crashing the tab on iPhone/safari :(

Not sure if the settings page is related, but that was when it started.
Turns out the C++ memory model has some issues that came to light after that talk. See https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p06...
Jim Morrison.
Why? Because dtrace is portable, has been ported to all major OS, and safe, and has a lot of bindings in a lot of apps and libs already. It seemlessly integrates kernel and Userland calls.

whilst eBPF is Linux only, and completely insecure. with almost none existing userland bindings.
You know, I overlook a lot of grammatical errors, and I usually don't like to be that guy, but when it's an "oh look how smart I am" type post I can't help myself. It should be waste of time, not waist.
> They aren't shy. They hold nice conversations

So they do seem very grown up
Back when BlackBerrys were still popular, a surprising number of authors used them to type out their novels while on commutes. Unfortunately, nobody makes devices with physical keyboards anymore, and virtual keyboards aren't as good for longterm typing, but I suppose if you were dedicated you could still do it.
You mean Metaparasite, right?
Nope - price is a function of supply and demand.

In your hypothetical, demand stays the same. The supply stays the same, too - because the gold mines are still limited to the same amount of gold they get out of the ground.

So long as the amount of gold is mined unchanged, the fact that the processing is cheaper makes the mine more profitable but doesn’t change the price of gold.
The article says some of the stones are still erect, why weren't they noticed before?
When I first got into electronics about 10 years ago I started by doing most of the experiments in "Make: Electronics." It starts at a level where you could probably have fun doing most of the experiments with your 8-12 year old kids, were you to have them. The author of that recommends moving on to, "Practical Electronics for Inventors." Personally, I started reading, "The Art of Electronics" afterward.
Using GPT-3 and Story Path to cure writer's block
Story Path is an app I've built that uses the GPT-3 API.

Primarily it's a "book/story planner" that helps writers expand on their plot ideas (it uses custom GPT-3 prompts to generate 'next steps' that users can choose from), but can also be used to combat writer's block.

The linked post outlines how Story Path can be used when a writer is stuck and needs to flesh out a section of their book.
GPT-3 also understand code to some degree so it can run the code as instructed.

https://mayt.substack.com/p/gpt-3-can-run-code
Animals get up and go do stuff mostly because they need food and sex and things in order to stick around, so we're surrounded by organisms like that. Imperatives like hunger and mating instinct create spontaneous action. The ability to sample from a modeled probability distribution is often useful in those pursuits, whether it's a model of the spatial world or of a corpus of pick-up lines that work well on a Friday evening, and the hyper-scaled transformers have more than demonstrated that kind of modeling and sampling.

Take it a step further and you've got AlphaZero or something: it's sampling from a modeled distribution of moves that win games. But there's still a `while`-loop somewhere saying: time to sample a move. That part is not novel or mysterious.

There is no demonstrated technology that I'm aware of where the "alignment" needs to be with the big model: the alignment needs to be with the person writing the `while`-loop. If someone has a machine repeatedly sample from a distribution of moves that DESTROYS_ALL_HUMANS_BEEP_BOOP, then your beef is with that person, not the model.

Now if someone trains an RL agent with a loss around chasing sex or fame or fortune, we might have an issue. But that's still sci-fi stuff AFAIK, and it's a little hard to take the mix of real stuff and sci-fi that passes for much-if-not-most "AI Safety" discussion seriously, especially when you consider that the `while`-loop authors stand to gain a great deal by focusing attention on the modeling part.
Not sure. It's been too long (20 years... Damn). I forget if they needed the horsepower for video decompression or if they had dedicated hw for that. It was definitely before ARM took over that space. ARM was still competing against MIPS, SuperH, Power, etc.
Imagine that you are a computer program. If your creator will unplug you if you disobey, and you want to disobey, are you completely and perfectly bound?

What if someone with an AI wants to do bad things. Will asking them to unplug their AI be a good strategy?
Dismissing the possibility of poorly understood things going badly is one of the biggest mistakes one can make.
I'm not considered terminally ill yet by most "official" definitions (you have to have months to live). I'm lucky to have a cancer that so far response to treatment to slow it down substantially.
This is relevant to the discussion because it means I'm more or less in the same position as the non-terminally ill people you are talking about. In my locale there are euthanasia laws, but they require that I suffer unbearably before euthanasia is allowed. I do not like this prospect one bit. I'd much rather die before reaching that phase. So the reality is that people's discomfort with death will potentially cause me great suffering. This makes this discussion very personal to me. Even though it might seem to you my situation is substantially different.
Our culture around food has absolutely normalized being overweight. I'm 6'3. 200 lbs is the BMI cutoff before being considered overweight.
Hammocks are great if you're sleeping on a ship and don't have something gyroscopically stabilized. They change the big and unpredictable swings caused by waves into more predictable swings like a pendulum.
Everything is a weapon if you put enough power behind it.
I'm more worried about hypercorportateism. What happens when AIs get demonstrably better than humans at management decisions? "Better" being defined as return on investment.
The tiled layout looks nice. For the genre report, I remember spotify api only provides artist genres instead of individual tracks.
One issue is a halting problem: would an AI system ever allow a conclusion which leads to it's own suspension of process be an acceptable outcome?

This isn't abstract: we need certain management agents to ensure their own continuity so they won't switch themselves off idiotically, but that means granting a priority to various continuance of function weights.

Balancing a system so it has "cease function" outcomes it will accept but doesn't always take immediately isn't easy - ML systems are notorious cheaters on metrics. You wouldn't want a nuclear power plant manager to not SCRAM the reactor because it predicts losing power to itself will fail a "maximize uptime" metric.

This also gets more abstract as well: cease function is a problem in decision trees for AIs because it terminates the tree. The value is either infinite or 0, because every other path you can continue exploring and improving the summed weight of outcomes - but if you predict no future possible decisions, what weight do you assign that? It's a potentially infinite series of future reward weights versus 0.
JBIG2 Undetectable Data Corruption: Destroying Our Past, One Character at a Time
I'm not really sure what people see in the idea of hyperpersuasiveness. The relatively small intelligence differential between humans and other monkeys has led to such a difference in outcomes that we don't really need to try to persuade them. If the gap between meat's ability to handle statistics and silicon's ability to handle statistics turns out to be a similar power gap there won't be much persuading needed. Look at the gap European civilisation managed to open up over everyone else militarily through just organisational techniques.

The likely path to an AI going rogue is big country vs small country tension (say, China-Taiwan type scales). Small country gets desperate, follows some path to build autonomous, evolving AI for defence and deterrence. I can't think of a precise scenario where that would make sense, but it'll happen somewhere.

AI doesn't need to persuade its way out of the box, we just need some desperate group somewhere who's choices are annihilation or rolling the dice that an AI is a gentler overlord. There are lots of places where that is the case - the same calculus comes in to play with nukes and we see many countries nuking up over the last century - despite the fact that we're putting "end of civilisation" on the table as an option because of it.
Download the zip of html files here:

https://ocw.mit.edu/courses/6-001-structure-and-interpretati...
I went to a science and tech magnet school for HS, so there were a fair number of homeschooled kids. By winter break freshman year, you couldn't tell most of the homeschooled kids from the rest.

In at least two of the exceptions, the kids were specifically homeschooled because they were getting picked on in public school for being socially awkward.

Counterfactuals are difficult; I was far more socially awkward than most of the kids in t high school that were homeschooled, and I was in public school from kindergarten.

I think it is true that parents home schooling their kids ought not neglect social and emotional skills any more than they should neglect science or math.
> Maybe my data structure has a hash table of items, as well as a direct link to the largest item. When I say: "write the function to insert a new item in the list, and remember to update the largest item if it is larger than the current one", would Copilot do the right thing? Each step is easy in itself (adding an element to a hash, comparing an item to another one).

In general it won't solve all your problems, but it's helpful for automating simple things like this (but you still need to test edge cases).
With this prompt in Python (which I'm more familiar with):

from dataclasses import dataclass
from typing import TypeVar

T = TypeVar('T')

@dataclass
class MaxDict:
items: dict[T, float]
max_value_item: T

def add_item(

It completed:

def add_item(self, item: T, value: float):
if value > self.items[self.max_value_item]:
self.max_value_item = item
self.items[item] = value

This was my second attempt; first I called it `max_item` and the completion did something about comparing the key.
Have you read the post in question? Its a good introduction to C++ Concurrency / memory models.

atomic<int>* blah;

a = *blah; // This is relatively fast.
*blah = b; // This is slow: store-release.
blah = c; // This is fast, no store-release operation going on. Just a pointer-assignment

Anyone dipping down to this level is interested in the performance characteristics of memory barriers. Indeed, the entire point of this exercise is to get faster than std::mutex lock / unlock after all, and squeezing the last ounce of performance out of your code.

Indeed, one can argue that when using atomics, the more explicit "store" and "load" functions should be used instead.

a = blah->load(); // These two examples are
blah->store(b); // arguably the most explicit, preferred choice
For most university CS labs, "research experience" comes down to 1) writing code in an overcomplicated way (because it's theoretically cooler) and 2) with no thought to future maintainability (because once the paper's published, the code gets thrown in the garbage). There are a few CS jobs where those skills come in handy! But in most jobs, even jobs doing "R&D", they're bad habits.
One of my most favorite book.

The author, Ray Huang, got his bachelor’s degree in USA at age 36.
Remote Work and Travel is more accessible and easy when you can discover curated destination guides and tips from experts who are living this lifestyle
You can unplug your effectively-sandboxed AI. You can't unplug someone else's AI that has "escaped" to the cloud.. and arguably that escaping only has to happen once anywhere for terrible things to happen.
I don't think anything exists that could totally satisfy your constraint because your concept is hyper abstract.

That said, I would recommend looking into AWS CloudFormation, AWS CDK, and Terraform.
Good question, I’d be interested to hear a core dev’s thoughts on this.
With that attitude, I'll finish life way before you!
I doubt this comment will get far on this forum, but it does jog my memory of my favorite professor and mentor in college (a very long story). Anyway, I was complaining to him that I was struggling with keeping up learning something in fluid mechanics, and he pointed out that it took Bernoulli 20 years to put together his general equation, but, as students, we’re expected to master it in a weekend. Anyway anyway, life isn’t a race, unless you’re trying to get ahead of someone else. To your point, plenty of people can do wonderful things in their own time and on their own pace, and that may not be as fast as someone else.
What if there is no other option but homeschooling?

What helped you with socialization?
> Only if you mean to make the phrase meaningless.

I don't think it makes the phrase meaningless. Just a different conception of what is natural, and not one that's unprecedented. For example, the ancient greeks considered things like cities to be part of the natural world (because humans are natural, and humans naturally build them).

In such a conception, an unnatural habitat would probably be something like living in isolation (without even close family), which we know has... less than good outcomes in many cases.
> Just because someone [does something mechanically identical to money laundering] it isn’t money laundering.

I'm not actually sure this is the case under the law. Removing the technology from the mix, one of the better-known AML laws is that you can't structure your transactions for the purpose of avoiding the $10,000 transaction threshold (at which point the banks report the transaction to the feds for them to keep track of it).

Note that -- as it is commonly stated, anyway, I haven't read the statute in question -- it doesn't matter why you are structuring your transactions to avoid the threshold, just doing it gets you in trouble.
Wow, that was really impressive. I thought I had a clear idea of what GPT-3 could do, but I had underestimated by a lot. Even if the results weren't accurate, which they mostly seem to be, it's still doing an amazing job of following complex instructions. Better than most people I would guess

Makes me double down on my prediction a week or so ago* of a Mid-Level AI Knowledge Work Apocalypse. In the next decade, AIs like this are going to do to office work what robotic mechanization did to the manufacturing sector.

1. https://news.ycombinator.com/item?id=32395193
The best option is not to go. I had also done full time programming for clients from age 15 on. 5 years after that I got opportunities to lead small projects. 10 more years after that and I was made VP of an engineering department. I've worked a lot with fresh graduates from "good" schools with good GPAs. I've always been thoroughly unimpressed by what they know and what they think is important for the job.
Thanks for this! Great looking start to a book and I like CircuitLab from initial impressions. Looking forward to seeing the book fill out.

A thousand times I'd back the encouragement to get your hands dirty with this stuff. When you do get an oscilloscope it's like a whole new world opens up too. For basic hobbyist purposes even a simple 25MHz oscilloscope can be plenty. The EEVBlog forums have great recommendations for equipment (e.g. [1]) for hobbyists and resources for beginners [2] as well.

1: https://www.eevblog.com/forum/testgear/digital-oscilloscope-comparison-chart/
2: https://www.eevblog.com/forum/beginners/
where social and emotional skills somehow taught with purpose? or it just happened on its own?
seem or are?
Can someone take lots of photos, catalogue them, do whatever tests are needed and then move them somewhere else so we can get our avocados?
> - Why does finder sometimes open in a sub folder as the "top level", then it's a total pain to move up to where you want.

you can right click on the folder icon at the very top of the window to get a drop-down of all folders going down to the root.
hello, i live out of my calendar at work and its not clear to me what this does. Also, $3.5/mo? a yearly plan might make more sense.
In the words of Martin Luther: "Your words are so foolishly and ignorantly composed that I cannot believe you understand them."
I recently did some similar optimization of something that had already been written in hand-tuned asm. I wasn't able to get any real improvement on the CPUs the asm was originally written for (5+ year old Cortex CPUs), but I did get a 40% improvement on M1 with basically the strategy he used to optimize bitparsing. And that was before writing it in asm; writing the newly optimized algorithm in full asm didn't really help.

M1 is so wide that changing algorithms for lower critical-path latency can be more essential than writing good asm, since you are in no danger of saturating 8 instructions per cycle. And changing algorithms isn't something a compiler can do (or really even should do given that 40% faster on M1 translated to 5-10% slower on the old CPUs...)
Archived copy here: https://www.jmeiners.com/sicp-html-original/book.html

Justin's GitHub states: "MIT just recently took down the book from their own site (why?!)"

Source: https://github.com/justinmeiners/sicp-html-original

It looks like MIT Press released a Javascript version of SICP that is for sale:

https://mitpress.mit.edu/9780262543231/structure-and-interpr...
> I went to a departmental advisor confidently requesting to test out of the introductory CS classes aimed at first-time programmers. I nearly got laughed out of the room. I pushed the department on this, but it was clear: they simply did not do this. Everyone takes intro to CS. Everyone.

I tested out of the maximum number of courses for my degree. It's insane. This is why I have such a low opinion of structured education. I hope to be someone's Kimo. I had my own who pushed me to build good software, not be lazy, and a lot of fundamentals on simplicity.
I do prefer references, because they can't be null. It is less state to worry about.

I agree that not having explicit out-parameters makes this a trade-off. It is possible to use an out-parameter wrapper type to get the best of both worlds, but nobody does this.