Windows PowerShell 3.0: Step by Step – A huge guide to things you can do after you’ve found PowerShell – #bookreview

Windows PowerShell 3.0: Step by Step
Ed Wilson
(Microsoft Press – paperback, Kindle)

 

Wondering what the “Open Windows PowerShell” option does on your Windows 8 PC?

There’s a book for that: Windows PowerShell 3.0: Step by Step by Ed Wilson.

According to Wilson, “Windows PowerShell 3.0 is an essential management and automation tool that brings the simplicity of the command line to the next generation operating systems.” It is “included in Windows 8 and Windows Server 2012, and portable to Windows 7 and Windows Server 2008 R2” and “offers unprecedented power and flexibility to everyone from power users to enterprise network administrators and architects.”

Windows PowerShell is accessed as a command console that also offers a programming language. This means you can create files that will perform some automated actions using “cmdlets” (pronounced “command-lets”) at the PowerShell prompt. The cmdlets, Wilson writes, “are like executable programs, but they take advantage of the facilities built into Windows PowerShell, and therefore are easy to write.” cmdlets are not scripts, he adds, “because they are built using the services of a special .NET Framework namespace.”

In one basic, introductory example in Wilson’s book, you create a batch file — TroubleShoot.bat — that automatically enters four commands in sequence and pipes the results of each command to a text file:

ipconfig /all >C:\tshoot.txt
route print >>C:\tshoot.txt
hostname >>C:\tshoot.txt
net statistics workstation >>C:\tshoot.txt

Wilson’s book spans 666 pages, so there are many other features and uses for PowerShell that should please power users, technical staff, Windows network administrators, and Windows networking consultants. Some programmers also will relish its opportunities to write various types of PowerShell files and create functions, subroutines, modules, and other processes.

If you are studying to become a Microsoft Certified Solutions Expert (MCSE) or Microsoft Certified Trainer (MCT), you may know this already: Windows PowerShell is considered “a key component of many Microsoft courses and certification exams.”

Windows PowerShell 3.0: Step by Step is well written, and it is solidly illustrated with code examples, screenshots, and other graphics. The author is a senior consultant at Microsoft and a well-known scripting expert. Readers are not expected to have “any background in programming, development, or scripting.” So, it is a good (albeit hefty)  how-to guide for PowerShell beginners and intermediate users.

Si Dunn

Building Web, Cloud, & Mobile Solutions with F# – #programming #bookreview

Building Web, Cloud, & Mobile Solutions with F#
Daniel Mohl
(O’Reilly – paperback, Kindle)

F# (pronounced “F-sharp”) is a relatively new functional, open-source programming language developed by Microsoft and the F# Software Foundation. F# can be used to create scalable applications with ASP.NET MVC 4, ASP.NET Web API, Windows Communication Foundation (WCF), Windows Azure, HTML5, Web Sockets, CSS3, jQuery Mobile, and other tools.

Daniel Mohl’s Building Web, Cloud, & Mobile Solutions with F# is a well-written guide to “everything you need to know to start building web, cloud, and mobile solutions with F#.” Mohl also give some how-to examples using a range of technologies, libraries, and platforms, including SignalR, CouchDB, RavenDB, MongoDB, and others.

Mohl says his book is “intended for technologists with experience in .NET who have heard about the benefits of F#, have a cursory understanding of the basic syntax, and wish to learn how to combine F# with other technologies to build better web, cloud, and mobile solutions.”

In other words, this should not be your first book about F# or the relevant technologies that also are covered. Mohl recommends Chris Smith’s Programming F#, 3.0 as a first step toward learning the language.

In its 160 pages, Building Web, Cloud, & Mobile Solutions with F# offers five chapters, three appendices, and a number of code samples and screen shots. The chapters and appendices are:

  • 1. Building an ASP.NET MVC 4 Web Application with F#
  • 2. Creating Web Services with F#
  • 3. To the Cloud! Taking Advantage of Azure
  • 4. Constructing Scalable Web and Mobile Solutions
  • 5. Functional Frontend Development
  • Appendix A: Useful Tools and Libraries
  • Appendix B: Useful Websites
  • Appendix C: Client-Site Technologies That Go Well with F#

Mohl’s text also contains numerous links to important and useful websites.

He notes that “the primary focus of this book is on how to use F# to best complement the larger technology stack”, so he spends “a lot more time talking about controllers and models than views. F# provides several unique features that lend themselves well to the creation of various aspects of controllers and models.”

Si Dunn

Programming C# 5.0 – Excellent how-to guide for experienced developers ready to learn C# – #bookreview

Programming C# 5.0
Ian Griffiths
(O’Reilly, paperbackKindle)

Ian Griffiths’ new book is for “experienced developers,” not for beginners hoping to learn the basics of programming while also learning C#. The focus is “Building Windows 8, Web, and Desktop Applications for the .NET 4.5 Framework.”

Earlier editions in the Programming C# series have “explained some basic concepts such as classes, polymorphism, and collections,” Griffiths notes. But C# also keeps growing in power and size, which means the page counts of its how-to manuals must keep growing, too, to cover “everything.”

The paperback version of Programming C# 5.0 weighs in at 861 pages and more than three pounds. So Griffiths’ choice to sharpen the book’s focus is a smart one. Beginners can learn the basics of programming in other books and other ways before digging into this edition. And experienced developers will find that the author’s explanations and code examples now have space to go “into rather more detail” than would have been possible if chapters explaining the basics of programming had been packed in, as well.

If you have done some programming and know a class from an array, this book can be your well-structured guide to learning C#. The “basics” are gone, but you still are shown how to create a “Hello World” program—primarily so you can see how new C# projects are created in Visual Studio, Microsoft’s development environment.

C# has been around since 2000 and “can be used for many kinds of applications, including websites, desktop applications, games, phone apps, and command-line utilities,” Griffiths says.

“The most significant new feature in C# 5.0,” he emphasizes, “is support for asynchronous programming.” He notes that “.NET has always offered asynchronous APIs (i.e., ones that do not wait for the operation they perform to finish before returning). Asynchrony is particularly important with input/output(I/O) operations, which can take a long time and often don’t require any active involvement from the CPU except at the start and end of an operation. Simple, synchronous APIs that do not return until the operation completes can be inefficient. They tie up a thread while waiting, which can cause suboptimal performance in servers, and they’re also unhelpful in client-side code, where they can make a user interface unresponsive.”

In the past, however, “the more efficient and flexible asynchronous APIs” have been “considerably harder to use than their synchronous counterparts. But now,” Griffiths points out, “if an asynchronous API conforms to a certain pattern, you can write C# code that looks almost as simple as the synchronous alternative would.”

If you are an experienced programmer hoping to add C# to your language skills, Ian Griffiths’ new book covers much of what you need to know, including how to use XAML (pronounced “zammel”) “to create  applications of the [touch-screen] style introduced by Windows 8” but also applications for desktop computers and Windows Phone.

Yes, Microsoft created C#, but there are other ways to run it, too, Griffiths adds.

“The open source Mono project (http://www.mono-project.com/) provides tools for building C# applications that run on Linux, Mac OS X, iOS, and Android.”

Si Dunn

For more information:  paperback – Kindle

Programming Google App Engine, 2nd Edition – An important how-to guide, updated – #programming #bookreview

Programming Google App Engine, 2nd Edition
Dan Sanderson
(O’Reilly,
paperbackKindle)

O’Reilly recently has published a new edition of Dan Sanderson’s Programing Google App Engine.  The new edition updates the 2009 first edition and includes coverage of Java 6 and Python 2.7 support, multithreading, asynchronous service APIs, and using frameworks such as webapp2 and Django 1.3. (“App Engine does not yet support Python 3,” Sanderson notes.)

The 509-page, 20-chapter book shows how “to develop applications that run on Google App Engine, and how to get the most out of the scalable model. A significant portion of the book discusses the App Engine scalable datastore, which does not behave like the relational databases that have been a staple of web development for the past decade,” the author states.

Sanderson is a technical writer and software engineer at Google, Inc. His new edition is well-written and appropriately illustrated with code samples, diagrams, screen shots and other graphics.

With clear steps and good detail, the book shows you first how to install and use the Python or Java SDKs on Mac OS X, Linux, and Windows machines and how to develop simple Python and Java applications. From there, it expands deeper into the how-to aspects of programming the Google App Engine.

In some chapters, the Python and Java options are presented together. Python’s and Java’s data modeling libraries, however, are discussed in separate chapters.

“Google App Engine, Google’s application hosting service, does more than just provide access to hardware,” Sanderson points out.

“It provides a model for building applications that grow automatically. App Engine runs your application so that each user to accesses it gets the same experience as every other user, whether there are dozens of simultaneous users or thousands. The application uses the same large-scale services that power Google’s applications for data storage and retrieval, caching, and network access. App Engine takes care of the tasks of large-scale computing, such as load balancing, data replication, and fault tolerance, automatically.”

Programming Google App Engine, 2nd Edition can take you from asking “What is Google App Engine?” to well down the road toward becoming an App Engine expert.

Si Dunn

For more information: paperbackKindle

Learning Node – A good how-to guide for server-side Web development with Node.js – #programming #bookreview

Learning Node
Shelley Powers
(O’Reilly, paperbackKindle)

 “Node is designed to be used for [server-side] applications that are heavy on input/output (I/O), but light on computation,” veteran Web technology author Shelley Powers notes in Learning Node, her ninth and newest how-to book from O’Reilly.

“Node.js,” she explains, “is a server-side technology that’s based on Google’s V8 JavaScript engine. It’s a highly scalable system that uses asynchronous, event-driven I/O (input/output), rather than threads or separate processes. “It’s ideal for web applications that are frequently accessed but computationally simple.”

I’ve criticized some previous Node books (1) for assuming that all of their readers know a lot about Node.js and assorted programming languages and (2) for not giving enough step-by-step installation and start-up information.

Happily, Learning Node is well written, nicely illustrated with code samples and screen shots, and assumes only that you have some working familiarity with JavaScript. It gives a detailed overview of how to set up development environments in Linux (Ubuntu) and Windows 7. “Installation on a Mac should be similar to installation on Linux,” the author adds.

One caveat regarding code examples: “Most were tested in a Linux environment, but should work, as is, in any Node environment.”

The 374-page book has 16 chapters. The first five “cover both getting Node and the package manager (npm) installed , how to use them, creating your first applications, and utilizing modules.”

Shelley Powers notes that she incorporates “the use of the Express framework, which also utilizes the Connect middleware, throughout the book.” So if you have little or no experience with Express, you will need to pay attention to chapters 6 through 8. But: “After these foundation chapters, you can skip around a bit,” she adds.

Some of the additional chapters cover key/value pairs, using MongoDb with Node, and working with Node’s relational database bindings.

Two chapters get into specialized application use. “Chapter 12 focuses purely on graphics and media access, including how to provide media for the new HTML5 video element, as well as working with PDF documents and Canvas,” the author points out. “Chapter 13 covers the very popular Sockets.io module, especially for working with the new web socket functionality.”

The final chapters are crucial, particularly if you want to move from learning Node to working in a production environment. Chapter 14 covers “Testing and Debugging Node Applications.” Chapter 15 “covers issues of security and authority…it is essential that you spend time in this chapter before you roll a Node application out for general use.”

Meanwhile, Chapter 16 describes “how to prepare your application for production use, including how to deploy your Node application not only on your own system , but also in one of the cloud servers that are popping up to host Node applications.”

Learning Node is both an excellent overall introduction to Node.js and a how-to reference guide that you will want to keep close at hand as you develop and deploy Node applications.

Si Dunn

For more information: Node.js, paperback, Kindle

Adobe Edge Animate Preview 7: The Missing Manual – #bookreview #html5 #animation

Adobe Edge Animate Preview 7: The Missing Manual
Chris Grover
(O’Reilly,
paperbackKindle)

Chris Glover’s well-written new book shows you how to build animated HTML 5 graphics for the iPhone, the iPad, and the Web, using familiar Adobe features. By the sixth page of the first chapter, you are using the software to create your first animation.

The only problem is,Adobe released the 1.0 commercial version of its Edge Animate product on Sept. 24, 2012, very soon after this Preview 7 book was published.

And, for a limited time, Adobe was offering Edge Animate 1.0 free with a new membership in Adobe’s Creative Cloud.

Prior to the 1.0 release, seven Preview versions of Adobe Edge Animate were released as free downloads, and user feedback was gathered so the product could be enhanced and expanded.

Preview 7 was released about five weeks prior to the appearance of new 1.0 commercial version. And this book was created to fill a gap that was expected to remain open longer.

Here’s the good news – three items of good news, actually.

First, this book can help you get started with the 1.0 commercial version of Adobe Edge Animate. Second, O’Reilly will soon bring out an Adobe Edge Animate “Missing Manual” that covers the new commercial release. And, third, sources at O’Reilly tell me that readers who purchase this Preview 7 edition of Chris Grover’s book will get access to “the e-book version of Adobe Edge Animate the 1.0 version and all of its updates.”

Adobe Edge Animate Preview 7: The Missing Manual has nine chapters organized into four parts:

Part One:Working with the Stage

  • Chapter 1: Introducing Adobe Edge Animate
  • Chapter 2: Creating and Animating Art
  • Chapter 3: Adding and Formatting Text

Part Two: Animation with Edge Animate

  • Chapter 4: Learning Timeline and Transition Techniques
  • Chapter 5: Triggering Actions
  • Chapter 6: Working Smart with Symbols

Part Three: Edge Animate with HTML 5 and JavaScript

  • Chapter 7: Working with Basic HTML and CSS
  • Chapter 8: Controlling Your Animations with JavaScript and jQuery
  • Chapter 9: Helpful JavaScript Tricks

Part Four: Appendixes

  • Appendix A: Installation and Help
  • Appendix B: Menu by Menu
  • Where keystrokes are appropriate, Chris Grover lists both and does not make you have to translate between systems, as some how-to manuals do.

“Animate works almost precisely the same in its Macintosh and Windows versions,” he assures. “Every button in every dialog box is exactly the same; the software response to ever command is identical. In this book, the illustrations have been given even-handed treatment, rotating between the two operating systems where Animate is at home (Windows 7 and Mac OS X).”

 

Si Dunn

For more information: (O’Reilly, paperback, Kindle)

Switching to the Mac, Mountain Lion Edition – David Pogue scores again – #bookreview

Switching to the Mac: Mountain Lion Edition
David Pogue
(O’Reilly, paperbackKindle)

David Pogue will have to pry Windows PCs out of my cold, dead fingers.

That being said, his new book makes a very compelling case for why you other Windows users should switch from PCs to Macs right away.

As I’ve previously noted, I use three battle-scarred Windows PCs during a typical work day. Yet sometimes (don’t ask why), I am forced – forced, I tell you – to use my wife’s Macintosh, too.

Frankly, I have hated Macs for a long, long time. No, actually, I have hated the smug, “Everything’s milk and honey on a Mac!” attitude that peppy-preppy Mac users (my wife excluded) seem to radiate each time they get around us gray-haired Windows types.

I happen to think the Blue Screen of Death is a lovely work of art, easily on par with Thomas Gainsborough’s The Blue Boy and Edvard Munch’s The Scream, thank you very much. And what is life without the daily excitement of battling evil spyware and sinister viruses from Eastern Europe?

Seriously, I continue to be a huge fan of New York Times tech columnist David Pogue and “The Missing Manual” book series he created. I use several of O’Reilly’s “Missing” manuals on a regular basis.

His new book has convinced me that, okay, maybe it finally might be time to replace one of my combat-scarred PCs with a shiny new Mac. Then I, too, can radiate some of that lustrous “Everything’s sunshine and bunnies!” glow instead of merely gnashing my teeth at the need to download a new patch or service pack.

“OS X has a spectacular reputation for stability and security,” Pogue assures readers. “At this writing, there hasn’t been a single widespread OS X virus—a spectacular feature that makes Windows look like a waste of time.” (David, David, David. “Waste of time”? Tsk, tsk.)

If you are contemplating making the switch or have already switched from Windows to Mac – one that’s running OS X (Mountain Lion) – you need this book. It is well written and nicely illustrated, and it has a strong focus on helping Windows users feel comfortably at home on a new Mac.

“Be glad you waited so long to get a Mac,” Pogue writes in a chapter titled “Special Software, Special Problems.”

“By now, all the big-name programs look and work almost exactly the same on the Mac as they do on the PC.”

You will encounter situations where a favorite Windows program is not available in a Mac equivalent. But there usually are Mac equivalents that offer similar functions. Or, you often can run Windows programs on an OS X Mac in Windows format, Pogue points out.

He also shows how to transfer documents and other files from Windows machines to Macs. Usually, the transfers go smoothly. “It turns out that communicating with a Windows PC is one of the Mac’s most polished talents,” Pogue notes. Sometimes, there are problems, of course, even in “infallible” Mac Land. But Pogue’s huge book (743 pages) gives clear procedures or suggestions for dealing with most of them. And: “Most big-name programs are sold in both Mac and Windows flavors, and the documents they create are freely interchangeable.”

Switching to the Mac: Mountain Lion Edition is organized into five parts:

  • Part 1, Welcome to the Macintosh – Covers the differences between what you see on a Macintosh screen and a Windows screen. Pogue notes that “OS X offers roughly the same features as Windows. That’s the good news. The bad news is that these features are called different things and parked in different spots.”
  • Part 2, Making the Move – Covers how to move software, data and peripherals such as printers and scanners from a Windows PC to a Mac. Includes steps for running Windows on Macs, using Apple Boot Camp. “The only downsides: Your laptop battery life isn’t as good, and you have to restart the Mac again to return to the familiar world of OS X.”
  • Part 3, Making Connections – Shows how to set up web, iCloud, and email connections on a Mac and use Apple’s Internet software suite.
  • Part 4, Putting Down Roots – Covers user accounts, parental controls, security, networking, file sharing, screen sharing, system preferences, and OS X’s “freebie” programs, such as Calendar, Photo Booth, and QuickTime Player.
  • Part 5…(Hello? Why is Part 5 missing from the table of contents and the pages of the printed version?)
  • Part 6, Appendixes – Two of the four appendixes cover installing OS X Mountain Lion and troubleshooting. The third appendix is “The Windows-to-Mac Dictionary,” especially useful for Windows people who have to use a Macintosh once in a while. “It’s an alphabetical listing of every common Windows function and where to find it in OS X,” Pogue says. And the fourth appendix offers a “master keyboard-shortcut list for the entire Mac OS X universe.”

Switching to the Mac, Mountain Lion Edition offers sound reasons (1) why you may prefer to stick with certain Windows for Mac programs on your new Mac and (2) why you may want to abandon certain Windows programs written for Macs and learn to use the Mac programs that are, in Pogue’s estimation, “better.”

You won’t be alone if you become (as I likely will) a user who moves back and forth between Mac world and Windows world, for a long time if not “forever.” In that case, you’ll definitely want Switching to the Mac: Mountain Lion Edition on your reference shelf.