2010-04-04

2 books about Scala

http://programmingscala.com/ by Dean Wampler & Alex Payne September, 2009.
http://www.pragprog.com/titles/vsscala/programming-scala  by Venkat Subramaniam, 250 pages, Jul 2009.

I had the chance to read two books about Scala. Both do a very good job at getting you up to speed with this new language.
  
I won't try to convince you to learn Scala, just do a quick research.  
  • You will find that it has many interesting ideas worth learning. (Even if you don't end up using Scala). Functional Programing, closures, DSL, Strong and powerful type system, Actors ...
  • There may not be a next Java, but whatever will come, it will certainly looks like Scala or part of it.
  • You can start to use it right now. Either for Test (like JUnit or for Behavior tests) or to integrate with your existing Java code.

Now which book to choose ? If you can, read Venkat first and then Dean. The first is quicker and more didactic. The second is more in depth and detailed.

If you have to choose one, how could I help you ?
  • Venkat examples are really well though and make the point cristal clear.
  • Dean goes step by step detailing all part of the language. It can certainly be kept as a reference book. But it requires a certain dose of concentration.
  • Venkat's strength is to make the reading very enjoyable. The examples "speaks" to you. He shows the power and the sweet spots. How it will help and benefits you. He sells you Scala on every pages.

With so many things popping up from the net, I almost stopped reading books for years. Now I feel like I loosed my time, coping with tons of news. A book is a much more enjoyable and relaxing experience while at the same time brings you lots of knowledge. 

Pragmatic Thinking and Learning: Refactor Your Wetware

"Pragmatic Thinking and Learning: Refactor Your Wetware" by Andy Hunt (288 pages, Sep 2008)

This is pure genius: a must read ! re-read and apply all the advices ! Just do it !

As Socrate used to say: "NOSCE TE IPSUM" (Know yourself). With this book, you will know more about your brain and how you can use this knowledge to improve.

It is really fun to read, as well as concrete and practical. He doesn't just expose the theory: he told the story of experimental studies demonstrating his point.

2010-04-02

Career

The most beneficial thing to my career has been to practice sport on a regular basis. Way more important than reading news about technology ! It improves little by little.
The most detrimental is procrastination. It strikes unexpectedly and it is harmful in very different ways. Once, my back hurts so bad that I was stuck on my couch for 2 month. 

2010-03-22

Sonar & Maven

Sonar is a very nice tool. One of the few that will show how your metrics evolve over time.
But the cooperation between Sonar and Maven isn't that obvious:

2010-02-14

Worst Practices for Domain-Specific Modeling

Short and empirical information on a growing practice : Domain-Specific Modeling. (creating DSL).
Indeed there are many pitfalls and I don't see many solutions apart from having very bright and communicants engineer at work.
Despite the title, the text is positive and helpful.

in reference to: http://www.metacase.com/papers/WorstPracticesForDomain-SpecificModeling.html (view on Google Sidewiki)

2009-11-03

Podcatcher

I tried many podcatcher on Linux recently and it is a long journey:
  • gtkpod 0.99.14: just to synchronize iPod. Allow to copy playlist and so on. Old and rough but stable.
  • gPodder 2.0 : podcatcher, manage OPML. This new version is my favorite !
  • Floola 5.3.1 (proprietary) : hard to run, many dependencies. Buggy and cumbersome UI. No OPML. Good iPod integration.
  • BashPodder : command line and minimal GUI. No OPML. simple shell script. Create one folder per day.
  • SongBird 1.4 : Podcast doesn't seem to be on their roadmap. It is sad, because it would make a good web integration with show notes and forums.
  • Exaile 0.2.14 : No OPML. Almost good, but I couldn't synchronize. Uses a hashkey as file name: unreadable. Python/GTK. (There is a new 0.3 version that is a complete rewrite. I still have to check the new version)
  • PenguiTV 4.0 : buggy ; Closely tied to Gnome (Python/Glade). Does OPML. Create one folder per day.
  • PodNova 2.4 : Outdated. a bit hard to run, many dependencies. Python/wxWidgets and a local web server. The integration with the PodNova site is good, you can share, vote and backup your podcast list. But it lacks features and robustness.
  • Media Chest Java
  • myPod (2003) Java but uses ligpod from gtkPod
  • GNUpod Perl pure iPod manager.
  • Amarok more a music collection manager than a podcatcher, but could do the job.
  • As usual there are also many dead projects, not updated for years, but still referenced in a lot of places.

I created an open SpreadSheet for everyone to update : Linux Podcatcher.

There is an Podcatcher Matrix that would be very nice if not outdated and a bit closed !
There is also a Wikipedia entry on aggregators, but it doesn't distinguish between text feeds, Podcast and Video and is a bit outdated and cumbersome.

2009-10-15

Excellent Studies on Software Quality

The studies measure the impact on quality that common software engineering practices have: Exploding Software-Engineering Myths By Janie Chang 11/2009 at Microsoft Research.
Found via InfoQ.

  1. it is very nice to have real studies and data. Too often, we heard only claims that Software engineering practice X or Y is THE best practice. At best there are 3 successful projects to back up the claims or some niche cases where THE best practice works.

    It demonstrates alas that Software engineering is still very young ! I even think that the subject is so large that it doesn't make sense to consider it as a whole. You would not compare how you build an Airbus to how you build a scooter.


  2. The Influence of Organizational Structure On Software Quality is revealing ! 10 pages from early 2008 : a must read !

2025 Summary

Trying to see if I can manage to complete a few projects this year. Sold my 10 years old Squier Stratocaster, bought a Strandberg Standard N...