1. Be kind, to everyone 2. If you control something (releases, etc) then try to set reasonable expectations and communicate when you can't meet those or recruit others to help you do so
3. For issues/tech support, ask the other person to do a reasonable amount of due diligence. Asking them to create a minimal repro is more than reasonable
4. If they do create a minimal repro, now the issue is prime for someone to fix it, so label it accordingly and broadcast it to people who might be interested in helping. I always ask the person who filed the issue to take a crack at it
5. Work on making your code base more accessible to newcomers: setup scripts, tests, documentation, guides. This will encourage more people to help on step #4
Notice that nowhere am I saying that I am obligated to fix other people's problems/issues. As a maintainer, my job is to coordinate such activity, but it's impossible to fix everyone's edge cases.
• • •
Missing some Tweet in this thread? You can try to
force a refresh
I need a warning system for people I follow when I see obvious engagement grift. Like a “three strikes and you’re out” system.
I mean, you can find some of those tweets by me back in the day, maybe. But they weren’t formulaic like today. People recognized what works and just go through the playbook now.
We recently did a React Native Windows project. While I'm under NDA and can't say what the app is, I do have some general observations about React Native Windows.
This project had to support iOS, Android, and Windows. It primarily was intended to work on small laptops and tablets, although we did end up supporting phones too later on.
It did not have to support web.
Overall, React Native Windows was reasonable to work with, but with some big caveats.
Tonight's "coding for fun" task is to figure out why we're running into a bit of a perf problem with MobX-State-Tree and MobX-React-Lite in a specific large data set situation.
I'm first going to try to replicate the conditions in a bare React Native app.
Live-tweet it?
First, I'm spinning up a new RN app.
`npx react-native init MSTPerf`
I could have used the TypeScript template project, but decided to add it myself using the instructions here.
@mattlanham@imjakechapman At Infinite Red, we used Redux for several years, and it worked fine. We used redux-saga for side effects and made a few helper libraries to make it better.
1/
@mattlanham@imjakechapman One of our devs found MobX and MobX-State-Tree. MobX was a little too free-form for us, but MST fit the bill -- it had little boilerplate and also came with MobX-React which gave superior performance on state changes.
3/
Life is ultimately calmer when one faces their problems head-on instead of avoiding them. You can avoid problems for quite a while, but in my 30s I had to face many of them. They eventually will catch up to you.
But don't do hard things alone.
Get a counselor, therapist, doctor, pastor, or life coach (depending on the situation). Or even just a close friend.* Have someone on your side.
(*Don't expect too much from friends. They're friends, not taking the place of trained pros.)
Build your conflict resolution skills! So many of my problems came about because I didn't know how to resolve conflicts effectively.
I see this in my friends. They suffer for weeks because they don't want to have one hard conversation. Or make commitments they can't keep.