I kind of agree with you. I think music theory would be way more approachable if it was taught using intervals instead of all the weird naming of western notation. For example, everyone learns major and minor scales which are the interval sequences (in half steps) 2212221 and 2122122 respectively, but the names major minor don't really help you know other scales (excluding modes, maybe). If someone asks you to play hungarian minor, you'd first have to learn and memorize it. But instead, if you understand intervals and are asked to play 2131131, you immediately know how to play it. For me it also encourages experimentation, because there are obviously way more possible interval sequences to explore right?
The problem as others have pointed out is that most musicians in the west already know some degree of western notation, so if you're collaborating, you'll have to translate back to western notation at some point. Even if you invent the perfect notation, it's like asking everyone to switch to esperanto because english grammar is flawed. And you'll still get people defending english "well actually, it's like that because the greeks blah blah blah".
My favorite music notation flaw is C flat. It's a hack. It's an ugly fucking hack and anyone who defends it is defending an ugly hack. The only reason it and double flats exist is because there are some key signatures (this happens with hungarian minor sometimes) where you end up needing to define 3 notes in the span of one space and one line on the staff, and you can't, so you have to borrow from an adjacent space or line. And so sometimes that C is actually a B. It's super annoying but uncommon enough that it's not worth everyone learning a new notation.
Anyway, don't let the nay sayers stop you from learning music however makes the most sense to you. Have fun
Makes me wonder what it’s like to identify with the villains in media. Zuck looking at the metaverse and thinking hey that’s a good idea! Or Thanos wasn’t so bad. Those rebel scum had it coming. Homelander is the good guy!
>identify with the villains in media. Zuck looking at the metaverse and thinking hey that’s a good idea!
Are there many stories where the bad guys create the metaverse? AFAIK, Stephenson coined the term in Snow Crash and there it was built by the main character and his buds.
The Matrix, I suppose? Though I think Zuck's (immediate) vision and who he identifies as is way more Hiro Protagonist or James Halliday.
You might be right. It’s been a while since I read snow crash. I just remember the metaverse as a sort sad state of society, but I don’t remember if the evil corp stuff was in there or just in the world at large
RPO's "bad guys" weren't the creators of the metaverse but a corp trying to win the contest to take it over. Halliday is flawed but a large part of the novel centers around that and he intentionally creates the contest in part to try ensure the metaverse ends up in appropriate hands, no?
Every story, even ours, needs a bad guy. Best villains don't think they are villains. They just do what they must/should/want (in that order, depending on their intensity), because they can.
I had no idea it was a lord of the rings reference. Here’s an apt quote from wikipedia: “The [palantir] stones were an unreliable guide to action, since what was not shown could be more important than what was selectively presented.”
Just for the overly suspicious among us, I looked up the edit that introduced that quote[1] and it doesn't appear to have been added as a dig against the company.
Well they weren't necessarily bad. I think the Numenor (?) Kings of Westernesse (?), I dunno whatever the old Gondor kings were called, used them effectively. It was just Sauron that took over and made them dangerous. So, effective but dangerous in the wrong hand. Yeah, I guess, even that is pretty prophetic, heh.
"The Stones of Seeing do not lie, and not even the Lord of Barad-dûr can make them do so. He can, maybe, by his will choose what things shall be seen by weaker minds, or cause them to mistake the meaning of what they see."
It really is the perfect name. It's exactly what I would have chosen, if I hated the company and was given a choice of names. But it's a terrible product name for any media literate customer.
It's another example of how the intentions of the good can be easily lead astray by the corruption power brings.
Using it as the name of a military contractor misses the point so hard I almost expect it to be intentional, but I suspect it's just teenage-boy level foolishness.
Just a regular reminder Peter Thiel thinks that Greta Thunberg is the antichrist and hesitated when asked if humanity should survive because the question is "layered". This is not a person that should be powerful.
They justify it as defending their way of life, which can align with Tolkien a little bit with some mental gymnastics
> I do not love the bright sword for its sharpness, nor the arrow for its swiftness, nor the warrior for his glory. I love only that which they defend.
but overall Tolkien was against war, being a veteran of WWI himself, and the LOTR saga is about the heroism of the meek.
Peter Thiel clearly loves the sword for its sharpness, it drips from everything his companies do.
I think the movie was every bit as deep as the books. Remember how terrifying it was for Frodo to be seen by Sauron’s eye? No, they know exactly what they’re doing and they don’t care.
That would actually be a great feature. Opening two file browsers to move stuff around is a really common workflow. Although with current trends we might instead get a chat bot prompt “tell me how you feel about where you want your files to be”
The author is confusing bins with bin edges. In their first plot, the standard approach looks strange because 0-7 should be the bin edges, not the center points as shown in the plot.
You can see this confusion again in the histogram example. There are only 255 bins, not 256. If you fix that mistake and remove the 0.5 offset, then the histogram is distributed correctly at both ends.
2*8 = 256. You can represent 256 distinct values, bins, with an 8 bit number. If you stick a 0 in that first one, it takes a bin. If you fill the rest with by-one increasing integers, then the max value will be 255, thus the 2*bits - 1, which is the max value you can store.
I see what you’re saying - index 0 holds values from 0-1, index 2 from 1-2 etc, but then you have index 255 holding values between 255 and 256. So you’re sort of arguing that the 0-255 8-bit quantization is actually representing ‘real’ values of 0-256?…
Edit: somehow missed alterom’s reply - they explain it much better than my question above does.
Not quite. I'm saying there are 256 discrete numbers (0-255) and 255 intervals between those numbers. Most of the real values will fall into the intervals and get mapped to 0-255 somehow, maybe by nearest neighbor, but I'm not trying to define how they get mapped. The point is that 255 is the largest number that can be represented with 8 bits, so you should normalize by 255.
I wrote a longer replay to alterom but it looks buried for some reason.
With 1-bit color, we have sample values {0, 1}. What bins do they represent?
Here's one choice:
[0, 1), [1, 2)
Two equally sized bins, spanning the interval [0, 2] of length 2, each defined by its sample at lower bound.
Alternatively, we could consider these bins:
[-0.5, 0.5), [0.5, 1.5)
These are also equally sized bins, spanning the interval [-0.5, 1.5] of length 2, defined by samples at the center.
We could also define bins like this:
[0, 0.5), [0.5, 1]
Two equally sized bins spanning the interval [0, 1] of length 1, where we sample the first bin at the lower bound, and the last bin at the upper bound.
This, in a nutshell is what the author is trying to explain.
Let's look at this again, with 2 bits.
With 2-bit color, we have sample values {0, 1, 2, 3}.
The first two span an interval of length 4, the third spans an interval of length 3.
In the third case, the tail bins are short (have size ½), and the rest have size 1.
The last bin must be a closed interval in the third case, so that it includes the value we picked to represent it.
None of these choices is inherently invalid or better than the others; and none stems from "confusing bins with edges".
The third option does have the distinction that the first and last bins are smaller than the rest. But it's not necessarily a drawback. Especially when we're talking about color, hardware interpretation, and human perception.
When you remap these bins into the [0, 1] interval, you're "dividing by 4" in the first two cases, and by 3 in the third case.
The maps are:
x → x/4
x → (x + ½)/4
x → x/3
The inverse maps (that yield a sample in {0, 1, 2, 3} given a floating point value in interval [0, 1]) are:
x → trunc(4x)
x → round(4x - ½) = trunc(4x)
x → trunc(3x + ½)
In the first two options, the domain is [0, 1). It might be necessary to apply clipping because the exact value 1.0 falls outside the range of the forward transform.
The 2nd option is the most symmetric, of course, but the 3rd one is the most straightforward (and cheapest) to implement, so that's the default.
The choice amounts to making the highest and lowest bins slightly smaller to make the rest sightly larger.
That's to say, if you generate uniform noise between 0 and 1, you'll get the following samples from your function with equal probability:
0 or 3
1
2
As the author points out, this hardly matters when you are talking about having 256 bins.
That, and with color specifically, the "good" histograms aren't uniform anyway (and any photographer wants to avoid getting much at either extreme).
TL;DR: The author is not confusing anything — but their diagram and explanation are, indeed, a bit confusing.
Thank you for the thoughtful reply. Maybe bins is the wrong word to use, so I'll try with intervals. Starting with 1 bit data, there are two numbers and one interval. I think where bins makes it confusing is that inside the interval there are two big rounding errors mapping everything to either 0 or 1 and many people seem to be considering those the bins.
Taking a step back, remember we're ultimately mapping these discrete numbers to some real world continuous variable like the saturation of red, frequency, mass on a scale, whatever. And our digital device can only represent a finite amount of numbers. For 2 bit data, we can represent 0-3, and for 3 bit data we can represent 0-7.
The important part is that 0 represents the minimum and 1,3, and 7 all represent the same maximum real value, and everything that can be measured by the device will fall within those ranges. So comparing 1, 2 and 3 bit data on a linear number line looks like this:
0 1
0 1 2 3
0 1 2 3 4 5 6 7
You could assume that everything gets assigned to whatever number is nearest in the number scale or come up with another scheme, but that is ultimately defined by the ADC and likely nonlinear. All we know is that those are the numbers we have available to represent the real values we're measuring.
The question is about how to normalize the data. 1 bit data is already normalized. If you normalize 2 bit data by 3 you get [0, 1/3, 2/3, 1]. LGTM. If you normalize it by 4, you get [0, 1/4, 2/4, 3/4] and you're effectively throwing away some of the range of the ADC. You can try to get it back by offsetting by 0.5 then normalizing but now you get [1/8, 3/8, 5/8, 7/8]. And you could stretch that with some clever formula to fill from 0 to 1, but if you do it right then it's the equivalent to normalizing by 3, so why not normalize by 3?
So the answer is, if you have N bit data, you normalize by 2^N-1.
>Maybe bins is the wrong word to use, so I'll try with intervals
Same thing, in both how you use it and how the author does.
>Taking a step back, remember we're ultimately mapping these discrete numbers to some real world continuous variable
I think this is where you have a misconception.
There are two maps.
The important one goes the other way: FROM a continuous variable TO a finite set.
It's not 1-to-1: it maps entire ranges of numbers (intervals, bins, whatever) to discrete values (samples, integers, whatever).
The bins are preimages of that map.
The discussion in the article comes from two ways of defining that map: FROM continuous signal TO discrete variable.
The map that goes the other way, from the integers into floats, has to be CONSISTENT with it.
The article presents this backwards, putting the cart before the horse. This causes confusion.
>All we know is that those are the numbers we have available to represent the real values we're measuring.
Each of those numbers doesn't represent any one value; it represents a range.
Think about it this way: if we have a continuous signal that we're discretizing into a finite number of bits, we're invariably smashing ranges into single values (what you call "rounding error").
When we're reading this data — say, we read number 5 — we don't know which continuous variable value it came from.
To display it on a screen, we make a choice; we pick some number from the interval it came from, and call it a day.
>The important part is that 0 represents the minimum and 1,3, and 7 all represent the same maximum real value
The important part is that this is a choice you make about what those point samples represent.
It's a convenient choice. Which is why we all use it.
Some people prefer a different choice, that's all.
> If you normalize it by 4, you get [0, 1/4, 2/4, 3/4]
That's one way to do it, and not the way the article uses (re-read my previous comment, it has both).
Still, I'm with you here.
>and you're effectively throwing away some of the range of the ADC.
The map you're describing (FROM discrete INTO continuous) is approximating the DAC.
So, yes, with this scheme you're never getting 0.0 and 1.0.
Think of it this way. Say, you convert an image to a 1-bit representation, and render it on a screen in grayscale.
One choice is to render 0 as 0.0 and 1 as 1.0 (black and white).
Another is to render 0 as 0.25 and 1 as .75 (dark grey and light grey).
That's the "alternative" (divide by 2^n) approach. The formula here is x→ (x + 0.5)/2^n.
Neither is inherently wrong or better than the other; especially when you ask which rendering is closer to the original image.
Plus: one man's "you're not using the entire range of DAC" is another's "you leave a tiny bit of headroom".
In any case, you're not losing data in either [ discrete → continuous → discrete ] chain because you get the discrete values back perfectly.
What you divide by in the first step is dictated by what you do in the second.
>If you normalize 2 bit data by 3 you get [0, 1/3, 2/3, 1].
Let's see what this says about how we should go in the other direction to be consistent with this scheme.
Which continuous values get sent to 0 and 3? Which get sent to 1 and 2?
You wrote : {0, 1, 2, 3} → [0, 1/3, 2/3, 1]
So you can see that going in the other direction (discretizing):
Jeff Lowenfels has a series of books about fungi, microbes, bacteria, and nutrients that I really enjoyed. They’re all fairly short and accessible for someone without a bio background.
It’s a craft like anything else. Some people enjoy building a table and feel a sense of accomplishment telling their friends “I built this.” Other people just want a table and buy one from Ikea
You're right. The table first magically clicked itself together in Fusion, and then the wood climbed into the CNC machine and fixed itself static, only for that CNC to then mill it on its own accord, all in a flamboyant whim just to make a table.
The finished table then climbed out of the CNC, applied finish on itself in the bathroom like the distinguished gentlemen it is, attached its legs, and then lived happily ever after.
That explosion plot is pretty bad. No y axis. Unclear if it includes tuition and loans (which are paid or owed by students). Loans are ~50% of "ED appropriations", and only ~$21 million was distributed to students in 2021. But in the plot is looks like spending was around 150 billion (hard to say with no y axis) but ~50% was loans? And the source is just a vague Dept of Ed, with a link at the very bottom of the page to every single table published by the Dept of Ed, so have fun checking the source.
I'm not criticizing your take, although I suspect teachers might lose more than their lunch, just pointing out how terrible the plot is.
I feel like a licencing process for software engineers would
A) test lots of skills that are common but not universal. I'm thinking javascript trivia here, where I don't write any javascript in my professional capacity as a software engineer; but there are many people who think Software Engineer == Javascript Programmer
B) shine too much of a light on the fact that this industry is full of people who demand high salaries but can't program their way out of a paper bag
the question was rhetorical. but, since you responded – do you think that there are limits to who can or should use ai? if the plumber's use of ChatGPT improved outcomes, isn't that preferable?
some knowledge is likely "cached" in the plumber. maybe he doesn't ask the same question twice. i'm sympathetic to the plumber, but i think your concerns of erosion of knowledge or skill are worth pushing on further.
> do you think that there are limits to who can or should use ai?
I don't think there should be imposed limits, but there might be an upper bound where expertise becomes atrophied by depending on AI too much.
> if the plumber's use of ChatGPT improved outcomes, isn't that preferable?
In the short term sure, and maybe even in the long term for the customer. I think the risk to the plumber is losing some of their expertise by outsourcing to AI. But who knows, maybe the plumber has excellent memory and only accumulates knowledge each time they use AI.
Some of the article is lost in the plumber example. I doubt plumbers are spending much time exploring new ways of solving problems, and might even benefit from having a narrower range of outcomes. Other fields that require both expertise and novel solutions will be at a disadvantage if they become more homogenized by depending on AI. Not only is the range of solutions reduced, but getting there is faster, so people end up in a local maxima. Maybe they get stuck there, maybe not, but that's the risk I see.
You don't imagine any long term risks by outsourcing expertise to AI?
Which part of being a plumber? Was the house installed with something non-typical? Would you rather have them take an additional 30 minutes looking up their technical manual?
Without further knowledge of what was going on it's hard to say why they used ChatGPT.
It doesn't need to be cheaper than the cheapest meat to be competitive. If there's some social or moral incentive to avoid real meat, that adds value to plant based alternatives.
Fungi protein sounds cool though. I would totally add that to my diet. But I also think insects are an underutilized protein source, so I might be an outlier
Even when your personal budget would allow spending more for food, a price that is higher than that of meat is a serious red flag, indicating that it is likely that such a substitute for meat has greater environmental consequences than producing meat.
There are 3 reasons for avoiding meat. One is the ethical reason, because during the last century meat production has transitioned everywhere to using methods that can hardly be considered anything else but continuous torture. There are also certain health risks associated with meat and there is also the reason that the real cost of meat may be greater than it appears to be, due to negative environmental consequences (i.e. pollution).
If some kind of protein extract or some kind of fake meat is more expensive than real meat (per protein content), you can be rather certain that the negative environmental consequences are worse than for real meat, because the higher cost is likely to be determined by the consumption of more energy and of various kinds of chemicals during the production of the meat substitute.
Economy of scale and subsidies have a major influence on shelf prices. Is is a red flag to be a small producer and/or not profiting from public money? Some wouldn't cold-ban a product only based on it's price, especially if it's pioneering.
Being "certain that the negative environmental consequences are worse" seems an stretch from weak initial judgement.
Higher cost doesn't always indicate negative environmental consequences. It could be (and seems likely to me) that harvesting one cow's worth of plant protein is more labor intensive which isn't necessarily bad for the environment. If you compare two soy crops, one that uses herbicides and another that uses manual labor to pull weeds, the latter will be more expensive and better for the environment
Those are at least big enough that you don't have to eat the shells. (Fun aside: Technically, the grouping is closer to the other way around: insects are classed under crustaceans these days.)
Having it be cheaper would make it a real game changer -- if "chicken nuggets" and "burgers" were functionally equivalent (nutrition, appearance, mouthfeel, etc) and cheaper, then we'd start to see serious changes in animal husbandry.
It will never go away but if it becomes more niche then it's likely that what is produced will be done so more humanely (branding and perception of quality)
>there's some social or moral incentive to avoid real meat, that adds value to plant based alternatives.
This is missing the key point that like 95% of people in the world are not vegans, don't find any moral issues with eating meat, and thus produce zero social pressure. Fungi burgers MUST come with an actual benefit for the majority of people. It needs to be seen as some combination of "Tastey", "healthy", "cost effective". If fungi burgers were $2/lbs and tasted pretty close to a beef burger, then people would flock to them. The problem with Impossible burgers were worse, more expensive, questionably "more healthy" and entirely relied upon the moral/social issues which only mattered in a few small slices of society.
The problem as others have pointed out is that most musicians in the west already know some degree of western notation, so if you're collaborating, you'll have to translate back to western notation at some point. Even if you invent the perfect notation, it's like asking everyone to switch to esperanto because english grammar is flawed. And you'll still get people defending english "well actually, it's like that because the greeks blah blah blah".
My favorite music notation flaw is C flat. It's a hack. It's an ugly fucking hack and anyone who defends it is defending an ugly hack. The only reason it and double flats exist is because there are some key signatures (this happens with hungarian minor sometimes) where you end up needing to define 3 notes in the span of one space and one line on the staff, and you can't, so you have to borrow from an adjacent space or line. And so sometimes that C is actually a B. It's super annoying but uncommon enough that it's not worth everyone learning a new notation.
Anyway, don't let the nay sayers stop you from learning music however makes the most sense to you. Have fun
reply