How Should I Tell My Brother His Work Ethic Is Awful?

6 points by dikaio ↗ HN
I've been confronted with a situation I can't merely overlook because we're family. My Brother, whom I love just doesn't get it when it comes to coding although I'm sure it doesn't only pertain to his work. As an example and the reason why I'm posting today my brother and I are working on a project that needed to capture sensitive data, e.g., social security numbers, date of births, etc. The task was to capture and make specific fields available to analytics, e.g., subscription type and other user-specific demographics useful for analytics. Today I just happened to be looking in the analytics and low and behold I see ALL the data in there, social security, etc. I couldn't believe it but what made me even madder is when I confronted him about it he said do you really think I'm that stupid that I would leave it in there? In other words, trying to avoid the fact that it's even in there in the first place, why would it be? It's a constant pattern with him I find something and explain what I see, and he has an excuse. Really silly things that any developer that's been coding for a year or two should know like make sure there are messages (error, success, etc.) after form submission doesn't just redirect to a page that for one isn't even logical to redirect too and two there's no explanation of what happened after the user interacted with the website. To me these are very jr web dev things you should know yet time after time he will mark a task as complete and not do these things, he doesn't check his work. At times I wonder if I'm too hard because I am overly analytical, borderline OCD... am I wrong? I need help, can anyone tell me if I'm being a complete ass and need to chill or?

Advice and your guys' input is very much appreciated.

(There was no real user data yet in the application, thank God)

Edit: not sure this is formatted correctly it just shows a scroll bar on my end.

13 comments

[ 3.4 ms ] story [ 43.6 ms ] thread
Work ethic vs details-oriented are two diff things. Maybe have a pull request model where you approve and give feedback?

If it's truly work ethic, then your call on whether to continue the project. Projects/startups are like romance, don't try to change the person (to each their own), or expect change to happen, just let people be who they are and decide if you want to continue given their disposition.

Be humble, be chill, and know you have your own faults that he probably has to put up with. I'm an only child. I wish I had a brother, so for my sake (lol), prioritize your relationship above your project.

(comment deleted)
Well said @curo, thank you.
If you're a "bit OCD" and about to embark on code reviewing your developers work, might I suggest you think about what your standards are and document/communicate them before bombarding devs with change requests? That makes the whole process less frustrating IME. Also, to begin with, you might want to ask yourself "Would i go and ask the person to change this after it was committed" as a self check as to whether stuff needs changed - just to ease people in, until those guidelines are fleshed out. You could well say you plan to tighten it up - and eventually rely on developers to review each others work.

Another process is a mini show and tell, where before each user story / feature is committed its shown in action to the person who requested it / QAs etc at the developers desk. Problems seen here may not even be the developers fault. A tendency towards reactionary defensiveness, and the recent goings on, might be best considered before doing this right now though. (It may well be you don't give the leeway you would a non family member for this as well.)

When my older daughter (8) was upset because my younger daughter (3) destroyed her art work I taught her that, while her younger sister would not go without consequences for her actions, it was ultimately her own fault for leaving her artwork in a place where her younger sister could get access to it - especially when similar lessons had been experienced before.

So, in the end, you have to decide if your priority is your sanity, your integrity, loyalty, or something else. Then you should act in that best interest. Once you do this you will be at ease with the outcome no matter what it might be.

edit: You have as much right to your 'OCD' as he does to his 'lack of work ethic'.

I honestly hadn't looked at it like that... I think it's more of that fact that it is him that I want to be working with and that's why it continues. Appreciate the advice @mamanisalco!
Don't talk down on your man unless you're helping him up.
It is often said that it is a very bad idea to go into business with friends and family. Your situation is a good example. If you had hired a programmer and he did work like your brother does, then you would probably fire him after a couple of warnings. But you can't fire your brother -- well you can fire him as a programmer and keep him as a brother. Other people have done that and once they get over the short-term upset, things tend to work out for the better.

If you want to go down that path, it might be advisable to have a trusted and respected family member to mediate. If there is no such person then somebody independent would be a good idea. But do not try a friend for that role, it would only cause rifts.

This is actually the best advice I've heard all night, thanks @CyberFonic!
Two thoughts come to mind:

1. I’ve had people who like to “check in” too early.

They audit while I’m still developing something and create all kinds of reports about non-compliance yet I’m no where near completion. Their advice was “we need to catch this early.” These people literally logged unfinished stub functions scheduled for implementation next week as “requiring serious refactoring / dead code”.

This is like complaining about the lack of coffee because you’ve grabbed the cup away while someone was pouring the coffee into your cup.

2. Expectations management / assumptions.

Perhaps you need to schedule meetings where features are assumed to be complete by that time. And you have standards agreed up front. How the user experience is meant to be. Eg storyboards. Basically no UX surprises.

Misunderstandings and lack of communication around expectations are too common.

He may need training and exposure to real world customers who are complaining in his face for dumb UI.

Really good points @adiusmus. I do think we get lost due to lack of communication, that's something I know I can do on my side to better help him... but if he still doesn't do it we're boxing. =oP
Wear gloves. Keep score. Enjoy!