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

(Seven Languages)

3.96  ·  Rating details ·  1,624 ratings  ·  80 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

Community Reviews

Showing 1-30
Average rating 3.96  · 
Rating details
 ·  1,624 ratings  ·  80 reviews

More filters
Sort order
Start your review of Seven Languages in Seven Weeks
Mar 09, 2011 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
Yevgeniy Brikman
Feb 04, 2018 rated it really liked it
The good:

* A fantastic way to improve your programming abilities and understanding. Learning a number of different programming languages and paradigms in a short time period is a great way to compare them, see the trade-offs, and expand your thinking.

* Good choice of languages. You'll get to see several different varieties of object oriented programming, functional programming, logic programming, meta programming, concurrency constructs, type systems, and more.

* Great exercises at the end of ea
Sep 26, 2012 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
Yuriy Chulovskyy
Aug 27, 2014 rated it really liked it
Wanna to experiment? This book is for you.
I wonder why Prolog is less popular than Java?
Aug 10, 2011 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
Alex Ott
Sep 20, 2011 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
Julio Biason
Jul 16, 2019 rated it did not like it
Shelves: it, ibooks
A couple of random thoughts about this book:

First off, you have the idea that, for each language the author would spend one week (I'll not get into the fact that each "week" has 3 days only). This is a great idea: How much of the concepts of a programming language can you capture in just one week. Are the interfaces good? Are they simple and easy to understand? The fact is, the author did not spend one week on each language. In the Clojure chapter, he mentions that he got the idea after a month.
Dec 05, 2010 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 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 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
Jun 11, 2011 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. ...more
Oct 01, 2018 rated it did not like it
Tate decides to gender a bunch of programming languages, and his decision it to make 6 of the 7 languages male. One is allowed to be female, Ruby, because of how "beautiful" she is.

if you don't want to be repeatedly whacked in the face by extremely intellectually lazy sexism, skip this title. 🙃
Kursad Albayraktaroglu
Aug 10, 2020 rated it it was amazing
Shelves: programming
It took me a good while longer than seven weeks to read this book (and complete the programming exercises), but it was a great investment and I am glad I finished it. I have always wanted to try my hand at a couple of the seven languages covered in the book (Ruby, Io, Prolog, Scala, Erlang, Clojure and Haskell); and there was no way I could find the time to embark on such a journey without some guidance from a book or short course.

Even though I worked as a software engineer in the past, I come f
Jan 12, 2021 rated it did not like it
A really cool idea let down by poor execution. There's a lot to be said for exposing yourself to new programming paradigms, and I think the author did a solid job picking languages that really help you narrow into specific ideas (Io, Prolog, and Haskell being particularly single-minded in their focus) but I think a person would be better off spending some time with these languages on their own.

The author often spends too long on language basics and then needs to rush through the important comple
Dec 02, 2020 rated it liked it
Maybe a little beyond my level. In general, I might have understood the book more if the syntax and semantics of the examples were more clearly separated. Ideally, I would have like a Rosetta stone language (e.g., Python or Ruby) with the example coded in this and then "translated" into the language being studied. A single running example (more complex than Fibonacci) may have helped here.

For example, I found the Haskell monad section particularly confusing because of this. I was unfamiliar both
Neil O'Connor
Feb 19, 2020 rated it it was amazing
I'm loving this book. Any professional developer, or anyone who loves the thrill of crafting something efficient and elegant in code, will find lots of fascinating insight through a brief but intensive study of 7 languages you might not otherwise have a reason to look at. You don't have to have any intention of actually taking any of those languages up after you've read the book - you will learn something interesting and potentially useful just by reading about them.

Studying other languages in t
Rebekah Mercer
Jun 15, 2019 rated it really liked it
This book is like having a smart friend introduce you to the defining themes in a language, instead of tutorials that generally teach you the syntax and give few clues as to what is generally preferred -- for example using map and fold instead of iterating at all possible times in languages with functional and imperative abilities :)

I wasn't at all familiar with the functional-ish concepts in ruby, I had no idea that scala is java + type inference + functional features, I had no idea clojure is
Fabian Gaußling
Aug 23, 2017 rated it really liked it
I really like this concept of teaching seven languages in seven weeks (one for each weekend). I started with the book seven databases in seven weeks which I also enjoyed a lot and then bought this one two. I am working in IT development for 13 years now and in the past years I wasn't looking too much for new programming languages and whatelse changes there. This book is a good overview on nowadays programming languages and should be read by every programmer just to keep updated on what's going o ...more
May 31, 2017 rated it it was ok
Shelves: kcls
The idea of taking a look at a few less popular programming languages is great, but the implementation is average. The constant references to movies, which are similar to the languages, are annoying and completely unnecessary and don't mean anything to those who hasn't watched the movies. The format is hard on its own — you have to fit the most important information about the languages. The majority of explanation of concepts here are quite limited. ...more
Adolfo Neto
Jul 19, 2020 rated it it was amazing
I have read this book eight years ago and it still is one of my favorite books.
In the past months I have had the pleasure of getting in touch with the author (now he has a company called Groxio which helps you become a better developer) and I can understand even more what he thinks about the importance of learning different programming languages.

An important fact: this book helped Jose Valim create Elixir.
Justin Michalicek
One of the most fun programming books I've been through. Great intro to several languages I had not played with and to functional programming. ...more
Matthias Holzinger
Jul 14, 2017 rated it it was amazing
Fun weekend project to look at different languages and different approaches to coding.
Eric Z
Feb 24, 2018 rated it liked it
A fun tour of several languages, though sadly already dated. I feel that Tate often failed to explain the why of certain parts of the languages he demonstrates.
Aug 02, 2019 rated it really liked it
Nice intro to languages. By no means good for a thorough understanding.
Arthur Mauricio Delgadillo
Oct 15, 2020 rated it really liked it
Some hard and very important concepts aren't explained wel such as monads, actors, you'll need to check tutorials, wikipedia, etc. Nevertheless is a good starting point for each language. ...more
Jan 25, 2013 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 rated it it was amazing
Such a great introduction to new Programming topics. All programmers MUST read this.
Aug 19, 2014 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
Jun 25, 2013 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
Jun 28, 2018 rated it liked it
Shelves: cs
Very approachable, but the exercises are repetitive. (My reading group stopped at Prolog, too irritated to go on.)

Useful for searching through some very different languages, if you're new or aren't sure what you're looking for.
« previous 1 3 next »
topics  posts  views  last activity   
I have a question, need help. 1 25 Dec 08, 2010 09:11PM  

Readers also enjoyed

  • The Pragmatic Programmer: From Journeyman to Master
  • Agile Web Development with Rails: A Pragmatic Guide
  • Getting Real: The Smarter, Faster, Easier Way to Build a Web Application
  • Clean Code: A Handbook of Agile Software Craftsmanship
  • Site Reliability Engineering: How Google Runs Production Systems
  • A Philosophy of Software Design
  • Learn You a Haskell for Great Good!
  • Refactoring to Patterns
  • Programming Ruby: The Pragmatic Programmers' Guide
  • Refactoring: Improving the Design of Existing Code
  • Domain-Driven Design: Tackling Complexity in the Heart of Software
  • Designing Data-Intensive Applications
  • Practical Object Oriented Design in Ruby
  • Metaprogramming Ruby
  • Programming Pearls
  • Patterns of Enterprise Application Architecture
  • How to Take Smart Notes: One Simple Technique to Boost Writing, Learning and Thinking – for Students, Academics and Nonfiction Book Writers
  • Eloquent JavaScript: A Modern Introduction to Programming
See similar books…

Goodreads is hiring!

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

Other books in the series

Seven Languages (2 books)
  • Seven More Languages in Seven Weeks

News & Interviews

Need another excuse to treat yourself to a new book this week? We've got you covered with the buzziest new releases of the day. To create our...
13 likes · 0 comments