Avatar of Michael Kelly

Michael Kelly

Senior Software Engineer at StackShare
Senior Software Engineer at StackShare·

I use GitLab when building side-projects and MVPs. The interface and interactions are close enough to those of GitHub to prevent cognitive switching costs between professional and personal projects hosted on different services.

GitLab also provides a suite of tools including issue/project management, CI/CD with GitLab CI, and validation/landing pages with GitLab Pages. With everything in one place, on an #OpenSourceCloud GitLab makes it easy for me to manage much larger projects on my own, than would be possible with other solutions or tools.

It's petty I know, but I can also read the GitLab code diffs far more easily than diffs on GitHub or Bitbucket...they just look better in my opinion.

READ MORE
14 upvotes·945.5K views
Senior Software Engineer at StackShare·

When we went all in on adopting GraphQL Ruby as our backend API standard there wasn't any good way to handle fine grain caching of resolved fields. We could hack around it caching the entire JSON document, but this was too heavy-handed. We also needed to expose real-time fields next to large cached collections in our schema which isn't possible this way.

To solve the problem we built GraphQL Cache which is a custom plugin for GraphQL Ruby that provides field-level caching. The gem integrates with Rails so that it can be easily dropped into an app and used to cache computational or network intensive resolvers at a layer similar to the Rails controllers we're all used to. For more information on why and how GraphQL Cache came to be, read the blog post linked to this decision.

READ MORE
Introducing GraphQL Cache | StackShare (stackshare.io)
5 upvotes·8.4K views