Friday, August 21, 2015

“Data Visualization with JavaScript ” By Stephen A. Thomas, 1st Edition.

Data visualization with JavaScript for websites

Just a fair warning, you should be somewhat familiar with JavaScript, HTML, and CSS as this book is designed to teach you how to create a wide range of data visualizations for websites. So what is data visualization? Data visualization is an effective way to convey numerical data into something that viewers can quickly interpret such as pie graphs, line graphs, and etc.

The text is detailed, well structured, and easy to follow. The visualization examples are simple and straightforward. The colors used in the visualization examples and source codes are vivid, vibrant, and appealing to the eye. The author also includes a website where you can obtain all of the source codes used in the book.

Overall, this is an excellent reference if you are looking for data visualization codes to implement into your web pages.

Sunday, May 24, 2015

“How Linux Works” By Brian Ward, 2nd Edition.

A must for anyone looking to get into Linux

This book is for anyone who is interested in learning Linux. With that said, I highly recommend that you have a solid foundation when it comes to computers and be willing to learn and to follow along.

The chapters are grouped into three basic sections. The first part is introductory, giving you a bird’s-eye view of the system and then offering hands-on experience with some tools you’ll need for as long as you run Linux. Next, you’ll explore each part of the system in more detail, from device management to network configuration, following the general order in which the system starts. Finally, you’ll get a tour of some pieces of a running system, learn some essential skills, and get some insight into the tools that programmers use.

The content is detailed and informative while the exercises are engaging and practical. This book has a lot to offer and it’s the reader’s responsibility on how much they want out of it. I highly recommend anyone reading this book to have a Linux machine to work with so that they can follow along with the exercises.

Thursday, May 7, 2015

“Automate the Boring Stuff with Python: Practical Programming for Total Beginners” By Albert Sweigart, 1st Edition.

Amazing book for anyone wanting to learn how to program

Out of all the programming languages, Python is one of the easiest to learn. Some of the advantages that Python has over other programming languages are that it is easy to read and write, less strict on syntax, and simpler to work with. This makes Python ideal for anyone who is new to programming. This book is not designed to be used as reference material; it’s a guide for beginners.

Anyone can pick up this book with no programming knowledge and by the time you are through, you can be building your own programs. From the beginning to the end of the book, the author does a good job in explaining and elaborating and doesn’t make the reader feel lost. The text and code are easily distinguished and easy to read. There are also bits of humor incorporated within the book which is greatly appreciated.

About a third of the book is used to teach the basics of expressions, flow control, functions, lists, dictionaries, structuring data, and manipulating strings. For the rest of the book, the author utilizes everything that you learned by creating programs that automate tasks such as:

Pattern matching with regular expressions
Reading and writing files
Organizing files
Web scraping
Working with Excel spreadsheets
Working with PDF and word documents
Working with CSV files and JSON data
Keeping time, scheduling, tasks, and launching programs
Sending email and text messages
Manipulating images
Controlling the keyboard and mouse with GUI automation

This programming books stands above most of the programming books I have read. The problem I have with most programming books is that they teach you the basics and that is it. What I really like about this particular book is that you use the knowledge that you learned throughout the book and create programs that are practical and useful in the real world.

Friday, May 1, 2015

“The GNU Make Book” By John Graham-Cumming, 1st Edition.

 The definitive GNU Make book

GNU Make is an automation tool for software builds. With that said, this book is intended for readers who have experience working in a Linux or Mac OS X environment, experience with programming, know what GNU Make is, and how they can use it to their advantage. If you are new to GNU Make, I recommend that you read up on GNU Make and work with it a little first before reading this book to better grasp the concept.

The author does well in explaining and elaborating the content. The code is easy to read and to follow along. The pages are structured well so that you can easily distinguish what is code and what is text. Here is a list of topics discussed in the book:
  • A thorough rundown of the basics of variables, rules, targets, and makefiles.
  • Fix wastefully long build times and other common problems.
  • Gain insight into more advanced capabilities.
  • Master user-define functions, variables, and path handling.
  • Weigh the pitfalls and advantages of GNU make parallelization.
  • Handle automatic dependency generation, rebuilding, and non-recursive make.
  • Modify the GNU Make source and take advantage of the GNU Make Standard Library.
  • Create makefile assertions and debug makefiles.
Overall, this is a great GNU Make book that has a lot of useful content from a highly credible author.

Friday, July 5, 2013

"Realm of Racket: Learn to Program, One Game at a Time!" By Matthias Felleisen, Conrad Barski M.D., David Van Horn and Eight Students Northeastern University, 1st Edition.

Fun programming with Racket

What exactly is Racket? Racket is a fairly new programming language that is derived from the Lisp family to be a platform for design and implementation. This book is written for those who want to launch their education in computer science or to those who want to expand their knowledge and experience in programming. It is recommended that you have some form of programming experience when reading through this book.

The authors’ tone is humorous and informative. The authors did a great job in using games and comics to keep the reader engaged and interested. The comics and pictures are refreshing to looking at and make the concepts easy to understand. Also, the source code of the games in the book are available with the code case of Racket in the collects/realm/ folder.

I highly recommend this book for anyone who is interested in exploring a unique world of programming.

"Functional JavaScript: Introducing Functional Programming with Underscore.js" By Michael Fogus, 1st Edition.

Functional JavaScript with Underscore

What is functional programming? Functional programming is when functions are used instead of objects or procedures to build a program. This book is meant to introduce functional programming in the context of what is and what is not possible with JavaScript. The intended audience is anyone who is looking to learn more about functional programming and is expected to have a base-level understanding of JavaScript, a working understanding of object oriented programming, and base-level understanding of underscore.

The chapters include introducing functional JavaScript, first-class functions and applicative programming, variable scope and closures, higher-order functions, function-building functions, recursions, purity, immutability, and policies for change, flow-based programming, and programming without class. The author's writing style is direct and informative. There are a lot of useful information concentrated into this book however there may be some chapters that may seem a bit dry to the audience. The author also gives the link to all the source codes from the book however typing out the source code instead of downloading the source code is recommended.

Overall, if you are interested in functional programming using JavaScript with Underscore, I would highly recommend this book.

Sunday, June 9, 2013

"The Modern Web: Multi-Device Web Development with HTML5, CSS3, and JavaScript" By Peter Gasston, 1st Edition.

Great book for modern coding methods and techniques in current web standards

In the past, people would only be able to browse the internet through a computer. But now, people use many other devices such as desktops, laptops, smart phones, tablets, televisions, and other devices to browse the internet. In this book, Peter teaches modern coding methods and techniques that you can use to build websites that work across multiple devices or to a single device class you are targeting.

Peter’s writing style is clear, informative, and fluid which made the content easy to follow and understand. The pictures and screenshots within the book are crisp and clear which makes them easy to see and read.

Peter does an excellent job in teaching the core techniques and technologies that you need to know to build web projects across the range of devices. This book is a must for any web developer who wants to be up to date on the current developments in web standards.