Seven Web Frameworks in Seven Weeks: Adventures in Better Web Apps

Seven Web Frameworks in Seven Weeks: Adventures in Better Web Apps

by Jack Moffitt, Frederic Daoud


View All Available Formats & Editions
Members save with free shipping everyday! 
See details


Whether you need a new tool or just inspiration, Seven Web Frameworks in Seven Weeks explores modern options, giving you a taste of each with ideas that will help you create better apps. You'll see frameworks that leverage modern programming languages, employ unique architectures, live client-side instead of server-side, or embrace type systems. You'll see everything from familiar Ruby and JavaScript to the more exotic Erlang, Haskell, and Clojure.

The rapid evolution of web apps demands innovative solutions: this survey of frameworks and their unique perspectives will inspire you and get you thinking in new ways to meet the challenges you face daily.

This book covers seven web frameworks that are influencing modern web applications and changing web development: Sinatra, CanJS, AngularJS, Ring, Webmachine, Yesod, Immutant. Each of these web frameworks brings unique and powerful ideas to bear on building apps.

Embrace the simplicity of Sinatra, which sheds the trappings of large frameworks and gets back to basics with Ruby. Live in the client with CanJS, and create apps with JavaScript in the browser. Be declarative with AngularJS; say what you want, not how to do it, with a mixture of declarative HTML and JavaScript. Turn the web into data with Ring, and use Clojure to make data your puppet. Become a master of advanced HTTP with Webmachine, and focus the power of Erlang. Prove web theorems with Yesod; see how Haskell's advanced type system isn't just for academics. Develop in luxury with Immutant, an enlightened take on the enterprise framework.

Seven Web Frameworks will influence your work, no matter which framework you currently use.

Welcome to a wider web.

What You Need:

You'll need Windows, MacOS X or Linux, along with your favorite web browser. Each chapter will cover what you need to download and which language versions are required.

Product Details

ISBN-13: 9781937785635
Publisher: The Pragmatic Programmers, LLC
Publication date: 01/07/2014
Series: Pragmatic Programmers
Pages: 304
Product dimensions: 10.10(w) x 8.20(h) x 0.70(d)

About the Author

Jack Moffitt has spent a decade building things for the Web in a variety of languages and frameworks. He is a senior research engineer at Mozilla Research and works on the Servo project building an experimental new browser engine. He also helped create Ogg Vorbis and founded the Foundation, a non-profit which works on open, royalty free multimedia codecs.

Fred Daoud is a truly passionate web developer who loves trying out new frameworks. He is the author of two other web framework books: "Stripes ...and Java Web Development Is Fun Again" and "Getting Started With Apache Click". As a software engineer for Modernizing Medicine, he develops with Stripes, jQuery, YUI, and CanJS.

Table of Contents

Foreword vii

Acknowledgments ix

Preface xi

1 Sinatra 1

A Simple Domain-Specific Language 1

Day 1 Building a Bookmarking Application 2

Day 2 Creating Views 11

Day 3 Adding Features 22

Wrapping Up 32

2 CanJS 35

What Makes CanJS Unique? 35

Day 1 Building Objects and Synchronizing Changes 37

Day 2 Creating Controllers 48

Day 3 Working with Models 57

Wrapping Up 71

3 AngularJS 73

The Big Picture 73

Day 1 Using Dependency Injection 75

Day 2 Creating Controllers and Views 90

Day 3 Building Filters and Routes 101

Wrapping Up 112

4 Ring 115

Introducing Ring 115

Day 1 Basic Towers 116

Day 2 Patterns of Bricks 133

Day 3 Other Ways to Build 142

Wrapping Up 151

5 Webmachine 155

Introducing Webmachine 155

Day 1 HTTP Request as State Machine 157

Day 2 Building Apps 168

Day 3 Illuminating HTTP's Dark Corners 182

Wrapping Up 194

6 Yesod 197

Introducing Yesod 197

Day 1 Data You Can't Get Wrong 198

Day 2 Views, Forms, and Auth 208

Day 3 Rumbling Along 219

Wrapping Up 231

7 Immutant 233

Introducing Immutant 233

Day 1 Beyond the Web Basics 235

Day 2 Building Data Pipelines 245

Day 3 Polyglot Apps 256

Wrapping Up 267

8 Wrap-Up 269

Key Ideas 269

Happy Exploring 273

A1 Bibliography 275

Index 277

Customer Reviews