Effective Java — Joshua Bloch, Pearson Addison-Wesley 2018 (3rd ed.), ISBN 978-0-13-468599-1 This is not just the best book on Java, but one of the best I’ve read on any programming subject. Every Java developer will benefit from Bloch’s solid advice and thorough exploration of language and library quirks, on a par with classic namesake … Continue reading “Effective Java (3rd ed.)”
Category: Development
General software development
Programming Languages in 2017
Time for the annual collection of programming language news. Little has changed in terms of popularity rankings; the usual suspects dominate. JavaScript maintains its overall lead, except in the bizarro world of TIOBE. Established newcomers Go, TypeScript, and Swift continue making inroads but are still relatively niche. Kotlin (on which more below) might have a … Continue reading “Programming Languages in 2017”
Core Java 9 for the Impatient
Core Java SE 9 for the Impatient — Cay S. Horstmann, Pearson Addison-Wesley 2017 (2nd ed.), ISBN 978-0-13-469472-6 The Impatient series condenses the traditional monumental Core Java tomes (2,072 pages for Java SE 8) into a single book a quarter the size – 538 pages for Java SE 9, 480 pages for the first edition … Continue reading “Core Java 9 for the Impatient”
Java SE 9 First Look
Oracle has finally released Java SE 9, now available on the Oracle Technology Network. As usual the official end-user portal java.com will switch versions later, so for now it still distributes Java SE 8u144. I have yet to install the JDK, as the corresponding NetBeans update was delayed by its transition from Oracle to Apache. … Continue reading “Java SE 9 First Look”
Java Performance Notes
There have been several remarkable articles on Java performance issues in the last couple of months. Those links tend to get lost on Twitter, so I wanted to compile them here with brief overviews. All articles are based on the OpenJDK which also underlies Oracle’s distributions. Java and SIMD Piotr Nowojski tests automatic loop vectorization, … Continue reading “Java Performance Notes”
Programming Languages in 2016
According to two out of three major language surveys I consulted for 2016, programming is increasingly becoming synonymous with web development in JavaScript. No doubt this reflects, on the developer side, the rapid march towards web services and HTML applications everywhere in computing. Other than JavaScript and HTML itself, though, a stable comprehensive application framework … Continue reading “Programming Languages in 2016”
Algorithms in a Nutshell
Algorithms in a Nutshell — George T. Heineman, Gary Pollice & Stanley Selkow, O’Reilly 2016 (2nd ed.), ISBN 978-1-491-94892-7 This fairly slim book covers the basics of algorithmics and benchmarking, and also provides pseudocode and implementations (in C/C++, Java, and Python) for nearly 40 important algorithms. The major drawback is obvious when you consider that … Continue reading “Algorithms in a Nutshell”
Core Java 10 for Java 8
Core Java, Volume I: Fundamentals — Cay S. Horstmann, Prentice Hall (Oracle) 2015 (10th ed. for Java SE 8), ISBN 978-0-13-417730-4 Core Java, Volume II: Advanced Features — Cay S. Horstmann, Prentice Hall (Oracle) 2016 (10th ed. for Java SE 8), ISBN 978-0-13-417729-8 These two 1000-page tomes originated as Sun’s official guide to the Java … Continue reading “Core Java 10 for Java 8”
CSS: The Missing Manual
CSS: The Missing Manual — David Sawyer McFarland, O’Reilly 2015 (4th ed.), ISBN 978-1-491-91805-0 McFarland’s eminently practical book explains the structure and features of CSS from the perspective of a raw beginner. This does lead to some amusing baby steps, such as the introductory section on “mouse clicks,” but don’t let that deter you. McFarland … Continue reading “CSS: The Missing Manual”
Programming Languages in 2015
You probably already heard that Java topped the TIOBE index in 2015, with an impressive growth spurt of 6% that put it close to 2006 levels and clearly outdistanced stagnant C (21.5% vs 16%). The rest of the field remained fairly unchanged, except for rapidly declining Objective-C, suggesting that Java drew renewed interest from across … Continue reading “Programming Languages in 2015”