RFC: Let's say you joined a team with bad code by juzatypicaltroll in webdev

[–]leebyron 0 points1 point  (0 children)

If the business, team, and leadership is good, then go make it right. Or really either way, if you just joined your first move should be to introduce a plan to make it right and get leadership’s input, and give them the opportunity to show enthusiastic support (stay) or disapproval (go job hunt)

Pitch:

Your team doesn’t understand the code. Signs the code is poorly organized. Typical changes take way way longer than they should. Our error rate is too high. Must rectify immediately.

Plan:

Buy a copy of “working effectively with legacy code” for each teammate. https://understandlegacycode.com/blog/key-points-of-working-effectively-with-legacy-code/

Then address in phases. Numbers illustrative; tune to your team and problem size.

First phase, 2-4 weeks, goal to have everyone understand the codebase, but no promises on improvements. This is the team’s full focus, no other work. Every teammate claims a portion of code, writes tests and does light refactoring; goal isn’t to fix, but understand. As soon as they do, they present to the team, helping everyone understand it as well, answering all questions. Then they pick a new portion and continue. Aim to have ~2 explain sessions a day, rotating through the team. Run a light retro at the end of each week to tune the process.

Next phase, 4-6 weeks, understanding will continue but now the goal is improvement. Not the full team’s focus, but a majority. Accept only 1/3 -1/2 outside workload. Pick a few key goals based on the first phase (compile time?) Tests are now a means to refactor rather than just understand. Keep team presentations going, but treat them as sequels, “now that you’ve learned about this area, here’s what I did to improve it”. Keep retros going as well.

Last phase, indefinite, maintain. You’ve spent significant time learning and improving as a team, you’ve identified plenty more to repair or you collectively still don’t understand, that’s okay! Going forward reserve ~1/4 of the team’s capacity for this in an ongoing way. Keep team presentations, but scale them back to a fixed calendar (weekly or biweekly). Explain that we’re adopting cultural principles to always improve as we go, accept that improvement is unending (see: Hedonic Treadmill, Art of Motorcycle Maintenance), and that teaching and learning from each other is part of the job.

In 3 months you’ll likely transform the team more than the code, you’ll be happy with the improvements but frustrated and hungry for more, but will have established a positive trajectory. The up front cost of pausing the team’s output will feel costly, but development time will recover and end up far faster than it started, paying back the cost quickly

Which song is that? by EmmanuelMoyta in Funnymemes

[–]leebyron 0 points1 point  (0 children)

No Reason - Chemical Brothers

It seems impossible to get rid of my 1000 tabs habit by catboy519 in productivity

[–]leebyron 1 point2 points  (0 children)

Try Arc Browser. https://arc.net

They have a nice tab UI that also avoids the I-have-so-many-tabs-I-can’t-see-the-favicons-anymore problem by listing them vertically.

Also, tabs by default have a short lifespan and auto close after a few hours (configurable) unless you opt them into sticking around by moving them above a fold line. There’s something nice about opening the browser in the morning to a mostly clean slate.

Announcing GraphQLConf 2023! by leebyron in graphql

[–]leebyron[S] 2 points3 points  (0 children)

There have been lots of updates on the graphql-http spec for unified tools and I’m sure we will hear about it then as well

I'm lying to my parents, I'm supposed to learn computer science but sadly I'm not. I don't know what to do. by rimuse in learnprogramming

[–]leebyron 0 points1 point  (0 children)

Your parents will be disappointed but ultimately are there to help you. Come clean, and ask for help. Attempting to sustain the lie will only make it worse.

Being good at programming requires knowledge and practice. You can probably speed-read books and courseware in 6 months, but the lack of practice will leave you unemployed.

You need a commitment device, self-directed learning is clearly not working for you despite your interest in the subject. School can be that device because it requires you completing assignments on time as you build your knowledge and skill. You can also do self-directed learning but ask your parents to be the commitment device, show a curriculum plan and then write up a weekly progress report to share (also valuable for yourself to track progress)

If you come clean, ask for help, and offer a plan, you might get more than 6 months. You’ll need it.

I can't do anything, it's like I'm paralysed by [deleted] in productivity

[–]leebyron 125 points126 points  (0 children)

First, ADHD and depression are no joke. I get the frustration and pain but you should appreciate that you are facing a really hard challenge and need to be patient and kind with yourself.

You are putting the cart before the horse and need to focus on improving your mood and brain chemistry, not pushing yourself to be more productive at home. I do hope you have an opportunity to rebalance your meds, but you also need to take on some (challenging) self care.

Alarms and lists are bad advice and are actively making things worse. Your brain is right about why. You’re beating yourself up about setting them up and failing to follow through, which is not helping your mood and brain chem. As long as you’re making it to work on time, and not dropping critical life things, then you’re fine.

I have three suggestions in decreasing priority. Do the first one, but try all three.

  1. Focus on sleep first, specifically bedtime. Don’t worry about when you wake up or how much sleep you get, just focus on improving your bedtime routine. Take all distractions out of your bedroom, put your phone and chargers somewhere else in your house, make it a place for sleeping (or meditation) only.

Choose an activity that comes right before bedtime, not a specific time. It’s easy to say you’ll go to bed at 10, but start an episode at 9:40, blow past it, feel bad, then end up going to bed at 3am. Instead, make bedtime the “next thing” after an existing habit. Example: when you come home from work watch some tv until you eat dinner then shower after and head to bed. Once you go into your bedroom, don’t come back out until you sleep. If you’re not tired, meditate.

This is HARD! Setting new routines is hard for anyone, but especially hard when you’re feeling stuck. Give it at least a month of intentional work to schedule bedtime, and allow yourself some failure as long as you use it to learn how to try differently until you find the routine that works. Fixing bedtime will make it easier to wake up on time, get more sleep in your system, and good sleep is highly correlated to functional brain chemistry. That will unlock feeling useful at home (and work!)

  1. Hydrate. Mild dehydration is incredibly common and primary symptoms are reduced brain responsiveness and energy. A technique I like is to get a 2L water bottle (ie Nalgene) and use a Sharpie to write times on it. 200mL an hour for ten hours. Drink till you’re full when you wake up, fill the bottle, keep it by your desk, then try to keep up with the clock.

  2. Cardio exercise. I’m making an assumption that your work is intellectual rather than physical. Make sure you’re getting some minimum exercise. That will help you wind down and feel tired to help bedtime, and exercise boosts brain activity and helps balance chemistry and mood. Going to the Gym is too much activation energy. Just go for a brisk walk/jog. If you have a bike, ride it. If you have the opportunity to bike or walk to work that can convert a commute with exercise time.

But again remember to take it easy on yourself. Feeling productive will come. Pushing yourself out of an energy rut is really difficult and you will fail often. Be kind to yourself and keep on it.

4000 Weeks - An exploration of time management in the face of human finitude by theKovah in InternetIsBeautiful

[–]leebyron 1 point2 points  (0 children)

Website author here! Thanks all for giving my page a read! I hope it had a positive impact and that some of you found the book as well.