Archive for the 'Programming' Category
Read lately
I don’t write much these days. But I do read. Here are some ultra short reviews + recommendations/stay-aways for the latest few books read.
THE GOOD
Universal principles of design
William Lidwell, Kritina Holden, Jill Butler
This book presents 100 design principles gathered from a wide variety of fields (ergonomics, psychology, human factors etc.) that have relevance for any design discipline. What I like the most about this book is that a great deal of the “universal principles” are backed by thorough studies and statistics. This makes it more than just another flashy design book full of subjective thoughts. The only minor glitch is that the principles are somewhat strangely ordered … which make the book easy to read but hard to use. Still, highly recommended.
Agile Estimating and Planning
Mike Cohn
A lot of books on lightweight methodologies condemn BDUFs (rightly so) but does on the other hand not really elaborate on how to estimate and plan in a more lightweight manner. I experience that this has led to the misconception (among both critics and practitioners) that lightweight methodologies suggest that no planning/estimates should be needed at all! That is of course wrong and this book gives you the tools you need. BTW, Mike Cohn visits Citerus in September. Read more about it here and here!
Män som hatar kvinnor
Stieg Larsson
Surprisingly good book in the “Mystery & Thrillers” literary genre. A genre which I normally don’t do or like. To be honest I could not really put this one down when I’d got a few pages into it.
Flickan som lekte med elden
Stieg Larsson
The sequel to MSHK. New story, same characters. Once again a really intriguing mystery.
THE SO-SO
No stuff just fluff: 2006 anthology
In one respect this book holds what the title promise. It does not contain much fluff. That is good. It cuts to the chase at once. Unfortunately it does not contain much stuff either. The book is aiming at introducing a diversity of hot tech-topics in a number of unrelated articles. Unfortunately most isn’t hot. Some isn’t even medium. For instance there is a chapter called Extreme Decorator: Total Object Makeover … which I anticipated would be a new take on the the decorator pattern (using dynamic proxies or some clever byte code enhancement technique for instance). Well it wasn’t. It was the same old decorator pattern as was presented in GoF some 11 years earlier. Another article called “The Cornerstone of a Great Shop” presents continuous integration as being a good thing to do. Uhm. For the last 4 years I have done that in projects. Most of my colleagues do as well. However, some topics/articles are more read-worthy why I guess I will give this book series another chance when the 2007 anthology is released in April.
THE AWFUL
Designing interfaces
Jenifer Tidwell
This is a book for idiots and for people who has never seen a graphical interface before. Why would anyone spend time reading that “by using a radio button the user can choose one item in a set of items” and “If you have a lot of content you can use a scrollbar” … GAH! … What amazes me the most is that this book is praised. I guess it might tell us something about the average level of competence when it comes to interface design.
CURRENTLY READING
The ruby way
Hal Fulton
So far so good. Maybe a bit to much cookbooky for my taste.
1 commentThinking about entering the IT-industry?
Then I think you should read this.
Paul Knapp is right in all but the last thing which (quite surprisingly) is completely untrue … you won’t need any certifications at all.
No commentsInspiring read
Just read the naïve (in a wonderful way) book Getting Real, http://gettingreal.37signals.com. Inspiring for anyone who wants to build the next big online application (where big certainly does not mean bulky or bloaty).
1 commentJAOO 2006, Day 1
The Amazon.com Technology Platform – Werner Vogels, Amazon.com
Werner said he would put a historical perspective on the evolution of the Amazon.com-platform in the light of scaling. In practice it was not so much on the technical aspects of scaling, as it was a promotion for the platform itself (for anyone wanting to start a business). Interesting nevertheless.
Patterns in Service-Oriented Architectures – Gregor Hohpe, Google Inc.
Gregor Hohpe sets the stage for the SOA-track for the day. Reminded me … that this is: 1) hard, 2) important, 3) quite boring (the subject itself that is, Gregor himself seemed to be a good speaker).
A Business Case for Ajax with GWT – Bruce Johnson, Google
Bruce points in the inevitable direction of to richer clients (as in AJAX-clients). He claims “AJAX is here to stay for several years to come. Every stakeholder loves Ajax. Everyone … except the developers that is”. Then he discusses the reasons to why it is not really popular among programmers: Poor Tool support, Browsers compatibility, Javascript is a dynamically typed language which means that type errors can only be found at runtime by QA etc etc. This discussion of course leads to why GWT is the way to go here. GWT will allow you to stay in your favorite IDE, write your client layer as java, and then cross-compile into Javascript. Looks solid and as a worked-through product. It also handles history correctly (as most AJAX-toolkits has a problem with), and bookmarks. Also polymorphic RPC is supported … and lots of other cool stuff. This was a really inspiring talk/demo. I will look into it as soon as I have time.
Architecture Archaeology and Virtual Reengineering – Walter Bischofberger, Software-Tomography GmbH
Walter demoed a product called Sotograph. As I understand it, Sotograph is a tool for discovering architectural problems and then providing good help for refactoring them. These refactorings were all conducted on a very high level, i.e. breaking out subsystems, adding layers, break-up cyclic dependencies etc. Moreover it provided means for monitoring the architectural quality over time. During the entire demo Walter worked with several version Spring Framework and showed which areas had been improved over time, and which areas have become worse. He also corrected some of the architectural mistakes with just some clicks through a rather complex wizard.
The tool looked very competent and very much focusing on high-level-issues and big sweeping changes. On the other hand the tool also seemed to be rather complex, i.e. learning the tool might take some time. Best thing would probably be that a company known for its brilliance when it come to usability, JetBrains, buy the Sotograph-tool, brush-up on the usability and then integrates it.
Seaside: A Radical Web Framework – Glenn Vanderburg
Wandered into this presentation with somewhat mixed emotions. Can’t really say I think the market needs another web framework. On the other hand I yet haven’t seen anything that is oh-my-god-this-is-the-web-framework-to-use-period. Glenn started of by making this claim: Rails (and most other current web frameworks) will be replaced in one year or two by Seaside or something else using the same ideas as Seaside does. With such a bold statement he of course got me and the rest of the audience listening.
The Seaside framework itself is built with smalltalk. During the demo Glenn uses a very simple web application to show that sessions in Seaside is very tolerant to back-, forward-buttons and launching of new-windows. The framework itself can pick up the correct session no matter how much you mess with it (it seems). This is accomplished by using continuations. Moreover the framework really seems to relieve the programmer of most plumbing and gluing you are forced to do when creating complex web applications.
My verdict: I get a bit of mixed emotions about Seaside. The features and elegance that Seaside seems to provide I would love to have. My biggest problem is that I really have a hard time seeing that any corporation would be interested another language to their growing pile of legacy.
Panel: Abstractions for Concurrency
Stuck my head into to the panel about concurrency for some 30 minutes. They were discussing whether the current popular computer languages are strong enough for the need of concurrency and scale-outs. Didn’t really stay long enough to see what they landed in … but I did stay long enough to yet another time hear “continuation” being discussed. Could that be the buzzword of this years’ JAOO?
JAOO 2006
Currently on the train down to Arlanda where I within some hours will lift off for another week at the JAOO conference. I look forward too it, it is a great conference.
I will report my impressions here. Day-by-day.
No comments
This blog is written by me, Tobias Hill.