Jump to ratings and reviews
Rate this book

Rails Angular Postgres Bootstrap

Rate this book
Rails is a great tool for building web applications, but it’s not the best at everything. Embrace the features built into your database. Learn how to use front-end frameworks. Seize the power of the application stack through AngularJS, Twitter Bootstrap, and PostgreSQL. When used together, these powerful and easy-to-use tools will open you to a new world of possibilities. In each chapter of this book, you’ll learn how these technologies can work together inside a Rails app to deliver well-performing applications that offer great user experiences.

Create a usable and attractive login form using Twitter Bootstrap’s styles, while ensuring the database table backing it is secure, using Postgres’ check constraints. You’ll see how creating an advanced Postgres index for a case-insensitive search can speed up your back-end—allowing you to create a highly dynamic user experience using AngularJS. You’ll create reusable components that bring Twitter Bootstrap and Angular together, effectively use materialized views for caching within Postgres, and store unstructured data in an indexed JSON field. You’ll get your front-end working with the Asset Pipeline, use Postgres’ features from migrations, and write unit tests for all of it. All of this within Rails.

You’ll gain the confidence to work at every level of the application stack, bringing the right solution to every problem.

240 pages, Hardcover

First published November 10, 2015

9 people are currently reading
41 people want to read

About the author

David Bryant Copeland

7 books15 followers
David Copeland is a programmer and author. He wrote "The Senior Software Engineer" and "Build Awesome Command-Line Applications in Ruby", and has over 16 years of professional development experience. He's managed high-performance, high-traffic systems at LivingSocial, helped build the engineering team at Opower, and worked consulting gigs both large and small. Currently, he's a lead engineer at fashion start-up Stitch Fix, building a platform that will change the retail shopping experience.

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
4 (10%)
4 stars
20 (54%)
3 stars
10 (27%)
2 stars
0 (0%)
1 star
3 (8%)
Displaying 1 - 5 of 5 reviews
Profile Image for Anton Antonov.
356 reviews52 followers
November 25, 2015
Let me say first that I read the B2.0 (2015-09-09) release. The book would definitely improve near its release date.

However here are the good and bad things I've found during my read.

I finished the book in nearly 3 days after work, which means that it was really interesting and kept me going. There's a perfect balance between information and code examples.
I never felt tired from reading too much or looking at too much code.

I hit some issues with the angular-rails-templates gem not working correctly with the default *sass-rails* version placed in the Gemfile after a *rails new project*. Can't blame author for that, it's pretty standard in Rails books.


After this the book was a joy ride.

What I appreciate the most:

was learning another way to combine Angular and Rails to create a modern web app. No more public folder Angular apps. I like the asset pipeline integration although I can't say for certain what are the pros and cons in performance. Didn't have the production to test it :)

and also learning about Postgres 'advanced' features. Never before have I used materialized views to cache and speed up search queries. I was pleasantly surprised that Postgres could hold its own for a while and doesn't have to be immediately complimented with a Search Server (ex. Solr, ElasticSearch). I probably won't use Arrays in the near future as it's not a standard yet. Although Postgres is the go to relation DB, using arrays instead of junction tables is not a standard yet.

Hstores and JSON, JSONB are pretty useful though. I liked the neat performance tips when using the before mentioned new data types. Learning about General Inverted Index vs B-tree index performance gains when using data types is mandatory to know and remember.


And after all why do I give 4/5? There are some pages in the book that felt needlessly shoved just for size and fascination. As for example "CreditCardController" and the Bootstrap Progress bar pages are questionable. First of all the second controller wasn't really a good example of something that you would actually use as a 2nd controller. Also there were way better uses for a progress bar as to the whole page loading the API resource instead of just one panel mock data resource.

Building the API: render json? Why not JBuilder for example. If we would want to learn what's really used for Rails APIs, JBuilder is one of the popular choices. Here you would have more content without adding questionable content. 5-6 pages of JBuilder API building, how to add pagination, properly serve CSRF token, wrap params and what not. Also bonus points for unvealing JBuilder caveats.

While writing the above feedback ,of course I've wrote pair to pair with the author's code and modified according to my beliefs. You could see the changes here https://github.com/syndbg/shine .


So my final verdict is: If you want to learn more about Postgres performance optimizations, combining Rails and Angular - this is the right book for you.

Good job, David Bryant for this great book. I hope by October, this would be an even better book :)
Profile Image for Russell Schmidt.
7 reviews4 followers
February 13, 2017
This book by turns focuses on each of the four technologies of the title. As such, the chapters vary quite a bit based on your experience. Coming from a Rails background with a lot of time playing with Bootstrap and other front-end frameworks, I found those chapters fun and educational. I am new to Angular (and this is strictly the Jan 2016 book version that is Angular 1.4 - Angular 2 and the forthcoming 3 are different animals) and found that tougher going. I learned a lot, got the examples working without too much fuss, and much of my frustrations were with Angular failing silently and my own unfamiliarity with how to troubleshoot. The Postgres section was great. I knew little about the specifics of PG versus other SQL databases, and this book opened my eyes to the possibilities.

Why not 5 stars? Because the front-end testing chapters are brutal. It was far too much information crammed in, and in turn, it took me days to work through the examples whereas the other parts of the book took a couple of hours at a measured pace in the evenings. I'm all for testing but there are a number of dependencies introduced, though my hat is off to the author for managing to make this at all digestible.
Profile Image for BCS.
218 reviews33 followers
November 14, 2017
For me, this was a voyage of discovery, in part because I have little or no background in full-stack web development. Therefore, I read this as an introduction to the core technologies, especially Bootstrap and AngularJS.

One thing that was immediately apparent was the vast number of dependencies, plugins and tools that one needs to download and install, including Yarn, Webpack, Foreman etc.

The book assumes, and expects, that the developer will have the access, ability and experience to install a whole slew of software and, perhaps, helps argue the case for containerisation (given that a number of the core components are available via Docker etc.).

To be honest, this isn’t completely alien to me, given that I’ve used IBM tools such as Rational Application Developer and IBM Integration Designer, which have their own dependencies - Java, Eclipse, WebSphere Application Server, DB2 etc.

The book immediately dives into the specific detail of these dependencies and tools, and then uses a worked example, known as Shine, throughout the successive chapters to illustrate how Bootstrap and Postgres work, before diving into responsive UI development using AngularJS.

Throughout the book, the author does focus upon important non-functional requirements such as security and performance, and also focuses upon testing, caching and interaction styles (especially asynchronous).

For me, I found this book to be amazingly detailed guide that would provide a good roadmap for a developer keen to develop their skills and experience with Rails, Angular, Postgres and Bootstrap.

Whilst this isn’t something that I specifically need in my job role, it’s very useful context.

So, to summarize, this book is likely to be of use, and could provide a useful background to anyone beginning their career in full-stack web / UI database development.

In terms of rating, I’d give this book 10/10.

Review by Dave Hay MBCS CITP
Originally posted: http://www.bcs.org/content/conWebDoc/...
Profile Image for Sam Ferree.
7 reviews1 follower
February 26, 2016
Very impressed with this book.

David Bryant Copeland bounces seamlessly between explaining the features of the technology he's using to solve a problem, and actually implementing them, all while guiding you through building a simple, but robust application.

The book doesn't delve do deeply into each technology, and that's really not it's purpose, and a text that did would need to be massive.

It would be nice if the author had handpicked some companion texts for each of the 4 technologies for further study. Thanks to this book, I'm now looking to purchase a text on AngularJS, and I have to imagine It would have been a good idea to mention one at the end.
Profile Image for Gamaliel Vazquez.
7 reviews29 followers
May 23, 2019
Good, to understand a little how Front end and back end works. Bad, to application and setting up the enviroment, the author using a lot of gems (tools or libraries) that could convert in a headache for the begginers.
Displaying 1 - 5 of 5 reviews

Can't find what you're looking for?

Get help and learn more about the design.