Here’s Why High Performers Are Not Always Good for the Team

https://betterprogramming.pub/heres-why-high-performers-are-not-always-good-for-the-team-f0e342b90fbc

Interesting ideas, and be sure to also check out the comments.

What you describe is the lone wolf without empathy that everybody is different in skills. You correctly assume that this is the kind of person that disrupts a team.This person either learns to work with the team (take a step back & work at a pace that helps others to grow) or needs to go solo freelancing.
Having spent more years than you've been alive building high performing development teams, I am astounded by your perspective.In your world the fastest runners would be required to wear lead weights around their ankles to make them slow. 
This is not a problem of the high performers - it's a management issue. The manager needs to set tasks appropriate to each team member (with the appropriate level of stretch/challenge).You are also generalising high-performers in terms of their impact to others - what you say can happen, but it's certainly not the case everywhere.In my experience, low performers are more of an impact on the team than high performers - but again that's a management issue to resolve.

How long is a reasonable time to ramp up for Senior Software Engineers?

Another one from Quora which I experienced on my own.

https://www.quora.com/How-long-is-a-reasonable-time-to-ramp-up-for-Senior-Software-Engineers/answer/Kurt-Guntheroth-1

If the project has no documentation but the code, and the code repository is a mess, if the project is laden with technical debt, then a newly hired senior software engineer will never be as productive as the old-timers who created all that technical debt, because they are creating more technical debt faster than a single new hire can untangle it.

Having an Early return from void methods

I was having a debate of whether it is ok to have return in a void method.
I always do it and have the guard clauses at the beginging.

But my colleagues sees it as bad practice to have return in a void method.

THis is s really good link

https://stackoverflow.com/questions/1283325/is-it-bad-practice-to-use-return-inside-a-void-method

A return in a void method is not bad, is a common practice to invert if statements to reduce nesting.
And having less nesting on your methods improves code readability and maintainability.
Actually if you have a void method without any return statement, the compiler will always generate a ret instruction at the end of it.

How to save parent and child in one shot (JPA & Hibernate)

Really Nice read

https://newbedev.com/how-to-save-parent-and-child-in-one-shot-jpa-hibernate

  • it’s better to use helper method for setting relationships. E.g. class Cart should have a method:public void addCartItem(CartItem item){ cartItems.add(item); item.setCart(this); }

Design issues:

  • it’s not good to pass DTOs to the DAO layer. It’s better to do the conversion between DTOs and entities even above the service layer.

Do some software engineers cut corners like not working on unit tests, etc., when they try to complete a feature within unrealistic timelines?

https://qr.ae/pGWJHd

It’s the dirty little secret of the software world that, when the CTO says that these features need to ship by this date, you do whatever is needful to ship those features by that date. Developers who stand on their professional ethics are simply fired and replaced by someone who will comply.*

First you try working smarter by taking advantage of more open source

Then you try working harder by staying late, working weekends, and living on pizza and Jolt Cola.

But eventually you are out of options and you start eating into the software process itself.

A developer loses their innocence when they realize that the priorities of the employer are, in order:

  1. Hit the sales deadline
  2. Implement the minimal shippable feature set
  3. Meet minimum quality standards

____

educative – Hexagonal Software Architecture for Web Applications

Managers are drawing deadlines all around the project team […]

And then there is our own software architecture. It was so nice in the beginning. Everything was working well. But then the deadlines pressed us into taking shortcuts. Now, these shortcuts are all that’s left of the architecture, and it is taking longer and longer to deliver new features.

Instead of letting external factors govern the state of our software architecture, this course will teach you to take control yourself. You can do so by creating an architecture that makes the software soft, as in “flexible,” “extensible,” and “adaptable.” Such an architecture will make it easy to react to external factors and take a lot of pressure off our backs.

Generate Native Linux App for Gmail with nativefier

I wanted to generate an ‘app’ for Gmail, so that I don’t have to keep an opened tab in browser for Gmail, to get distracted every time I receive an email.

With a dedicated app, I will only open it at certain times during the day, and handle emails in those times only.

~ nativefier https://mail.google.com/mail --user-agent 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0' --name "My Gmail" --internal-urls ".*accounts .google.com.*"
~ nativefier https://mail.google.com/mail --user-agent 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0' --name "My Gmail" --internal-urls ".*accounts .google.com.*"

I have used nativefier(https://github.com/nativefier/nativefier) for this,

There is an know issue related to Gmail authentication see this answer,

https://github.com/nativefier/nativefier/issues/831#issuecomment-563997663