Skip to main content

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. 

Comments

許淑福 said…
This comment has been removed by a blog administrator.
周志v豪 said…
死亡是悲哀的,但活得不快樂更悲哀。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Popular posts from this blog

VirtualBox, CentOS, Network and Template

I have been working with VirtualBox and CentOS recently, here are some notes about this experience.
I used VirtualBox 4.2 and CentOS 6.3, but most of this should work with other products too. I created the first headless, minimal CentOS via NetInstall.
I cover two points: create a template machine and configure the Network.
Configure the NetworkWe want Internet access and a LAN local to the host.
For background information read: Networking in VirtualBox by Fat Bloke on June 2012.
The easiest is to enable two Network Adapters: One will be "Host-only" and the second "Nat". In the "Preference" menu you can see the DHCP server range for the Host-only Network. So you may set fixed addresses outside this range.
Next: start the guest. There may be various results at first, depending on a lot of things. Some problem might be solved by rm -f /etc/udev/rules.d/70-persistent-net.rules and a reboot.
Anyway, configure the two interfaces (set your own IP and MAC addresses)…

One in six IT projects ends up ‘out of control’

http://www.ox.ac.uk/media/news_stories/2011/110822_1.html

A surprisingly high number of projects are 'ticking time bombs', according to researchers at the University of Oxford. They analysed 1,500 global projects that had revamped their information technology systems within the last 10 years. They discovered that one in six projects in the sample went over budget by an average of 200 per cent (in real terms) or over ran by an average of almost 70 per cent.

Their conclusion is similar to previous studies: http://brunovernay.blogspot.com/2009/10/excellent-studies-on-software-quality.html

TLS: Disabling legacy cipher suites

First: "cipher suite is a named combination of authentication, encryption, and message authentication code (MAC) algorithms".If you are using TLS (for HTTPS typicaly) you may want to remove some Cipher Suites.You maybe a little bit less compatible, but also a bit more secure. Things will be better when TLS1.2 is implemented everywhere.You can also claim to be FIPS 140 compliant: http://csrc.nist.gov/publications/nistpubs/800-52/SP800-52.pdf !How to do it:From the command line:  http://docs.oracle.com/javase/7/docs/technotes/guides/security/jsse/JSSERefGuide.html#CustomizationFrom code:  http://docs.oracle.com/javase/7/docs/api/javax/net/ssl/SSLSocket.html#setEnabledCipherSuites(java.lang.String%5B%5D)Jetty: http://wiki.eclipse.org/Jetty/Howto/CipherSuitesTomcat: Look at the "ciphers" attribute in  http://tomcat.apache.org/tomcat-7.0-doc/config/http.html#SSL_SupportIf someone knows how to do it on the IBM J9 via configuration, I am interested.