‘A Brilliant Death’ – Murder mystery, coming of age and homage to 1960s small-town Ohio – #bookreview

A Brilliant Death

Robin Yocum

Seventh Street Books – paperback, Kindle

Writers often are advised to “Write what you know.” Author Robin Yocum clearly has heeded that advice. This is a well-written mystery that also is a coming-of-age story, plus a fine portrait of simpler times in the American heartland during the mid-1960s.

A Brilliant Death is set in a real-life but now unincorporated village, Brilliant, Ohio. Brilliant is a settlement on the Ohio River near the West Virginia border, in an area where steel mills, coal mines and a glass factory once held sway and Polish and other immigrant names are common.

Yocum’s novel focuses on two teenage friends, Mitch Malone and Travis Baron, as they near adulthood in Brilliant and start trying to uncover the truth behind the death of Travis Baron’s mother when he was still an infant. Along the way, the two youths, both promising athletes, continue growing up, getting into typical teenage scrapes, and nearing the time when they will go off to college or off to the Vietnam War.

They do manage to discover the terrible truth behind Travis’s mother’s death. And what they learn puts both of their lives immediately into danger.  Now they must make difficult choices from options they  hoped they would never have to consider.

Si Dunn

‘Spring Boot in Action’ can help you push aside the old drudgeries of configuring Spring applications – #programming #bookreview

Spring in Action

Craig Walls

Manningpaperback

If you have worked with the decade-old Spring framework, you know well that it has a long history of providing configuration headaches for developers. The new Spring Boot framework, on the other hand, literally brings much-needed simplification and automation to the process of using Spring. And it can put some refreshing fun back into application development.

“Spring Boot,” Craig Walls states in his new book, “is an exciting new way to develop Spring applications with minimal friction from the framework itself. Auto-configuration eliminates much of the boilerplate configuration that infests traditional Spring applications. Spring Boot starters enable you to specify build dependencies by what they offer rather than use explicit library names and version. The Spring Boot CLI takes Spring Boot’s frictionless development model to a whole new level by enabling quick and easy development with Groovy from the command line. And the [Spring Boot] Actuator lets you look inside your running application to see what and how Spring Boot has done.”

You do not need a lot of Spring experience to benefit from this book. You do need some Java background, and it is helpful to have used Groovy, Gradle and Maven a few times. But the book’s text is written smoothly, and it is well illustrated, with numerous code examples and a few screen shoots. So Java developers who are fairly new likely can use it and pick up new skills.

While going through the book, you develop a reading-list application using Spring Initializr, Spring Boot, Spring Tool Suite, and other tools. In the project, you “use Spring MVC to handle web requests, Thymeleaf to define web views, and Spring Data JPA to persist the reading selections to a database,” Craig Walls explains. Initially, at least, “an embedded H2 database” is employed during development.

Walls’s book is divided into eight chapters:

1. Bootstarting Spring
2. Developing your first Spring Boot Application
3. Customizing configuration
4. Testing with Spring Boot
5. Getting Groovy with the Spring Boot CLI
6. Applying Grails in Spring Boot
7. Taking a peek inside the Actuator
8. Deploying Spring Boot applications

Four appendices also are presented: Spring Boot developer tools, Spring Boot starters, Configuration properties, and Spring Boot dependencies.

Bottom line: with Spring Boot providing much of the heavy lifting, you likely will gain better feelings about the venerable Spring framework. You may even wind up with a healthy new respect for it. And Spring Boot certainly should add more years to Spring’s usefulness and viability in the marketplace.

Si Dunn

Attack of the Killer Parentheses: ‘Clojure in Action, 2nd Edition’ – #bookreview

Clojure in Action, 2nd Edition

Amit Rathore and Francis Avila

Manning – paperback

Clojure seems to be afflicted with a measles-like outbreak of parentheses, and it generally just looks strange to many software developers. And there’s a good reason for that, as this book’s two author point out in their recently released second edition.

“Clojure’s syntax is derived from its Lisp roots: lots of parentheses. It’s alien to most developers with experience in languages with Algol-inspired syntax like C, C++, Java, Python, Ruby, Perl, and so on.”

But Clojure also is an intriguing and powerful choice for many software development projects, Amit Rathore and Francis Avila insist. Clojure is “a functional Lisp on the JVM” (the Java Virtual Machine), and: “It is impossible to separate the Lisp, functional programming, and JVM features of Clojure. At every step they play on each other and tell a compelling software development story….”

I have been tinkering with Clojure on the side, at random spare moments, for more than two years, using a disorganized approach of looking at web postings, building and modifying simple projects that others have posted, and sometimes looking at Clojure how-to books as time permits.

From my perspective, Clojure in Action, 2nd Edition fills a beginner’s need for a friendly, well-organized approach to learning the language and putting it to work effectively. Developers already working with Clojure can benefit from having this book, too, as a handy reference. It covers a lot of ground, using reasonably short paragraphs and offers many short code examples to illustrate its key points.

Clojure in Action, 2nd Edition “assumes no prior experience with Lisp or with any functional programming language,” the authors emphasize. “It starts out with the absolute basics and slowly layers on the different features of the language in  a way to make it all fit together in an intuitive way. It takes a first-principles approach to all the topics, first explaining why something needs to be done a certain way, and only then talking about the Clojure way.”

Clojure is not a language for absolute beginners. The authors assume “you’re familiar with an OO [object-oriented] language like Java, C++, Ruby, or Python, but no background in Java, Lisp, or Clojure is required.” They also assume you have downloaded Clojure and gotten it working on your PC. You can read more about Clojure and download it here.

This expanded 2nd edition states that it covers the “new” features of Clojure 1.6. Of course, Clojure already is up to 1.8, but I have tried many of the code examples at various points in the book and have not encountered problems while running 1.8.

Si Dunn

Step away from the ‘smartphone’ and try using your hands and mind to make something – #bookreview

The Make: Series of How-to Books

A British scientist made headlines a few years ago when she warned that young people no longer make or repair things. It has become all too easy for them now, she cautioned, to simply throw away old or broken devices and buy new ones.

A key point was that many things currently being discarded could be fixed or refurbished and put to new uses. It would just take a little effort, a little learning, and some imagination.

I ran into some of that “no longer make or repair things” attitude a few years ago while working temporarily as a substitute teacher. If you have ever been a substitute in a public high school or middle school, you likely know that students often view “subs” as an excuse to pay absolutely no attention to anything he or she says.

When I could get no interest or response to the day’s assigned work in a science class, I tried introducing a challenge: Imagine you have become stranded on a desert island in the Pacific Ocean, and you have just a few items with which to try to survive and attract the attention of a passing ship. The items ranged from coconuts and palm fronds to a pocket mirror, a small magnifying glass, a couple of cups, some string and a safety-pin.

I figured the kids might come up with some clever ways to (1) crack open the coconuts for food and liquid, (2) start a fire using a magnifying glass and dried palm fronds, (3) use the string and safety-pin to catch a fish to cook over the fire, (4) use the cups to boil seawater and capture the steam to make a little drinking water, and (5) prepare a separate pile of palm fronds to burn as a rescue signal to a passing ship.

Ha. At first, the students seemed intrigued and engaged by the challenge. They immediately started calling out survival “strategies.” Unfortunately, most of their ideas started with two concepts: “First, I’d go to the mall and buy…” or “First, I’d go online and buy….”

The reality of being stranded in isolation without immediate communication did not even register with them at first. When they did begin to try to imagine surviving without their smartphones, they quickly ran out of ideas and became sullen or antagonistic toward me.

This experience also became the straw that finally broke the back of my desire to continue as a substitute teacher. I had grown up at a time when making, tinkering, building, and repairing all were noble pursuits for a teenager interested in science, electronics, space and engineering. If I wanted a shortwave radio or a new type of model airplane or a small rocket I could launch in my back yard, I built them from scratch or combined pieces of previous projects. None of this experience registered with my students. And my next attempts to stir up enthusiasm for making and repairing things similarly fell flat.

Make It So?

Do you worry that your kids are growing up not knowing how to make things or fix things? Do you fret that you no longer remember how to make things or fix things?

Working with your hands, eyes and brain – and not just mindlessly swiping an index finger across a tiny screen – can be both physically and mentally rewarding.

Of course, the web is alive with “how to” information for making or repairing almost anything. And I make occasional pilgrimages to public libraries and bookstores to find reference materials and instruction books related to specific projects.

I am an unabashed fan of the “Make:” series of books from Maker Media. I don’t build all of their projects, but I do try out some of them. And I enjoy reading about zany, yet sometimes practical, stuff such as (1) how to use a magnet to tell if money is counterfeit, (2) how to create artwork that actually does something, using just a handful of electronic components, (3) how to generate electric power with several lemons connected in series, or (4) how to make some really good paper airplanes and paper helicopters. The “Make:” books consistently feature clear, well-organized instructional text, illustrations and photographs of how things go together.

Books such as Tinkering: Kids Learn by Making Stuff (2nd edition), Easy 1+2+3 Projects, and Planes, Gliders, and Paper Rockets can appeal to parents and children who are in elementary school or older. For older kids and their parents, or for would-be engineers, Make: books such as Bluetooth, Getting Started with Intel Edison, and 3D Printing Projects can be helpful and enlightening how-to guides. Books on numerous other topics also are offered.

Do your kids (and/or you) seem unhealthily addicted now to clutching and staring at smartphones all day? You may want to try putting the devices aside and seeing what you can create with your hands, your mind, some household materials and a few readily available gadgets that don’t require pricey data plans and contracts.

You can do it! Power off now! (Okay, for just a few minutes at first if you insist and if you have a really bad case of smartphone withdrawal.)

— Si Dunn

Go in Action – A comprehensive overview, from ‘Hello, Go’ to ‘Testing & Benchmarking’ – #programming #bookreview

Go in Action

William Kennedy, with Brian Ketelsen and Erik St. Martin

Manning – paperback

The authors of Go in Action assume that you are a working developer who is proficient with some other language, such as Java, Ruby, Python, C# or C++.

However, their book is written well, has good illustrations and offers small to moderate-sized code examples. So, someone who is less than a “working developer” also can pick up this work and use it to get a good start on mastering Go.

The Go language, developed at Google, “has concurrency built in.” Also: “Go uses interfaces as the building blocks of code reuse.” And it has “a powerful standard library,” Kennedy, Ketelsen and St. Martin point out. (They are well-known figures in the Go community.)

Some readers likely will mixed feelings about using the online Go Playground rather than downloading and installing the software. But the book’s three authors emphasize: “Go developers use the Playground to share code, ideas, test theories, and debug their code, as you soon will too.”

They add: “Without installing Go on your computer, you can use almost all that Go provides right from your web browser.”

The major topics covered in the book include Go’s language syntax, type system, concurrency, channels, and testing, among others. If you want a clear, concise and reasonably comprehensive overview of Go, consider Go in Action, from the get-go.

Si Dunn

 

 

‘Meteor in Action’: A good how-to guide for learning a popular JavaScript framework – #programming #bookreview

 

Meteor in Action

Stephan Hochhaus and Manuel Schoebel

Manning – paperback

I have worked with several JavaScript frameworks, and Meteor has become a favorite, mainly because it is closely related to the MEAN stack family and plays well with MongoDB and Node.js.

As the Meteor in Action authors note: “Meteor runs on top of Node.js and moves the application logic to the browser, which is often referred to as single-page applications. The same language is used across the entire stack, which makes Meteor an isomorphic platform. As a result, the same JavaScript code can be used on the server, the client, and even in the database.”

Meteor is versatile and easy to use, particularly for simple applications. But, like any other JS framework, it does have a learning curve. And there are some inherent weaknesses, as well as strengths, that must be considered when deciding if Meteor is the right choice for a particular project.

Meteor in Action can give you a good grounding in Meteor’s basics, plus solid momentum along the path toward Meteor mastery. The book begins with a polished and not-too-lengthy overview of Meteor’s Open Source framework. Then it shows how to build a small, reactive game application. From there, the major topics include: templates; data; fully reactive editing; users, authentications, and permissions; exchanging data; routing; the package system; advanced server methods; building and debugging; and going into production.

Another reviewer has stated that parts of this book may be outdated soon, because some of the technology associated with Meteor is changing fast. But not every work site immediately will keep up with the latest and “greatest” changes to Meteor software, of course. And, you may encounter applications needing support that are still running earlier releases of Meteor.

This  is a worthy and valuable book for anyone just starting to learn Meteor. And it likewise can be helpful to Meteor users who want better understanding of the framework, how it is put together, and how it can be used effectively in large applications. The two authors of this book have been working with Meteor since the framework’s “infancy” in 2011.

Si Dunn

 

 

 

The Survivors: A complex mystery unfolds in this good series-debut novel – #fiction #bookreview

 

The Survivors

A Cal Henderson Novel

Robert Palmer

Seventh Street Books – paperback, Kindle

 

What a swamp a single lie can lead to.

Washington, D.C., psychologist Cal Henderson thinks this to himself while he is trying, years later, to sort out the real reasons behind why his two young brothers and father were shot to death. and then his mother committed suicide as he watched, helpless.

Cal’s friend, Scottie Glass, also was shot and badly wounded that day. But just before Cal’s mother took her own life, she saw Cal in an upstairs window and signaled him, strangely, to get down, to hide.

Why had she killed four people including herself and left Cal’s friend critically injured, yet warned Cal to hide? Hide from what? Or whom?

Until now, Cal has managed to keep most of these childhood horrors somewhat in check, stored far back in his mind. His psychology practice is thriving, and his clients have many issues of their own to keep his mind occupied and challenged.

Then Scottie Glass suddenly shows up after many years, fiercely determined to find out who really shot him and all of the others. And the way Scottie starts confronting important people in the nation’s capitol of purchased power and influence quickly lands him–and Cal, by association–on the FBI’s radar. Cal’s job, at first, is to try to keep Scottie out of jail. But Cal soon is drawn into his friend’s dogged investigation and soon has to take the lead as Scottie keeps using his computer skills to uncover more and more links and leads that could answer Cal’s questions, too.

A caution: The Survivors likely will not be a “fast read.” The story is complex. And it is well written, with many characters, details, and settings. So be patient; give things time to develop. For me, the story began to click solidly into place at page 75, when FBI agent Jamie Weston tells Cal: “D.C. is a whole different universe. You think you’re playing Go Fish for this guy Scott Glass. Then you find out the game is really Poker and the man holding all the cards is some sort of senator or lobbyist you’ve never heard of.”

Indeed, how a years-ago murder-suicide can have a bearing on present-day, multi-billion-dollar defense contracts is just one part of the intricate mystery that unfolds in this series-debut first novel written by Robert Palmer, a practicing Washington, D.C., lawyer and law professor.

Si Dunn