We wrote an article on Product Hunt 'to dos' with a statistical analysis - <AUTHOR> https://www.epiloge.com/how-much-time-should-you-actually-invest-into-your-product-hunt-launch-9a810e <comment><AUTHOR> We have posted Epiloge, our start-up to Product Hunt today.

There are tons of articles on tips and tricks for posting anything on Product Hunt, even though people ultimately always say it is the app itself which is what gets people excited (tips range from "don't put your app up on PH right away, but iron out bugs first", "get an initial community or user group with feedback", "follow on posts on Twitter, Facebook, email", "make great slides that look like your app" etc.). But we couldn't find a step by step walkthrough what's really technically required to put together a reasonable PH page... and don't forget anything!

Do you absolutely need an animated GIF logo? And where do you get one... How common are videos posted to the successful PH launches? Can you hunt your app yourself or is it a no-no and you really need to contact one of the "hunters" on Product Hunt to do so. What about timing again? etc. At least those were our questions.

Well, to get some answers, we put together a little statistical analysis that led to a steps plan for our PH launch. There are also links in there to much more comprehensive blog posts and articles we found useful.

Anyway, hope this is a good read for others in a similar situation - and yeah, any support on ProductHunt for Epiloge is appreciated [https://www.producthunt.com/posts/epiloge-2](https://www.producthunt.com/posts/epiloge-2) :)

Cheers!</comment>


Ask HN: I have received RSU's. Now what? - th-miracle-257 Please help me with any or all of the following:<p>- a simple definition of RSU's<p>- how to effectively utilize these? and yet,<p>- how to not let them be your golden handcuffs? <comment><AUTHOR> An RSU is like a pre-order for a share of stock. Your employer gives you an RSU with a specified vesting date as an incentive to continue working for the company until that date. On the vesting date, the RSU magically turns into a share of company stock, which is then yours to keep or sell as you please. If you leave, any remaining un-vested RSUs simply evaporate.

Holding shares in the same company that pays your salary for is not great from a risk-management point of view, so most people sell their shares as soon as they vest. You can reinvest the proceeds in a mutual fund or something.

Golden handcuffs only work if you let them. I make a habit of completely ignoring RSUs and acting as though they have no value. They play no part in my decisions about where to work or how I feel about the compensation package. If the salary is good I take the job, if not I go somewhere else. If the RSUs turn out to be worth something, then yay, it's a bonus! But most of the time they are not as good a deal as company recruiters would like you to think they are - if they actually _were_ worth the cash equivalent a recruiter will quote you, the company would save themselves the trouble of managing the RSU program and just give you the cash instead. The company saves money by offering you RSUs because you will never be able to cash in on all of them - you will always walk away from the company with un-vested RSUs at some point. That's not a terrible thing, just don't let yourself count RSUs as real income until _after_ they actually vest.

</comment><comment><USER2> Assuming these are RSUs are in a listed company whose shares are liquid, the things that are important are:

\- the list of vesting events (including date and # shares)

\- the current market price of the stock

You can use the above to calculate your future income at this job (after adding your cash salary and expected bonus). This will provide a benchmark against which to evaluate future job offers.

If you want to diversify your portfolio (rather than having a large part of your wealth linked to the stock price of your employer), then you could sell any shares immediately as they vest, and use the money to buy an index tracking ETF.

</comment><comment><USER3> >how to not let them be golden handcuffs.

Stay competitive and willing to leave for a different company or find value in other things than gold.</comment>


Ask HN: What tool/trick has most improved your programming productivity? - <AUTHOR> <comment><USER2> Interactive debugging. "Most bugs are a result of the execution state not being exactly what you think it is" (Carmack) and it's astonishing how many people just refuses to effectively debug using an interactive debugger, which allows for easy inspection of anything, at any moment, with a REPL for a given state of your program, including call stack inspection/jumping and what not. Some say that "printing" and/or "logging" is just "enough", when those are _other_ debugging techniques and often needed too. Heck, even some say that "if you need to step through your code you already are in bad shit" just as an excuse.

Knowing how to do effective, interactive debugging in any language is a major step in productivity: it helps in so many ways: learning, diagnose, getting things done...

<comment><USER3> I can't stand watching people do the add print statement —> compile —> run loop over and over. You can save so much time just stepping through and printing things in the REPL. It's like you're gonna be in this industry a long time, learn the damn tools.

Sometimes if I'm writing a complicated piece of logic I'll even jump straight to the debugger on first run just to look at all the values and make sure the assumptions were correct.

<comment><USER4> Both have their place, printing is good when you need to get some quantity reads.

</comment></comment></comment><comment><USER5> I like to leave off at the end of the day knowing what the next step is. I leave a small task that I could easily do then and there. This way I can start my morning off with a simple, quick, productive task. This gets my momentum rolling. I learned it reading about some famous author that used to use this trick.

Other fun productivity tricks include drawing a simple diagram when you can't focus or don't know what to work on next. I also try to have tasks that take all different levels of focus and cognitive energy in the backlog so that I can choose a task based on my mood.

</comment><comment><USER6> Meditation. Not the type that keeps you calm, but the type that acts as internal debugging.

All my issues with procrastination come from some deep internal issues, for example, an aversion to working hard, sleeping early, or wanting to spend a lot of time on games as some sort of status symbol.

A lot of these come from mental scars in our past, or even the wrong cultural conditioning. Basically just think what we would do if we were in complete control of ourselves, and why we're not doing that. And then dig really deep to find out where. You'll definitely know when you strike the nerve - it can trigger a sudden rage or tears. But hitting that nerve reduces the control it has over you.

</comment><comment><USER7> Keeping a private "playground" code repository that hosts various "trivial"/useless projects you've flash through in your brain during free time. For most of us, a simple application prototype is good enough.

Keep them buried for some period (maybe a month or so), then review back your code and see what's the good, bad & ugly you used to have (e.g algorithm usage, memory allocation, code style, correctness). I love this kind of "writer's retrospection" to see how much we've grown.

</comment><comment><USER8> I like the Pomodoro method. Basically, focus on a task for 25 minutes, then take a 5 minute break. Every 4 blocks, take a 15 minute break instead.

I work at home, so I do housework in some of those 5 minute breaks. It's different enough that it helps clear my mind enough to focus again after the break.

I'm still trying to find a good way to plan these work chunks, but so far I think emacs org-mode will work pretty well.

<comment><USER9> I find it difficult to break after 25 minutes when I am too much into the stuff specially in between complex debugging. Then I feel like I am not doing Pomodoro right. Do have a similar experience?

</comment></comment><comment><USER10> Test driven development. Making your tests first, or at least early, helps you mentally nail down what you want your software to do. It also helps you think defensively early-on about corner cases and race conditions.

But that isn't really where the biggest benefits lie.

When you come back to that code a year later and have to make changes to it, but have forgotten how it works, having all the tests pass with good coverage provides a significant (but not absolute) level of confidence that you didn't break anything.

Given that so much development time is spent editing/updating code, rather than writing it from scratch, this can be a huge speedup in productivity.

</comment><comment><USER11> Prettier for auto formatting. Tailwind for CSS.

However, the biggest win was having a custom React boilerplate better suited to my needs than anything else that's out there.

<comment><USER12> I love using prettier. I just hit that format button or let it format on save. No reason to waste time formatting it when something can do the styling I normally do automatically.

</comment></comment><comment><USER13> Jetbrains IDEs and learning using flashcards.

<comment><AUTHOR> +1 on Jetbrains, I've just installed PHPStorm and have skipped a ton of env setup BS already by having PHPStorm run my stuff from inside a docker container managed in the IDE itself.

What do you learn using flashcards, out of interest?

<comment><USER13> I use Ankidroid and make my own cards.

It works on all platforms and is free. Usually just language syntax, and keywords.

But there are great free flash cards like this one on Kotlin: [https://ankiweb.net/shared/info/1229687199](https://ankiweb.net/shared/info/1229687199)

I got inspired by Derek Banas video: [https://youtu.be/5urUZUWoTLo](https://youtu.be/5urUZUWoTLo)</comment></comment></comment>


Dan Bunten and M.U.L.E. (2013) - <AUTHOR> https://www.filfre.net/2013/02/dan-bunten-and-m-u-l-e/ <comment><USER2> Absolutely loved it on the Commodore64, and still love playing the ROM+emulator version. It's truly a masterpiece of easy to learn, yet challenging to master, and of course just plain fun.

</comment><comment><USER3> > Despite all the love lavished on M.U.L.E. by Ozark Softscape and EA and > despite deservedly stellar reviews, it was a commercial disappointment. > M.U.L.E. sold only about 30,000 copies over its lifetime

Wow, that's sad to hear. But I still have one of those 30,000 here in my study (if the C64 counts in those numbers!)

<comment><USER4> Yeah, nah, my cousins were known C64 pirates and I had hundreds of disks filled with games for my C64. I too loved MULE, but I didn't pay for it. It makes me sad, now.

EDIT: my standard loading screen was ISEPIC[0]

[0][https://rr.pokefinder.org/rrwiki/images/7/71/ISEPIC.gif](https://rr.pokefinder.org/rrwiki/images/7/71/ISEPIC.gif)

</comment></comment><comment><USER5> Four player M.U.L.E. was amazing. It was such a fun game that had simple rules but pretty varied strategies.

</comment><comment><USER6> Discussed at the time: [https://news.ycombinator.com/item?id=5211036](https://news.ycombinator.com/item?id=5211036)

2014: [https://news.ycombinator.com/item?id=7929284](https://news.ycombinator.com/item?id=7929284)

</comment><comment><USER7> The first game I played for 12 hours straight without noticing what happened. The only real flaw was the crystite strategy that had a "runaway win" nature.

Played this for years before I realized that you get points for making your property contiguous.

</comment><comment><USER8> I still regularly play M.U.L.E. on my 800xl daily driver.

There still exist a ton of us that love our vintage machines and games, us Atari guys hang out on the [https://atariage.com/](https://atariage.com/) forums and in fact my local Atari group has our monthly meeting this Saturday and there are plenty of larger meetups like the ones that the Vintage Computer Federation puts on [http://vcfed.org/wp/festivals/](http://vcfed.org/wp/festivals/)

Floppy Days podcast has been doing a good job documenting old machines and software by talking to the people involved [http://floppydays.libsyn.com/](http://floppydays.libsyn.com/) as well as uploading anything they get to the Internet Archive.

For Atari there's also ANTIC The Atari 8-bit Podcast by some of the same people involved with Floppy Days [https://ataripodcast.libsyn.com/](https://ataripodcast.libsyn.com/)

There's also the Facebook page "Vintage Computer Shows" that tries to list all upcoming shows/conventions that is run by one of the ANTIC guys (that also runs the local group here in Indy).

</comment><comment><USER9> M.U.L.E. on the Atari 800 was fantastic.

</comment><comment><USER10> So what is the consensus on _Planet M.U.L.E._ for those who actually remember the original game? It was my first introduction to M.U.L.E. as a game, and I thought it was a very neat little implementation back when I tried it

[http://www.planetmule.com/](http://www.planetmule.com/)

</comment><comment><USER11> Loved M.U.L.E. Friend and I used to play for hours on the Commodore64. Now we still play using the emulator.

<comment><USER12> Can emulator handle four physical joysticks? I'd like to assemble a setup to play w four people.

<comment><USER13> A Commodore 64 only had 2 joystick ports, so the C64 version of M.U.L.E. uses the keyboard for players 3 and 4 on screens where all players are active, but accepts input from any joystick on screens where only one player is active -- allowing players to pass the sticks around to take their "turns".

The Atari version of the game supports four joysticks as did the underlying hardware. This is the version you want to play in emulation if you have 4 players. Great fun!

</comment></comment></comment><comment><USER14> > But as any good game designer, whether she works in cardboard or silicon, > will tell you, even the most genius of designs must be relentlessly tested, > endlessly tweaked. Ozark Softscape and EA devoted literally months to this > task, gradually refining the design.

It was nice in the '80s to buy a game and receive an actual finished game out of the box. Contrast that today where the game is barely working on release day, and underwent insufficient play testing and tuning. We're so reliant on endless patches now, and gamers inexplicably accept the idea of buying unfinished "early access" games. Does any major studio actually devote a length of time measurable in months to play testing anymore?

<comment><USER15> We're going to see a much larger problem, of actually archiving this autoupdated software.

10 years later, I could reinstall NeverWinter Nights. 20 years later, and I could still install Unreal Tournament. 25, Total Annihilation. 30 years ago; Duke nukem.

But that online game that came out 4 years ago and was abandoned; gone to time. Even if I have the client, the server world is gone. Nada. Any trace of my playing, my friends, our exploits; gone from time. But there's a CNet article about it. That's as close as anyone will ever get.

</comment></comment><comment><USER16> I spent hours playing that on my C64. I can still hear that music in my head...

<comment><USER17> The music is very catchy, indeed: [http://deepsid.chordian.net/?file=/GAMES/M-R/M_U_L_E.sid](http://deepsid.chordian.net/?file=/GAMES/M-R/M_U_L_E.sid)

<comment><USER18> MP3s available here:

[https://ftp.acc.umu.se/mirror/media/Oakvalley/soasc/hvsc/051...](https://ftp.acc.umu.se/mirror/media/Oakvalley/soasc/hvsc/051/MP3/GAMES/M-R/)

</comment></comment></comment><comment><USER19> I always loved the look & idea of M.U.L.E., but I never understood how to play it.</comment>


Show HN: Customizable music loops for videos, games, podcasts - <AUTHOR> https://studio.awsm.st/ <comment><AUTHOR> I built this web app that lets you customise background music loops within a set. You can switch different instruments on and off, set volume levels, set the length and download. All the tracks in a set work together but different combinations can change a piece from light and happy to dramatic and angry to wistful and relaxed.

It's primarily for video background music but it also works for games where you need lots of variations of tracks that work together to smoothly change with the game's mood and atmosphere.

<comment><AUTHOR> There are examples of very different tracks built from the same set in this blog post: [https://thingsinjars.com/post/497/harmonious- studio/](https://thingsinjars.com/post/497/harmonious-studio/)

</comment></comment><comment><USER2> This project is super interesting to me for a variety of reasons and I spent a few minutes playing around with it--and have some thoughts, feelings and opinions as a result. :)

Too many to get fully into now but here's a few roughly expressed:

* Do people who want background music want as much control over individual instruments as this provides or is it too overwhelming?

* Do the target audience have the necessary skill/experience/desire to be able to manipulate the music at the level of control provided to get the result they want?

* Do people want higher level less detailed control over the feel of a piece of music? e.g. "more exciting", "more dramatic", "slower", "less repetitive", "less in-your-face"?

* Would people want to chain some mix variations together to provide a single longer, less repetitive sequence?

* Is it more effective for the original artist to provide variations on a piece or selected "mixes" and people choose one of those rather than manipulating individual instruments themselves?

* What if individual instrument volume or selection were chosen randomly after pressing a "give me something different" button?

* What if individual instrument volume or selection were chosen by a method that used some "intelligence" to set values rather than completely random?

* Rather than starting with a silent mix, it felt better to start with a playing mix (from the side bar) that I could then alter. (Similar to a great GDC talk I saw from someone involved in Spore, I think, who said they intentionally didn't present a "blank page" in a design tool, in order to help people get started.)

* After being used to more of a vertical channel mixing desk layout the horizontal/grid volume control layout felt weird to me.

* Design-wise it feels/looks a bit "dated"/busy/cramped to me.

FWIW my most satisfying mix was based on "Organ Or Not". (Also, I think that being able to generate a URL to save mix settings without having to create account/login would be nicer experience--and also would've meant I could've shared the mix with you here. :) )

I have a general interest in music composition, code, user experience and dynamic music which is part of the reason for my interest in your project.

Now, I'm no investor but to me, this project seems like something that seems like it might have a potential market for it because there's already an existing market/demand for pre-composed background music.

My key question though would be "do people want this much control over the mix"?

FWIW my suggestion would be to:

* Get this in front of as many people from your target (end purchaser) audience as possible and find out if it actually serves their need. My gut feeling is that it provides too much control for most people to be comfortable with.

* Investigate other dynamic music products/services to find out what's working and what's not.

* Look at other "consumer" orientated products that enable manipulation of media that previously required a professional. e.g. photo manipulation software, everything from Photoshop's "Variations" tool (see: [http://www.graphic-design.com/Photoshop/color_cast/figure_3-...](http://www.graphic-design.com/Photoshop/color_cast/figure_3-10.jpg) via [http://www.graphic-design.com/Photoshop/color_cast/](http://www.graphic-design.com/Photoshop/color_cast/)) to "Red Eye" reduction or "Magic" fix options in iPhoto or similar. Essentially how can you help people explore a "solution space" to get the result they want?

It's definitely a cool tool with lots of possibilities technically but even if you got everything about it right as a tool, I can still see a risk that it might not be solving the actual problem people want to (pay to) have solved.

Good luck! :)

Oh! Just thought, also check out DropMix by Harmonix/Hasbro: [https://www.geek.com/games/dropmix-is-the-crown-jewel-of- har...](https://www.geek.com/games/dropmix-is-the-crown-jewel-of- harmonixhasbro-music-games-1715462/)

Particularly these reviews/posts from Penny Arcade and note about how it makes the (non-musician) players _feel_ : [https://www.penny- arcade.com/news/post/2017/09/25/men-of-dis...](https://www.penny- arcade.com/news/post/2017/09/25/men-of-distinction) [https://www.penny- arcade.com/news/post/2017/10/11/bifurcator](https://www.penny- arcade.com/news/post/2017/10/11/bifurcator)</comment>


Show HN: Gter – A terminal for GUI apps - <AUTHOR> https://github.com/raoofha/gter <comment><USER2> Only slightly related;

My favorite 3d Modeling Program, Rhino3d, has a built in command line stemming from its Autocad heritage.

It is absolutely amazing, and has been for two decades now. Rhino3d is by far the best 3d modeling program I have ever used, and I'd say it is downright _fun_ to use!

Auto-complete, discoverability, and the way it mixes keyboard and mouse input all come together to make this wonderful experience. A basic example, tell it to draw an ellipsoid, click the starting point, type the width in one dimension, and then click the mouse for the third point.

In comparison to Sketchup I am easily 5x-10x more productive in Rhino (not just because of the command line, lots of other reasons, Rhino3d really is awesome).

I wish more applications had built in command lines that mixed mouse and textual input so well together. IMHO the greatest contribution VS Code has made is bringing that sort of combined UI to the programming masses, and doing it really well.

<comment> yjftsjthsd-h Yeah, the one thing that I love about autocad is that they made a system where the GUI and CLI are actually fully integrated and equal. I'm actually surprised that I've not really seen anything like that elsewhere, especially in the *nix world.

<comment><USER2> AutoCAD's integration is a historic legacy from its roots back when GUIs were more limited.

Rhino3d was, AFAIK, one of the earlier re-imaginings of that paradigm. (The CAD world doesn't move too fast!)

Autocad has released slews of products since I last looked at any of this, but I still _really_ enjoy using Rhino3d. It feels like a natural extension of my mind and body, it is _that_ good to use.

I don't even have a reason to do 3d modeling anymore, and I'll still open it up sometimes just to do something in it.

Gah I can't believe Blender and Sketchup became popular with their WTF UIs. Or why they didn't just copy a good UI from the get go.

Bleck.

</comment></comment></comment><comment><USER3> Part of me wonders what a clean sheet redesign of a text terminal handling system would look like, would it still use inband signaling, or would you presume network and break it up into multiple sets of communications channels.

</comment><comment><USER4> I don't get it. What can you do here that you couldn't otherwise? You already have a term and an xserver to make it work right?

<comment><AUTHOR> it's just a proof of concept. I think it's cool to have a unified UI to the OS it's like you're chatting with the OS and it/(she/he in the future) can show/ask you anything in response. my core idea is to make it easy to create something like Mathematica or Jupyter(IPython) by creating set of tiny GUI program that follow the same convention to talk to each other.

<comment><USER5> That's a really interesting idea! I wrote a bit about it in Dercuano last year but I don't have a prototype to show. I look forward to seeing where you take it!

</comment></comment></comment><comment><USER6> You don't even need to make it vt100 compat. Just temporarily spawn the lightest vt100 compat terminal in the terminal.

Very cool.

<comment><USER7> Could you elaborate? Thanks.

<comment><USER8> The "terminalish" part of this terminal doesn't need to actually be implemented. Instead, it can run another terminal as another X app, as the full backgroudnd.

<comment><USER9> Except you'd need to keep track of windows inside the terminal, which is not obvious.

</comment></comment></comment></comment><comment><USER10> With DomTerm (https:://domterm.org) you can get similar functionality by embedding browser windows. In a running domterm window do:

domterm html '<iframe src="[https://example.com"](https://example.com") width="100%" height="400">'

I think this is potentially more useful than embedding X applications since an application with an embedded http-server can conceptually do anything an X application can do but with a more portable (and remote-able) toolkit. (DomTerm itself is an application with an embedded http server.)

</comment><comment><USER11> This makes me think we might need a terminal for web apps.

<comment><USER11> By this I mean actually a way for people to publish standardized web interfaces that can all be accessed from the same local terminal, with built- in identity, text-editing and JSON filtering with jq, who knows what else.

<comment><USER12> > By this I mean actually a way for people to publish standardized web > interfaces that can all be accessed from the same local terminal, with > built-in identity, text-editing and JSON filtering with jq, who knows what > else.

Unfortunately, the interfaces which need this treatment the most are the ones least likely to get it, since big companies (even those that do not intentionally profit by obscuring what they know about you from you) are terrified of what you might do with your own data if given anything more than laboriously point-and-click access to it.

(EDIT: Hi, PeopleSoft! I hate you!)

<comment><USER11> I think there are a ton of services that could be more easily built (at least as proof-of-concept) if this kind of UI existed and developers didn't have to worry about pretty flashy GUIs. Also something like this could have more access to "native" stuff than current browsers.

</comment></comment></comment></comment><comment><USER13> This could be the start of a whole new world: [https://www.destroyallsoftware.com/talks/a-whole-new- world](https://www.destroyallsoftware.com/talks/a-whole-new-world)

</comment><comment><USER14> Xnest II: Electric Boogaloo

</comment><comment><USER15> This is extremely cool. Hope to see it gets further development.

</comment><comment><USER16> This is really neat, you did an awesome job. I don't know why everyone is being so negative about this.

Hearkens back to another time...

</comment><comment><USER17> Can this run over ssh/mosh?

<comment><USER18> It runs

        xinit ./xinitrc -- /usr/bin/Xephyr :100 -screen 960x540 -dpi 96

</comment></comment><comment><USER19> Who still uses X11 when Wayland works great?

<comment> yjftsjthsd-h If/when Wayland works great, I'm sure more people will start using it. In the meantime, it still breaks stuff that people use.

</comment></comment><comment><USER20> Would be a much better Show HN if the demo picture works on the page...</comment>


Show HN: Apodidae – Search for swift packages right from the command line - <AUTHOR> https://github.com/kiliankoe/apodidae <comment><AUTHOR> Hi all,

I was missing a small tool somewhat akin to npm (specifically npm's search and install functionality) for the swift ecosystem so I spent some time writing something to fill that gap. I'd really love some feedback on the idea and usability :)

The basic idea is that it's hard to find suitable packages when writing a swift library or executable. There is no single centralized listing of all packages (packagecatalog.com and swiftmodules.com can only have _so_ current data), so this tool queries GitHub's API directly for repos written in Swift that include a file named Package.swift. It offers ways to search for packages, display more info about them and add them to your package manifest.

You can find the project here: [https://github.com/kiliankoe/apodidae](https://github.com/kiliankoe/apodidae)

It conveniently installs as `swift-catalog` so that you can run it like a subcommand of swift itself as `swift catalog`. The basic interaction is also shown in the README in more detail.

There's still quite a few rough edges and the code definitely needs some cleanup, it's more of a test than something that should be depended on at this point I guess, but as stated: I'm open for all kinds of feedback!</comment>


Private Equity loading companies with debt to pay themselves dividends - <AUTHOR> https://www.ft.com/content/a9ff463b-01d7-4892-82dc-2dbb74941a16 <comment><USER2> Investing into corporate junk bonds without doing due diligence means willingness to throw money away.

<comment><USER3> Yes, a retiree who gets pushed into an "enhanced yield fund" by their investment advisor, because other fixed income investments have almost no yield at all thanks to interest rate suppression, is definitely a reckless investor who deserves to lose money.

It would be nice if the fallout from private equity loading up corporate balance sheets with unpayable debts was somehow limited to wealthy idiot junk bond buyers, but it's not.

<comment><USER2> There should be law against making bad investments.

</comment></comment></comment><comment><AUTHOR> Full text: Private equity groups including TPG and Apax Partners are taking advantage of blockbuster demand for corporate debt by loading companies they own with fresh loans and using the cash to award themselves a bumper payday.

So-called dividend recapitalisations have become a feature of the loan market in recent weeks, ringing alarm bells since they come on top of already high leverage and weak investor protections and against a backdrop of economic uncertainty.

So far in September, almost 24 per cent of money raised in the US loan market has been used to fund dividends to private equity owners, up from an average of less than 4 per cent over the past two years. That would be the highest proportion since the beginning of 2015, according to monthly data from S&P Global Market Intelligence.

The leap in divi recaps partly reflects how investors are clamouring for debt that can provide some income as the Federal Reserve holds interest rates low.

The loan market — where private equity firms typically fund the companies they own — had until recently not seen the same volume of issuance as other parts of the financial markets.

Investors have been accepting divi recaps because "there isn't a ton going on", said Jessica Reiss, head of US leveraged loan research at Covenant Review.

It's a bull market trade for sure

John Gregory, Wells Fargo Securities "From the lender's perspective they are looking for deals, so if sponsors and their companies can refinance and get a dividend up to their owners they will try it."

In the latest example, cloud computing company ECi Software — owned by Apax Partners — is set to raise $740m in new loans, earmarking $118m to fund a dividend to its owner, according to S&P Global Ratings and people familiar with the deal.

It follows on the heels of snack foods maker Shearer's Foods — owned by Chicago-based private equity company Wind Point Partners and the Ontario Teachers' Pension Plan — which raised over $1bn in the loan market on Tuesday in part to fund a $388m payment to its owners, according to rating agency Moody's.

The borrowings will increase leverage at Shearer's from 5.1 times adjusted debt to earnings to 6.6 times, according to calculations from Moody's. At ECi, it could rise to almost 10 times, according to S&P.

Broadband company Radiate Holdco was also in the market this week to fund a $500m payment to its owner TPG.

Apax, OTPP and TPG declined to comment. Wind Point Partners did not immediately respond to a request for comment.

"If private equity sponsors can take money off the table then they are doing it," said John Gregory, head of leveraged finance capital markets at Wells Fargo Securities. "There's going to be more coming for sure."

$6bn Estimate of dividend recap activity in September Overall, just over $4bn of the $15bn borrowed in the loan market this month would be paid out in dividends, according to S&P's data. Another $2bn would come before September ends, if deals currently being marketed to investors get completed, according to people familiar with the plans.

The peak for recaps came in October 2016, as the Fed was gearing up to raise rates for the second time and demand for loans was high. But the $13bn raised that month represented a much smaller portion of the total $55bn of issuance.

Investors, bankers and analysts noted that the opportunity for private equity companies to pull cash out of the groups they control has been limited largely to higher-quality borrowers.

Moody's upgraded Shearer's this week, following its deal announcement, despite saying the dividend payout and increase in leverage was "aggressive". The rating agency noted the company's positive performance following the outbreak of coronavirus, as well as its improved financial flexibility after paying back a bank lending facility.

"You have some very high leverage deals," said Mr Gregory. "But if it's a good company that people are familiar with and investors have money that they need to invest then transactions tend to go through. It's a bull market trade for sure."

However, investors express concern over loose documentation underpinning the loans, offering little protection to investors should a company end up in trouble.

Some see this year's market turmoil as a missed opportunity to improve lending standards after years of seeing them whittled away.

"It's a shame," said John Bell, a portfolio manager at Loomis Sayles. "I wished this pandemic could have reset the clock for a while but it doesn't look like that is happening."</comment>


Show HN: LIT Ave – Social Video Walkie-Talkie (iOS and Android) - <AUTHOR> https://play.google.com/store/apps/details?id=com.litave.litave <comment><AUTHOR> Hello everyone!

I'm Kandarp Dave, Founder and Engineer of LIT Ave.

LIT Ave. is a Social Video Walkie-Talkie (chat) app where you and your friends can send each other 10s small-frame, casual, video-messages.

App is available for download for both iOS and Android.

Website: [https://LITAve.com](https://LITAve.com)

iOS: [https://itunes.apple.com/us/app/lit- ave/id1414091249?ls=1&mt...](https://itunes.apple.com/us/app/lit- ave/id1414091249?ls=1&mt=8)

Android: [https://play.google.com/store/apps/details?id=com.litave.lit...](https://play.google.com/store/apps/details?id=com.litave.litave)

Mission behind creating LIT is to bring Social back into Social Networking. When networks, such as Facebook, started, they were great! But I think as time passed, they've gone too much into the "Social Media" category, and the social aspect got lost.

Similar case with WhatsApp and other chat apps - as time passed, too many features such as sharing and forwarding were added, and the social part has been lost again.

I wanted to take a step back from the whole Social Media, and create something that I could use with my family and friends, something that was personal, simple, quick, easy to use, and didn't have any gimmicks.

I wanted to build something that wasn't ambiguous like text-chat, where you don't know what emotion is being conveyed by the person on the other side.

And I wanted to build something that made me happy when, for example, my wife sends me a video walkie-talkie message of her and baby, I actually feel good knowing they're doing well.

With these things in mind, I built LIT Ave. where I can feel good and be happy being social with friends and family. And today, I want to invite Hacker News readers to try out the app, and tell me what they think!

Core features of the app include:

\- Private video walkie-talkie chat with friends

\- Private video walkie-talkie chat with a group

\- User Profile

\- Friends (Send Request, Accept/Reject)

\- Invite friends from your contact list.

I've worked extremely hard on the app, and I'd love for you to give it a try, and let me know what you think!

Thank you, Kandarp Dave. Founder and Engineer of LIT Ave.</comment>


Making sense of a visible quantum object (2011) - <AUTHOR> https://www.youtube.com/watch?v=dvYYYlgVAao <comment><AUTHOR> >Aaron O'Connell is an American experimental quantum physicist. While working under Andrew N. Cleland and John M. Martinis at the University of California, Santa Barbara, he created the world's first quantum machine.[1] In particular, he was able to transfer the quantum state of a superconducting quantum bit, a device used in quantum computation, to the motional state of a macroscopic mechanical resonator.[2][3] His measurements of the quantum machine constitute the first direct observations of quantized behavior in the motion of a visible object[4][5] and led the journal Science to honor his work as the "Breakthrough of the Year" of 2010.[1]

[https://en.wikipedia.org/wiki/Aaron_D._O%27Connell](https://en.wikipedia.org/wiki/Aaron_D._O%27Connell)</comment>


Ask HN: Which books teach mental models? - <AUTHOR> Read the piece by Mutaschak[1] yesterday and found myself agreeing with components of the piece but distinctly feeling that some well-crafted books take a more active role in conveying and teaching mental models than simply summarized facts (which can be done well, but is subject to being forgotten).
The question, then, is what books effectively introduced a new mental model or perspective?
Two recent examples from my own reading, non-fiction and fiction:
Loonshots (Bahcall) - model & "rules" for structure of innovation in orgs is introduced, discussed from various perspectives, examples given, summarized in text, repeated.
Overstory (Powers) - character stories all reinforce the perspective of an alternative relationship with trees and plants, the giant ecosystem and systems thinking.
[1] https://andymatuschak.org/books/ <comment><USER2> Thinking in Systems: A Primer by Donella Meadows

Once you start looking for positive and negative feedback loops in the world around you, it's hard to stop. In particular, Meadow's book is great because it also goes beyond +/\- loops in isolation, and shows more complicated patterns, such as eroding goal patterns and traps that often cause public policy interventions to fail.

<comment><USER3> +1 I just recently read this book and i was met with gem after gem. Also made me start looking at the world in terms of feedback loops, is it a balancing, goal-seeking or reinforcing feedback loop? How tight are these feedback loops? etc. Definitely a must read!

<comment><USER4> which book?

<comment><USER4> I didn't get the name of the book

<comment><USER5> Thinking in Systems: A Primer by Donella Meadows

</comment></comment></comment></comment></comment><comment><USER6> There are many good recommendations here, but I'd add that reading books about mental models is worth 10%, while practice thinking about real situations is 90%.

To get practice, you can't just sit and scratch your chin. You have to make a predction, write it down, then see how real life played out a few years down the road. It helps to write down predictions you considered but rejected and why.

<comment><USER7> That sounds like quite possibly the least effective method of learning.

There are people out there who have done all that work for you. All you have to do is pick up a book, learn their models, then stand on their shoulders as you develop your own.

<comment><USER8> > That sounds like quite possibly the least effective method of learning.

It maybe less efficient, but in my experience, practice has consistently been the most effective way to learn something.

If you're looking for efficient, then you'd want a well-structured mix of theory and practice.

> All you have to do is pick up a book, learn their models, then stand on > their shoulders as you develop your own.

Rarely does this work for any complex topic. I can't imagine learning math, or languages, or coding by simply picking up books. IMO, these models are very similar -- they have a ton of depth that can't be internalized without practice.

</comment></comment></comment><comment><USER9> If you haven't seen it, this is one of the best resources on the subject: [https://fs.blog/mental-models/](https://fs.blog/mental-models/) Farnham Street blog has a TON of fascinating articles.

<comment><USER10> There real challenge is remembering them, and determining which to use and investing the time to use them.

<comment><USER9> right, but i would say do a superficial pass through of all of them and then study more the ones that FEEL logical. The ones that work best with your existing logic will likely serve you most.

</comment></comment></comment><comment><USER11> I am reading The Fifth Discipline by Peter M. Senge at the moment.

It is a fantastic book that came out in the 90s and was updated in the 00s. It describes the need and practical solutions to systemic thinking for a learning / adaptive organization. It covers a lot of different areas:

\- introduction to systemic thinking (via a very good example and then a formalised introduction to three often occuring systems)

\- personal mastery (life long learning with a reflective attitude) as foundation for a learning organization (i.e. how can personal self improvement be scaled up to a similar process with many people involved while keeping everything together)

\- practical examples at the end (I have not read that part yet, I am just inferring from the chapter titles)

Even that I have not read the book completely, it is now one of the books I always recommend when friends with interest in founding a startup ask me for advice. It is one of the very few "management" (loose category) books I have read that I actually found useful and actionable. Only problem is that it is quite big so it takes dedication to read through it.

Edited for formatting, title..

<comment><USER12> Small correction: The title is _The Fifth Discipline_.

<comment><USER11> Not sure how I could get that wrong. I guess. I need to look at the title page more often.. Thanks. Corrected it.

</comment></comment></comment><comment><USER13> 'An Introduction to General Systems Thinking' [1] by the late, great Gerald Weinberg?

[1] [https://leanpub.com/generalsystemsthinking](https://leanpub.com/generalsystemsthinking)

Edit: no relation (I believe?) to Gabriel Weinberg of Duck Duck Go who is also being mentioned in this discussion.

<comment><USER14> +1 for this. Arguably all of Weinberg's works teach mental models. 'Are Your Lights On?' is an easy introduction to his writing and thinking, and 'Exploring Requirements: Quality Before Design' is directly applicable to any software project involving collection of requirements (I thin that's all of them.)

<comment><USER15> Weinberg books are full of wisdom. Systems Thinking is at the core of his ideas. You can find almost all of his books in LeanPub at a very accessible price: [https://leanpub.com/u/jerryweinberg](https://leanpub.com/u/jerryweinberg)

If you are outside the USA, probably the kindle edition will be cheaper.

</comment></comment></comment><comment><USER16> 1) Sources of Power: How people make decisions by Gary Klein

Introduces [https://en.wikipedia.org/wiki/Recognition_primed_decision](https://en.wikipedia.org/wiki/Recognition_primed_decision) It really resonated with me.

2) Thinking and Deciding by Jonathan Baron. Quite thorough and comprehensive.

3) There are also books on "TRIZ"([https://en.wikipedia.org/wiki/TRIZ](https://en.wikipedia.org/wiki/TRIZ)) a technique for problem solving, which arose from the former Soviet Union.

</comment><comment><USER17> Not a book, but a course. This one was insanely useful for me and I've applied the models countless times: [Model Thinking][0]. I heartily recommend this to anyone who wants to learn about models and has some spare time:

[0]:[https://www.coursera.org/learn/model- thinking](https://www.coursera.org/learn/model-thinking)

<comment><USER18> Scott Page ( from U Michigan who is the creator of the class) has written a book on models called Model Thinker. I'm currently reading it and think it is pretty good!

<comment><USER17> Scott Page is an awesome guy!

</comment></comment></comment><comment><USER19> [https://superthinking.com/](https://superthinking.com/) introduces a whole bunch.

It grew out of [https://medium.com/@yegg/mental-models-i-find-repeatedly- use...](https://medium.com/@yegg/mental-models-i-find-repeatedly- useful-936f1cc405d).

I would suggest starting there.

<comment><AUTHOR> I guess my interest is actually in finding books that teach _one_ mental model, or at most one with a few variations to really send the point home. There's no shortage of fascinating compilations or general studies (e.g. Thinking Fast & Slow is not a walk-away-with-one-concept book, apart from perhaps "oh damn there's a lot of biases out there!"), but there might be a shortage of books that effectively focus on a single concept.

<comment><USER20> I wouldn't call it a mental model, but Voice Dialogue method has tremendous positive impact on people's well-being and consciousness. Somehow it fits your question, I think. It is a mental model of sorts. "Embracing Our Selves", a book by Sidra and Hal Stone, is a beautifully written introduction.

</comment></comment></comment><comment><AUTHOR> NOTE: Sorry it wasn't quite clear from my question, but I was hoping to explore books that were more focused on a single model, not books that teach or enumerate many models.

My thinking was that the reference-style books are easy to forget and enjoyable but subject to being forgotten specifically because you spend less time with any single model. Some books are closer to survey courses, reviewing a lot of material. They aren't bad, they can be fun. But the books I cited above specifically feel focused on single concepts, and thus "teach" them quite well imo.

So, I am specifically curious about books that go deep, evaluate, or really drive home individual models.

</comment><comment><USER21> I strongly recommend checking out the Cynefin framework: [https://en.wikipedia.org/wiki/Cynefin_framework](https://en.wikipedia.org/wiki/Cynefin_framework)

Knowing which context you're in provides a useful tool when choosing mental models to approach the problem.

Having said that, 99% of mental models is practice as adopting a mental model is often an emotional problem too.

For example, while Cynefin may suggest an iterative approach for complex domains, you'll still need to be emotionally able to deal with the natural outcomes of iterative problem solving

e.g. being comfortable making decisions with incomplete data, handling failure, communicating progress when there is no clear way to estimate scope.

</comment><comment><USER22> Language in Thought and Action by S. I. Hayakawa is an introduction to General Semantics and deals with the limitations of language-oriented mental models, e.g. "the map is not the territory," a reminder that a model is just a model and not reality (or what Joel Spolsky would call "a leaky abstraction"). [0]

The World of Null-A by A. E. Van Vogt is a science-fiction novel with a world that has largely adopted General Semantics. [1]

[0][https://www.goodreads.com/book/show/567189.Language_in_Thoug...](https://www.goodreads.com/book/show/567189.Language_in_Thought_and_Action)

[1][https://www.goodreads.com/book/show/951290.The_World_of_Null...](https://www.goodreads.com/book/show/951290.The_World_of_Null_A)

<comment><USER23> I think the truth is somewhere in the middle. The model is a map to the world, but at some point, you start thinking about the implications of your model and you work out an unusual idea, and then it turns out the model implicates new phenomena.

What guided your ability to find the hidden gold nugget? Lucky guess? Or at some point, if you get the construction of a map so right, the map will help you compute interesting truths yet discovered.

</comment></comment><comment><USER24> "The Goal" by Eliyahu Goldratt, and other of his books are great books to learn how to think.

It is a more concrete example of Systems Thinking that is applied to various environments, manufacturing in "The Goal", marketing and strategy in "It's Not Luck", projects in "Critical Chain", retail in "Isn't it Obvious", and personal improvement in "The Choice".

</comment><comment><USER25> * Poor Charlie's Almanack: The Wit and Wisdom of Charles T. Munger

* Seeking Wisdom: From Darwin to Munger

* The Model Thinker: What You Need to Know to Make Data Work for You

* The Great Mental Models

<comment><USER26> I'm reading The Model Thinker at the moment. +1

<comment><USER25> There is also a course on Coursera taught by the author which goes well with the book.

</comment></comment></comment><comment><USER27> Perhaps a different flavor of mental model, but a great book: _" Metaphors We Live By"_ by George Lakoff

<comment><USER28> It seems like MWLB should be able to provide the basis space for all other models, and looser networks like ConceptNet.

I imagine each concept a bit like a Chinese character, with radicals (basis set), composition using scaling and placement (metric space relations), along various abstract dimensions (meaning and sound in the case of the characters).

It's a project that's been on my TODO list for far too long.

</comment></comment><comment><USER29> This question is strange to me.

Mental models are simply how your brain works. You don't need to read books about them before they become effective.

You don't need to understand how your legs operate before you can learn to walk.

The only thing you can learn are concepts. But there's billions of them. It's what education does.

It's somewhat useful to understand how the brain operates through mental models. But there's only a single mechanism at play. Basically it's what happens when your brain sends emotional signals about your environment in relation to your mental model of it.

<comment><USER30> True there are billions of concepts but if you think about it, a few concepts explain a ton of things. For e.g., incentives. A simple concept in theory but apply the right incentives if you are leading teams and you'll see a whole lot of improvements. And that's the beauty of mental models. You don't want billions of them. Maybe 20-30 of them have enough applicability for most of the things that you might want to change in your immediate milieu.

Here's an example :

"The heart and soul of the integrity of the ( Fedex )system is that all the packages have to be shifted rapidly in one central location each night. And the system has no integrity if the whole shift can't be done fast. And Federal Express had one hell of a time getting the thing to work. And they tried moral suasion, they tried everything in the world, and finally somebody got the happy thought that they were paying the night shift by the hour, and that maybe if they paid them by the shift, the system would work better. And lo and behold, that solution worked."

Source : [https://fs.blog/2017/10/bias-incentives- reinforcement/](https://fs.blog/2017/10/bias-incentives-reinforcement/)

Edit : clarity and some speeling mistakes ;-)

<comment><USER29> Yes, I agree logical concepts can be abstracted into generic core concepts. Like how the concept of "picking up a coffee cup" can be abstracted into the more generic core concept of "picking up an object" which can be applied more broadly.

But that's more about logical reasoning than it is about mental models. A mental model is how the brain understands a logical concept.

There's also a danger with it becoming counter-productive. For example you might want to learn how to ride a bike. You educate yourself about the technical workings of the bike. How your body will balance itself. When you need to apply force on the paddles. Which muscles you will use to apply that force. You gain full understanding of the concept of "riding bike". This doesn't mean, however, you now have a proper functioning mental model of it. The other kid didn't do all the research you did. He just got on his bike and started trying. After some trial and error he's already making some distance. His mental model of "riding bike" might already exceed yours even though you have a better understanding of how it works. You might even be learning more slowly since you're constantly distracted by how the development of your mental model matches up with your understanding of it.

I believe this is also why some people stutter. They're constantly thinking about their speech. Their mental model of "speaking" gets interrupted by them thinking about it.

So I agree it's valuable to understand core concepts. It's valuable to think about how the brain works. It's valuable to be able to use your feelings (caused by your mental model) as tools to effectively make use of your brain. But I'm not sure it's wise to mess with the mental model that the brain creates about concepts. Or to define a logical concept as a mental model.

<comment><USER31> The philosopher Peter Sloterdijk describes 'ideology' as a personal idea of how the world _really_ works. You could call that a mental model. However, when I think specifically about the subject 'mental models' I return to the concept I learned about first in the Coursera course Model Thinking by Scott E. Page (University of Michigan). He teaches a survey of many different models. For example, there is the Threshold Model [1] developed by Mark Granovetter and others. This general concept can be applied to a variety of problems from predicting the spread of infectious disease, to the spread of social trends in human culture. While the concept can be generalized, it's also theoretically grounded in mathematics and statistics.

For this reason I find the OP's follow-up somewhat—misguided? Seems like he needs to pick a topic and do some research. Unless we're just talking about our favorite books, which is basically what the thread has become. And I love it.

[1]: [https://en.wikipedia.org/wiki/Threshold_model](https://en.wikipedia.org/wiki/Threshold_model)

<comment><AUTHOR> Just reading through comments to aggregate notes, and as the OP, yep: I meant something closer to "favorite books" but with the condition that they happen to introduce, by intention or unintentionally, a (single) "mental model" (not to be too strict about the definition) or perspective of sorts. I realize now my original question was not that clear, sorry about that!

<comment><USER31> Well. Thanks for the apology; I feel the pain. Broad minded thinking runs into this problem frequently. But the more I think about it—What's good in literature and science and also satisfies the constraint of a grand conceit—the more I believe the only satisfactory 'answer' is the one they answer for their self. I've been trying to answer some similar questions in philosophy of language since 2005, and I'm still at it. I say, go for it. We will all be interested to read what you write.

<comment><AUTHOR> Thanks for the encouragement to write, it was entirely unexpected and pleasant - kind of a glimmer of the olde, small internet days. I didn't have this piece in mind when posting on HN, but all the book recommendations got me thinking and this is what managed to land on the word processor.

[https://blog.usejournal.com/effort-neglect-and-the-second- te...](https://blog.usejournal.com/effort-neglect-and-the-second- textbook-434a3400be2f)

P.S. I am not part of "Journal," and don't use it. One of their people reached out to me and asked if I'd submit my piece to their publication.

</comment></comment></comment></comment></comment></comment></comment><comment><USER32> # Intuition Pump and other tools for thinking by Daniel Dennett

# Books edited by John Brockman - 1) This Explains Everything, 2) This Idea is Brilliant, 3) This Will Make You Smarter, 4) Thinking

# Personal MBA by Josh Kaufman

Also second the recommendation of other books based on Charlie Munger's wisdom and farnam street's reading list.

<comment><USER33> I second the recommendation of Intuition Pumps.

To that, I would add Metamagical Themas by Douglas Hofstader & Prometheus Rising by Robert Anton Wilson. (Wilson gets a little hippieish, but he does a better job of knocking down unjustified tunnel-vision than Hofstader or Dennett do.)

</comment></comment><comment><USER34> I wrote a blog post today about how I don't believe in the abstract plane, if you're into it: [http://mitchgordon.me/philosophy/2019/05/12/non-existence- of...](http://mitchgordon.me/philosophy/2019/05/12/non-existence-of-abstract- plane.html)

<comment><USER35> I'm surprised there's no mention of consciousness or Cartesian dualism here. That is generally where "abstraction" comes in - as a tool for humans. I don't think anyone is claiming it to be a physical property of the universe.

</comment></comment><comment><USER36> Gabriel Weinberg, Founder-CEO of DuckDuckGo recently wrote one that is about to hit the shelves: "Super Thinking: The Big Book of Mental Models"

<comment><USER37> he published a long list of mental models in 2016: [https://medium.com/@yegg/mental-models-i-find-repeatedly- use...](https://medium.com/@yegg/mental-models-i-find-repeatedly- useful-936f1cc405d)

</comment></comment><comment><USER38> I would recommend Poor Charlie's Almanack by Charlie Munger and these following two books:

The Model Thinker: What You Need to Know to Make Data Work for You by Scott Page

[https://www.amazon.com/Model-Thinker-What-Need- Know/dp/04650...](https://www.amazon.com/Model-Thinker-What-Need- Know/dp/0465094627) and

The Great Mental Models: General Thinking Concepts by Shane Parrish

[https://www.amazon.com/Great-Mental-Models-Thinking- Concepts...](https://www.amazon.com/Great-Mental-Models-Thinking-Concepts- ebook/dp/B07P79P8ST)

</comment><comment><USER39> _Design Patterns_ by Gamma et al. would be an example from software architecture. It catalogs a couple of dozen patterns that recur in projects regardless of their specific domains.

 _Open Source Software Licensing_ by Rosen is another. It identifies two broad categories of open source licenses and shows how various licenses fit into each.

These two books gave me a framework for thinking about large areas that had until I read them been quite confusing. They turn a chaotic jumble of special cases into a simple framework for forming hypotheses and making predictions.

</comment><comment><USER40> Really enjoyed Science Strategy and War. Basically using the OODA loop and using mental models to make rapid decisions. The best book on John Boyd's OODA loop in my opinion.

</comment><comment><USER41> [https://mind-development.eu/ego-autonomy.html](https://mind- development.eu/ego-autonomy.html)

</comment><comment><USER42> "Man's Search for Meaning" by Viktor E. Frankl may be?

<comment><USER43> Yes. And if I may continue with another old book that IMHO deserves to be mentioned: Neurosis and Human Growth by Karen Horney.

</comment></comment><comment><USER44> One book that is often recommended is Pólya's "How to solve it" [1], although it's more directed at solving mathematical problems than general mental models.

[1] [https://en.wikipedia.org/wiki/How_to_Solve_It](https://en.wikipedia.org/wiki/How_to_Solve_It)

</comment><comment><USER45> Competing Against Luck (Christensen) - models on how to think about innovation, and the "jobs to be done" theory (what job is the customer hiring my product/service for)

Such a small shift in perspective, but it makes such a dramatic difference! Really recommend reading if you haven't already.

<comment><AUTHOR> Has been on my list for a while! Thanks for the nudge. BTW, as a fan of Christensen's classic The Innovator's Dilemma, I thought Loonshots was quite good as an alternative perspective where Product-type and Strategy-type innovations are discussed in comparison to Christensen's sustaining vs disruptive innovations.

</comment></comment><comment><USER46> I love The Decision Book: [https://www.goodreads.com/book/show/9793361-the- decision-boo...](https://www.goodreads.com/book/show/9793361-the-decision- book)

... read and skim it quite a few times and it's super nice and quick to use.

</comment><comment><USER47> _Analysis Patterns_ by Martin Fowler.

Similar to GoF Design Patterns, but at a higher level of system analysis.

</comment><comment><USER48> My opinion would be different, I believe the good understanding of human behavior is the key, e.g. what motivates people, reward system, FOMO, etc. Try to read "Charlie Munger's 25 Cognitive Biases".

</comment><comment><USER49> Anything by Krishnamurti. Don't be fooled by the name; he's a good thinker :)

</comment><comment><USER50> Possibly more abstract than what you are looking for but Object-Oriented Design Heuristics is a decent text.

[https://www.amazon.com/Object-Oriented-Design-Heuristics- Art...](https://www.amazon.com/Object-Oriented-Design-Heuristics-Arthur- Riel/dp/020163385X/ref=sr_1_4?keywords=design+heuristics&qid=1557742988&s=gateway&sr=8-4)

</comment><comment><USER51> Gabriel Weinberg of Duck Duck go recently released an entire book devoted to mental models. A few years ago, he also wrote a good article that gives an early idea what he was thinking about here:

[https://medium.com/@yegg/mental-models-i-find-repeatedly- use...](https://medium.com/@yegg/mental-models-i-find-repeatedly- useful-936f1cc405d)

</comment><comment><USER52> I have been struggling with this. Obviously Farnam Street and some medium posts have done a great job here. I wanted to teach mental models to a younger audience and make it more fun and actionable so I just started this and am collecting a group of kids (including mine ;) ) [http://www.enchanting.io](http://www.enchanting.io)

</comment><comment><USER53> I'd recommend "The Art and Craft of Problem Solving" by Paul Zeitz, who coached the U.S. International Mathematical Olympiad team. [https://www.amazon.com/exec/obidos/ASIN/0471789011/artofprob...](https://www.amazon.com/exec/obidos/ASIN/0471789011/artofproblems-20)

</comment><comment><USER54> There's Munger's talk. Not a book but quite good anyway [http://csinvesting.org/wp-content/uploads/2014/05/Worldly- Wi...](http://csinvesting.org/wp-content/uploads/2014/05/Worldly-Wisdom-by- Munger.pdf)

</comment><comment><USER35> Not a book, but here is a shameless plug for my newsletter where I write regularly about mental models I find interesting: [https://alexpetralia.github.io/newsletters](https://alexpetralia.github.io/newsletters)

</comment><comment><USER55> I have found Poor Charlies Almanack by Charlie Muenger to have quite a few.

Thinking Fast and Slow is another great book that explains some of the mental models well.

The Art of Thinking Clearly is yet another that is actually more like a dictionary of mental models.

</comment><comment><USER56> "Thinking in Bets" by Annie Duke takes you through a specific model.

"Principles" by Ray Dalio gives a mesh of models that Ray has learnt or improved.

</comment><comment><USER57> I've been thinking I wish someone would write a mental model oriented book converting the models for git, react/frp, OO, prototypical OO, Kubernetes, blockchain, DB indexes, peer to peer networking and whatever else.

Maybe each chapter is a different author.

I think mental model first learning would be a lot faster. Each git command can be explained in the mental model rather than as a stand-alone thing.

You could probably sum each one up in 10 pages or less. No code, no commands, just diagrams and a good explqination.

<comment><USER58> I _kinda_ understand what you are saying, but not fully. Do you have an example of such article (or video) on one of the topics you listed?

<comment><USER57> I don't have an example sorry.

</comment></comment></comment><comment><USER59> Modern (post renaissance) history, economics and political theory are often totally model focused.

Ibn Khaldun is (in my definitions) the earliest example). He describes mesapotamian history, for example, as a process where barbarians take a city, gradually become soft urbanites and then it happens again. It's a model rather than an occurrence.

It's a predecessor of Adam Smith, Marx, and even 2019 people like Yuval Noah Harari. The thesis is a model. Facts are tests and/or values for the model, not the thesis.

</comment><comment><USER60> Not a book, but I recommend the Coursera Model Thinking course.

</comment><comment><USER61> Not exactly a book, but here's a podcast on the topic by Sam Harris with Shane Parrish of the Farnam Street blog.

[https://youtu.be/xYoecW3j7u0](https://youtu.be/xYoecW3j7u0)

</comment><comment><USER62> I'm sure this is where this is coming from, but if not, Sam Harris's latest podcast is about mental models. I know it's not a book, but I found it insightful.

</comment><comment><USER63> The Catechism of the Catholic Church

<comment> 70122-_6 If a bloke is chained to atree, ya don't blame the tree .... do you?</comment></comment>


Show HN: Interviews with open source maintainers and developers - <AUTHOR> https://sourcesort.com <comment><AUTHOR> Hey, "editor" here. When I started working as a developer a few years ago, I barely considered that there were people devoting their free or paid time to all of the open source software I depended on. Of course, every piece of software you depend on has one or more humans behind it, and they have stories to tell which might be instructive for others. Hence this site (the framework for which is heavily inspired by IndieHackers).

I have 3 main goals with SourceSort: 1) discover and share best practices (and learnings from failures) for other open source maintainers and developers 2) promote the projects and maintainers I interview and 3) Satisfy intellectual curiosity. I hope I've managed all three with this first set of interviews, but I'd love to hear any feedback.

And thanks to all of the developers who took part in this first set of interviews, all of whom have been very friendly and generous with their time.

(p.s. if I interviewed you and it isn't up yet, don't worry - I'll get them all finished before the weekend)

<comment><USER2> Have another:

I maintained procps from roughly 1997 to 2007. (do "man ps" and search for "Albert")

I started because I insisted that mixed syntax like "ps x -f" and "ps u -u u" could be parsed and be useful. I wrote the code to prove it, got in a conflict with the existing maintainer after Debian was already using my code, forked the project, and won.

The early days were wild. I was less experienced and it was a different era. I would write the code late at night in my dorm room. I didn't yet have regression tests, so one release went out that hid all processes whose PID started with the digit "3".

Usage growth was dramatic, with the package being chosen to be in the default install for all Linux distributions.

The community was difficult. I had one reliably helpful person, the Debian package maintainer Craig Small. I had somebody show up with a rewrite of "top", which I regretted accepting. It was overly complicated, then abandoned by the author when I insisted on compatibility with older config files. I got random patches here and there. Package managers for most Linux distributions turned out to be kind of hostile, doing things like adding bugs and swiping command option letters that I had reserved for other purposes.

The workload put an end to my involvement. I was able to manage with 3 kids and a job, and I was able to manage with 5 kids and no job. Things started to fall apart with 5 kids and a full-time job at a startup, and then really fell apart when I added another kid. (am at 12 kids now) I had no time to respond to email or work on the code, and I never did resolve the problem of incompatible patches being applied by Red Hat and others.

There were probably weeks I put in more than 40 hours, and there were many weeks when I did nothing. Perhaps 10 was near the average, but it is hard to say.

Other than time, the biggest obstacle was the inability to keep Linux distributions from hacking things up. They would add crasher bugs, and then I'd go fetch their modified package to find out what had been done. They would change behavior, sort of making a proprietary interface. There is simply no possible way to say "no" to a Linux distribution and have it stick.

My hopes will probably be dashed now that I am not involved. I liked how "ps" would concisely print a help screen that covered the key options, but that is now gone. I liked how "kill" was capable of sending a signal to PID -1 for signalling everything, but that was broken last I checked. (still in the man page though) I liked the fact that "ps" avoided default sorting so that it could run on systems that are low on memory (a good reason to run "ps") and so that it could produce at least partial output on systems having kernel lock trouble. I liked having low CPU usage by "top" itself, partly due to parsing 64-bit ASCII decimal with a custom parser and partly due to doing word lookup with perfect hashes and computed goto. Letting go has been hard, but I simply don't have the time anymore.

The advice I have for other open source projects and maintainers is to prepare better for the day when you can't work on the project. Document the reasoning behind design decisions, including for things that are purposely left out. Documentation usually covers things that exist, but it also needs to explain why things are deliberately missing. Be sure that your successor will have your extra odds and ends, like test suites, even if you suddenly go missing.

<comment><AUTHOR> This is really interesting, great to read about a project that started in a slightly earlier period.

Did you want just to share this with HN or to go up on the website? (Happy to put it up if so, I think a lot of people would find this interesting)

<comment><USER2> It's up to you. I followed along with your questions, in the typical order, so you can just add in the matching headers if you like.

The notable difference is that I'm a former maintainer. Also, it was core system utilities written in C.

</comment></comment></comment></comment><comment><USER3> [https://sourcesort.com/contribute](https://sourcesort.com/contribute) is an interesting list. How is it generated?

I'd love to hear a bit about the backend code too: how the search works, what stack powers the site, any libraries/tools you find indispensable, etc. I like the minimalist design.

<comment><AUTHOR> Projects are found using the GitHub API, searching for projects first on whether they have issues labelled for new contributors and then also by language, topics, etc. After that you can write a bit more code to get metrics like percentage of first time pull requests accepted, median time until a maintainer responds to a new contributor, etc. Results are then placed on an Algolia index (stored in Postgres first) which is what powers the search + Algolia React components.

For the interviews, I write/edit them with a self hosted version of Ghost and then use their webhooks to sync them with my own Postgres database (I need to add extra fields like for projects/people and Ghost doesn't allow you add custom fields yet).

Backend is Node.js/Express, I just use EJS templates for the other less interactive pages since I think React would be overkill there.

I was until this morning hosting it on Heroku but switched over today to Dokku + DigitalOcean (mainly because I have a load of free credits and didn't want to end up with a large bill in case this hit the top of HN). First time using Dokku and it's pretty great.

Besides the GitHub API, which I need to get the project info, I wouldn't say anything else is indispensable. Heroku/Dokku is pretty important because I'm not much an expert with managing servers.

Glad you like the design, I think the search UI could be better. For the interviews I just tried to focus on typography first and foremost. Matthew Butterick's Practical Typography is a great book for reference.

That's a lot of info, hopefully not too much. Hope it's informative!

<comment><USER4> The search UI needs negations.

For example, you offer a checkbox ("Code of Conduct") to select projects with lots of nasty political fighting to distract from the engineering effort. Maybe somebody would rather focus on nerdy hacking.

Another example is "Has full documentation". That is a bad thing if you want to contribute by writing documentation.

<comment><AUTHOR> Yep, those are fair points. For documentation (and for other things) it would be better to be able to search on that directly by e.g. looking for projects that have open issues around documentation. Will try and add these soon, I've just been focused on the interviews recently.

</comment></comment></comment></comment><comment><USER5> It's good to see new voices. I often see the same names in my particular niche within open source.

<comment><AUTHOR> Which niche are you in if you don't mind me asking? It's only been a few months of me trying to get more involved in open source myself and I'm still trying to understand better how these ecosystem/communities work.

<comment><USER5> Front end / JavaScript.

</comment></comment></comment><comment><USER6> Linux Voice (RIP) did non-technical interviews with famous devs on the last pages. I learned some very important things from those interviews.

(back issues are freely available )

<comment><AUTHOR> Thanks, I'll look it up for comparison. What was it that you learned from them if you don't mind me asking?

<comment><USER6> How they work, what tools they use, how they organize their life so they have time for FOSS development, that sort of stuff.</comment></comment></comment>


Brazil in political turmoil over alledged Telegram leaks - <AUTHOR> I'll post a bit of background in a comment for those not in the loop.
Glenn Greenwald's (https://en.wikipedia.org/wiki/Glenn_Greenwald) The Intercept has published leaked conversations (from 2015-2018) between prosecutors and Sergio Moro, the judge in Lula's case. The leaks reportedly comprise  "over 1700 pages" of Telegram conversations.
In the small portion of the leaks published so far, Moro suggests how operation Carwash should proceed, indicates possible witnesses, directs and counsels the prosecution on how to present evidence and even anticipates his rulings. Lula's defense points out this is grounds for annulment of the entire case. Brazil is currently split in polarization and the leaks are taking precedence over other political matters which until last week dominated the discourse (such as the proposed welfare reforms).
Moro and the Prosecutor's Office did not deny the conversations took place but Moro did not explicitly confirms the contents are true. The Intercept and other journalists are being attacked about the 'illegal' nature of the leaks, mostly, which makes them unusable for criminal prosecution of Moro and prosecutors but can still be used politically and/or might result in overturning many Carwash sentences - including Lula's.
About Telegram and the leaks:
Telegram states "there's no evidence of any hack. Most likely to have been either malware or someone not using a 2-step verification password."
Today, however, someone hacked into a Brazil's Public Prosecutor's Office Telegram group - at first impersonating a member. They later revelead that they were an impostor and stated that they were the hacker responsible for the leaks. If this is correct, the hacker (who states to not be politically motivated and "just an IT guy") can still (reliably?) gain access to Telegram's conversations and is also capable of impersonating people. <comment><AUTHOR> Lula (left-wing politician) was Brazil's president for two terms (2003 through 2010) and was followed by Dilma Roussef trailing off of his extremely high popularity. Dilma was impeached in 2016, midway through her second term, following the political scandals brought to light by operation 'Carwash' (Lava Jato), which comprises until now over a thousand warrants for search, arrests, and so forth. Her impeachment was highly debated and to this day Lula's party (PT, "worker's party") claims it was a "bland coup".

Judge Sergio Moro, who judged most of the cases involving high corruption, achieved very high popularity and opinions about him divided the country. Through several extremely controversial actions he influenced Dilma's impeachment, and later the 2018 election. Since then Moro is accused of being a partial, politically inclined judge, persecuting unfairly several high- ranking members of PT. He has always denied that.

Regardless, the public opinion has kept Operation Carwash in very high regards with a sizeable portion of the population and is credited with helping elect Jair Bolsonaro, Brazil's current president, by fostering the 'anti-PT' movement. Lula was sent to jail in a _extremely_ controversial ruling by Moro and several other legal manouvers (leaks, stopping him from giving interviews, which is unconstitucional, for example). NEvertheless, none of the decisions have been overturned and Brazil's Supreme Court generally allowed all these controversial actions.

Surprisingly, Lula's popularity didn't completly waver and his appointed candidate (Haddad) made it to the second round of the election, although he lost to Jair Bolsonaro.

Accusations against Moro mounted after he accepted an invitation to become Bolsonaro's minister of Justice, benefitting from the election of the man he helped elect, and after Bolsonaro stated he would indicate him to the next Supreme Court seat.</comment>


Death of German State Finance Minister Official Linked to Virus Crisis - <AUTHOR> https://www.bloomberg.com/news/articles/2020-03-29/death-of-german-finance-official-linked-to-virus-crisis <comment><AUTHOR> Full Text

\</comment><comment></comment><comment></comment><comment>

Berlin (AP) -- The state finance minister of Germany's Hesse region, which includes Frankfurt, has been found dead. Authorities said he appears to have killed himself and the state's governor suggested Sunday that he was in despair over the fallout from the coronavirus crisis. The body of Thomas Schaefer, a 54-year-old member of Chancellor Angela Merkel's Christian Democratic Union, was found Saturday on railway tracks at Hochheim, near Frankfurt. Police and prosecutors said that factors including questioning of witnesses and their own observations at the scene led them to conclude that Schaefer killed himself. State governor Volker Bouffier linked Schaefer's death to the virus crisis on Sunday. Bouffier said Schaefer was worried about "whether it would be possible to succeed in fulfilling the population's huge expectations, particularly of financial help." "I have to assume that these worries overwhelmed him," Bouffier said. "He apparently couldn't find a way out. He was in despair and left us." Germany's federal and state governments have drawn up huge aid packages to cushion the blow of largely shutting down public life to slow the spread of COVID-19. Schaefer had been Hesse's state finance minister for a decade.</comment>


Ask HN: How can I make a dashboard that doesn't suck? - <AUTHOR> We have an client-facing admin application at our company, and are struggling to create a good, practical design for our dashboard (home page).<p>The users don't seem to mind what's on it. So how should I design one? Are there any methods or good resources for making a good one? <comment><USER2> It is a question about useful information. What problem are you trying to solve? What is useful to the user? And: is the information actionable?

Information that is just displayed, or something to be informed about does not necessarily need a dashboard. This is called reporting.

Something that screams "Action!" is useful as a dashboard. It should help guiding the decision making process.

You might also consider automation. If a machine can do what a dashboard asks for, an action step, then you actually don't need a dashboard instead you can do reporting ("X steps done during Y period").

Build something useful and have fun!

</comment><comment><USER3> I would strongly suggest perusing through the resources of Stephen Few over at Perceptual Edge.

Library: [http://www.perceptualedge.com/library.php](http://www.perceptualedge.com/library.php)

You could do a lot worse than becoming familiar with Few's "Information Dashboard Design" book, and the Perceptual Edge blog contains a wealth of material, some of which ended up in his subsequent books.

Older posts on his blog also include reviews of different author's books, often having to do with cognition or analysis related topics which are also informative. Seems he has retired from his consultant business and now blogs at: [http://www.stephen-few.com](http://www.stephen-few.com)

Here's one of his whitepapers you may find helpful: [https://www.perceptualedge.com/articles/Whitepapers/Formatti...](https://www.perceptualedge.com/articles/Whitepapers/Formatting_and_Layout_Matter.pdf)

</comment><comment><USER4> > The users don't seem to mind what's on it.

Why are you going to build a dashboard if the users don't seem to need a dashboard?

</comment><comment><USER5> I believe it helps to define how "doesn't suck" is evaluated. Is it visual? UX?

One suggestion is to use something like hotjar to see how users use the dashboard (once you get something up and running), and analyze what they look for, how they use it, and what they spend a lot of time doing. This might give some ideas on how to make it easier for them to do their jobs. IMO that's the main purpose of a dashboard, so starting there makes sense to me.

</comment><comment><USER6> Think about what different user groups there are, whether you'll be making 1 dashboard for all or different dashboards for each. Then delve into what kind of questions they want answered (maybe also figure out priority?), and then use that to inform the information architecture for the first version of your dashboard. Time permitting, you could just make a mockup in Sketch and do user interviews where they go through it and think out loud to tell you what they're looking for, what they see, and you can use that to iterate and re- design where appropriate.

</comment><comment><USER7> Get to know the user for it, ask them what they want (granted that isn't always the best thing to design exactly as they want it but it helps to know), what they want to accomplish, any pain points.

If possible (depends on use case / user) give them some level of customization, moving widgets, filters.

</comment><comment><USER8> Read Edward Tufte.

</comment><comment><USER9> Observe your users and figure out what they look at the most. Take the top 3 - 6 actions / data and make them viewable / easily accessible on the dashboard.

</comment><comment><USER10> Checkout paid themes from wrapbootstrap or themeforest or similar sites.

</comment><comment><USER11> Use a free theme from uifort.com</comment>


Logit.AI launches revolutionary athlete monitoring system - <AUTHOR> http://logit.ai <comment><AUTHOR> Hi guys! As a retired competitive athlete, I've created Logit.AI, which is essentially an integrated desktop and mobile app that uses athlete input about physical, mental, and emotional wellbeing to predict and alert both athlete and coach with injury and burnout risks. Therefore, athletes at all levels (especially youth levels) are able to accurately monitor physical performance and training, without any expensive equipment. Coaches are able to access all athlete raw data and generated analysis in a quick, neat, and easy to use interface. We would appreciate any advice on how to improve our app and ways you could see a potential client (such as yourself) using it. [https://www.logit.ai/free-beta-sign-up/](https://www.logit.ai/free-beta-sign- up/) We only have 1000 spots available for free, unlimited use of our app. Note: our old product was used by 21 out of 22 Canadian Rio medalists.</comment>


Why is version control in Jupyter notebooks so hard? - <AUTHOR> Are there any tools that help with version control on notebooks? <comment><USER2> I've been clearing my output using nbconvert before putting the notebook into version control. I have a precommit hook and a check in CI. This works for my use case but I can understand needing to preserve output.

jupyter nbconvert --ClearOutputPreprocessor.enabled=True --inplace my_notebook_name.ipynb

</comment><comment><USER3> You bet. I built ReviewNB[1] specifically for Jupyter Notebook code reviews.

There's also,

\- nbstripout[2] for stripping outputs automatically before every commit

\- nbdime[3] for diff'ing notebooks locally

\- jupytext[4] for converting notebooks to markdown and vice-a-versa

[1] [https://www.reviewnb.com/](https://www.reviewnb.com/)

[2] [https://github.com/kynan/nbstripout](https://github.com/kynan/nbstripout)

[3] [https://github.com/jupyter/nbdime](https://github.com/jupyter/nbdime)

[4] [https://github.com/mwouts/jupytext](https://github.com/mwouts/jupytext)

</comment><comment><USER4> It is simple. Code is one thing and data is another thing; you can mix arbitrary code with arbitrary data but the result might not make sense!

Neurotypicals have a hard time with this kind of contradiction and will try one simplistic answer that almost works and then try a different one and then go back to the old one and eventually they will get interested in something else then give up.

For instance, it makes sense to strip the data out of a jupyter notebook before checking in. You can version manage the code that way. However, people also really want to look at the notebook in github and see the analysis, the data, the results.

<comment><USER5> > Neurotypicals have a hard time with this kind of contradiction ...

Wat.

The problem with Jupyter notebooks and version control is that Jupyter notebooks encapsulate temporality. You see this in the little [N] boxes on the left of each cell.

I suppose this is what you mean by "data"? Its use is a little atypical.

I have a slightly different workflow. I observed that the top of my Jupyter notebooks are generally more or less static when compared to the lower parts of it. This allows the top parts to slowly coalesce into a proper program over git commits.

I also try to have a linear notion of variables (i.e. a variable is defined exactly once and used exactly once - permitting construction of values in loops of course).

This style of development helps with version control as well. Restart the kernel and clear output, then run each cell exactly once before a git commit.</comment></comment>