As a Ruby/Rails developer, you have so many books to learn from. The choice is sometimes too big which can lead to choice paralysis.

In this blogpost I’d like to focus on the different aspects of your developer life. There are so many skills to improve. The Rails skills are the obvious ones. But there’s much more than that. Working in a team, safe refactoring, well-structured frontend applications, communicating with other people, even blogging.

I’d like to explain how we’re helping with improving those skills with our Arkency books.

Rails applications

Big chances are that you’re working on Rails applications. Some of them are probably the ones, which are not so pretty. You’d like to improve them (Scout Rule anyone?) but it’s not clear how to do it. Also, it’s a risk - what if you break anything? Another typical problem is the tests taking ages to run (and often fail for random reasons).

This is exactly why we came up with the book called: “Fearless Refactoring: Rails Controllers”.

Thanks to this book, you’ll be able to improve your Rails codebase with more confidence. You will become fluent with new abstractions, like service objects, repositories, adapters. Your tests will run faster, saving you and your team a lot of time (and money!).

Thanks to this book, you will know where all kinds of Rails code belong to. You will get more conventions to use, even in bigger Rails apps.

The book was released as 1.0 in December 2014. The techniques which are included are not related to any specific Rails version - they can be applied to all Rails apps. They will work with Rails 2, Rails 3, Rails 4 and Rails 5 versions just fine.

If you ever heart about Domain Driven Design (DDD), then this book is a great introduction to DDD in the context of Rails applications. It presents almost all of the DDD building blocks. It prepares you to think in more domain terms.

Buy Fearless Refactoring: Rails Controllers

JavaScript frontends for Rails apps

As Rails developers, we were happy writing just Ruby code, for many years. Nowadays, just Ruby is not enough. We need to build rich user interfaces, which are possible only in JavaScript.

A big part of the Ruby community went with CoffeeScript, while some stayed with JavaScript.

The community was also split between many different frameworks. Some of us went with Angular, some went with jQuery, some went with Ember. React.js is the new approach to building JavaScript components. Backed by Facebook, it’s trending now, for good reasons.

After many (sometimes unsuccessful) journeys with other frameworks, we felt in love with React.js. As Arkency, we were probably one of the first companies to adopt React.js fully (thanks Marcin!). Very quickly, all the Arkency developers noticed the clean structure which React provides and it was adopted in almost all of our projects.

We learnt a lot about how to combine React.js with a typical Rails application. As a result, we shared the experiences in the “Rails meets React.js” book.

The book will teach you:

  • How to install and configure React.js in your Rails project.
  • Working with dynamic React based forms.
  • How to transform your view to React-managed components.
  • What you can use React.js for in your projects and how.
  • Detailed knowledge about how to use it and best practices to work with React.js, with examples.
  • How to test React components.
  • You will also get Ruby and CoffeeScript code for the examples.
  • And it begins with a tutorial so that you start with practical skills.

Animations with React.js is such a great topic that we decided to record and include 2 videos on this topic.

Buy Rails meets React.js

React.js by Example

We love working with React.js so much, that we also published another book on this topic - “React.js by Example”.

This book doesn’t focus on the Rails integration. We wanted to share with you how to setup a separated (from Rails) React.js-based frontend.

This book is directed to people who are total React.js newbies. There are 12 typical examples implemented in React.js. Each of the examples is another chapter. Each example contains a narration on how one of us (from Arkency) approaches the development of a React.js component.

What’s more - you receive all the repositories for this book! You can browse the code, you can run the examples, you can tweak them.

After reading this book, you will be fully ready to approach a typical React.js component.

The examples are written in EcmaScript2015 and use webpack.

Buy React.js by Example

Which of our React.js books to choose?

Those books are very different. They teach you React.js in different ways. While the “Rails meets React.js” book is more Rails focused, it focuses on developing one component from a small one to a very complex widget.

The “React.js by Example” is focused on the starting point. It shows 12 examples, which are typical things you will start with.

Many of our readers bought both of the books and are happy with that.

If you need to choose just one - if you want to use React.js within an existing Rails ecosystem, then go for “Rails meets React.js”. If you are allowed to develop the frontend separately to Rails, then choose “React.js by Example”.

Working in a team, being remote/async, communicating with the customer

Many of us want to be happy in their Rails projects. We usually want less meetings, less bureaucracy, less stress. We want more freedom and we want to be working on features that are important.

Many of us want to work asynchronously - we know the times of the day when we are most effective. Many of us want to work remotely - not to waste time in commuting, have the freedom of traveling and have more time to spend with our families.

Many of us are scared to talk directly to the customers.

That’s why we wrote the “Developers Oriented Project Management” book. We want to share what we learnt and how we’re able to work remotely and asynchronously.

This book explains all the above topics. We teach what are the requirements for the team to work remotely and asynchronously. We teach how to communicate with the customers in ways which are win-win. We teach how to deliver value to the project even in situation when there’s not enough time to finish everything.

We also explain the tools, which are helpful in async collaboration.

Buy Developers Oriented Project Management

Would you like to start blogging more about programming, Ruby, Rails?

If you follow our Arkency blog, you may have noticed that we’re quite active in blogging. Several people from our team share knowledge using this medium.

It wasn’t always like that. Before 2012 we didn’t even have a company blog and almost no people blogged frequently.

How did we change that? How can you start blogging?

Over time, I developed a blogging therapy. I used it internally to encourage people to blog more.

I have identified what are the biggest blocking points for developers to stop them from blogging - no time, perfectionism, the impostor syndrome, not having anything interesting to write about.

I took those blocking points and addressed them in a way that helped many developers unblock themselves and share more of their knowledge.

That’s what the “Blogging for busy programmers” is about.

Thanks to blogging you’ll learn more (learning by teaching is the best way!), you will build your (or your company) brand.

What we found out was that blogging is a great tool for recruitment, for attracting new clients.

The book is still in the beta phase (35 pages), but it already addresses all the above blocking points. Buying it now gives you all future updates for free.

Buy Blogging for busy programmers

Refunds

We strongly believe in the value of all our books. We have over 1200 unique, happy customers of our books.

We have a 100% refund policy - if you feel that the book didn’t deliver you the value you expected, send us an email to [email protected] and we issue a refund without asking any question.

The future offer

If you’re interested in learning something specific from us - let us know! We plan to write more and such feedback will help us decide which topics are most interesting to you.