DevotionGeo

DevotionGeo

Words of wisdom for programmers

As the title suggests, this thread will contain some real wisdom came from experience. Please add something meaningful than fancy looking useless quotes.

I’m starting the thread with three of the tweets by Shawn Swyx Wang @swyx.


"

Engineers are supposed to be practical but we do so much ineffective bullshit.

There’s no point creating a reusable abstraction if it ends up hard to use.

There’s no point arguing about perf if you don’t have a representative benchmark.

Hold your own beliefs accountable, please.


We’re too busy dealing with our own BS. and HEAVEN HELP YOU if you just conclude anyone who disagrees with your particular brand of bullshit is wrong or junior or whatever.

We don’t have time to do it for you thanks to the Bullshit Asymmetry Principle.


Brandolini’s law aka the bullshit asymmetry principle: “The amount of energy needed to refute bullshit is an order of magnitude bigger than to produce it.”

"

Most Liked

AstonJ

AstonJ

Great thread!

I am not sure if these qualify, but they are just some tips on things I found useful:

  • When you’ve decided on using a new technology, read a book or two about it. I’ve found it incredibly beneficial getting a good overview of what’s possible with a language or framework as it helps you picture how you could use it. Doesn’t matter if you don’t remember every little detail, you’ll be able to find the details when you need them. (I’ve stolen this last bit from @chrispine and his Learn to Program (2nd edition) (PragProg) book - he made me feel completely fine about not remembering everything!)

  • Find a language, framework or tech that you enjoy using - we generally excel at things when we enjoy them. Also means you’ll be less likely to get bored or burnt out.

  • Don’t worry about asking questions or appearing like you don’t know something - because it helps others, both by the answers you might get to the questions you ask but also by showing others it’s ok not to know something, or that you have experience with something (when it appears everyone else might!) or even that you are struggling to grok something. This can help others who may be feeling similarly, but also could help language and framework maintainers improve their projects, docs etc

Ted

Ted

I have a few words of wisdom I’d like to share.

  • When asked to modify something, we so often get a suggested solution instead of a stated problem. Seek the goal; seek the “why”. :thinking: Often times what’s being asked isn’t what’s needed. And besides:

    • a goal statement invites everyone’s brainpower
    • a suggested solution usually invites only (premature) critique
  • When programming, resist the urge to “clean it up later”. Either avoid the situation in the first place or spend a little more time and do it now. :broom: The task at hand will never be fresher in your mind, and “later” is likely to never come. Your future self and colleagues will thank you (or at least not curse you).

  • Stuck on a problem? Drink some water, take a walk (outside if possible), and carry the problem lightly in your mind. :deciduous_tree: At least you’ll be refreshed, and the odds are better for having a eureka moment. :bulb: Being frustrated and/or having hurry-brain hampers problem-solving skills.

Agreed. I’ve found a lot of value in getting fundamental exposure to a new tech without trying to remember it all, and reading a book is my preferred method.

Time and again, I’ve discovered that having this initial context has made life easier:

  • finding additional information
  • asking good questions
  • discerning bad / outdated advice

For example, I think I would have had a much tougher time learning functional programming without reading a few books (okay, a lot of books) and gaining a foundation. Otherwise, I don’t think I would have appreciated how much of a paradigm shift the jump from imperative to pure FP really is (well, for me, that is). I might have ended up frustrating both myself and others by asking poor questions. (So now I ask slightly better questions and only frustrate others :stuck_out_tongue_closed_eyes:).

finner

finner

Some lovely practical advice here.
After 20 years of programming I still consider myself an average programmer and a junior many times a day. Technology is changing so rapidly I feel it is impossible to stay on top of it all. Take Angular for example, they will probably release 2 versions before I finish this post :smiley: , only joking.
But developers need to hear these confessions because we have the impression that we should know everything and to realise you are not alone felling this way can make a big difference.

But now I am beginning to feel burnt out. It’s like running a marathon, I’ve hit my wall and doubting whether I can continue.
My 2021 resolution is to read more tech than I normally would (which to be honest has not been much, my bad). I am not going to change my tech stack but instead try and deep dive and get a better grasp of the concepts.
But I also lack a lot of the computing basics, the bigger picture as it were. Tunnels, Networking, VPNs, Protocols, Security, etc. It’s all been lost in the haze of time and I wish to brush up.
So with that in mind, I’m looking for good books around general computer systems basics that might bring me back to the future, or at least into this millennium. Does anyone have any preferred reading material? Some book they may even dare to call their tech bible ?

Where Next?

Popular General Dev topics Top

AstonJ
If you had the ear of a language creator, what would you say - what could they do to make a language that you would use? :upside_down_face:
New
Rainer
Have you seen the new features that will be available in the upcoming C# 9 release? C# is taking a lot of input from functional l...
New
AstonJ
In your opinion which programming languages are simple to use and easy to get started wither those who don’t have a computer science bac...
New
chasekaylee
I’ve been using the classic notebook to-do list, but I’m curious to hear what awesome tools are out there that I am not aware of. I’m alw...
New
AstonJ
Just been adding some more portals, currently have the following languages: Apache Groovy C C# C++ Clojure CoffeeScript Crystal ...
New
DevotionGeo
As the title suggests, this thread will contain some real wisdom came from experience. Please add something meaningful than fancy looking...
New
AstonJ
It’s great to see how popular some of these channels have become - do you have any favourite YouTuber devs? Ben Awad Code...
New
Exadra37
I am a Linux user since 2012, more or less, and I always use Ubuntu on my computers, and my last 2 laptops have been used Thinkpads, wher...
New
Exadra37
Kubernetes is everywhere. Transactional apps, video streaming services and machine learning workloads are finding a home on this ever-gro...
New
harwind
I’m working on a Spring Boot project and I have a controller where I want to map multiple request paths to a single method. Let’s say I h...
New

Other popular topics Top

PragmaticBookshelf
Write Elixir tests that you can be proud of. Dive into Elixir’s test philosophy and gain mastery over the terminology and concepts that u...
New
ohm
Which, if any, games do you play? On what platform? I just bought (and completed) Minecraft Dungeons for my Nintendo Switch. Other than ...
New
dimitarvp
Small essay with thoughts on macOS vs. Linux: I know @Exadra37 is just waiting around the corner to scream at me “I TOLD YOU SO!!!” but I...
New
AstonJ
If you are experiencing Rails console using 100% CPU on your dev machine, then updating your development and test gems might fix the issu...
New
mafinar
This is going to be a long an frequently posted thread. While talking to a friend of mine who has taken data structure and algorithm cou...
New
AstonJ
We’ve talked about his book briefly here but it is quickly becoming obsolete - so he’s decided to create a series of 7 podcasts, the firs...
New
Help
I am trying to crate a game for the Nintendo switch, I wanted to use Java as I am comfortable with that programming language. Can you use...
New
husaindevelop
Inside our android webview app, we are trying to paste the copied content from another app eg (notes) using navigator.clipboard.readtext ...
New
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
AstonJ
This is cool! DEEPSEEK-V3 ON M4 MAC: BLAZING FAST INFERENCE ON APPLE SILICON We just witnessed something incredible: the largest open-s...
New