< Back to the archive

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

Issue #43 - December 29, 2019

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

Top comment by beefman

The Soul of Erlang and Elixir, by Sasa Juric

video: https://www.youtube.com/watch?v=JvBT4XBdoUE

HN discussion: https://news.ycombinator.com/item?id=20942767

Preventing the Collapse of Civilization, by Jonathan Blow

video: https://www.youtube.com/watch?v=pW-SOdj4Kkk

HN discussion: https://news.ycombinator.com/item?id=19945452

Top comment by kristianc

Previous discussion: https://news.ycombinator.com/item?id=18757028

Top comment by HAL9OOO

Thanks for all the replies guys! It's going to take me a while to read through all of them and process them. I guess this is the benefit of having eyes looking at your post on Christmas Eve, people feel like helping :).

Happy Holidays Everyone~

             /\
            <  >
             \/
             /\
            /  \
           /++++\
          /  ()  \
          /      \
         /~`~`~`~`\
        /  ()  ()  \
        /          \
       /*&*&*&*&*&*&\
      /  ()  ()  ()  \
      /              \
     /++++++++++++++++\
    /  ()  ()  ()  ()  \
    /                  \
   /~`~`~`~`~`~`~`~`~`~`\
  /  ()  ()  ()  ()  ()  \
           |   |
          |`````|
          \_____/

Top comment by buro9

I was homeless too, a rough sleeper throughout the UK for 3 winters. This was a long time ago, and I've been an engineer and now am a manager. I may not have a role (in London) that is shaped for you but I'm happy to look at your CV, see what roles we have that may fit you, and advise on what people look for in a CV.

My email is in my profile.

Top comment by sansnomme

High level multiphysics, RF, and CAD tools and simulators. Autodesk, Ansys etc. still dominate the field. The state of tools like OpenFoam is like the early days of Gimp and KiCad; theoretically possible to use but only if your background is in software engineering and/or if you are really, really poor and desperate e.g. a grad student on a tight budget. If you look at software like open source FTDT sims, almost all requires specifying layouts, project settings, and designs in ridiculously long config files that would put JS build tools to shame. If you are lucky, you might be able to design your model using a proper GUI e.g. Gmsh. If you are not, be prepared to start drawing out your model with a text editor, point by point. Imagine creating SVGs by hand, that's how ludicrous it is. Most of the "open source" stuff are grad projects, more of an exercise in show and tell than anything serious. Sure it is perfectly possible to specific the cross section of an airplane wing by hand. By the time you are done with that your colleagues using proper GUI tools have already ran their simulation and published three papers.

For those who are interested, one promising project is SU2:

https://su2code.github.io/

Top comment by stickfigure

I boil it down to two things:

#1 Rapidly Climb Learning Curves

The ability to quickly learn enough about new subjects to be useful. New technologies or APIs; new algorithms; mathematical or statistical subjects; and most importantly, your problem domain. Some of this ability is a skill, "knowing how to learn", which covers google-fu, reading comprehension, prioritization, time management, etc. Some of this ability comes from having enough aggregate experience that new information just clicks into place like jigsaw puzzle pieces. Some of this ability comes from the confidence of having climbed enough seemingly insurmountable learning curves that this next one is "just another day at the office".

A sign you're doing this wrong: "I need training!"

#2 Understand The Customer

IMHO, the best engineers are half product managers. You can easily get a 10X improvement in productivity by building the right features and not building the wrong ones. Yes, professional product managers are great, but technical limitations often impact product design. A great engineer knows when to push back or suggest alternatives. This requires empathy not only for the customer, but for the product management team. This ability is also tightly coupled with #1 - you need to quickly come up to speed on the problem domain, whatever that may be. If you wan't to be a great engineer, don't study algorithms (until you need an algorithm, of course), study the particular business that you're in.

A sign you're doing this wrong: "Whatever, just tell me how you want it and I'll make it that way!"

Top comment by raamdev

Brain Rules for Baby by John Medina, because it made me a better father; Why We Sleep by Matthew Walker, because it taught me of the importance of something that I’d occasionally dismiss as a nuisance; Pain Free and Pain Free at Your PC by Pete Egoscue, because it completely changed the way I understood posture, pain, and how repetition influences my body; and Letters to a Young Poet by Rainer Maria Rilke, because it taught me how despite big changes in technology and society and way of living, very little changes when it comes to our personal struggles and concerns; Man’s Search for Meaning by Viktor Frankl, because it helped me realize that in any situation, my attitude is what I always have control over; and 7 Habits of Highly Effective People by Stephen Covey because it greatly contributed to my mental framework for how to be productive and for this quote, which is probably my favorite of the past decade:

“In the space between stimulus (what happens) and how we respond, lies our freedom to choose. Ultimately, this power to choose is what defines us as human beings. We may have limited choices but we can always choose. We can choose our thoughts, emotions, moods, our words, our actions; we can choose our values and live by principles. It is the choice of acting or being acted upon.”

Top comment by satysin

The thing that really worked for me was I only ever buy in person with cash. I almost never use my debit card in person. This simple thing changed my relationship with what I buy. Obviously my mortgage and other monthly payments are direct debit but unless the purchase is several hundred Euros or more I will pay in cash.

I always have €200 in cash on me which is enough to cover me at least a week. Then whatever I have left over at the end of the week I roll over. So if I have €60 left I take out 140 and transfer the difference into a savings account. I have saved a shocking amount doing this. It may seem strange but budgeting myself 800 for the month and only using cash has really helped me appreciate how much the money is worth to me. The short of it is on pay day each month I transfer 800 to my "cash account", I transfer the exact amount I need to cover my bills into my "bills" account (I also have a "buffer" of 100 in this account as a 'just in case its more than I calculated'). Everything else goes into savings. Everything.

Obviously some things fall outside the 800 cash allocation for example I bought a new coat a few weeks ago which was €230. I tried it on in store but bought it online as there was a discount I couldn't use in store annoyingly. However I have a separate budget allocation for key clothing items like coats and boots which I generally replace every other year. However I don't bother with multiple savings accounts anymore. I never found I benefited from the added complexity. If in a month or two I ruin my coat and have to buy a new one unexpectedly I will just take 230 from my savings rather than juggle things around.

I should say though that all of our expenses come from a single salary. Every month my wifes automatically goes into savings. Generally we never need to touch it. This is great for many obvious reasons but it also helps us (well me!) feel less guilty when I suggest we buy something we don't really need such as an OLED TV we got a few months ago.

Top comment by Ididntdothis

I am in my 50s and want to start working on Raspberry Pi and Arduino fun projects. But this time do it with the mindset I had when I started out. Take the sample code and modify it without thinking too much about consequences. In many ways experience is good but I feel I have become too “professional” and worry too much about things that aren’t really important in small projects. In short, become a reckless programmer.

Also: don’t learn tech for tech’s sake but do what needs to be done to fulfill a certain task. Projects are:

- a better trail camera trigger that ignores grass and leaves

- a dog door that opens for my dog but only for her

Top comment by dang

Comments moved to https://news.ycombinator.com/item?id=21877571, which was posted later.

Normally we go the other way around of course, but sharing the karma forward seems appropriate in this case.