ShakaCode blog - All Topics

Search
Choosing Between Kamal and Control Plane with ShakaCode

When selecting a platform for deploying your application, ShakaCode helps you weigh the strengths of Kamal versus Control Plane based on your specific needs.

12 Oct 2024Dotby Justin Gordon
Why Stay Versus Move Away from Heroku?

Heroku's user-friendly environment makes it a popular choice for startups and early-stage applications.

10 Oct 2024Dotby Justin Gordon
Maximizing Code Quality with Rails Pre-Commit and Pre-Push Hooks

By utilizing pre-commit and pre-push hooks, developers can automate various checks and tasks that contribute to maintaining high code quality standards.

9 Apr 2024Dotby Alkesh Ghorpade
Streamlined Syntax - Unveiling the Power of Slim Template Language

Slim is a templating language designed to streamline the view syntax to its fundamental elements while avoiding cryptic complexity.

3 Apr 2024Dotby Alkesh Ghorpade
Level Up Your Ruby Code with Draper Decorators

Draper provides a simple, elegant way to separate presentation and model logic in Rails applications.

2 Apr 2024Dotby Alkesh Ghorpade
Keeping your database migrations strong with strong_migrations gem

Enhance the reliability and safety of your migration tasks, reducing the risk of data loss or corruption using strong_migrations.

27 Mar 2024Dotby Alkesh Ghorpade
Feedback on ReScript

A few months ago, I asked fellow devs to give honest feedback on their experience with ReScript, and this is what I got in replies.

27 Mar 2024Dotby Alex Fedoseev
Supercharge your Rails App with Active Admin

Active Admin is a gem that simplifies the creation of administrative interfaces for your Ruby on Rails applications.

26 Mar 2024Dotby Alkesh Ghorpade
Unlocking SEO-Friendly URLs with FriendlyID Gem

FriendlyId is a Ruby gem that extends Active Record functionality. It lets you create custom URLs for your models using text strings instead of numeric IDs.

19 Mar 2024Dotby Alkesh Ghorpade
Boost Your Ruby on Rails Application Performance with Bullet Gem

Ruby on Rails developers know N + 1 queries are performance killers. Bullet helps you spot them in your code before they become bottlenecks.

13 Mar 2024Dotby Alkesh Ghorpade
Simplify Your Ruby Application Configuration with Figaro Gem

Figaro simplifies the process of securely storing sensitive information.

12 Mar 2024Dotby Alkesh Ghorpade
Debugging Made Easy with Pry

The Pry gem offers a robust alternative to the standard IRB shell for Ruby. Easily configure your Rails app to utilize Pry for improved debugging and development efficiency.

rubyDot
6 Mar 2024Dotby Alkesh Ghorpade
Empower Your Rails Application with CanCanCan Gem

With CanCanCan streamlines permission management for your Rails app.

5 Mar 2024Dotby Alkesh Ghorpade
Comprehensive Guide to SimpleCov Gem

SimpleCov is a gem used for code coverage analysis in Ruby projects, providing insights into how thoroughly the codebase is being tested.

28 Feb 2024Dotby Alkesh Ghorpade
Mastering Authorization in Rails with Pundit

Discover how Pundit promotes a clear separation of concerns, allowing you to focus on building features without worrying about intricate permission checks.

27 Feb 2024Dotby Alkesh Ghorpade
Exploring the FFaker Gem - A Comprehensive Guide

FFaker simplifies the process of generating fake data, allowing you to focus on what truly matters.

21 Feb 2024Dotby Alkesh Ghorpade
Streamlining Rails Development with GitHub CI/CD

With Rails 8, GitHub CI files will be added by default to the new applications.

20 Feb 2024Dotby Alkesh Ghorpade
RuboCop comes built-in with Rails 8.0

Wondering what RuboCop is? Starting with Rails 8.0, it's included by default to automatically check your code for quality and adherence to coding standards.

14 Feb 2024Dotby Alkesh Ghorpade
Rails 8.0 adds Brakeman

With Rails 8.0, brakeman will be added by default to your application, enhancing its security.

13 Feb 2024Dotby Alkesh Ghorpade
Rails 8 adds explain support to ActiveRecord::Relation

With Rails 8, the object returned by explain now responds to pluck, first, last, average, count, maximum, minimum, and sum.

7 Feb 2024Dotby Alkesh Ghorpade
Rails 8.0 adds allow_browser to set minimum versions for application

Rails 8.0 adds the allow_browser method to specify the browser versions, allowing access to all actions.

6 Feb 2024Dotby Alkesh Ghorpade
Rails 7.1 adds support for MessagePack as a Message Serializer

Rails 7.1 welcomes MessagePack, a binary data format delivering significant payload size reduction and performance improvements over traditional serializers like JSON.

31 Jan 2024Dotby Alkesh Ghorpade
Ruby 3.3.0

Ruby 3.3.0 has been released! Take advantage of what's new. Check out this summary of features, improvements, additions, and removals.

rubyDot
30 Jan 2024Dotby Alkesh Ghorpade
Headless Chrome Ruby - Conquering Automation with Ferrum

Ferrum streamlines Chrome automation in Ruby by establishing a WebSocket connection and elegantly exposing the Chrome DevTools Protocol through a well-crafted API.

24 Jan 2024Dotby Alkesh Ghorpade
Using GraphQL in Ruby on Rails

GraphQL (flexible, strong typing) empowers front-end devs to query Rails data without much backend fuss.

23 Jan 2024Dotby Alkesh Ghorpade
How to upgrade Rails 6.1 to 7.0

A step-by-step guide to upgrading Rails from 6.1 to 7.0.

17 Jan 2024Dotby Alkesh Ghorpade
Rails 8.0 adds rate limiting to ActionController

Rails 8.0 introduces built-in rate-limiting capabilities for controller actions, allowing you to fine-tune user access and prevent abuse.

16 Jan 2024Dotby Alkesh Ghorpade
Upgrading Rails 5.2 to 6

Upgrading to Rails 6 made easy, learn the steps and discover crucial tips for a smooth transition.

10 Jan 2024Dotby Alkesh Ghorpade
Rails 7.1 adds path_params option to url_for for flexible URL generation

When using url_for in Rails 7.1, leverage the new path_params option to craft URLs with specific path parameters precisely.

9 Jan 2024Dotby Alkesh Ghorpade
Conquering Code Clutter - A Guide to Rails Concerns

In Ruby on Rails, ActiveSupport's Concern is a module that allows you to encapsulate shared behaviour and code in a modular and reusable way.

3 Jan 2024Dotby Alkesh Ghorpade
Ready, Set, Deploy! Rails 7.1 Gets Docker Support

With Rails 7.1, Dockerfiles make deploying apps to production environments a breeze with Docker.

2 Jan 2024Dotby Alkesh Ghorpade
Rails 7.1 adds ActiveRecord regroup

With Rails 7.1, ActiveRecord regroup allows you to change a previously set group statement.

27 Dec 2023Dotby Alkesh Ghorpade
Rails 7.1 empowers the resetting of singular associations

Resetting singular associations unloads the cached associate record and causes the subsequent access to query it from the database.

26 Dec 2023Dotby Alkesh Ghorpade
Rails 7.1 ActiveStorage's TransformJob cleverly pre-processes videos and PDFs for smooth previews

Rails 7.1 ActiveStorage's TransformJob expands its pre-processing power to videos and PDFs, enriching preview possibilities beyond images.

20 Dec 2023Dotby Alkesh Ghorpade
Rails 7.1 allows ActiveRecord reselect to accept a hash

With Rails 7.1, developers can now use intuitive hash syntax with the reselect method for more transparent and flexible database queries.

19 Dec 2023Dotby Alkesh Ghorpade
Rails introduce powerful ErrorReporter#unexpected for controlled error reporting

Rails offers a game-changer ErrorReporter#unexpected for developers facing tricky precondition violations.

13 Dec 2023Dotby Alkesh Ghorpade
Rails 7.1 introduces a new option to exclude all custom methods generated by the ActiveRecord::Enum

Rails 7.1 lets you turn off the creation of custom methods for enum attributes, giving you more control over your models.

12 Dec 2023Dotby Alkesh Ghorpade
Rails 7.1 allows using aliased attributes with insert_all and upsert_all

As of Rails 7.1, you can utilize aliased attributes when employing the insert_all and upsert_all methods.

6 Dec 2023Dotby Alkesh Ghorpade
Rails 7.1 adds ActiveRecord::Base::generates_token_for

In Rails 7.1, ActiveRecord::Base::generates_token_for provides a convenient way to generate and validate tokens for various use cases in Rails applications.

5 Dec 2023Dotby Alkesh Ghorpade
Rails 7.1 allows passing options to ActiveRecord explain

Rails 7.1's explain method now accepts options for more detailed query insights.

29 Nov 2023Dotby Alkesh Ghorpade
Rails 7.1 adds support for multiple-column ordering in Activerecord

Rails 7.1 supports multiple-column ordering for find_each, find_in_batches and in_batches.

28 Nov 2023Dotby Alkesh Ghorpade
Rails 7.1 adds the ability to autoload the lib directory

Rails 7.1 introduces the autoload lib method and allows one to pass the option :ignore to avoid subdirectories that should not be autoloaded.

22 Nov 2023Dotby Alkesh Ghorpade
An introduction to test suite optimization in Ruby

Going over some common pitfalls that might be making your tests slower than they need to be, and what to do about them.

21 Nov 2023Dotby Samuel de Moura
Flaky Visual Regression Tests, and what to do about them

Let's go over some tips about what to do when your visual regression tests are failing intermittently for no apparent reason.

16 Nov 2023Dotby Samuel de Moura
Rails 7.1 limits the maximum length of auto-generated index names

Rails 7.1 defines a 62-byte maximum limit for auto-generated index names.

14 Nov 2023Dotby Alkesh Ghorpade
Rails 7.1 adds an option to extract the sample rate of an audio file

In Rails 7.1, leverage ActiveStorage::AudioAnalyzer to extract an audio file's sample rate, bit rate, and duration.

8 Nov 2023Dotby Alkesh Ghorpade
Rails 7.1 allows ErrorReporter to handle several error classes

With Rails 7.1, you can use the Rails.error.handle method to deal with multiple error classes.

7 Nov 2023Dotby Alkesh Ghorpade
Rails 7.1 adds support for infinite ranges for LengthValidators

With Rails 7.1, you can pass an infinite range to the :in/:with options of length validators.

31 Oct 2023Dotby Alkesh Ghorpade
Rails 7.1 expands its support for ActiveRecord asynchronous queries

With Rails 7.1, you can execute the aggregate queries asynchronously.

30 Oct 2023Dotby Alkesh Ghorpade
Rails 7.1 raises an error on generating model attributes with dangerous name

In Rails 7.1, generating a model with attributes named keywords like hash or save would raise an error.

27 Oct 2023Dotby Alkesh Ghorpade
Rails 7.1 adds validation to enums

With Rails 7.1, if you want to validate the enum values before saving, use the option `:validate`.

26 Oct 2023Dotby Alkesh Ghorpade
Rails 7.1 allows matching exception messages to assert_raises assertion

In Rails 7.1, you can now use a single assert_raises assertion to match both the exception class and the message.

25 Oct 2023Dotby Alkesh Ghorpade
Rails 7.1 adds Object#with method

Rails 7.1 implements object#with as a method that allows you to set and restore public attributes around a block.

24 Oct 2023Dotby Alkesh Ghorpade
Rails 7.1 allows attaching file or pathname to has_one_attached

With Rails 7.1, users can attach a file or pathname directly to has_one_attached associations. This makes it easier to attach files already stored on the filesystem.

23 Oct 2023Dotby Alkesh Ghorpade
Rails adds the ability to pass the expires_at option to ActiveStorage::Blog#signed_id

The expires_at option for ActiveStorage Blob signed IDs allows you to specify when the signed ID will expire. This can be useful for sharing sensitive files or files you don't want publicly accessible forever.

20 Oct 2023Dotby Alkesh Ghorpade
Ruby 3.3 introduces range overlap? method

The Ruby team introduces the range overlap? method that returns true or false if the two range overlaps each other or not.

rubyDot
17 Oct 2023Dotby Alkesh Ghorpade
Metaprogramming in Ruby

Explore about metaprogramming in Ruby and how to use it.

rubyDot
19 Sep 2023Dotby Alkesh Ghorpade
Rails 7.1 gives templates more control over the locals they receive

Rails 7.1 introduces an option that enables templates to have required arguments with default values.

13 Sep 2023Dotby Alkesh Ghorpade
Ruby 3.2 introduces Data, a new core class for immutable value objects

Ruby 3.2 adds Data that provides a convenient way to define simple classes for value-alike objects.

rubyDot
12 Sep 2023Dotby Alkesh Ghorpade
Rails 7.1 makes it possible to execute tests for a given range of lines in a file

In Rails 7.1, you can execute tests for a given range of lines (a-b) by passing the range to the test command.

6 Sep 2023Dotby Alkesh Ghorpade
Rails 7.1 removes the secrets:setup command and deprecates secrets:edit and secrets:show commands

Rails 7.1 removes the deprecated setup command of secrets and adds a deprecation warning for secrets edit and show commands.

5 Sep 2023Dotby Alkesh Ghorpade
Rails 7.1 makes increment_counter and decrement_counter accept a by argument

In Rails 7.1, the increment_counter and decrement_counter methods can now be passed an argument to increment or decrement the counter by any value.

31 Aug 2023Dotby Alkesh Ghorpade
Shakapacker 7

Shakapacker, Webpacker's official successor, is a Ruby gem that integrates webpack into Ruby on Rails. Version 6 had references to both webpacker and shakapacker, but with version 7, Shakapacker is now entirely Shakapacker.

30 Aug 2023Dotby Mostafa Ahangarha
Rails 7.1 adds support for Array#intersect? to ActiveRecord::Relation

In Rails 7.1, the Array#intersect? method can be used to find if two ActiveRecord::Relation objects intersect or not.

22 Aug 2023Dotby Alkesh Ghorpade
Rails 7.1 adds the ability to raise errors on missing callback actions

In Rails 7.1, you can now configure your controllers to throw an error if the only or except options in controller callbacks refer to actions that don't exist. This helps detect and fix typos and other mistakes in your controller code.

9 Aug 2023Dotby Alkesh Ghorpade
Rails 7.1 adds the ability to defer the unique constraints in PostgreSQL

With Rails 7.1, you can delay the unique constraints check using the deferrable option.

8 Aug 2023Dotby Alkesh Ghorpade
Rails 7.1 enhances PostgreSQL enum functionality

Rails 7.1 adds rename_enum, add_enum_value and rename_enum_value commands to DB migration extending support for PostgreSQL enums.

2 Aug 2023Dotby Alkesh Ghorpade
Normalize Data with Rails 7.1

Rails 7.1 adds ActiveRecord::Base::normalizes method to standardize the data before saving it to the database.

1 Aug 2023Dotby Alkesh Ghorpade
Rails 7.1 adds --parent option to the controllers

Rails 7.1 controller generator accepts the --parent option. It allows to generate a controller that inherits from the specified parent controller.

26 Jul 2023Dotby Alkesh Ghorpade
Rails 7.1 adds picture_tag helper to support HTML5 picture element

Rails 7.1 adds the picture_tag helper method that renders the HTML picture tag for handling responsive images.

25 Jul 2023Dotby Alkesh Ghorpade
Rails 7.1 adds routes --unused option to detect extraneous routes

Discover extraneous routes in your Rails application effortlessly by utilizing the --unused option with the rails routes command.

19 Jul 2023Dotby Alkesh Ghorpade
Rails 7.1 adds ActiveJob#perform_all_later to enqueue multiple jobs at once

Rails 7.1 adds perform_all_later to ActiveJob that enqueues many jobs at once, eliminating repeated Redis roundtrips.

18 Jul 2023Dotby Alkesh Ghorpade
Rails 7.1 introduces deliver callbacks for ActionMailer

Rails 7.1 adds before_deliver and after_deliver callbacks to ActionMailer to hook into the lifecycle events of the mail delivery.

11 Jul 2023Dotby Alkesh Ghorpade
Rails 7.1 makes ActiveRecord query cache an LRU

With Rails 7.1, the ActiveRecord query cache uses the LRU strategy and removes the least recently used queries.

5 Jul 2023Dotby Alkesh Ghorpade
Pull Requests (PRs) - Creating and Review

Tips and ideas on how to make the code review process as simple and painless as it can be — both for those reviewing and those preparing the code for review

17 Feb 2023Dotby Justin Gordon
Shortcut (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 Shortcut to provide reports to our clients so they can assess the overall level of effort for various tasks and efficiency of ShakaCode development efforts.

12 Feb 2023Dotby Justin Gordon
ShakaCode Consulting Versus Full-Time Hires and Staff Augmentation

Consulting Versus Full-Time Hires

11 Feb 2023Dotby Justin Gordon
thiserror, anyhow, or How I Handle Errors in Rust Apps

A quick note on error handling in Rust.

rustDot
16 Nov 2022Dotby Alex Fedoseev
React on Rails: File-System-Based Automated Bundle Generation

Automate bundle generation in Rails app using React on Rails.

19 Oct 2022Dotby Pulkit
React on Rails: How to use different versions of a file for client and server rendering

Let's explore the three ways to use different code for server vs. client rendering.

20 Sep 2022Dotby Justin Gordon
Sending Bytes

A note on a data partition during network communications.

rustDot
5 Jun 2021Dotby Alex Fedoseev
RailsConf 2021 -- Implicit to Explicit: Decoding Ruby's Magical Syntax

Does a Rails model or config file seem like a magical syntax? Or can you read any Ruby code and understand it as the interpreter does?

11 Apr 2021Dotby Justin Gordon
Managing External Data Sources in End-to-End Testing for cross-platform React Native Application

End to end(E2E) testing is a traditional testing methodology where the aim is to examine how an application works by assessing the flow from start to end. In Scenario-Based End-to-End Testing, Application is examined from all layers – front end to backend along with its interfaces and the endpoints

5 Feb 2021Dotby Pulkit
Cool Things You Can Do with First-Class Modules in ReScriptReact

This post is about not so widely known advanced feature of the language, that helps to build handy abstractions over ReScriptReact components.

2 Nov 2020Dotby Alex Fedoseev
A definitive guide to E2E Testing CI Setup for React-Native using Cavy-CLI

React Native is a cross-platform mobile application development framework. It saves development time & cost and adds the ability to ship OTA (over the air) updates.

9 Oct 2020Dotby Pulkit
Manage Rails app business logic using ActiveInteraction gem

Let's dive into managing Rails application-specific business logic using ActiveInteraction.

29 Aug 2020Dotby Alkesh Ghorpade
Buy Apple Products to get a 4 year Warranty

Tips to buy Apple gear with the maximum extended warranty.

20 May 2020Dotby Justin Gordon
Remote Pair Programming Tips using RubyMine and Screenhero (Zoom)

Tips for successful remote pair programming.

20 May 2020Dotby Justin Gordon
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.

20 May 2020Dotby Justin Gordon
RailsConf 2020 -- Webpacker, It-Just-Works, But How?

How does the Webpacker gem provide "it-just-works" webpack integration with Rails? That simplicity did not come easily. The rich functionality, complexity, and rapid evolution of the webpack ecosystem necessitated extension points beyond a simple Ruby config file.

5 May 2020Dotby Justin Gordon
Migrations on Sequelize-CLI for beginners

Learn the basics of Sequelize-CLI with Renan Aguiar. Packages, npm, npx, configuration folders, migration statuses and more.

17 Apr 2020Dotby Renan
Optimizing js bundle

In this article, I'm considering how you can optimize the site load built on react and webpack.

8 Apr 2020Dotby Andrey
ShakaCode Client Engagement Model

Delivering an exceptional user and developer experience, ShakaCode offers "React on Rails Pro," a subscription-based service including a React-on-Rails Pro license for accelerating client- and server-side performance along with ongoing optimization and support.

1 Apr 2020Dotby Justin Gordon
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.

25 Jan 2020Dotby Justin Gordon
Safe Routing in ReScript

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.

4 Jan 2020Dotby Alex Fedoseev
Safe Identifiers in ReScript

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).

1 Jan 2020Dotby Alex Fedoseev
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.

26 Dec 2019Dotby Anton
Migrating from Angular to React

Foreword

17 Feb 2019Dotby Alexey
Easy React Server Rendering with rails/webpacker v4 and React on Rails

I’m excited about the v4 update of Webpacker. This release brings several big updates from the Webpack ecosystem, notably support for Webpack v4 and Babel 7.

17 Oct 2018Dotby Justin Gordon
HVMN’s 90% Reduction in Server Response Time from React on Rails Pro

Since HVMN installed React on Rails Pro, they’ve seen a roughly 90% improvement in server-response times. The gain came from a combination of intelligent caching along with a much more efficient…

13 Sep 2018Dotby Justin Gordon
How I Almost Fell for Phishing!

I take some pride in being “tech savy” enough that I would never fall for phishing.

5 Apr 2018Dotby Justin Gordon
Eliminating Illegal State in ReScript

Next thing I’d like to share is how ReScript helps in making illegal states unrepresentable in our apps.

23 Mar 2018Dotby Alex Fedoseev
ReScript Modules

Recently, I’ve been investing quite a lot in learning ReScript and TBH I’m pretty much dead as JS developer right now because I’ve seen the better world. Much better one.

13 Mar 2018Dotby Alex Fedoseev
Introducing React on Rails v9 with Webpacker Support

React on Rails v9 completes the update to using Webpacker for publishing assets to Rails views, rather than the legacy “asset pipeline.”

11 Sep 2017Dotby Justin Gordon
Front-End Sadness to Happiness: The React on Rails Story at GORUCO 2017

Here is a short recap of my odyssey around 4 major US cities giving talks on React on Rails in June of 2017. This talk focused on the “Why?” of React on Rails.

15 Jul 2017Dotby Justin Gordon
Optimized, Parallelized CircleCI Configuration for ReactOnRails

ReactOnRails + Jest + CodeCov + CircleCi Parallelization

21 Jun 2017Dotby Rob
Influencing Webpacker Rather than Forking to Support Webpacker in React on Rails

This article provides some background discussion of my work to influence Webpacker and how that lead to the creation of Webpacker Lite, as described in Webpacker Lite: Why Fork Webpacker?

1 Jun 2017Dotby Justin Gordon
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.

1 Jun 2017Dotby Justin Gordon
React SVGs

What follows is a quick rundown of how we’re currently handling SVGs at ShakaCode.

19 May 2017Dotby Rob
Redux Tree

There are two ways of thinking of about UI: in terms of state or in terms of interactions.

18 Mar 2017Dotby Alex Fedoseev
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.

13 Mar 2017Dotby Alex Fedoseev
A Year of development with Redux. Part III

In the last post of this series, I’ll demonstrate writing UI code as a set of interactions and share how this facilitates integrating Redux and Flow.

28 Feb 2017Dotby Alex Fedoseev
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.

30 Jan 2017Dotby Rob
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.

20 Jan 2017Dotby Alex Fedoseev
A Year of development with Redux. Part I

I’ve spent the past year working on the primary product of ShakaCode and I’d like to share three biggest insights that I gained during this journey.

10 Jan 2017Dotby Alex Fedoseev
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.

5 Jan 2017Dotby Alex Fedoseev
Yak Shaving Failing Integration Tests with React and Rails

This Thanksgiving weekend, I decided to a major refresh of the react-webpack-rails-tutorial, including:

26 Nov 2016Dotby Justin Gordon
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.

21 Nov 2016Dotby Justin Gordon
My React on Rails Talk at the LA Ruby/Rails Meetup, November 10, 2016

I want to express my thanks to the organizers, Claudio and Anna, of the LA Ruby/Ruby on Rails Meetup, along with Stack Commerce, for hosting my talk on React on Rails. You can find the original meetup posting here.

18 Nov 2016Dotby Justin Gordon
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.

7 Nov 2016Dotby Justin Gordon
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.

24 Oct 2016Dotby Justin Gordon
We’re super inclusive at ShakaCode

I send this out to everybody that’s interested in our team. And the ones that excel at this become full time team members.

18 Jul 2016Dotby Justin Gordon
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.

27 Jun 2016Dotby Justin Gordon
The React on Rails Doctrine

This document is an extension and complement to "The Rails Doctrine."

24 Jan 2016Dotby Justin Gordon
Who Is ShakaCode?

by JUSTIN GORDON in SEP 17, 2015

25 Oct 2015Dotby Justin Gordon
Universal React with Rails: Part IV

Building Universal JavaScript app using React, Redux and Ruby on Rails. Part IV: Making Universal Flux app

4 Aug 2015Dotby Alex Fedoseev
Universal React with Rails: Part III

Building Universal JavaScript app using React, Redux and Ruby on Rails. Part III: Building Universal app

1 Aug 2015Dotby Alex Fedoseev
Universal React with Rails: Part II

Building Universal JavaScript app using React, Redux and Ruby on Rails. Part II: Building JSON API

1 May 2015Dotby Alex Fedoseev
Universal React with Rails: Part I

Building Universal JavaScript app using React, Redux and Ruby on Rails. Part I: Planning the application

19 Apr 2015Dotby Alex Fedoseev
Enums and Queries in Rails 4.1, and Understanding Ruby

Understanding Ruby and how enums work in Rails 4.1.

22 Oct 2014Dotby Justin Gordon
Fast Rich Client Rails Development with Webpack and the ES6 Transpiler

This article shows you how to integrate webpack into the Rails ecosystem, allowing the use of npm modules and tools, including the ES6 and JSX transpilers.

3 Oct 2014Dotby Justin Gordon
Storing or Excluding Node Modules in Rails Git Repositories

Should you store your node_modules in your git repository or configure git to ignore the node_modules directory.

28 Sep 2014Dotby Justin Gordon
Updating My Blog to Octopress with Jekyll 2 and Discourse for Comments

How to update Octopress to Jekyll 2 and add Discourse for comments on a static site.

27 Sep 2014Dotby Justin Gordon
Pry, Ruby, Array#zip, CSV, and the Hash[] constructor

Example showing how pry demonstrates the usefulness of Array#zip with CSV

15 Sep 2014Dotby Justin Gordon
Rails Gem Upgrading Tips and Strategies

Best-practices for upgrading Ruby on Rails gems to newer versions while saving time and avoiding headaches.

13 Sep 2014Dotby Justin Gordon
Specific Issues Upgrading Gems to Rails 4.1, RSpec 3, and Twitter Bootstrap 3.2

This article describes some tougher issues I faced when upgrading to Rails 4.1 and RSpec 3.

12 Sep 2014Dotby Justin Gordon
Fast Tests: Comparing Zeus with Spring on Rails 4.1 and RSpec 3

A comparison of using Zeus vs Spring with Rails 4.1 along with the parallel-tests gem.

9 Sep 2014Dotby Justin Gordon
Pry, Ruby, and Fun with the Hash Constructor

Example showing how pry can help one better understand the useful Ruby Hash[] constructor.

17 Aug 2014Dotby Justin Gordon
2014 Golden Gate Ruby Conference: Top 10 Reasons to Attend

My top reasons to attend the 2014 Golden Gate Ruby Conference (GoGaRuCo).

13 Aug 2014Dotby Justin Gordon
RailsConf 2014

RailsConf Notes

23 Apr 2014Dotby Justin Gordon
Rocking with tmux, tmuxinator, Guard, Zeus, and iTerm2 for Rails Development

tmux, tmuxinator, and iTerm2 tips for productivity with Rails Development

11 Mar 2014Dotby Justin Gordon
Capybara PhantomJs Poltergeist Rspec Tips

9 Mar 2014Dotby Justin Gordon
Org-Mode Octopress Setup V2

This is a refresh of my original post from April, 2013 to adjust for Emacs 24.3 and org-mode 8.2.x

5 Mar 2014Dotby Justin Gordon
Simple Form and Disabling Buttons on Submit by Default

Fixing RecordNotUnique errors by turning on disable_with by default for all submit buttons using simple_form.

23 Feb 2014Dotby Justin Gordon
Using RubyMine/IntelliJ Regexp Search/Replace

Tutorial and example of using Jetbrain's RubyMine and IntelliJ's interactive regexp search and replace.

25 Jan 2014Dotby Justin Gordon
Migrating from Bash to Zsh

How and why on migration from bash to zsh on Mac OS.

4 Jan 2014Dotby Justin Gordon
GoGaRuCo 2013: Community > Code

A Newbie's 2013 GoGaRuCo Experience

22 Sep 2013Dotby Justin Gordon
Upgrading Octopress

Instructions on Upgrading Octopress

15 Sep 2013Dotby Justin Gordon
Migrating from Capybara-Webkit to Poltergeist-PhantomJs

Tips for efficiently migrating a test rspec test suite from capybara-webkit to poltergeist-phantomjs

6 Aug 2013Dotby Justin Gordon
Update to EmberJs Hello World

Tips to learn emberjs and advice on getting started with Tom Dale's Tutorial

29 Jun 2013Dotby Justin Gordon
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.

11 Jun 2013Dotby Justin Gordon
Alfred Tips

5 Jun 2013Dotby Justin Gordon
CoffeeScript Chrome Extensions

Useful tools for Chrome with CoffeeScript

27 May 2013Dotby Justin Gordon
Ember.js Hello World

26 May 2013Dotby Justin Gordon
Getting Started with Discourse

A quick guide to installing discourse to see a production quality rails project on github.

25 May 2013Dotby Justin Gordon
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?

11 May 2013Dotby Justin Gordon
Renaming, Redating Blog Posts

Here's a few tips regarding renaming and redating posts and pages in Octopress.

10 May 2013Dotby Justin Gordon
Strategies for Rails Logging and Error Handling

Clean logging and error handling is a critical aspect of a RoR app. What’s a good strategy? Why does this matter?

8 May 2013Dotby Justin Gordon
Telecommuting From Maui

6 May 2013Dotby Justin Gordon
Octopress Setup with Github, Org Mode, and LiveReload

Installing Octopress with github hosting, Org Mode markup, and Live-Reload

27 Apr 2013Dotby Justin Gordon
Are you looking for a software development partner who can
develop modern, high-performance web apps and sites?
See what we've doneArrow right