Coding All-In-One For Dummies |
Author: Chris Minnick This book is described as offering an ideal starting place for learning the languages that make technology go, does it live up to this claim? A glance at the chapter titles shows a focus on coding for the web, mobile apps, and Python. Essentially, this is three books - an introduction to JavaScript, an short introduction to Flutter, and an introduction to data use with Python. It opens with a chapter on what coding is. The author suggests that people who've not coded before have a go at the beginner's tutorial on Hour of Code - an interesting approach to the problem of catering for complete novices alongside those with a little experience. The rest of the chapter briefly looks at what coding can do, the types of programming languages, and a tour of a web app. Chapter 2 moves on to one of the main thrusts of the book - programming for the web. Minnick starts with an explanation of how web pages work, and how to look behind the scenes with a news website. An overview chapter on becoming a programmer comes next, roughly speaking covering the parts of writing a program - researching, designing, coding, debugging. The next part of the book is concerned with basic web coding, starting with the basics of HTML, and following on with a chapter on getting more out of HTML. CSS comes next with a couple of chapters, and these are followed with chapters on Flexbox and Bootstrap. JavaScript is the next topic, and is really the main topic of the book with 14 chapters dedicated to it. After an introductory chapter on what JavaScript is, and one on writing your first program explaining how and where you can do this, this section of the book settles into a familiar pattern with chapters on variables, arrays, and operators, expressions and statements. Loops, branches and functions are tackled next, followed by functions and objects. The material is covered well. Having tackled the basics, there are a couple of chapters dedicated to more web specific topics - controlling the browser with the Window object, and manipulating documents with the DOM. Minnick then moves on to events, and input and output using HTML forms. The section ends with a chapter on callbacks and closures, and a look at using AJAX and JSON. The next major chunk of the book looks at creating mobile apps using Flutter. This section starts with a chapter explaining what Flutter is, what you need to develop mobile apps, and a chapter on getting to write your first 'hello from Flutter' app. Later chapters look at layout, actions, interacting with the user, navigation and lists, and animations. I'm not sure you'd end this section able to write a full mobile app but you'd have a feel for the concepts. Python is the next language to be considered. There's a general intro about the philosophy of Python, and instructions on installing a Python distribution. A chapter on working with data and the types of data file you might want to upload and stream comes next. This is followed by a chapter on conditioning data that introduces NumPy and pandas before looking at topics such as categorical variables and missing data. A chapter on shaping data mentions XML and XPath, TF-IDF transformations and graph data. The Python section ends with a crash course in MatPlotLib, and using graphs to visualize data. The final part of the book is titled 'Career Building with Coding', and has chapters on exploring coding career paths, undergraduate and graduate degrees, training on the job, and coding career myths. Would I recommend this book? I don't think so. I can see where the idea came from, to introduce coding in a non-specific way - but the reality is we live in a language-specific world. The individual sections - JavaScript, Flutter and Python - are fine in their ways, though Python and Flutter are very short changed. If you really wanted to learn to program in any of the individual languages, you'd be much better buying a book just on it, if only to save your arm muscles. My main complaint is about the title. which implies that this is going to be about coding as a language-independent topic, wheras in fact you're buying a compendium of much shorter books about specific languages with a bit of waffle at the end of each of them. To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.
|