Unbeknownst to their audience, technical teachers must walk a very fine line.
Without realizing it, readers put a lot of faith into the teacher. After all, they must be on the path ahead of the reader, drawing from their experiences, and distilling down the parts they feel would benefit students the most.
For example, a book on Laravel for beginners must illustrate enough to get a new programmer started, while not overwhelming them with unnecessary tedium.
Dayle Rees is an expert at this.
Throughout his books, Dayle presents content in a playful tone, using illustrations, dialogue, and asides that enhance the points he is making. It’s a departure from the rigid technical documentation and books, but is a welcome change.
In his earlier works, Dayle used colorful, mythical stories to set up his point, however, in Code Smart he has moved away from them. I enjoyed the stories and was slightly disappointed to see them missing. I can see why he removed them as people may see them getting in the way.
Fortunately, Dayle’s humor and conversational writing style remains to good effect!
What does Code Smart cover?
As is standard with Laravel books, Code Smart begins with installation of a local coding environment, either Homestead or Valet, and moves right into an overarching explanation of the Laravel lifecycle.
I was pleased to see Dayle cover some peripherals at the onset, such as Namespaces, JSON, and Composer before diving straight into Laravel-specific code. These concepts, while not unique to Laravel, are essential to being successful while working IN Laravel!
The number of techniques a programmer must be aware of can be intimidating, however Dayle has effectively captured the most important ones prior to diving in to Laravel.
Once the stage is set, Dayle moves through configuration, routing, requests/responses, and templating. By this point, a reader should have a good grasp of how to get around in the framework. Fortunately though, Dayle doesn’t stop there!
Dayle begins to peel back the layers of Laravel, first by deftly explaining Facades. Each consecutive chapter covers a more advanced concept, from Eloquent, to Dependency Injection, and finally an explanation of Laravel’s Container.
Dayle also has written a very efficient introduction to programming in PHP, designed especially for beginners, called PHP Pandas - In case you haven’t picked up on it, he’s got a thing for pandas… can you blame him?
Strengths and weaknesses
Capturing coding concepts on paper is a challenging undertaking. Any inherent “weakness” in Code Smart is not due to the author, but would more so be attributed to trying to format logic, intuition, and experience into digestable examples. In other words, code often plays a much larger role than what can be illustrated in a snippet formatted for a book.
Also, if you are looking for a (boring) technical manual, Code Smart is not it.
The greatest strength of Code Smart was apparent to me as soon as I’d read the table of contents. Dayle has chosen an effective path through a myriad of potential options. He carefully builds concept upon concept in a way that only an experienced teacher can.
Would I recommend Code Smart?
As someone who has spent the better part of the last two years in Laravel work, I thoroughly enjoyed reading Code Smart.
Whether you are just beginning to dabble in Laravel, or are more seasoned, Code Smart would be a worthy addition to your learning library. The way Dayle weaves delight into what may otherwise be a sterile topic is refreshing!
Want to read more tips and insights on working with a website development team that wants to help your organization grow for good? Sign up for our bimonthly newsletter.
By Jesse Schutt
Director of Engineering
Jesse is our resident woodworker. His signature is to find the deeper meaning in a project and the right tool for the job.