Migrating from AngularJS to React

by

angular-react

Most organizations with a web application will inevitably need to make a decision regarding their current front-end framework.  I’ve personally been involved with two projects that have come to this crossroads. One of the two applications was written in AngularJS, the other in Backbone.js. In both cases, the organization decided that the best course of action was a full rewrite using React and Redux.  In the case of the AngularJS app, a gradual migration approach was considered and I was lucky enough to have the opportunity to investigate this possibility.

ForwardJS SF 2018 Recap

by

ForwardJS was the first developer conference that I ever attended, and it was a pleasure to be able to attend again this year. Forward has been releasing batches of the recorded talks on YouTube, so I thought that I would share a few of my favorite talks from this year’s conference, along with the video and slides when available.

How Much Does It Cost to Build a Mobile App?

by

A mobile app is a great way to bring new ideas to life, add value for your customers, or boost awareness of your business—but only if you can build a quality mobile experience without breaking the bank. And nailing down the cost of an app in advance isn’t exactly easy. App development costs can range from trivial to extreme, depending on a host of factors such as what your app does, how users will interact with it, and how you plan to staff the project.

Computed Properties vs Functions – Why Does It Matter?

by

Cookies

What’s your favorite chocolate chip cookie recipe? I bet you could ask that question to 5 different people and get 5 totally different recipes… brown sugar vs white sugar, cake flour vs all purpose, dark chocolate vs milk chocolate. All of these recipes result in a chocolate chip cookie but the process by which we get there is a matter of personal preference.  If you were to ask multiple developers to solve a problem, it’s doubtful that any two developers write identical code.  It’s not that any one solution is necessarily better than the others… the resulting code is likely just a matter of personal preference.

Look Ma, No Hands!

by

While we may not be seeing a DeLorean turned time machine anytime soon, a vehicle with capabilities similar to those of KITT from Knight Rider isn’t so far fetched.

Grio and Angular 2: Are They Ready for Each Other?

by

At Grio, we love Angular.  By my estimation we currently use it for at least half of our front-end web application code.  And I in particular have affection for it, so I greeted the recent release of Angular2 with some interest and trepidation.

The release was just an event, though. The framework had already been around long enough for me to fret about it for some time.

Design & Development in Tandem

by

I had the privilege of attending this year’s San Francisco Smashing Conference in early April where I listened to presentations from founders, designers, and front-end developers.

Smashing Magazine is a fantastic online resource for professional designers and developers. They also publish their own books and e-books, as well as host conferences in the U.S. and Europe.

Using Ansible for provisioning

by

Due to the recent increase of personnel at Grio, it emerged the need of having an automated way of setting up new employers’ machines.

Starting with a brand new machine is always a pain for a developer, and setting it takes at least a couple of days if not the whole first week, resulting in big waste of valuable time. Besides, when a developer starts on a new technology it is not always clear which tools are suggested and which ones the rest of the team are using. Therefore, I have been asked to work as a side project on a way to solve such issues.

Release Practices at Grio

by

In a previous blog post, I covered the “textbook” definition of continuous integration, along with a handful of tools and practices that fulfill or help to fulfill said definition. These tools and practices include breaking up your app into components (e.g. front-end and back-end, or, for much larger projects, using microservices), utilizing “watch” utilities locally to iteratively run tests, and choosing test-oriented frameworks (e.g. Rails, Django, Grails, etc.). However, I didn’t talk much about any specific continuous integration setup, nor some of the third-party services that go together to make an efficient release process. I also didn’t talk much about how continuous integration fits into the larger cycle of deployment and release management. I aim to cover some of those topics here, and fill in the larger picture of how CI helps to ensure code quality and stability in a software project.

Bundler Bulkheads for Rails on Docker

by

As part of my exploration of a minimum set of devops tools, I’ve been learning how to stack containers full of Rails apps onto the Docker. There are plenty of examples of how to get started with Rails and Postgres on Docker, even one from the whale’s mouth, as it were. Working from this example, it was pretty clear to me that one of Docker’s major strengths is that it makes it really, really easy to get something running with a minimum of fuss; it took all of about a half day to learn enough Docker to hoist anchor, and even tweak a few things to my liking. One thing kept nagging me about the Docker example, though, and that was a warning from bundler when running docker-compose.