Oct 05

Book review: Code, the hidden language of computer hardware and software

Posted in Books       Comments Off on Book review: Code, the hidden language of computer hardware and software

One of the books I’ve read during my vacations was Code: the Hidden Language of Computer Hardware and Software, by famous author Charles Petzold. Even though this is a 2000 book, it was only in 2009 that I did find some time to read it. And let me tell you right away: it was worth it!

Anyone can read this book and end up understanding how computers work (at least, at a high level). Notice that Petzold doesn’t only talk about computers…no, he goes all the way back and talks about several inventions which contributed, in one way or another, to the construction of the modern computer. I really enjoyed reading this book and that’s why I’m giving it  a 9/10.

Sep 20

Book review: Portugal, que futuro?

Posted in Books       Comments Off on Book review: Portugal, que futuro?

Generally, I tend to review English written books in this blog. However, and since we’re on the verge of choosing a new PM for the next four years, I’m reviewing this fantastic book here and I’ll do it in Portuguese. In practice, this means that if you don’t understand Portuguese, you can safely skip this post.

O último livro de Medina Carreira (escrito em parceria com Eduardo Dâmaso) é explosivo! Eu comprei-o ontem (19 de Setembro) e consegui terminá-lo hoje (20 de Setembro). A introdução consiste na compilação de vários “ensaios” da autoria do Prof. Medina Carreira e o posfácio é totalmente escrito por Eduardo Dâmaso. Todo o restante livro é escrito em modo de entrevista, onde Medina Carreira responde a várias questões colocadas por Eduardo Dâmaso.

Medina Carreira analisa vários temas “quentes” da actualidade política Portuguesa. No seu tom “corrosivo”, identifica vários problemas que têm vindo a minar Portugal e que  levaram à estaganação em que nos encontramos. O livro não fala só de economia, apesar de essa ser uma área essencial que serve de suporte a todos os direitos e “benesses” que temos vindo a ter nos últimos anos.

Por exemplo, no capítulo dedicado à educação (apropriadamente intitulado de ‘Educação: “Magalhães” e mais o quê?’), apresenta uma análise detalhada sobre vários pontos incompreensíveis do nosso sistema educativo. Tal como Medina Carreira, também penso que a introdução de “Magalhães” nas nossas escolas não passa de espectáculo político! Ninguém nega a importância das novas tecnologias,mas eu tenho muitas dúvidas em relação a fornecer computadores a miúdos que ainda não sabem escrever nem contar direito. Existem ainda outras coisas mal explicadas…as tão apregoadas “Novas Oportunidades”…alguém acredita na formação que é dada nestes cursos? E as reformas da educação? Quem é que sai beneficiado com a tal “escola inclusiva”? Serão os alunos? Os Pais? E o estatuto dos alunos? Enfim,tudo áreas que contribuem para o aumento do descrédito do nosso ensino nos últimos anos…

Na minha opinião, capítulo mais importante será, provavelmente, o capítulo V. Nesse capítulo, Medina Carreira desmistifica completamente o  mito do “keynesianismo” e explica porque é que esse modelo não tem qualquer interesse nos dias de hoje para um país como Portugal. Depois de ler a resposta à pergunta da página 95, onde apresenta os principais princípios dessa doutrina, torna-se impossível não rir às gargalhadas quando ouvimos o nosso PM a justificar as grandes obras (como por exemplo, o TGV) com a doutrina de Keynes.

Antes de dar a nota final, aproveito para recomendar este livro a todos aqueles que se interessam com o estado da Nação. A minha nota para este excelente livro: 9.5/10.

Sep 15

Book review: JavaScript, the good parts

Posted in Books       Comments Off on Book review: JavaScript, the good parts

I’ve just finished reading Douglas Crockford’s book and I can tell you that is a fantastic book. Notice that the book concentrates on the language itself, so don’t buy this book and expect to find a good reference for learning DHTML. The book is full of small nuggets which will guide you through the most important concepts of the language. Besides doing that, the author also gives you his opinion on which features you should use for writing good JavaScript code (the best part is that he explains why and he also presents a list with the features you shouldn’t use – notice that I’ve been writing on this stuff lately. This books goes even farther and will give you much more details on several topics I’ve mentioned in the JavaScript series posts).

I guess that the best thing I can say about this book is that it should have been out a few years ago when I started writing JavaScript code: it would have saved me lots of time! I’m giving it 9/10 and I’m recommending it to anyone that wants to have a better understanding of JavaScript.

Sep 12

Book review: How would you move Mount Fuji

Posted in Books       Comments Off on Book review: How would you move Mount Fuji

This was another of the books I’ve managed to read during my last vacations. It’s an interesting book which presents several puzzles (supposedly) used by Microsoft during their hiring process. Besides presenting the answers to the puzzles, author William Poundstone adds a couple of “extra” chapters which try to “justify” the reasons associated with the use of this kind of puzzles by companies on their hiring process. Overall, I found it quite entertaining (though I must confess that I probably wouldn’t solve half of them under pressure) and I’m giving it 8/10.

Jul 14

More info here.

Jun 16

Book review: Here comes everybody

Posted in Books       Comments Off on Book review: Here comes everybody

In my latest mini-vacations, I had some free time to update my reading stack. One of the books I read was Clay Shirky’s Here Comes Everybody. After seeing it well referenced in Jeff Atwood’s blog, I’ve bought and saved it for future reading.

In this book, Clay Shirky talks about the new opportunities available for group organization with the introduction of new technologies and social tools. It’s a really well written book (I managed to read it in 2 days while getting a tan by the pool :),,) which presents several interesting stories that will keep you hooked until the last page.

Overall, I’m giving it a 9/10 for its content and writing quality.

Jun 14

Now that my miny-vacations are over, it’s time to start posting again. For the first post, I decided to update my book reading with a short review of Robert Ludlum’s The Bourne Identity. To be honest, I’ve only bought this book because I loved the Bourne trilogy (which I still consider one of the best action movies out there).

Overall, the book ended up being interesting and really different from the movie. This only means that the cinema guys did an excellent work on adapting the book to film (which, for instance, didn’t happen with the The Vinci’s Code, where the movie is a copy of the book – I guess that someone forgot that things that work for books don’t always work on movies and vice-versa).~

Going back to the book, it’s only fair to mention that Robert Ludlum did an excellent job in creating the Bourne character. The plot is good(though, as I said, really different from the movie) and, sometimes,a little dense (which is great for an espionage book). Robert Ludlum has a very peculiar writing style (and I’ve even go as far as saying that it won’t be appreciated by many people). I liked it,but I’m not sure if it will please everyone 🙂

Overall, I’m giving it 7.5/10.

May 16

Book review: 97 Things Every Software Architect should know

Posted in Books       Comments Off on Book review: 97 Things Every Software Architect should know

It was only yesterday that I’ve finished reading this book which consists on several essays written by different software architects on the super interesting topic that is Software Architecture. Overall, it’s an interesting book with lots of good advice. Perhaps even more important is the fact that all of the essays are 2 pages long (and are really easy to read).  I guess that this book is for you if you’re after some light reading on software development. I’m giving it 7/10.

May 14

Portuguese book on LINQ is out!

Posted in Books, C#       Comments Off on Portuguese book on LINQ is out!

Yes, it is true! After several incidents :,,), we (me and Paulo) finally made it! Our book on LINQ is out. If you understand Portuguese and you want to know more about LINQ (and you’re really keen on understanding the features added to the languages for supporting it), then I’d say that this book is a good option. Even though the book is completely written in C#, we didn’t forget the VB.NET programmers! You can get the VB.NET complements and code (btw, the downloads contain also all the C# code that was printed on the book) from the book’s company web site.

Hope  you enjoy reading it as much as I did writing it!

Apr 29

Book review: C# 2008 and 2005 Threaded Programming

Posted in Books       Comments Off on Book review: C# 2008 and 2005 Threaded Programming

This is the second book I have read in multithreading programming (the first was the exceptional Concurrent Programming in Windows, by Joe Duffy). As I”ve said in the past, this is a topic which really interests me and that”s why I gladly accepted a free copy from Packt for review. As you can see from its title, this is (essentially) a beginners book. It”s full of code snippets and instructions of where to put that code (where you’re supposed to build demo projects by following the steps detailed in the book). This kind of organization doesn”t really appeals to me… I”d really prefer to see everything together than have code mixed with instructions (this is personal, since I do prefer to read a book away from the PC and, in this case, having instructions detailing what I need to do step by step isn”t really something I enjoy).

The book has a couple of intro chapters which give you some information about the hardware and introduces you to threads and processes. After that, you quickly jump into code examples. You”ll jump right into C# windows forms code and you”ll start by using a BackgroundWorker object to add asynchronous behavior to your app. In fact, this was really a surprise to me because I never thought a beginners book would jump right into a Windows Forms apps. I”d really prefer to start from a console app because that would let me concentrate on threading itself instead of wasting lots of lines with UI code (I”m not saying that using the BackgroundWorker isn”t important; just questioning if that is really the first practical thing you should put in a beginners threading book). I guess that it”s fair to say that this is mostly a Windows Forms multithreading book since most (if not all) of its examples are windows forms examples.

Going back to the content, I did like the parts where the author showed how to use some tools (ex.: Process Explorer) for getting info on what”s happening and I did found value in chapter 5, where the author presents some tips for debugging multithreaded code. Adding a chapter on Parallel Extensions was also a good idea, though I think that there definitely was a lot more to say about it (though I guess that the size of the book might have limited the author to the stuff that is presented on that chapter).

Now,here are some of the topics I expected to see mentioned on this book (and weren”t or weren”t well covered):

  • Memory model: no,I didn”t expect to find many lines on this (since it”s an introductory book). But it should have been mentioned because it explains why a lot of things might go wrong in multithreading programming.
  • Data synchronization: I expected to find info on this topic. It”s really important in multithreading scenarios and I guess that it should have at least one chapter on it (I believe that presenting Monitor, Reader/writer locks are far more important than reusing BackgroundWorker across several chapters). I”m not sure why, but I think that there are noo examples of lock usage (which is something that really made me sad). On the other hand, being able to partition your work so that all the parts can run independently is really something which we must all try to achieve (and the author does give a lot of emphasis on that). Just wished that this portioning would be complemented with info on how to synchronize data access since that will be needed in the "real world".
  • APM: the asynchronous programming model based on delegates and the event-based asynchronous pattern deserved to have a chapter about them.

Bottom line: I that think this book could be improved if it had more info in the previous topics and less stories/printed code+instructions. Btw, I didn”t really enjoy the stories on the FBI agents or NASA either…if the idea was to mimic the style of the head first series, then it wasn”t really achieved. Having said all this, I guess I can”t really give it more than 6/10.

Apr 10

Book review: ThoughtWorks Anthology

Posted in Books       Comments Off on Book review: ThoughtWorks Anthology

I’ve just finished reading a couple of interesting essays on software development which were compiled into this book. If you really enjoy those books helps you reflect in your profession (and you’re a software developer), then this book is for you. Classification: 7.5/10.

Apr 09

Book review: Concurrent Programming on Windows

Posted in Books       Comments Off on Book review: Concurrent Programming on Windows

I’ve finished reading this excellent book written by Joe Duffy. Yes, it’s a bit big and it mixes theory with practice (which might not be what you want). Due to that, I think that it’s a little bit difficult to define the target audience of this book (they probably tried to make it a pleasant read to everyone and we all know how that tends to end…).

Having said that, I believe that you should buy this book if you’re doing windows development. It provides great coverage of all the stuff you need to know in order to write effective multithreaded code. Even though you should read the book from cover to cover (ok, I know…it’s really a huge book!), you can also use it as a reference book.

Before giving my classification, I think that there are some gotchas with this book. For instance, I looked several times at the cover to check if this was really an Addison&Wesley book. I’m sorry, but A&W made me used to getting absolutely correct texts and that doesn’t happen in this book. There were several sentences that I had to read several times because they simply didn’t make sense (and it seems like I wasn’t the only one to complain about this problem). Despite those problems, I’m still giving it a final note of 9/10.

Mar 08

Book review: Our Iceberg is Melting

Posted in Books       Comments Off on Book review: Our Iceberg is Melting

I’ve just finished reading this John Kotter’s books. It’s really short (I’ve read it during this afternoon) and it really presents most of the problems you’ll find whenever you try to introduce any sort of change into an organization. The penguin fable is really cool and I bet you’ll identify all of the “penguins” of your organization instantly :,,)

Anyway, I must confess that reading this book was the only good thing that came of the new evaluation system (also known as SIADAP) since it was recommended by the person that was presenting it as a good read for justifying the needed change. Interestingly (or not), the message I got from the book confirms my initial suspicion: this evaluation system is completely wrong and should be banned (If you don’t work in Portugal, you probably don’t know what I’m talking about, so I’ll really come back to this subject to explain what is it and why it’s completely wrong).

Anyway, back to the book, I’m giving it 8/10.

Mar 05

Protected: Book review: Software Language Engineering

Posted in Books       Enter your password to view comments.

This content is password protected. To view it please enter your password below:

Jan 21

Book review: Tribes

Posted in Books       Comments Off on Book review: Tribes

I’ve just finished reading Godin’s Tribes book. It’s really an interesting, motivational reading which will surely inspire you in leading others and creating “tribes”. Even though you’re free to disagree with his ideas (I didn’t bought them all), it’s undeniable that Seth pin points the main reason why we don’t do what we probably should: fear. Fear of being joked, fear of loosing the job, etc, etc.

It’s really a short book, which, as you might know by now, is really good because as time passes by I’m getting less and less time for leisure (I need to do something about this because it’s really starting to be a problem). Anyway, I did enjoy it and recommend it. I’m giving it 8/10.

Jan 15

Protected: Book review: Clean Code

Posted in Books       Comments Off on Protected: Book review: Clean Code

This content is password protected. To view it please enter your password below:

Jan 11

Book review: IWoz

Posted in Books       Comments Off on Book review: IWoz

I’ve just finished reading Steve Wozniak’s book and I can tell you that it was really an interesting experience. You’ll only be able to enjoy it if you’re into the history of the PC. In about 300 pages you’ll learn about his early inventions (his school calculator project was really interesting) and on how he developed the Apple I/II which ended up conquering the market.

The only thing I didn’t like is seeing the same thing repeated several times (not sure why, but it seems like American books of this gender tend to repeat the ideas contained on it several times, which makes it a little boring). Overall, I’m giving it 7/10

Jan 02

Protected: Book review: Whatever you think, think the opposite

Posted in Books       Enter your password to view comments.

This content is password protected. To view it please enter your password below:

Dec 11

Book review: Practical .NET for the Financial Market

Posted in Books       Comments Off on Book review: Practical .NET for the Financial Market

A few months ago I was interested in learning more about the financial market and I’ve found this book at Amazon. The reviewers gave it a really good score, so I bought the book. What a waste of money! For starters, I was expecting (at a minimum) .NET 2.0 code. Unfortunately, everything is written in .NET 1.X (which is really bad, specially since the book was initially released in August 2006!). I don’t like their coding style either, but I won’t go through that route…

The main problem I see with this book is that it tries to show several areas on the .NET framework and end ups being short on all of them. Then there are lots and lots of pages full of boilerplate code which should be only available on a separate download. The way I see it, the book should have concentrated on key things that are specific to the financial market and then introduce several options you have to implement that in .NET (always redirecting to a code download to get more info).

Have I complained about the code? I guess I have, so I’ll just give it my final note: 3/10. It’s probably the lowest score I ever gave to a book. Does anyone want to buy my copy? :,,)

Nov 23

I’ve been a proud owner of the book Peopleware: Productive Projects and Teams since 2000. However, only recently have I started publishing reviews on books, so to be fair, I had to reread it again (yes, I’ve read the book a couple of times and I find it always entertaining and I always end up getting something which I didn’t quite get in my previous read).

The book is really great! Besides giving data that supports why we need offices (not cubicles, dress codes and other stuff which really doesn’t do anything to improve the quality of development!), you’ll also find several interesting ideas on how you can make teams jell.

What I find most interesting about the ideas on the book is that they’ve been there for some 20 years (or more – the second edition has almost ten years), and I still haven’t found many managers that have read the book (or even have heard about it) or companies that try to apply the principles presented on the book. In fact, when I think about it, it’s really amazing that I’m able to write code everyday and that we ship some apps from time to time…oh well, I digress. Final note: 10/10.

Nov 03

Book review: More Joel on Software….

Posted in Books       Comments Off on Book review: More Joel on Software….

A few days ago I reviewed of Joel on Software. Today I’m reviewing More Joel on Software: Further Thoughts on Diverse and Occasionally Related Matters That Will Prove of Interest to Software Developers, Designers, and … Luck, Work with Them in Some Capacity. Besides sharing long names, both books end up sharing great essays on software development. Simply put it, it’s another Joel classic!

What I’m saying is that (probably) in the next ten years you’ll be hearing something like this: “you know what? There simply are some books which you must read if you want to be in the software business. You need to read The mythical man-month, Code complete, Peopleware, Joel on Software, More Joel on Software…”. See where I’m getting? Ok, so if you don’t want to buy the books you can still learn a lot by reading the archives on his blog.

Final score 9/10.

Oct 31

Book review: Joel on Software…

Posted in Books       Comments Off on Book review: Joel on Software…

Ok, this must be book with the longest title I”ve read until today. Here its complete name: Joel on Software and on Diverse and Occasionally Related Matters That Will Prove of Interest to Software Developers, Designers, and Managers, Whether By Good Fortune or Ill Lick, Work with Them in Some Capacity. Phew…That is really a long long title! This book is an aggregate of several of Joel”s thoughts on software development that he has been publishing in his blog since 2000.

You can agree or disagree with Joel, but there”s one thing everyone agrees on: Joel is a terrific and entertaining writer. He is able to capitalize on his extensive experience and ends up giving you lots and lots of stories that will probably amuse you (or, if you don”t agree, will probably make you complain with the book :),,). Ok, by now it”s fair to say that you don”t need to buy this book because everything that”s there is publicly available on his blog. But, if like me, you”re  a sucker for these kind of essays, then you”ll surely end up buying this interesting book. My score: 9/10.

Oct 20

Book review: Managing humans

Posted in Books       Comments Off on Book review: Managing humans

I”ve just finished reading this interesting book by Michael Lopp. I think that we can all agree that interacting with people is a lot harder than interacting with machines. Michael”s book will give you several insights into this difficult art. No, this book isn”t only for managers. If you”re a developer working for some manager, then you”ll also get something out of this book.

And it”s a thin book too. I”ve just read it in 3 days while riding the bus (which means I took me about 2h to read it from cover to cover – each ride takes between 20 and 25 minutes). Ok, before giving it my score, there”s one thing you need to know: the book is based on several posts originally published on the author”s blog. So, you must expect some “unpredictable” changes in topic which might through you a little bit off.

Having said that, here”s my score: 8/10.

Oct 10

Book review: the myths of innovation

Posted in Books       Comments Off on Book review: the myths of innovation

Scott Berkun is really an entertaining writer. Today I’ve just finished reading his last book: The myths of innovation. Scott tries to point out several myths generally associated with innovations and explains really well why they’re myths. With lots of good examples that support his vision, Scott has written a really small addictive book that you won’t let go until you finish. Btw, if you follow the book’s Amazon link you’ll find a link to a short presentation Scott gave on this topic at Amazon. Score: 8.5/10.

Oct 10

Protected: Book review: High performance web sites

Posted in Books       Comments Off on Protected: Book review: High performance web sites

This content is password protected. To view it please enter your password below:

Oct 02

Book review: smart and get things done

Posted in Books       Comments Off on Book review: smart and get things done

Here’s another interesting book I’ve finished reading. Yes, that is correct: another one (and that’s why you’re getting 2 reviews on the same day:),,) When you start using the bus, that means that you have some time for catching up with your reading (and that is what I intend to do in the next months).

There’s one thing you’ve got to admit one thing: you may disagree with Joel, but the guy knows how to write and how to capture your attention! Regarding the book, it’s really a short book (which is good) that has several good tips that you might use if you’re responsible for hiring new guys for your team. If you follow Joel’s blog (I bet that everyone is dropping there at least once a month), then you’ll have a summary of several of his thoughts which are scattered all over the site.

Overall, I’m going to give it 8/10 (yes, I did enjoy it that much!)

Oct 02

Book review: The naked trader

Posted in Books       Comments Off on Book review: The naked trader

After some delaying, I’ve finally managed to read the Naked Trader: How anyone can still make money trading shares. No, I’m not going to invest all my finances in trading. Why? Well, because I’d only be able to buy 5 or 6 shares :,,) Thanks for asking!

Ok, so I needed to get some concepts on how things work in the financial markets and I ended up buying two books on the subject. This was one of those and I can say that, overall, it’s really an interesting read.

The author of the book is British, so you’d better get ready for some British humor. You’ll find lots of references on toast and tea 🙂 If you’re not into shares, then this is a good book because the author uses a relaxed writing style and explains you several of the important concepts you need to know if you want to take your chances on the financial market. There’s advice on how to interpret market signs. Interestingly, most of the advices are really based on common sense (you’d think that the guys that put their money on the stock market would have that, but it seems like that isn’t really what happens with most guys).

Besides shares, there’s also some info on spread betting, which I found interesting (who would have thought that you could bet on shares going up or down?). Overall, I’m giving it a 7.5/10.

Sep 21

Ok, I can finally mention this on the open…in the last months I”ve been working with my friend Paulo on what is supposed to be the 1st Portuguese book on LINQ with C#. We”re well on the way to complete the 1st phase of the project and should start the reviewing stages by the end of the month. For now I can only tell you that working in this project with Paulo has been a lot of fun. Let”s just hope that the readers end up enjoying it too. Oh, and this should be another FCA book…

So, if you can read Portuguese and you”re interested in getting our perspective on the LINQ platform, then just wait another month or two…by then the book should have reached the shelves! :,,)

Sep 08

Book review: The design of everyday things

Posted in Books       Comments Off on Book review: The design of everyday things

Ok, before you ask, the answer is no, I did not received a review copy of this book :,,)

Today I”ve finished reading this entertaining book by Donald Norman. Even though the book is a bit outdated (ok, IPods, blackberries, etc. have come out for a long time now and none of them are mentioned in his book), I still think that the principles and ideas Norman presents are still valid today. According to my copy, this edition has a new introduction by the author…hum, not sure on how important that is, but if you ask me, what I”d like is getting better paper and better quality pictures. Oh, and having the notes at the end of the book instead of the footer of the page doesn”t really help either…

Having said this, I still think that this book should be read by anyone that is interesting in learning more on how to design good things. The (somewhat outdated) examples are not bad and will probably illustrate how things could be better (for instance, my stove still has the controls on the “wrong position”). Lots and lots of ramblings on how things should have been done. I found those ramblings entertaining, but I guess that not all will like them…

I”m giving it 7/10.