Much of my weekend went into playing Baldur's Gate instead of coding on #DevGood, which was pretty good for my mental health. Fortunately, I still managed to land the GraphQL updates as well as some minor tweaks made through the week (1st image). 2nd image is remaining tasks before I start letting other people use it.
(just keeping myself accountable)
Very happy to report that #DevGood is now using GraphQL for all GitHub interactions. This has saved a ⛵-load of queries against their incredibly badly designed V3 API.
There are lots of clues that they didn't actually improve much of anything with V4, they just plastered over most of it by saying "Don't look at the man behind the curtain... er... GraphQL"
I mean, yes... I DID sit down with the intention of finishing off the GraphQL...
BUT then i noticed that a coworker used the :arrow_up: emoji in one of his PR titles.... and I couldn't leave it just showing the literal ":up_arrow:"
So now #DevGood has slack/github-style emoji support.
I'm coming to the conclusion that @dachary 's @prfocus app is going to be a great compliment to #DevGood
DevGood is a 100% selfish app. It's totally focused on _your_ stuff.
PR Focus is about all the PRs happening in the project(s) you work on.
So, I use DevGood to stay on top of my stuff, and when I have a break - between tasks - I open up PR Focus and see if there's been any work by others that i should be aware of, or PRs that i should review.
My local copy of #DevGood is the live system I work out of every day. For much of yesterday the system was broken as I was wiring up the GraphQL stuff. I came to a good stopping point, and went to relax with some Baldur's Gate.
This morning I opened my "Dailies" page and saw this.
🎉 my first unexpected error report! The system works!
I can expand for details, and future occurrences result in timestamps added to the end.
I spent 5½ hours working on #DevGood yesterday. Maybe ⅓ of that was the fix to the mongodb_meilisearch gem. The rest was completely unplanned view layer refactoring. While I'm happy to have done it, & I've removed a lot of almost-but-not-quite copy-pasta, & replaced a ton of hardcoded strings with ones supporting internationalization... it didn't actually fix any bugs.
I've been coding professionally for ~30 years. @dachary 's been doing it for ~3? (depending on where you count from)
This morning she gave up some of her time to teach me some geeky coding 💩 i needed to learn for #DevGood but knew nothing about.
I can not express how awesome that is.
My wife's pretty bad-ass. 🥰
Because GitHub's Rest API is so terribly designed I'll be just continuously sucking down data from their servers for the rest of the day (literally)... pausing just long enough between each to below the rate limit. To import PR feedback for a handful of repos. 6800 PRs in one repo alone == ~5hrs of downloading.
This 💩 is just completely unnecessary.
I don't think i can release without rewriting in GraphQL. This is just a miserable wait during onboarding in #DevGood
cc @dachary
I've been fighting with an import bug in #DevGood
things just... weren't updating and i couldn't figure out why.
turns out, I had was calling .each on a Mongoid query but RuboCop kept changing it to for_each which would make sense if i was using ActiveRecord but it's an error in Mongoid.
AND because of rails validation bug, i'd removed a special case for validating my ErrorNote class so it wasn't recording any of my errors. Arrrgh.
I kept being all "I thought i fixed that!"
Color coded for _your_ protection. ;)
There's something oddly liberating about writing an app to manage someone's work data/notes/todos and also having NONE of that data myself. I don't have to worry about keeping your data safe, or backing it up, or giving it to a lawyer. I don't have it.
I'm so used to having to be paranoid about Personally Identifiable Information, and $$ and/or customers being lost if a server or db catches fire.
LOL'd at this #DevGood graph from a repo with 99% of its data missing. (i aborted an import.)
Finally! Success! PR Review stuff is in #DevGood now. Numbers validated and everything!
(note: not my data. this is from an open source repo the system thinks i'm a contributor on)
#DevGood update: so, once i got the creation date stuff resolved my reviews were accurately distributed across time, but there just weren't enough comments.
Eventually i complained to @dachary who came over, rubber ducked, and pointed out to her poor deluded spouse that no, you can't get all the comments with just 2 requests to the GitHub API you need 3 requests.
- issue comments
- review comments
- pull request comments
GitHub has the stupidest and most inefficient API i have EVER seen
When i'm coding, there's almost always a background mental process figuring stuff out for #DevGood. I just went to add an item to the ToDo list for the initial, very limited release.
I was hoping to get it done this weekend, but I'm pretty sure that's not going to happen. The list has gotten too long and I have adulting to do too. :/
I sat down this morning for our team's daily check-in. Thinking “ok what did i do? Oh yeah i worked on that ticket" then I opened up #DevGood, saw the “Standup† Notes (for thursday)” that I'd left myself, expanded it, and “oh yeah, I tested and merged that feature folks have been wanting, and spent time documenting gotchas of it”
† Gotta change that habitual naming.
there um.... there MIGHT be a bug in the the new #DevGood graph that compares how many PRs you've reviewed as compared to your team mates. 😉
I'm pretty sure folks aren't actually reviewing ~400 PRs per week seeing as we only make a few PRs each.
This graph exists because folks have trouble remembering to spend time reviewing other people's PRs. It'll help you see if you're doing "enough" relative to the team. Or if maybe the only reason anything gets reviewed is because of you.
Just demoed #DevGood to one of wife's coworkers. Looks like i've got my first official beta-tester.
Have to do some prep this weekend before setting it loose into the wild.
Am very excited. This has been incredibly useful for me, and I really hope that it'll help other devs, especially those with ADHD.
my #ADHD has made the past ?month? a real struggle with regards to work. There've been many days where i felt like i wasn't contributing nearly enough.
Then I see this graph of contributions on #DevGood which shows me that I'm objectively contributing as much as my coworkers. More even.
Things like this are precisely why I wrote DevGood. It helps me to know I'm not a failure. If i was doing poorly it helps me know before others start complaining.
I can't wait to share this with folks.