Readit News logoReadit News
joshstaiger commented on Six Recent Studies Show an Unexpected Increase in Classical Music Listening   tedgioia.substack.com/p/s... · Posted by u/paulpauper
joshstaiger · 3 years ago
I highly recommend Robert Greenberg's "How to Listen to and Understand Great Music" if you have any interest in Classical.

Available on audible:

https://www.audible.com/pd/How-to-Listen-to-and-Understand-G...

It's long (36 hours, broken up into ~45min lectures), but very engaging and accessible. He goes through the entire history of Western music from Pythagoras through the 20th century. He covers everything from (very basic) music theory to how trends in society and technology influenced the music that was produced in each period.

After listening to the whole thing, it gave me a much more fully formed mental model of how different eras, composers, and styles relate to each other.

And from there it's become much easier to dig in and appreciate different areas of the repertoire, rather than idly trying to absorb disparate pieces that would come up on radio/streaming.

Deleted Comment

Deleted Comment

joshstaiger commented on Ask HN: How can I get better at bash?    · Posted by u/cocolos
seorphates · 9 years ago
Most of the responses here so far that do not include some sort of a guide are not the responses you're looking for (imho).

Mind your pipes and quotes. Guard your variables with braces. Do not export everything, test for and (try to) handle return codes and conditions and keep it simple (emphasis simple) but most of all just write it.

BASH (or Bourne) is ubiquitous when dealing with systems (vs programs). You don't need to be on the fashionable lang of the day by any measure. BASH, for most cases, will always be there, always ready and, in most cases, is the default human interface for deployed systems. As scripting languages go you don't need "better", you need dependability, zero dependencies with no requirement for modules or any other whizbangwoohoo plug-in. Language Fashionistas and personal preferences aside at least some level of fluency with BASH should be mandatory for anyone interfacing with a system.

joshstaiger · 9 years ago
1000 times this.

You're going to get a lot of snark from people saying things like "don't", or "learn python instead".

This epitomizes "a little knowledge is a dangerous thing".

Bash has many cringeworthy aspects, but we have to deal with the world as it is, not the world as we would like it to be, and the reality is that bash is the default shell on 99.9% of unix boxes you encounter — even if you use an alt shell on your machine.

Coworkers machine? Bash. Default AWS AMI? Bash. init script to bootstrap $DAEMON? Bash. ssh to a server at your workplace? Bash. Random O'Reilly Linux tutorial? Assumes bash.

My advice?

Take some time.

Sit down.

and read "man bash"

cover-to-cover.

at least once.

A lot of the illogical things in bash make a lot more sense once you understand its parsing/expansion rules. And once you understand what is in the language vs an external terminal program in your PATH.

Since that sounds unappealing (and I scoffed at that very advice for many years), I've also found the wooledge bash guide to be very helpful.

joshstaiger commented on Clojure Linear Algebra Refresher, Part 4: Linear Transformations   dragan.rocks/articles/17/... · Posted by u/metalock
btilly · 9 years ago
I had not yet read it. Having just fixed it, it is missing the role of a basis. And without it, you'll have trouble figuring out coordinate systems, changing your basis, and so on. Which gives you no way to keep straight such confusing things as the fact that if your coordinate system rotates one way, your representation of things rotates the other. (Try it! Stand up, turn clockwise and see the world spin counter-clockwise!)

Let me offer an abstract example. Consider the polynomials of degree at most 2. There is an obvious basis, namely 1, x, and x^2. A polynomial like x^5 - 3x + 2 can now easily be written in coordinates as (2, -3, 1).

However we have many other coordinate systems that might be convenient. For example suppose that we're sampling data, and can measure p(0), p(1) and p(2). How do we find what polynomial that is? Here is an easy way. We can easily find the new coordinates for our basis vectors: 1 -> (1, 1, 1), x -> (0, 1, 2), x^2 -> (0, 1, 4). That means that we can write down the matrix representing the identity transform (nothing happened), going from the basis we have, to the new coordinate system:

    ( 1  1  1)
    ( 1  2  3)
    ( 1  2  4)
That's the change of basis matrix one way. Invert it.

    ( 2 -1  0)
    (-3  2 -1)
    ( 1 -2  1)
And now we can go the other way. The polynomial that we want from our sample data will be (2-3x+x^2)p(0) + (-1+2x-2x^2)p(1) + (-x+x^2)p(2).

There are a lot of problems where linear algebra comes up that you can think through more clearly if you think about things this way (complete with the role of the basis!) than if it isn't fully digested.

As for a better book, well, I already recommended Down With Determinants! :-)

joshstaiger · 9 years ago
I'm not sure if you'll see this 2 days later, but I've been trying to make heads or tails of your example and I think there’s a mistake in there somewhere.

Maybe I'm hopelessly lost, but, for one, the inverse of

    ( 1  1  1)
    ( 1  2  3)
    ( 1  2  4)
is not:

    ( 2 -1  0)
    (-3  2 -1)
    ( 1 -2  1)
On the off chance you see this, any pointers?

Deleted Comment

joshstaiger commented on Swift: Challenges and Opportunity for Language and Compiler Research [pdf]   researcher.watson.ibm.com... · Posted by u/Jerry2
chmaynard · 9 years ago
Could someone define "compiler crash" and explain what it looks like? Does Xcode itself crash?
joshstaiger · 9 years ago
Your code stops compiling with a pretty unhelpful error message. Y'know, like Segmentation Fault 11, and a stack trace into the swift compiler sourcecode if you're lucky.

XCode doesn't always crash (though it does, frequently), but syntax highlighting goes away at the first hint of an issue.

joshstaiger commented on Swift: Challenges and Opportunity for Language and Compiler Research [pdf]   researcher.watson.ibm.com... · Posted by u/Jerry2
bsaul · 9 years ago
Funny how people here mention source breaking change as the main issue with the language. I think it's because they haven't used swift on a large codebase. The main issue once you start to work on a big project are compiler crash ( https://github.com/practicalswift/swift-compiler-crashes ) and compilation time.

I really don't understand how a compiler can crash that much ( actually i've been coding in many client and server languages before and it's the first time i see a compiler crashing while i code). It makes me really nervous, because it shows that unit tests aren't good enough, and that the language is really in alpha stage, not more.

As for compilation time, you may think it's just a matter of optimisation. But the problem is that until those optimisation arrive, you can't rely too much on type inference (main source of slowdowns), which diminishes a lot the beauty of the code.

Now that was for client side. Server side probably adds its share of issues.

I used to be very optimistic for this language, but i'd say the swift team only has one more shot to make it really production grade, before the word spreads that this language is for now just a joke ( maybe apple using it for its own app would help allocate more resources).

joshstaiger · 9 years ago
1000 times this. I've been really enthusiastic about the idea of a modern, compiled, type safe, systems language, backed by a major tech juggernaut.

But the compiler crashes and sourcekit instability are just breathtaking (even in 3.0+). I'm surprised I haven't seen this get more attention.

I'd (somewhat) expected something like this for the first few releases, but two years in I'm starting to think the team bit off more than they can chew with the type system.

u/joshstaiger

KarmaCake day650September 19, 2007
About
joshstaiger@gmail.com

http://www.multpl.com

http://www.joshstaiger.org

View Original