Success the ShakaCode Way!
It’s Thanksgiving today! I’m taking a few minutes to put down a few thoughts that I hope will bring you, your family, and your friends “success” in the coming year.
Optimizing Google Fonts on Gatsby Sites
Achieve faster page loads and avoid flashing and jumping fonts by properly preloading Google fonts on your Gatsby sites with the gatsby-plugin-prefetch-google-fonts plugin.
Clubhouse (Jira/Trello/Github) Toggl Time and Task Tracking
Clear and regular communications regarding time spent on various tasks are critical to having good client relationships. To this end, ShakaCode leverages Toggl with Clubhouse to provide reports to our clients so they can assess the overall level of effort for various tasks and efficiency of ShakaCode development efforts.
ReasonML: Safe Routing
Once you start using a language with sound and expressive type system, to fully leverage its advantages you should push loosely typed entities to the edges of application. One such entity is the URL.
ReasonML: Safe Identifiers
Pretty much each entity in our apps has special field that uniquely identifies it. Usually, it's called id. Type of such identifier can be int or string (or any other serializable data type).
Introduction to Cypress on Rails
Cypress provides really powerful tools to create true end-to-end tests for modern web applications. With these testing features, stay 100% confident that all frontend user interactions, even async requests, work as expected.
Recently, I’ve been investing quite a lot in learning ReasonML and TBH I’m pretty much dead as JS developer right now because I’ve seen the better world. Much better one.
Webpacker Lite: Why Fork Webpacker?
Update September 10, 2017. Webpacker Lite has been merged into v3 of Webpacker. If you’re using React on Rails, see the CHANGELOG for migration instructions to update to v9 of React on Rails which uses v3 of Webpacker.
What follows is a quick rundown of how we’re currently handling SVGs at ShakaCode.
There are two ways of thinking of about UI: in terms of state or in terms of interactions.
Bulletproof Enums using Immutable Records and Flow
If you use immutable-js and flow in your projects, you can have statically type-checked Enums. This means you’ll errors right in your editor and on CI when you try to access an Enum property that is misspelled or doesn’t exist.
React PureComponent Pitfalls
Unnecessary re-renders can slow down your app, especially when rendering large collections where updates to the collection occur frequently. The React docs sometimes refer to these as “wasted” renders.
A Year of development with Redux. Part II
The previous post was about the composition of connected components and performance, but those changes introduced another kind of issues, that was solved by the second insight.
Migration to Webpack@2
I spent the past few days upgrading our app to the latest RC of Webpack ver. 2. Here’s the official migration guide, that covers most of the common cases, but there were still a number of “gotchas” that I wish I had been aware of before I started this PR.
Why Hire ShakaCode?
At ShakaCode, we build custom web and mobile apps, specializing in the use of React or React-Native on the front end and Ruby on Rails on the back end.
General Troubleshooting and Getting Started with React on Rails
Recently, I’ve been doing more private coaching/pairing sessions on getting setup with React on Rails. In this article, I’m going to share my general tips for maximum productivity when using React on Rails. Many of these tips will apply regardless of your programming environment.
React on Rails, 2000+ 🌟 Stars
React on Rails is the number one open source integration of React + Webpack + Ruby on Rails. If we take out Webpack from the equation, React on Rails is the number 2 integration solution, second only to reactjs/react-rails, which started 2 years earlier.
An Attitude of Gratitude for Open Source
This happened today, in a discussion on github, regarding the “damage” done by having two alternative mainstream ways of integrating React.js with Ruby on Rails.
Ember.js Tutorial with Rails 4
This post demonstrates how to build a simple Ember.js app with Rails 4 for persistence, and includes a detailed screencast.
Testing Error Handling
How do ensure that your application properly handles errors, especially when relying on third parties, such as payment processors? Is it easy to verify that the right things happen when the wrong things happen?