Build an HTML5 Game

No Starch Press has published a number of programming books that impress me, both in their depth and in their accessibility.

Build an HTML5 Game is intended for people who already have a basic familiarity with HTML, CSS, and JavaScript. This book takes you beyond the typical “let’s introduce tags and build basic web pages” stuff you usually see and walks the reader through building an entire browser-based game, start to finish. The programming starts immediately in Chapter 1, which is cool. All the important facets are covered from sprite animation, transitions and transforms, game logic, levels and sound, and quite a bit more.

The reader who is most likely to benefit is the one who has at least a little programming experience, but wants to broaden their skills with an entry into game development. To that end, I suggest you already have a little experience making web sites and using JavaScript and jQuery. If you have previous experience developing Flash games and want to move to the present and future with HTML5, you will also find this book useful and an enjoyable way to get started.

I really enjoyed reading Build an HTML5 Game. The writing is clear and easy to follow, the examples are good, and the concepts provide a solid foundation on which you can build. This is not a comprehensive “everything you will ever need or want to know about game programming” sort of book, but rather a clean and enjoyable entry that helps you over the first hurdle of writing that first game. It then gives you ideas and tips to help you know what else is out there so you have a bit of a roadmap to continue learning as you figure out what sorts of games you want to create.

Disclosure: I was given my copy of this book by the publisher as a review copy. See also: Are All Book Reviews Positive?

The Cartoon Introduction to Philosophy

I like this sort of book, the type that combines complex ideas with approachable expression and style. It is even more enjoyable when I’m already interested in the topic.

The Cartoon Introduction to Philosophy provides a solid, basic foundation to the thoughtful contemplation and interesting ideas in philosophy. It is scheduled to be published in April 2015.

The book presents its information using an enjoyable graphic style that is well done and pleasant to the eyes. The topics are broken into six chapters, each of which builds on the previous. The order is logical, which is good for a book on philosophy, and is actually where we start after a short introduction. Logic is followed by a discussion of perception. This leads to a discussion of the mind, free will, God, and ethics.

The cartoon narrative that is the vehicle for these discussions uses a guide, Heraclitus, one of the early philosophers who predated Socrates. He takes the reader on a journey from the beginning to learn about philosophical thought from the earliest stage to later ideas that built upon, and often contradicted, them.

Most of the big names are mentioned along with a brief description of their main themes. This includes all your favorites across time, such as Plato, Descartes, and Mill. In total, I counted more than 20 different philosophers introduced. That is great in a comic-style book of 168 pages. The introductions are short and necessarily simplified, but this provides an excellent beginning to help the reader get the big picture.

I recommend the book for anyone from later elementary school through college who does not already have a basic understanding of philosophy and the main schools of thought.

Disclosure: I was given my copy of this book by the publisher as a review copy. See also: Are All Book Reviews Positive?

Learn to Program with Minecraft Plugins

My kids love playing Minecraft. I run a server for them. I would love for any of my kids to learn to program (and also to take over the server admin duties from me). This book immediately struck me as having great potential.

Learn to Program with Minecraft Plugins

Learn to Program with Minecraft Plugins: Create Flying Creepers and Flaming Cows in Java
starts slowly, but it says it is going to start slowly. As it must, the book begins with coverage of topics like installation and configuration. This is the only dull part of the whole book, and I don’t think that could be helped.

Once we get to the meat of the material, things pick up considerably. I love how the author chose to give a high level view of each topic first, to orient the reader. While doing so, consistent calming statements are made to reassure the reader that it is not necessary to understand everything being said at this stage. Then, once the big picture is painted, the details are filled in. The accompanying explanations are clear and written in an enjoyable manner.

I love how topics like pseudo-code are explained almost as an aside, but in a way that makes them seem almost obvious, as in “Oh yeah, why wouldn’t a programmer write something like that first to help the process along?”

Each chapter builds on the knowledge from the previous chapters while introducing topics in a logical order.

Almost any programming book will work for a highly motivated and brave student. However, this is one of those special books that I believe to be suitable for a tentative, interested-but-scared sort of student.

I’m impressed by the author’s ability to combine accurate details and descriptions of complex concepts in a way that I’m certain my kids could grasp and later apply to other programming languages and environments, should they wish to. Albert Einstein is reputed to have said, “If you can’t explain it to a six year old, you don’t understand it yourself.” Author Andy Hunt has deftly proven himself as one who understands. That he is also able to express these ideas to a novice-level audience without talking down to the reader is exceptional.

Disclosure: I was given my copy of this book by the publisher as a review copy. See also: Are All Book Reviews Positive?

Fire in the Valley, Third Edition

This is the first edition of this book to be published by Pragmatic Bookshelf, which I believe is an excellent fit as a company for the book’s content. The second edition was published back in 2000 by a publisher who specializes these days in a different sort of content. Plus, I love The Pragmatic Programmers series by Pragmatic Bookshelf and this history contained here belongs in this series. Good move for both the authors and the publisher.

Fire in the Valley, Third Edition is subtitled The Birth and Death of the Personal Computer, and for good reason. The book is a history of the types of computers that people bring into their homes, starting at the very beginning when this was just a dream for a few stalwart hobbyists willing to build their own computers. It continues through the usual suspects like MITS and Apple all the way to the present day when computing power has been grafted in to so many different devices that the meaningfulness of having “my own computer” isn’t quite the same as it once was.

The book covers not only historic events and figures, but also issues and philosophies that had an impact of the birth, growth, life, and death of many companies along the way. It also includes a ton of first-hand accounts from key players that make the story rich, interesting, and fun to read.

While this is being sold quite rightly as a history book, perhaps it should receive more fanfare as a chronology of a revolution, of a sweeping cultural shift. I lived through much of the era described in the book (I bought my first computer in 1981) and can easily remember a time when there were only three or four people in my school who had a computer at home, when there was no computer lab, or when the first computer labs were created and filled with Commodore PET computers that had no software other than an operating system, so there was nothing for students to do with or on them. Society is indeed different, and this book describes integral and foundational reasons why and how that change occurred. If this sounds interesting to you, this book is easily the best one I have encountered on the topic. That was true of the previous edition, and is even more true today with the third edition. Pick it up!

Disclosure: I was given my copy of this book by the publisher as a review copy. See also: Are All Book Reviews Positive?

Ubuntu Books I Wrote in 2014

Just in time for the end of the year holidays…

I have a new edition of Ubuntu Unleashed 2015 Edition (affiliate link), now available for preorder. This book is intended for intermediate to advanced users.

I also failed to mention on this blog the newest edition of The Official Ubuntu Book (another affiliate link), now in its eighth edition. The book continues to serve as a quality introduction for newcomers to Ubuntu, both the software and the community that surrounds it.

The LEGO Neighborhood Book

LEGO. There, now I have your attention.

The LEGO Neighborhood Book is another addition to the series of cool LEGO books published by No Starch Press. In it, you find a set of instructions for building anything from small features like furniture or traffic lights to large things like buildings to populate an entire neighborhood. Unlike the creations of my youth, these buildings are detailed structures. Gone are the standard, boxy things I used to make. Replacing them are fancy window frames, building mouldings, and seriously beautiful architectural touches. In fact, many of those features are discussed and described, giving a context for the builder to understand a little bit about them. Also included are instructions for creating different types of features to put in those buildings. Everything from art work to plants to kitchen appliances is in there.

I’ve said so much about the books in this series, and it all holds true here, too. Part of me feels bad for the short review here, but the other part of me hates to repeat myself. In this instance, the praise of the past still applies. If you are a LEGO enthusiast, this is worthy of your consideration. Pick it up and take a look.

Disclosure: I was given my copy of this book by the publisher as a review copy. See also: Are All Book Reviews Positive?

Linux Distro for Kids?

Short, informal survey. Feel free to comment here or via private messages/email. I may not respond to all comments, but will read with appreciation any you make.

What is your favorite Linux distribution that is intended for use by kids, say anywhere between the ages of 8 and 18? If you have more than one, feel free to name each.

Why do you like it?

If your preference for kids is a standard distro and not one intended for that audience, which is it and why?

Seeing from Another Point of View

You never really understand a person until you consider things from his point of view — until you climb into his skin and walk around in it.
–To Kill a Mockingbird, Atticus Finch

These aren’t purely my thoughts. I’m sure I read something somewhere that sparked them, but I don’t have a link or citation, so I’m just being honest that I am not the source of all that I have written here, although I am using my words. Oh, and great book.

I’ve been thinking about this. I love the idea and I will always strive to learn about and understand other’s perspectives. But, I feel inadequate, like if I am to be honest, I really cannot do this. Not completely, anyway.

No matter how hard we try, we will each still see things with some skewing from your own perspective. We can never really know what it’s like to be that other person.

When you hear, see, or experience other people’s lives you may try to put yourself in their shoes and consider how you would deal with life as it has been dealt to them. That is noble.

However, it is impossible for us to actually do so. We hear, see, and experience things differently and our history and emotional, spiritual, mental, and intellectual makeup and status affect that. We each create our own reality based on our experiences filtered through all those layers of what we call self.

You can live with someone your/their whole life but that doesn’t mean you really understand their perspective. You may know intimate details or have a pretty good idea of what the other person is likely to think or do in certain situations based on past responses and patterns of behavior, but that is not really the same thing.

No matter how much we think we do, we are unable to climb fully into the mind and perspective of someone else. We are all made up of our perceptions, experiences of success and failures, societal programming, genders, and more. Humans are complex

To fully grasp another person’s perspective in its purest form we would have to wipe clear all of who we are and then copy over to ourselves who the other person is. It is not possible to eliminate our biases this way.

I’m starting to think that we can never really climb inside someone else’s skin, but we can hope to acquire a better understanding. The attempt is worth the effort, even if it can never be complete. We can learn to walk beside someone else. We can attempt to see things from their perspective. In doing so, we each hope we gave and gained something from it, drawing each of us a little bit closer to the other.

Every Page is Page One

Just about all of you reading this know that I am a technical writer. One of the things I do to keep up to date with the latest trends in the field is read. I read books, articles, blogs, whatever I can find that relates. I especially enjoy Mark Baker’s blog, Every Page is Page One. Baker consistently posts articles that make me think, and in good ways. When I heard he has a book out, I contacted the publisher immediately.

As a side note, Baker’s publisher, XML Press, consistently produces books that I find useful. Every one I have read is well-written, authoritative, and filled with real-world experience and practicality.

Every Page is Page One: Topic-based Writing for Technical Communication and the Web shares the first part of its title with the blog, but the content is not directly from the blog. Rather than a collection of posts on assorted topics assembled into book form, this is a well-thought-out and well-organized text. In it, Baker observes that documentation projects tend to think about technical writing from a very book-centered paradigm. This was once ideal, but in the age of communicating technical information electronically, it forces limits on the end product that hinder the true goal of technical writing, the goal of delivering the right information at the right moment to the person who is seeking it. As someone who is not only a technical writer, but who also has a degree in information resources and library science, I have multiple reasons for supporting this goal.

What Baker does is give tangible form to thoughts and ideas that he, other technical writers, and even I have had in the abstract. How do we provide needed information to people who seek it in an age where the web makes almost anything searchable? Do manuals still matter? What about other forms of documentation? Are there changes to our style of communication, to our style of writing and presenting information, that will make the information seeker’s task easier? Baker discusses serious and realistic ways we can improve our field. It is all organized around the idea that we can no longer control the order in which information seekers will consume or even find our information, that every page (in a documentation wiki, for example) should be created in a way that enables a user to immediately understand and acquire what they need when they need it. Since we know we do not have this control like we had in a printed book, we must modify how we write and present information to fit the expectations of the seeker.

I enjoyed reading this book. I have benefited personally from reading this book. I am taking this book in to my workplace and sharing it with the other tech writers there and I believe our workplace and our employer and our customers will benefit from this book. If you work in the field, I’m convinced you will, too. The whole book is good, but my favorite parts are Section I, which lays the foundation in five chapters, and Chapter 22, which gives very practical and useful advice for making your case to others when you begin to try to make the changes the book describes.

Disclosure: I was given my copy of this book by the publisher as a review copy. See also: Are All Book Reviews Positive?

Ubuntu Planet Feed Changed

For years the main feed for my blog has been posted to Ubuntu Planet. Early on, most of my posts were strictly Ubuntu-related. That hasn’t been true for a long time. I changed my feed today in the Ubuntu Planet configuration and starting from whenever the cron job on that server reads the new config file, only posts with a specific tag should appear on the feed.

Everything that has appeared on Planet Ubuntu is also tagged, so I can keep track. I hope this doesn’t cause a huge posting flood when the new config is read…if so, apologies in advance.

Let me know in the comments if you are interested in things like my computer book reviews continuing to appear in the feed.