Sams Teach Yourself JavaScript in 24 Hours (5e)

Author: Phil Ballard, Michael Moncur
Publisher: Sams, 2012
ISBN: 978-0672336089
Audience: Beginner
Rating: 3
Reviewer: Ian Elliot

JavaScript is an easy to learn language so can 24 hours turn you from a beginner to an expert?

The simple answer is that it depends what you mean by "expert". JavaScript has a range of uses from tiny amounts of embedded code in otherwise simple pages to thousands of lines that create a full web app. JavaScript isn't even confined to the client side browser page anymore. Node.js and operating systems like Chrome place it in the server and the desktop respectively. So what it means to be an expert is difficult to say.

If you simply want to learn enough JavaScript to add a few features to a web page then 24 hours and this book in particular will probably be enough - but there is so much more to JavaScript than this.

Starting from the basics the first few chapters give you an introduction to JavaScript. Its history and its relationship with the browser and the DOM in particular. It is good that the DOM is introduced early because if you are going to script web pages then you can't avoid it. Unfortunately it also introduces document.write which really should be avoided if possible. The next chapter does a rush job on introducing variables, operators and event handling - topics which don't quite hang together but which are essential for getting things done. Next we have functions, scope, DOM objects built in objects and primitive data types - all introduced with enough information for you to make use of them and with a few comments that point you in the right direction for the future.




Part 2 is about advanced JavaScript but what is means by advanced is varied. Hour 6 introduces the flow of control statements that you need to write real programs - if, for, while  etc. If you are a complete beginner this probably won't be enough for you to master the topic but with practice you should get there. The next topic is object oriented programming which is a bit of a step up in terms of concepts. However the presentation isn't deep enough - it just presents the very basic ideas and does so quite quickly. It is good that the topic is included if only so that the reader knows that there is something more to find out about. The remainder of the section moves on to consider practical things - JSON, events and Cookies. Given the major problem here is the variation between browsers it would probably be better to introduce jQuery or something similar.

The third part of the book is dedicated to the DOM - we have the basic idea of navigating and modifying the DOM. There is also an hour spent on using JavaScript to work with CSS which is often not included in introductions. The final two hours are on good coding practice and graphics and animation. If you are thinking canvas object - no the animation is done via basic positioning and CSS.

Part 4 is about Ajax and after a brief introduction we have a lesson on how to create a simple Ajax library. It would be much better to present the basics and then move on to using say jQuery for Ajax - you almost certainly don't want to be spending time creating your own library.  Which is what the next part of the book is about but libraries in general. After a quick look at what libraries are available we have an hour spent on jQuery and one on jQuery UI.




The final section of the book consists of three hours spent on other web technologies. This covers, multimedia, HTML5 where we do at last meet the canvas element and JavaScript beyond the web page. This last topic is really about writing addins for Chrome rather than the wider issues of say web apps, server side JavaScript etc.

This isn't a bad introduction to JavaScript and it does try to give you a modern and slightly more sophisticated look at the subject but in the main these attempts are too small and insubstantial to make a deep impact on a beginner. There is also very little advice on what tools to use to create JavaScript at the start of the book and even the appendix on tools really only touches on Notepad++ and the like. There is no mention of using a full IDE such as Netbeans, Web Matrix etc to build integrated HTML/JavaScript. There is also the feeling that various newer topics have been tagged on - for example why have a section on animation but only mention canvas at the very end of the book. Why have a section on multimedia but none on forms say. Finally why is HTML5 thrown in at the end as an after thought? This reads like a book that was once up-to-date but now has just been revised piecemeal. 

If you want to learn a little JavaScript and a lot of the ways that it is used within web pages then this is possibly the book for you. If you want to really master JavaScript then you need to look for something deeper.



Data Structures & Algorithms in Python

Author: Dr. John Canning, Alan Broder and Robert Lafore
Publisher: Addison-Wesley
Date: October 2022
Pages: 928
Print: 013485568X
Kindle: B0B1WJF1K9
Audience: Python developers
Rating: 4
Reviewer: Mike James
Data structures in Python - a good idea!

The Big Book of Small Python Projects

Author: Al Sweigart
Publisher: No Starch Press
Date: June 2021
Pages: 432
ISBN: 978-1718501249
Print: 1718501242
Kindle: B08FH9FV7M
Audience: Novice Python developers
Rating: 4
Reviewer: Lucy Black
A project book? A good way to learn Python?

More Reviews

Last Updated ( Tuesday, 23 July 2019 )