Made me think of Markov chains, and the PageRank algorithm. We should construct causal graphs, then give each of them 1/n weight and iterate over the casual weight splitting out, until the Markov chain reaches a steady state. Then you know what is important causally and what isnt.
One of the major problems of modern-day life is that we are constantly bombarded with indicators of our status - in particular how low it is compared to the elites.
You might think that you could merely escape this by getting of social media, but in reality it's in the physical world too. Every single advertisement is trying to create a void in the viewer, in an attempt to get you to purchase their product. Every billboard, every TV ad, every time you walk into a supermarket... Even if ads don't work on you 99% of the time, the 1% that filter through to your subconscious can really wreck you.
John D. Rockefeller might have been poor compared to our times, in the same way that Julius Caesar or Genghis Khan was. But they didn't have the constant reminder of all the ways they were lacking. The average Roman soldier was 5'5", and I doubt many of them felt short. I've heard stories of men getting leg-lengthening surgery to go from 5'10" to 6'0", which if you don't know is an agonizing procedure of slowly getting your bones pulled beyond their maximum ability to stretch, which takes weeks or even months to even get back to being able to walk.
The all-too-easy answer to this is to just say "Well, comparison is the thief of joy, so just don't compare yourself". But if you want to compete in the job marketplace, or to be considered on dating apps, or just in general to participate in society it's almost a necessity to compare yourself to your peers. Obviously we should all be like the Buddha and not be drawn to comparison but it's a hell of a lot easier to do that when you're the guy on top.
I don't think I've ever found a single person, in real life or online, who never compares themselves to another person. So we should accept that equality in status (and not just in pure-stuff) is an essential ingredient to a happy, functional society.
> if you want to compete in the job marketplace, or to be considered on dating apps, or just in general to participate in society it's almost a necessity to compare yourself to your peers. Obviously we should all be like the Buddha and not be drawn to comparison but it's a hell of a lot easier to do that when you're the guy on top.
This is so perfectly and lucidly expressed that I'm replying to it just to "bookmark" this quote.
Anyone have any recommendations (books, courses, videos, etc.) on learning LISP? I've been intrigued by it and want to integrate it into a game I'm building as a development tool but not sure where to start on learning the language.
For Common Lisp, there are several free books available:
- Practical Common Lisp (aimed at people who know how to program in a more mainstream language already) [1]
- Paradigms in Artificial Intelligence Programming (my personal favorite) [2]
- Common Lisp: A Gentle Introduction to Symbolic Computation (aimed at absolute beginners of programming) [3]
I highly recommend the r/lisp Reddit community. Reddit as a platform has its issues, but the Common Lisp community there is very responsive and very helpful.
Lastly, you might be interested in checking out Kandria [4], a game written entirely in Common Lisp, to be released imminently on Steam.
Along those lines there is a classic side scroller with mouse aiming called Abuse[1] that was written in Lisp. The source code is in the public domain now[2].
Is there a reason why some well-known Lisp hackers are Japanese? I noticed the devs of Kandria (radiance, etc.) as well as Fukamachi (woo, clack, mito, etc.), and am wondering what led to that kind of geographical distribution.
> Is there a reason why some well-known Lisp hackers are Japanese?
Perhaps, they trained in the 5th gen computing environment begun in 1982 by Japan's MITI (Ministry of International Trade and Industry).
"It aimed to create an "epoch-making computer" with supercomputer-like
performance and to provide a platform for future developments in
artificial intelligence."
Because it is a large country (Population = 124M) and it had already in the past a Lisp community.
Many years ago at an event I met people from a commercial Lisp vendor in California. They had also business cards in Japanese, because a bunch of customers came from there.
Especially today, since Lisp rather than being a single thing, is a family of languages. I mean, there's some truth to "JavaScript being a Lisp", so you can see that it's a bit open ended.
If you're looking for an embedded Lisp, then I would concentrate on finding one that simply appeals to you. That is, find one that integrates easily, or has a particular feature that you like, or any of many things that may catch your eye.
Once you pick one, then simply "learn that". Consider GIMP originally started by integrating SIOD (Scheme in One Defun), which is a simple Scheme interpreter. They have since moved on to TinyScheme (of which I'm unfamiliar).
But, SIOD has been around forever. SIOD begot SCM which begot GUILE, which is specifically designed to be embedded. It's also pretty large.
ECL, which stands for Embedded Common Lisp is, well, a Common Lisp. Scheme and Common Lisp are both Lisps, but quite different from each other.
That's why rather than saying "pick this", simply find one you like and learn that. The landscape is wide and rich.
I always recommend Make a Lisp [0]. It's a guided experience creating a Lisp in whatever language you already know. If you go through all the steps, you'll have created a self hosting Clojure-like Lisp.
For me implementing a Lisp piece by piece helped me better understand its core ideas.
MIT OpenCourseWare has 6.001, SICP. Watching the '80s videos was how I got started with Scheme. Though on the book front I would definitely recommend starting with Concrete Abstractions before SICP.
With Common Lisp I think the standard road is Gentle Introduction followed by Practical CL followed by PAIP.
Reading this on mobile, I feel really lost about what the article is trying to say. The problem is all the sources are in between the essay-bits. I would prefer it if the author just used footnotes like Wikipedia when citing a claim and stuck all the sources on at the end.
One time I had a conversation with a coworker who was asking me what they thought was a simple question.
I tried to explain over and over again that I didn't think the question was very simple, that there could be at least 3 different answers depending on the context and that he would have to specify more. But he was so certain that it was simple that he didn't want to listen to any of my explanations. Eventually it came down to him trying to force me into saying either:
a. That I was too stupid to answer or even understand the question.
b. Some false solution to the problem that I already knew wouldn't work with the reliability we needed.
From that point on, I was pretty damn sure that I didn't want to work with this coworker ever again, and I eventually left the company largely because of them (this obviously wasn't the only issue I had with them, or the company at large, but still it played a large role).
To my ear, they all sound about okay for 4 seconds, until my brain recognizes that there's no tension being built or story being told. It's like every track is 4 seconds of music followed by 4 seconds of music followed by 4 seconds of music rather than a track with a real sense of progression.
Many have said in this thread already that maybe we ought to expect that a ml approach in the next few months/years could be much better. I'm not so confident that it will happen so soon. Audio might end up being a much harder problem than visuals, for a variety of different reasons. Having the time domain built into the medium requires some concept of memory, and even modern neural nets seem to struggle remembering what they said before the most recent prompt.
Once again though, its not impossible. Just requires the right techniques and enough people focused on it.
The thing is even if you can make a machine reproduce it, it's missing the human component, and the fact that you (I) know it's not human made already degrades the experience.
What AI gives you is a mash up, a mix of people's intent, a mix of people's feelings. What I want is the result of a singular person expressing his singularity though his work, I don't want the "average of the best" music or the "average of the best picture". This is good for content creation, when you need to pump out the maximum amount of "content" for people to "consume" (see marvel, netflix&co), but not for art
Art that leave a mark is always weird/quirky/personal/deep/&c. the fact that a machine can replicate the result removes the most interesting part of the equation, the human part. It's like making your own bread vs buying supermarket bread, the later is cheaper and faster, it might even taste better if you fucked it up, but it's a complete different experience
Not sure why this is downvoted, I think it’s exactly right. A huge part of what makes music feel meaningful is the parasocial relationship with the artist, and the cultural context the music captures and expresses.
That's... such a different way of relating to music!
Some of the most meaningful experiences I've had with music involved DJs whose names I didn't know, playing tracks produced by musicians whose names I didn't know and had no way to discover.
Didn’t say it’s the only way! But I think you would agree that most popular music is made by artists who have a very prominent public persona, expressed in different ways depending on the genre and subculture the music appeals to. As a fan you’re not just listening to the music as it is, but interpreted in terms of your thoughts and feelings about the artist. That context can make the music feel more meaningful.
Several years ago I implemented some very basic rules outlining some distance metrics between two chords and ran some multiobjective evolutionary algorithms to generate, say, a 16 bar progression while trying to minimize these distances between any two subsequent jumps. I added a couple or three other objective functions for judging the progressions by my idea of structure (i.e., starting and ending on the same chord), and found the results to be very promising.
With enough of a sophisticated rule system (which could be built from existing music) an AI should be able to optimize for tension building or storytelling quite easily. Of course it will only optimize for the definition of tension building or storytelling that it understands, via statistical methods or being told by the programmer explicitly. In the latter case the programmer is just doing one of the things composers always do, while in the former, the generated content is interesting - or not - in much the same way (IMHO) as transformer-based language generators like GPT-3.
Unfortunately I don't have the full working codebase anymore. Although I think I have enough I could recreate it, it was pretty rudimentary and I've always intended to revisit the idea one day and flesh it out as at least a blog post or something (at which point I will submit it here). I only have a couple of the progressions but they don't mean much on thier own since I hand-picked them out of the result set based on personal taste rather than any formal algorithm.
Most real tracks don't have tension buildup or progression. That you judge music based on it mostly just speaks of your preferences. As far as I heard the tracks were coherent and not just 4s snippets glued together. Having said that, I don't think they were exceptional or anything.
Besides ambient music, what music doesn't have any sort of buildup of tension and subsequent release? Do you have any particular example tracks that doesn't have any tension/release at all?
I feel like most of the music people commonly listen to have that, it's an essential part of what makes music feel "human".
I think maybe you two aren't on the same page. I know you are referring specifically to tension and release as a music theory concept, which is for sure very common. Even a single "tense" chord in a chorus resolving to the tonic is tension and release. I think the other person is speaking of "tension" in the context of progression, like a song's building up to a crescendo would be considered tension, or a dubstep drop, or a metal breakdown, etc. (those are also tension and release in music theory, but I think the person is speaking broadly in laymens terms)
A short list of things worth thinking about trying, listed in no specific order:
1. Find a project at work that you are interested in, and move over to that.
2. Join a completely different team/org at work.
3. Join a completely different company, doing different types of work.
4. Join a socially responsible company, doing charity work.
5. Quit your job, and take a 6 month break. Don't think about work during that break.
6. Go see a therapist for at least a couple of months.
7. Improve your diet and exercise routines, potentially with professional help from a trainer or a nutritionist.
8. Begin a treatment plan using drugs w/ the approval of a psychiatrist.
9. Begin a treatment plan using drugs without the approval of a psychiatrist, YOLO mushrooms time.
10. Leave your job, and move into an entirely different industry. Go start a farm.
11. Take a trip to a country with a radically different way of life, to gather some perspective.
12. Take some daily time to do something away from a computer - like join a pottery club.
13. Read some philosophy books on the meaning of life. Do some introspection based on what you read.
14. Pick a goal at work, like getting a promotion, and figure out what you need to do that.
I want to also offer a quick theory of burnout. Burnout is caused by 3 different sources:
1. Plain old overwork. Too much on-call is not good for your soul.
2. Mission doubt. If you begin to doubt the reason why you are doing something, you will get burned out.
3. Broken steering. If you feel that nothing you do actually is changing the situation, that you're unable to make meaningful progress in your work.
What I want to stress about this theory is that you don't need all three to have burnout. Some people think that taking an extended vacation is the cure to all burnout, because their theory only accounts for source 1, when you can have burnout from a job where you only work 20 hours a week. You might wish to first try and figure out which of these 3 sources seem like the cause for your burnout, and then which of the 14 options seem most appealing to you.
Changing jobs is (likely) necessary but not sufficient. For example, if OP works a front-end job at Meta and switches to a front-end job at Google, that's unlikely to make them motivated. I don't think you're "missing the point", but I do feel that your answer is very incomplete.
I feel like we are - I can run Minecraft RTX at 4k with acceptable framerate using DLSS 2.0 on a 3090. Minecraft is using pure raytracing (no rasterization). It also isn't using A-SVGF or ReSTIR, so there are 2 pretty big improvements that could be made.
Minecraft RTX does suffer really badly with ghosting when you destroy a light source, but my intuition says that A-SVGF would fix that entirely.
That being said, some of the newest techniques, like ReSTIR PT (a generalized form) have only been published for a couple of months, so current games don't have that yet. But in 3-6 months I would start to expect some games go with a 100% RT approach.