Goodreads helps you keep track of books you want to read.
Start by marking “Seven Languages in Seven Weeks” as Want to Read:
Seven Languages in Seven Weeks
Enlarge cover
Rate this book
Clear rating
Open Preview

Seven Languages in Seven Weeks

3.98  ·  Rating Details ·  1,130 Ratings  ·  60 Reviews
You should learn a programming language every year, as recommended by The Pragmatic Programmer. But if one per year is good, how about Seven Languages in Seven Weeks? In this book you'll get a hands-on tour of Clojure, Haskell, Io, Prolog, Scala, Erlang, and Ruby. Whether or not your favorite language is on that list, you'll broaden your perspective of programming by exami ...more
Paperback, 328 pages
Published November 17th 2010 by Pragmatic Bookshelf
More Details... edit details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about Seven Languages in Seven Weeks, please sign up.

Be the first to ask a question about Seven Languages in Seven Weeks

Seven Concurrency Models in Seven Weeks by Paul   ButcherSeven More Languages in Seven Weeks by Bruce A. TateSeven Languages in Seven Weeks by Bruce A. TateSeven Mobile Apps in Seven Weeks by Tony HillersonSeven Databases in Seven Weeks by Eric  Redmond
Seven in Seven
2nd out of 6 books — 4 voters
The Art of Startup Fundraising by Alejandro CremadesUnleash the POWER of Wordpress by Joe Praveen SequeiraZero to One by Peter ThielSteve Jobs by J.T. OwensStructure and Interpretation of Computer Programs by Harold Abelson
Hello, Startup Reading List
70th out of 76 books — 39 voters

More lists with this book...

Community Reviews

(showing 1-30)
filter  |  sort: default (?)  |  Rating Details
Jan 14, 2012 Julian rated it liked it
I did not like this book one bit. There are a number of reasons for this, so let me take them in turn.

First the tone is resolutely jokey, with an overall conceit that each of the seven languages is a character from a movie. Now this may help some people, but to my mind words spent discussing Ferris Bueller are words that could have been devoted to discussing the language in question. As far as I'm concerned, the shorter a technical book is, the better, and I'd prefer it if it didn't try to tell
Sep 28, 2012 JDK1962 rated it it was ok
While I was glad to see the material on Clojure--I was a LISP person back in the 1980s--I have to say that the rest of the material left me pretty cold. Like the author, I use a lot of different computer languages (C#, Perl, and R get a lot of use), but rarely have the choice of which I's dictated either by company policy, or by which language that I already know that best addresses the problem I'm dealing with. Maybe it's just me, but none of the languages I saw in this book made me th ...more
Mar 30, 2012 Ronald rated it really liked it
Shelves: technical
I've been slinging Java code since 1996 and have become very comfortable with its object-oriented paradigm and syntax. This is the 21st century so surely there must be other programming languages out there that are worth exploring? This book helped me to understand the various paradigms that are out there. This book isn't a deep dive but gives you a very good feel for what it is like to craft a solution in each language. Missing are how exceptional conditions are handled or how a large solution ...more
Yuriy Chulovskyy
Aug 27, 2014 Yuriy Chulovskyy rated it really liked it
Wanna to experiment? This book is for you.
I wonder why Prolog is less popular than Java?
Dec 16, 2014 Rob rated it liked it
Recommends it for: would-be polyglot programmers
I like the idea of this book more than the book itself. Granted, Tate took on a daunting task: how do you introduce seven divergent languages with seven divergent styles and seven divergent intents in the space of one book? The mission is a good one at least: introduce apprentice or journeyman programmers to a diverse array of programming languages and styles to help thing break out of their comfortable little already-known toolkit.

The approach is at least a half-way decent one: introduce a lang
Douglas Hackney
Jul 26, 2012 Douglas Hackney rated it really liked it
Bruce Tate does the nearly impossible in providing a fast paced but accomplish-able guide through seven programming languages.

He provides a good balance between the why and the how, while always focusing on pragmatic, delivered results. He spares no sacred cows in illuminating the weaknesses of each language, but also spares nothing in featuring their strengths.

In the end, you'll be left knowing, just as you always knew, that no one tool is the best at all things. But, you'll also know which o
Daniel R.
Jun 01, 2011 Daniel R. rated it liked it
This book offers an exploration of various programming paradigms (object oriented, prototype, constraint-logic, and functional), concurrency models (actors, futures, and transactional memory), and programming constructs (list compression, monads, and matching). None of the topics are covered in great detail but for those curious what Ruby, Io, Prolog, Scala, Erlang, Clojure, and Haskell are all about, this book does a reasonable job of introducing and demonstrating each language. The writing is ...more
Daniel Temme
Aug 20, 2011 Daniel Temme rated it really liked it
It's a lot of work to go through the book. And you really need to work through at least some of the examples to get the most of the book. But it's a really well-structured book, with the chapters building up on each other and introducing new concepts along. Probably best read in some sort of study group to keep one from slacking off.
Alex Ott
Sep 27, 2011 Alex Ott rated it really liked it
Good book that provides coverage of different programming languages, trying to explain their paradigms, and basic constructs... This book could be used as a base to find which language to study next
Dec 03, 2013 Luboš rated it really liked it
The author does not go so much deep, but after all you are full of ideas enough. So take it as a teaser for these languages.

Learning to program is like learning to swim. No amount of theory is a substitute for diving into the pool and flailing around in the water gasping for air. The first time you sink under the water, you panic, but when you bob to the surface and gulp in some air, you feel elated. You think to yourself, “ I can swim. ” At least that ’ s how I felt when I learned
Gage Peterson
Oct 02, 2016 Gage Peterson rated it it was amazing
Such a great introduction to new Programming topics. All programmers MUST read this.
Mar 12, 2015 Marshall rated it really liked it
Such a fun book! It covers seven exciting programming languages: Ruby, Io, Prolog, Scala, Erlang, Clojure, and Haskell. It was a great selection, as it touched on a few different paradigms, and they build on many of the same concepts. They're relevant enough to make the book useful, but they're new enough that most programmers will likely not have played with any of them before. Functional programming and concurrency are hot topics of late, which explains why this book emphasizes both so much.

Bart Bakker
Oct 13, 2013 Bart Bakker rated it really liked it
This review is taken from my blog article End of Journey. For a full set of articles about this fantastic book, see

This fantastic journey through 7 different languages started with Ruby, a language that adopts today's mainstream programming paradigm of object orientation, and with so much syntactic sugar that every programmer is able to understand what's going on.

Through the Io language that uses the prototype based programming s
Aug 10, 2015 Matt rated it liked it
Shelves: computers
I went through this book with five others from work. We met once a week over lunch to talk about the chapter we'd just covered.

It was beneficial for me to see what other programming languages have to offer, and to learn a bit more about some concepts I'd known only peripherally. What was most interesting was to recognize just how much the concepts from many of these languages have influenced the C# language in the last several years, and how many of these concepts are also in the pipeline for th
Chris Maguire
Apr 08, 2014 Chris Maguire rated it it was amazing
A fantastic book. I would urge anyone thinking of reading this book to DO THE EXAMPLES. The first time I went through the Ruby section I missed so much by not going through the examples.

On the fourth language I skipped the examples because I strongly dislike Scala; I'm already very familiar with Java, I don't like the syntax and Venkat gave Scala a bad rap with his poorly executed book.

I enjoy Bruce's writing, he really brings out the unique aspects of the language in a concise, frank, humurou
Simon Vindum
Mar 07, 2016 Simon Vindum rated it it was ok
Shelves: computer-science
I really like the idea of this book but the execution was superficial at best and horrible at worst. I found the best part of the book to be the interviews.

While reading this book I jumped back and forth between 2 and 3 stars. In the first chapter on Ruby the author overrides `method_missing` to obfuscate a method call away—breaking error reporting in the process. That is awful code but he calls it "beautiful". Then in the beginning of the next chapter on Io he writes "Io gets you about as close
Jan 05, 2015 Joshua rated it it was amazing
Instead of seven weeks, it took me about two years. I would read a chapter on one language and do the exercises, then get distracted by other things and not come back to it for several months. I finally forced myself to run through the final three languages during my Christmas vacation since I was sick and didn't want to leave the house.

Overall, this is an excellent book that will expose you to different ways of thinking as a programmer. I enjoyed all seven languages and I plan to dive deeper wi
Eric Hogue
Jan 18, 2016 Eric Hogue rated it it was amazing
This is an amazing book. It introduce seven different languages that covers many programming concepts.

In this book you will see object oriented programming, prototype languages, constraint logic programming and functional programming. You will also see language constructs such as monads, pattern matching and list comprehensions.

It was a real eye opener for me. Even though I already knew about some of theses concept, seeing them in action and playing with them was great. And there are the conce
Geoff Lanotte
Sep 11, 2015 Geoff Lanotte rated it really liked it  ·  review of another edition
Shelves: 2015-to-read
This was a fun book to work through. I felt like the author did a good job of relating each programming language. You not only got the nut and bolts, but you got the history and philosophy of the language for that week.

I felt that the real strength for the book were the exercises. They were usually just a bit beyond what was just covered which pushed me to work to answer them and when I did that, those concepts were more firmly cemented. It reminded me very much of Zed Shaw's Learn x the Hard W
Ravi Sinha
Jul 02, 2014 Ravi Sinha rated it it was amazing
Shelves: professional, coding
Bruce Tate does a great job of introducing enough of the languages and the features. For instance the explanation of Ruby mixins is pretty lucid. This is by no means a book that barely introduces the syntax of the languages, but rather one that touches on all the important concepts that the languages uniquely introduce. You do need to have enough programming experience to get something out of this book. At the same time, if you are an experienced programmer, sometimes you don't want a book that ...more
Blair Conrad
Feb 04, 2015 Blair Conrad rated it liked it
Shelves: library, nonfiction
Disclaimer: I read the book, without doing the homework.

It's okay. A decent very low-level introduction to a few programming languages. As I was someone who was wondering "what's this 'Clojure' about" and so on, it met my basic need. I appreciate getting a taste of all the languages without all the hype - Tate went to pains to balance the good and the bad points of each language.

Unfortunately, the book was poorly made. The editing was lax, from the misspelling of "Leia" (a small thing, but distr
May 10, 2016 Thomas rated it really liked it
Shelves: by-men, read-in-2012
An excellent survey course on a variety of programming languages and concepts. Don't expect to become more than conversant with the ideas in a particular language after reading about it here, though- three days a pop doesn't get you the ability to Get Stuff Done. Instead, you'll get the most out of this book if you treat it one or both of two ways:

1) A buffet of samples: try a bit of each language and see if any intrigue you enough to dive in further. I bought a copy of Clojure Programming after
James Scourtos
Nov 22, 2012 James Scourtos rated it it was ok
i was mainly interested in the declarative languages in the book. I kinda wished that the book only focused on pure languages such as Haskell, and another logical language that was other then Prolog. However that wasn't the main problem with the book. I wanted a book that got to the point of each language, and this book sort of does, but then it does what allot of other programming books do, gets too much into details about features that feel like distractions to me. It would be nice to see a si ...more
Jul 01, 2012 Gyuri rated it really liked it
Shelves: programming
The book is quite demanding if one wants to understand the discussed seven languages (which are pretty different by choice). The exercises were sometimes time-taking, which is natural as learning a new language takes pretty much time at the beginning, behalf of understanding the basic concepts of the languages, also the little tricks of their syntax needs to be mastered.

I was already experienced with ruby. This book pointed my attention to Clojure and Erlang for practical reasons and to Haskell
Jun 25, 2012 Kevin rated it really liked it
Shelves: computer
Really great read: I'm definitely interested in learning some more about Prolog and Haskell, but it was also interesting to see different methods of solving problems with computer languages.

I think there may have been some room for an additional "day" for each language, perhaps if only to look at some bigger examples of these languages in use in the wild. It would have also been interesting to do a quick section on other languages that are "similar" (for example, what is the relationship between
Steven Tomcavage
Jan 14, 2011 Steven Tomcavage rated it really liked it
So I skipped the chapters on IO and Ruby. I already read a book on Ruby and after working through Haskell, Clojure, Prolog, Erlang, and Scala, I was wiped out mentally. Very good introduction to these languages. I can ee myself continuing with Clojure and Scala. Haskell seems like far too much of a commitment to learn, though I would like to understand monads more. This book obviously didn't dive deep enough into any language, but that's where language specific books come into play. It's a good ...more
Jun 30, 2013 Jose rated it it was amazing
Shelves: programming
Ruby, Io, Prolog, Scala, Earlang, Clojure and Haskel,

This book was not so much about the languages, but more about the different paradigms in programming.
Ruby's syntax showed me how enjoyable writing code can be, Prolog blew my mind when it breezed trough a soduku puzzle by just giving it the rules of the game. The functional languages like Clojure and Haskell made me realize that I have a lot to learn, there's a whole different way of reasoning about computations. I am definitely going to look
Scott Koon
Aug 15, 2012 Scott Koon rated it liked it

I thought it was ok. I thought it would describe an approach for learning new languages. I didn't know the title was literal. Nice to see Prolog and Clojure in there, but Ruby and Haskell were obvious choices and there are NUMEROUS web sites and books for learning those languages. I think Smalltalk should have been included because it's so different, VM image based, True OO, built in editor, etc...
Dzmitry Kishylau
Apr 20, 2014 Dzmitry Kishylau rated it really liked it
You won't learn any language by reading this book, but at least you may get interested in some of them. The level of details is just about right - the author tried to show the most interesting ideas and design choices for each of the languages without going into things that can be easily googled, if necessary. Bonus points for interviews with language authors and non-nonsense exercises for each language.
Jyri-matti Lähteenmäki
Jul 09, 2016 Jyri-matti Lähteenmäki rated it really liked it
Shelves: dev
Easy text, a pleasure to read. Treats all languages with equal respect and provides a fair comparison. "Technical quality" is overall quite fine, even though the author most certainly did not understand Monads ;)

Recommended as a "quick read". Don't expect to gain any in-depth knowledge of the included languages. Personally would have liked a bit more opinionated comparison, to bring out elegant solutions from some languages against weaknesses from others.
« previous 1 3 4 5 6 7 8 9 next »
topics  posts  views  last activity   
I have a question, need help. 1 24 Dec 08, 2010 09:11PM  
  • Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement
  • Programming Clojure
  • Metaprogramming Ruby
  • Land of LISP: Learn to Program in LISP, One Game at a Time!
  • The Passionate Programmer
  • Programming Erlang
  • Programming Ruby: The Pragmatic Programmers' Guide
  • The Joy of Clojure
  • Working Effectively with Legacy Code
  • Growing Object-Oriented Software, Guided by Tests
  • Programming in Scala
  • Clojure Programming
  • Beautiful Code: Leading Programmers Explain How They Think
  • 97 Things Every Programmer Should Know: Collective Wisdom from the Experts
  • The Ruby Programming Language
  • Domain-Specific Languages
  • Learn You a Haskell for Great Good!
  • Practical Vim: Edit Text at the Speed of Thought

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »

Share This Book