< Back to the archive

Like what you see? Subscribe here and get it every week in your inbox!

Issue #117 - May 30, 2021

Here are the top threads of the week, happy reading!

Top comment by MereInterest

Bret Devereaux's https://acoup.blog/ is a fantastic weekly read. I was drawn in by some of the comparisons between Lord of the Rings and historical battle practices [0][1]. Right now, he's in the middle of a series on how Paradox Interactive games portray history, what things are accurate/inaccurate, and how to best connect with students whose interest in history was sparked by Paradox games [2].

[0] https://acoup.blog/category/collections/siege-of-gondor/

[1] https://acoup.blog/category/collections/the-battle-of-helms-...

[2] https://acoup.blog/category/collections/teaching-paradox/

Top comment by gregsadetsky

I’ll repost a comment I made a few years ago. Hopefully the (informative, and authoritative) reference will be useful!

——

The founder, and sole developer of Mutable Instruments (a well known modular audio/synth maker) wrote about her recommendations on how to get started in audio programming here [0]. Much recommended for the cited books, and general/business advice on making a hardware audio product.

[0] https://modwiggler.com/forum/viewtopic.php?p=2858814#p285881...

——

My own post about this was from a mini thread on HN about programming sound that may also interest you:

https://news.ycombinator.com/item?id=20491766

——

Last note! Another synth maker personally recommended the same DSP book as noted in the comment above (on Modwiggler), so it’s probably worth checking out!

Udo Zolzer's "DAFX"

Top comment by not-a-cat

Hi. I went through this journey myself. I have a CS master degree, and always wanted to transition into AI research (focus on probabilistic programming, deep learning and self-play, but also simulation, learning-to-learn, bayesian inference, genetic algorithms). The initial plan was to self-learn machine learning, deep learning and statistics. I did that for 1 year, with the hope of joining on of the big AI labs afterwards. As it's very competitive, I couldn't join one of those labs, and wasn't willing to compromise on that. So I turned to plan B: salvage my ML skills by applying them to crypto trading, and if it works, then I'll have funding to start my own lab.

Plan B worked: in 1 year and 2 months, we turned 40k of our own funds into 100M. Today we are a team of 5 and we do $5B of daily volume, around 3% of the global crypto markets. Now the challenge is to start the research division, operate the trading and research in tandem, and create the right incentives: the research converts money into ideas, the trading ideas into money. The research would have two sub-divisions: fundamental and applied to trading.

My motivation for the research is mostly curiosity: I want to de-mystify intelligence (natural or artificial) and reverse-engineer it. When you talk about your lab, I resonate a lot with "watch[ing] the beauty of it". The way I would describe my research agenda is the following: put a bunch of phds in a room, see what happens.

If that sounds interesting, email me at [redacted]

Top comment by rachofsunshine

Hi folks - I'm a PM at Triplebyte who recently inherited this part of our site.

You're absolutely right that this is a dark pattern, but it's not a current one - it's the echo of the dark pattern we screwed up on last year. If you hid your profile at the time, prior to last year's thread and our response to it, the maximum duration was one year (and yes, this was a really terrible idea among the other really-terrible-ideas that were called out at the time). But we changed that last year during our internal response. Hiding your profile indefinitely on our current site does in fact hide it indefinitely, and has ever since it was added as an option. (see https://imgur.com/n5e4CMB - and just to be clear this is my personal prod-testing account, not an actual person whose profile I screenshotted)

What happened here is that if you had hidden your profile just before we added the indefinite option, you were caught by the old dark pattern, which only let you hide it for up to a year. (And so, a year later, we're correctly informing you that it is now visible again.) We fixed the site at the time so that no one would newly be caught in this pattern, but what we failed to do was retroactively change the setting for people who'd selected 'one year' prior to that point.

This was a genuine oversight, and we'll fix it. I need to speak to our engineering team to make sure we can actually do so, but my immediate plan is to effectively just make the indefinite hiding retroactive by assuming anyone who set it to the max last year wanted that. In any case, it will get fixed one way or another - I was as pissed as anyone here by last year's events and have no intention of leaving y'all high and dry.

Top comment by msteffen

My feeling on this is mixed—I competed in ICPC in college, which is a competitive circuit of programming contests (like leetcode, but predating it) and went to the world finals, which is easier than it sounds but not nothing. I think there are a few levels on which this sort of practice might help your career, and the question of whether they do help depends on which level you mean:

1) Learning the algorithms. I agree with the general criticism that these algorithms aren't that broadly applicable. I work on data storage software, so we use a few relatively fancy data structures, but even so most of my day to day work isn't on the code that manipulates them. That said, I think succeeding at these contests (especially when they're timed) requires you to practice avoiding bugs, particularly off-by-one errors, and I think that practice is pretty broadly applicable.

2) Thinking in terms of data structures. The data structures that a program uses are a lot more important than the actual code. Some critics complain that programming contests teach you to write messy code. I think that the people who are really good at programing contests who write messy code (ime, it's more compact than messy) do it because they've trained themselves to look at a program and see the data structures rather than the code, and in my opinion that's a better way to think about a program.

3) Learning to get good at something in general. This is the main reward I feel like I've gotten from these contests. I think many skills in life (including job performance and career advancement) can be developed the same way: study the rules, study the best competitors to understand what's achievable and what techniques are available, make an attempt, try to understand the results you got, try to improve your approach, repeat. I think programming contests are a great place to learn to do this (among many others, of course).

Top comment by nickyvanurk

I lost my father at age 10 because of a brain tumor. I lost my mother at age 25 due to breast cancer. I'm now aged 27 and lost my brother last month due to alcoholism.

It's very sad and recently I cry regularly. Don't be afraid of crying, it's good for the soul.

Before my mom passed she said she just wants me to live my life. Do things that make me happy because before you know it life is over. She said: of course you will be sad in the beginning but don't let it control/ruin your life (like it did with my brother, alcoholism), live your life! Do all the things you want to do and don't wait to do it "someday". That memory really helped me a lot with the grieving process and made me realize that life is for the living, let the dead be dead.

I also educated my mom a bit because we never said "I love you" so one day I told her, let's say it! And get over this awkwardness. Since that time (she was already sick) we said it occasionally and I'm very glad we did that. I told her as kids we need to hear these things :)) . That taught me that as kids it's oké to tell your parents your needs. Parents aren't perfect and the're trying their best.

So how do I cope? In my experience the people that are dying are usually afraid that their death will mess up their loved one's lifes permanently and that they are "responsible" for it. So just live life man. That's the greatest thing you can do to honor the ones that have passed. Sometimes you feel like a zombie, sometimes you feel like nothing changed. It's all part of the experience we call life. We are just getting to know more about life and all the sadness and happiness it has to offer.

Top comment by UncleMeat

Hard: I have a handful of possible customers for my team, which projects and outcomes will be the most impactful?

Harder: I have long term relationships with other teams. How do I maintain those relationships even if every single person on the other team turns over?

Hardest: How do I provide opportunities for my individual reports to achieve their personal career goals while also ensuring that all of the work adds up to a meaningful whole?

I get advice from mentors within my company. I don't rely on external mentorship.

I don't believe that tooling can solve any of the hard problems I have. Management problems are people problems, not technical problems.

Top comment by nscalf

In my experience, there are 2 major things that contribute to this from the company. If you want a solid work/life balance, avoid very small companies like the plague. Their whole thing is working you hard to see if the company can become a thing, with a high chance of getting little to no return for the extra work.

The other major item that's contributed to that in my career/careers of people I've talked to about this is growth. You want a company that is experiencing moderate, steady growth. Doubling every year? That's going to be a painful job. Declining every year? Better work harder to justify your job. But a cool 3-15% each year in a steady company means you get to go home at 5.

More than any of that though, the most important contributor to work life balance is you. If you really value that balance, be ready to tell your manager you're not working late and accept that eventually you may get fired. If you're willing to do that, and you do your job well, you'll be fine (either at that role, or the next). I've had to explain to managers that I won't work 60 hour weeks to make a deadline they made up. It's not my company, I don't get any upside in spending more than the agreed upon hours working on it, and it's just a job. People scoff at that mentality, but you need to decide how you live your life and be ready to enforce those boundaries.

Top comment by femto113

Just leaving this here in case it saves someone else a little suffering: it was life changing to start sleeping with a pillow between my knees. I used to wake up with debilitating lower back pain every morning, which I worked through with stretching and yoga and such but then I saw a commercial for one of those bowtie shaped foam pillows that go between your knees and figured "what the heck" and ordered one. It was weird at first but seemed to help a bit, then one night I came home late, tired, and couldn't find the thing so just jammed a regular pillow between my knees--the following morning was the first time I woke up without back pain in years. It's definitely hard on the pillows so now when I buy a new pillow for my head I demote the old one to knee service.

Top comment by mikepurvis

I'd be interested to know more about what the developer workflow is like on these. Like, do you always build the application as a unikernel, and run it locally on qemu or vmware? What is it like debugging something like that? What is the story for incremental builds?

Or do you basically have to maintain a port of your software so that you can also run it on Linux with all the creature comforts of a normal system? If it's that, do you get weird bugs that only happen in prod and which are a gigantic pain to understand and work through?