Having trouble reading this email? View it in your browser.
New This Week

Rails, Angular, Postgres, and Bootstrap »

As a Rails developer, you care about user experience and performance, but you also want simple and maintainable code. Achieve all that by embracing the full stack of web development, from styling with Bootstrap, building an interactive user interface with AngularJS, to storing data quickly and reliably in PostgreSQL.

Recently Released:

 

Coming Up Next:

  • Seven Mobile Apps in Seven Weeks: Native Apps, Multiple Platforms in beta
  • Designed for Use, Second Edition: Create Usable Interfaces for Applications and the Web in beta
  • Web Development with Clojure, Second Edition: Build Bulletproof Web Apps with Less Code in beta
Rails Angular Postgres & Bootstrap
January 20, 2016

Take a holistic view of full-stack development to create usable, high-performing applications, and learn to use all of these technologies effectively in a Ruby on Rails environment with Rails, Angular, Postgres, and Bootstrap, now in print and shipping next week from pragprog.com/book/dcbang.

Keep on scrolling for Dave Copeland's Full-Stack Web Development Tips and Ten Features of Your Stack You're Not Using...

Rails, Angular, Postgres, and Bootstrap: Powerful, Effective, and Efficient Full-Stack Web Development

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, 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 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 complex interfaces using Bootstrap's grid, together with Angular's form support, backed by a materialized view for caching within Postgres. 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.

Full-Stack Web Development Tips

by Dave Copeland

Embrace Your Database Most SQL databases are packed with handy features, but Postgres has more than most.  Accurately model your domain  with sophisticated data types like JSON and Arrays, speed up your queries with complex indexes and materialized views, and keep your data consistent with powerful check constraints.

Use a CSS Framework Hand-written CSS can get complex and unmanageable fast.  A CSS framework can allow you to style your UI more quickly and efficiently by using pre-build classes.  An all-inclusive framework like Bootstrap goes even farther by giving you the ability to create detailed components that look and feel great—quickly, easily, and with no CSS.

Invest in a JavaScript Framework When your user interface calls for more dynamic, interactive elements, you don't want to start from scratch.  Even with JQuery, your front-end code can be messy and untestable.  Using a framework like Angular, you can confidently test your code, while easily providing complex features and interactions without making a mess.

Solve the Problem in the Right Place With the ability to be effective at all levels of the stack, you can see the entire problem at once, and solve it where it needs it.  It could be adding an index to your query takes your view from sluggish to snappy.  Or, you may need to use AJAX to grab results one at a time.  When you're comfortable up and down the stack, you'll solve it the right way.

Ten Features of Your Stack You're Not Using

by Dave Copeland

  • Grid-based design with Bootstrap. When you think of a UI as a grid, creating it becomes a lot simpler.

  • Promises instead of Callbacks in Angular.  Write your front-end code imperatively and clearly, without callback soup.

  • MVC on the client using Angular.  Sometimes UI code is complex, and you want it distinct from your templates.  Keep your front-end code organized.

  • Test your front-end code with Teaspoon. By separating your front-end logic from your views, you can unit test it, and be confident it will work.

  • Materialized Views in Postgres. Automatically cache de-normalized data right in your database.  Get further without standing up new caching infrastructure.

  • Indexes on derived values in Postgres. Create a database index on normalized or modified values.  Make your indexes match your queries without any hacks.

  • Store, query, and index JSON with Postgres.  Don't sacrifice performance if you have to deal with loosely defined data.

  • Native arrays in Postgres.  Sometimes you just need a list of strings without making a lot of new tables.

  • Headless integration tests with PhantomJS.  Run full-blown integration tests quickly from the command line, without launching an actual browser.

  • Bring it all together with Rails. Despite being an opinionated framework, Rails has all the hooks you need to enhance your stack.

Now in print and shipping next week from pragprog.com/book/dcbang.

Did You Know?

Please note our ebooks do not contain any Digital Restrictions Management, and have always been DRM-free. For us, "DRM Free" means "freedom": you should own the books you've paid for. On whatever device is handy—your laptop, iThingy, Blueberry, you name it. We think ideas should outlast any device you put them on.

And you can always come back and re-download your books when needed, using your account on pragprog.com. We're here to make your life easier.

Don't Get Left Out

Are your friends jealous that you get these spiffy email newsletters and they don't? Clue them in that all they need to do is create an account on pragprog.com (email address and password is all it takes) and select the checkbox to receive newsletters.

Are you following us on Twitter and/or Facebook? Here's where you can find us and keep up with the latest news and commentary, and occasional discounts:

Tell your friends! Tweet this

Follow us on Twitter: @pragprog, @pragpub, Andy @PragmaticAndy and Dave @pragdave.

Thanks for your continued support,
Dave & Andy
The Pragmatic Programmers

Books • eBooks • PragPub Magazine • Audiobooks and Screencasts
PragProg.com

Manage your subscription using your account, or permanently unsubscribe here.
Sent by the Pragmatic Programmers, LLC. • 2831 El Dorado Pkwy, #103-381 • Frisco TX 75033