Two Microsoft Certification Training Kits – #bookreview

In today’s tough and fiercely competitive IT job market, you never outgrow your need for certifications. Microsoft Press recently has released two self-paced training kits that you may need to study, if they apply to your areas of information technology. And you may need to keep these books close at hand in your technology library once you are certified.

The two training kits are: Accessing Data with Microsoft .NET Framework 4 (MCTS Exam 70-516) and Windows Server Enterprise Administration (MCITP Exam 70-647).

Short reviews of each book are posted below. In general, however, both are hefty, handsome and well-organized volumes that include practice tests on their accompanying CDs. The practice tests contain hundreds of questions and come with “detailed explanations for right and wrong answers.” Each of the books includes a certification exam discount coupon from Microsoft. 

Accessing Data with Microsoft .NET Framework 4
(MCTS Exam 70-516)
By Glenn Johnson
(Microsoft Press, $69.99)

“This training kit,” the author writes, “is designed for developers who write or support applications that access data written in C# or Visual Basic using Visual Studio 2010 and the Microsoft .NET Framework 4.0 and who also plan to take the Microsoft Certified Technology Specialist (MCTS) exam 70-516.”

Before you plunge into this self-paced training kit, be sure you have “a solid foundation-level understanding of Microsoft C# or Microsoft Visual Basic and be familiar with Visual Studio 2010.”

Also, be sure your available equipment meets the minimum requirements: 2.0 GB – and preferably more – of RAM; at least 80 GB of available hard disk space; a DVD-ROM drive; and Internet access.

The software requirements are Windows 7, SQL Server 2008 Developer Edition and SQL Server 2008 Express Edition. Links are provided to download evaluation copies of Windows 7 and SQL Server 2008 Developer Edition. A link also is provided to download a full release of SQL Server 2008 Express Edition.

A “virtualized environment” can be used, rather than configuring a machine specifically for the training kit, the author states. He notes that virtualization software is available from Microsoft, Oracle andVMware.

The CD supplied with Accessing Data with Microsoft .NET Framework 4 includes practice tests, all of the Visual Basic and C# code samples in the book, and a “fully searchable” eBook version of the printed book.

Directions are provided for installing, using and uninstalling the practice tests.

The 647-page training kit is structured as follows:

  • Introduction
  • ADO.NET Disconnected Classes
  • ADO.NET Connected Classes
  • Introducing LINQ
  • LINQ to SQL
  • LINQ to XML
  • ADO.NET Entity Framework
  • WCF Data Services
  • Developing Reliable Applications
  • Deploying Your Application

The final sections are the Answers appendix and a detailed and apparently thorough index.

This training kit’s chapters generally contain one to three lessons, with code examples, practice exercises, plus a lesson summary and lesson review. Accessing Data with Microsoft .NET Framework 4 provides more than 250 practice and review questions to help you prepare for the certification exam.


Windows Server Enterprise Administration
(MCITP Exam 70-647)
By Orin James, John Policelli, Ian McLean, J.C, Mackin, Paul Mancuso, and David R. Miller, with GrandMasters
(Microsoft Press, $69.99)

This training kit for Windows Server Enterprise Administration is intended for “enterprise administrators who have several years’ experience managing the overall IT environment and architecture of medium to large organizations.”

To run the lab exercises in this self-paced training kit, you will need at least two computers or virtual machines. One must be a server running Windows Server Enterprise 2008, and it must be configured as a domain controller. The book provides a link for obtaining an evaluation copy of Windows Server 2008 Enterprise from Microsoft’s download center. The other computer or virtual machine must run Windows Vista (Enterprise, Business or Ultimate).

“You can complete almost all practice exercises in this book using virtual machines rather than real server hardware,” the authors state. But you must be aware of the minimum hardware requirements for running Windows Server 2008:

1. Processor: 1GHz (x86), 1.4GHz (x64) – But 2GHz or faster is recommended.
2. 512MB RAM, with  2GB recommended.
3. 15 GB of disk space, with 40 GB recommended.

The book also explains how to set up networking and how to install and use (and later uninstall) the practice tests.

The 572-page Windows Server Enterprise Administration training kit is organized as follows:

  • Introduction
  • Planning Name Resolution and Internet Protocol Addressing
  • Designing Active Directory Domain Services
  • Planning Migrations, Trusts, and Interoperability
  • Designing Active Directory Administration and Group Policy Strategy
  • Designing Network Access Strategy
  • Design a Branch Office Deployment
  • Planning Terminal Services and Application Deployment
  • Server and Application Virtualization
  • Planning and Designing a Public Key Infrastructure
  • Designing Solutions for Data Sharing, Data Security, and Business Continuity

The chapters generally have two to three lessons each, as well as lesson summaries, lesson reviews, chapter reviews, chapter reviews, chapter summaries, suggested practices and a practice test.

The remaining sections of the training kit include answers to the practice tests, a somewhat modest glossary, and a hefty and well-detailed index.

The supplied CD provides more than 275 practice and review questions, a “fully searchable” eBook version of the training kit, case scenarios, best practices, and exercises. 

— Si Dunn


Solzhenitsyn’s ‘Apricot Jam and Other Stories’ – #bookreview

Apricot Jam and Other Stories
By Aleksandr Solzhenitsyn
(Counterpoint, $28.00)

A major literary work is now available for readers who relish the works of modern Russian writers, particularly the ones who rebelled against communism’s restrictive censorship and social, legal and economic rigidities and achieved international acclaim during the final decades of the Soviet Union.

Apricot Jam and Other Stories,  an engrossing collection of eight short stories by Aleksandr Solzhenitsyn, is now available from Berkeley, Calif.-based Counterpoint.

Solzhenitsyn was awarded the Nobel Prize in Literature in 1970, primarily on the strength of three novels, One Day in the Life of Ivan Denisovich, In The First Circle (better known as The First Circle), and Cancer Ward. These books shone glaring, shocking spotlights on the Gulag, a USSR government agency that operated a brutal, sprawling system of forced labor camps for political prisoners, criminals and others who ran afoul of  Soviet laws, officials, informants and secret police.

Significantly, the eight short stories in this 352-page collection are making their first appearance in English. They were initially published in Russia in 1994, after Solzhenitsyn ended years of exile in the West and returned to his native land. He died in 2008.

The title story provides an excellent example of the unusual “binary” writing style that Solzhenitsyn employed in these eight works of short fiction. In “Apricot Jam,” the son of a kulak (a relatively affluent peasant) has almost lost everything in his life except the memories of the apricot jam his mother used to make for him before communism and collective agriculture destroyed his family and his farm. He is now nearly starving to death while serving internal exile and doing hard labor in a distant town. In desperation, he writes a letter to a famous Russian writer who has published a book touting that the “meaning of life is labor in a communist society.”  He humbly begs the famous writer to send him a food parcel, because he is working hard to try to stay alive, yet now nearing death from lack of nourishment.

In the second part of the “Apricot Jam” story, the exile’s letter has arrived at the famous writer’s elegant dacha outside Moscow. There, the famous writer entertains a professor of cinema, as well as a neighbor, the head of the literary department in the State Publishing House, a man who “held the reins of the whole of literature in his hands….”

In the posh dacha, the men also enjoy some apricot jam, but it is just one minor trapping amid the surrounding opulence as they speak in praise of Comrade Stalin, socialist realism, and how “Creating an art of world significance–that is the task of the writer today.” The apricot jam briefly figures into their discussion as a symbol for a type of  “amber transparency” that “should be present in literary language, as well.” 

Soon, the famous writer mentions the unusual letter he has received from the exiled, starving worker. And, as they discuss its text, their final analysis of it is devastating.

In the story “The New Generation,” a principled and disciplined engineering professor finally gives in to pleadings by a failing student and hands him a passing grade. The professor is, after all, under orders to “make allowances” for the students now being sent to him from factories, some of whom would be “better off making pots and pans” rather than being forced to become engineers.

 Two years later, in the second part of the story’s binary structure, the engineering professor is arrested, and his interrogator from the GPU (the State Political Directorate) is none other than the failing student who had talked him into a passing grade. The ex-student cannot undo the professor’s arrest, yet he can and does, as a sort of return favor, offer him three grim choices of fates. 

Solzhenitsyn served with distinction as a captain in the Red Army during World War II, but was arrested after he wrote a letter that included disparaging remarks about Josef Stalin’s leadership of the war effort. The writer spent the next eight years in Soviet labor camps and another three years in internal exile.

Much of his fiction in Apricot Jam and Other Stories draws its creative spark from his grim wartime and Gulag experiences. Yet some of the stories also deal with post-Soviet issues in the times of Yeltsin and Gorbachev. For example, in the concluding story, “Fracture Points,” characters face the difficulty of trying to adapt to new freedoms and new economic structures at a time when “[t]he word ‘privatize’ was as frightening as a sea monster.”

If you have never before read any Solzhenitsyn, Apricot Jam and Other Stories can be a good introduction that may inspire you to also delve into his earlier works of fiction, particularly the ones that brought him the Nobel Prize for Literature 41 years ago.

This new book, translated by “TK” and published by Counterpoint, demonstrates once again why Aleksandr Isayevich Solzhenitsyn continues to deserve his ranking as one of the world’s great writers.

 — Si Dunn


Code in the Cloud: Programming Google App Engine #bookreview

Code in the Cloud: Programming Google App Engine
Mark C. Chu-Carroll
(O’Reilly, $32.95, paperback)

 “O clouds, unfold!”
          –William Blake, “Milton,” preface

These days, it’s all about the cloud, many people insist.

Somewhere out there in “the cloud” are the servers and programs that you are now using — or soon will be. Much of  your data already is out there, too, and more will be.

But where, exactly? Why, floating in “the cloud,” of course.

“You don’t know where, and more importantly, you don’t care; there’s absolutely no reason for you to care,” insists Mark C. Chu-Carroll, a Google software engineer who has worked on programming languages and software development tools for nearly 20 years.

These “don’t care” and “it’s all in the cloud” notions expressed in Chu-Carroll’s well-written new book may make many long-time computer programmers nervous. This could be particularly true if you have spent a long time working with, and trying to secure the data on, personal computers or corporate networks of computers.

In the brave, new, vaporous world of cloud computing, there are almost no boundaries anymore. And many of the limitations and weaknesses of hardware, software and security can be more easily subdued, we are told.

So, what exactly is the cloud?

At one level, it is many clouds. You can think of huge data centers with many computers as individual clouds, and each data storage device within those centers as one water droplet that helps form that cloud. As individual clouds come in contact with each other, they bunch up into one bigger cloud and cover more and more of the sky.

In Mark C. Chu-Carroll’s view, the cloud is “a revolutionary way of thinking about computing; it’s a universe of servers that you can build an application on; it’s a world of services that you can build or that you can use to build other things.”

But when should you, as a programmer, use “the cloud”?

According to the author, “You can write almost any application you want in the cloud. In fact, many people strongly believe that everything should be in the cloud — that there’s no longer any reason to develop applications for standalone computers.”

He does not completely support that view and concedes that the cloud may not be “the ideal platform for everything.” 

Yet, when programming for the cloud, you can worry a lot less about what operating system you are running, what software you have, what hardware limitations you have and when you will need to do backups or do software and security upgrades.

“If you’re a user of the cloud,” Chu-Carroll writes, you buy access to the application you want and then connect to it from anywhere.”  And, when developing for the cloud, “you break things down to basic building blocks, buy those pieces from service providers, and put them together however you want to build a system.”

The cloud likely is here to stay, and it won’t be dissipating soon, just getting bigger. So, computer programmers of all types and persuasions need to pay close attention. It likely will become an increasingly important element in hiring and in securing contract work.

Mark C. Chu-Carroll’s Code in the Cloud can give you a solid introduction to cloud computing and also get you up to speed quickly on how to program applications using the Google App Engine. It starts out at the beginner’s level using Python and the Google App Engine to create a first, simple app. Then it moves quickly to Java and advanced Google App Engine topics.

This 306-page book is a new entry in O’Reilly’s popular “The Pragmatic Programmer” series. Here is its section and chapter lineup:

Section I – Getting Started with the Google App Engine
– Chapter 1: Introduction
– Chapter 2: Getting Started
Section II – Programming Google App Engine with Python
– Chapter 3: A First Real Cloud Application
– Chapter 4: Managing Data in the Cloud
– Chapter 5: Google App Engine Services for Login Authentication
– Chapter 6: Organizing Code: Separating UI and Logic
– Chapter 7: Making the UI Pretty: Templates and CSS
– Chapter 8: Getting Interactive
Section III – Programming Google App Engine with Java
– Chapter 9: Google App Engine and Java
– Chapter 10: Managing Server-Side Data
– Chapter 11: Building User Interfaces in Java
– Chapter 12: Building the Server Side of a Java Application
Section IV – Advanced Googe App Engine
– Chapter 13: Advanced Datastore: Property Types
– Chapter 14: Advanced Datastore: Queries and Indices
– Chapter 15: Google App Engine Services
– Chapter 16: Server Computing in the Cloud
– Chapter 17: Security in App Engine Services
– Chapter 18: Administering Your App Engine Deployment
– Chapter 19: Wrapping Up

A good index is included that enhances the book’s organization and ease of use.

Code in the Cloud does an excellent job of explaining what a cloud service is and how it is different from traditional applications. Cloud applications are easily scalable. You can program a cloud app that works only for one user on one computer. Or your app can be used by many millions of users who can access it, via the cloud, from thousands of computers. If you build applications for people who work together online, “[c]ollaboration is the cloud’s natural niche,” the author says.

Mark C. Chu-Carroll shows you: (1)  how to build applications as a cloud service; (2) how to employ the App Engine to manage persistent data in the cloud; (3) how to create dynamic and interactive user interfaces that will run in Web browers; (4) how to interact with other services available in the App Engine cloud; and (5) how to maintain and manage security in cloud-based Web applications.

With this book in your programmer’s library, you will not — to badly misquote the poet William Wordsworth — be left wandering lonely, outside the Google App Engine’s share of the cloud. 

 – Si Dunn

Creating a Website: The Missing Manual, 3rd Edition #bookreview

Creating a Website: The Missing Manual, 3rd Edition
By Matthew MacDonald

(O’Reilly, $29.99, paperback – Kindle edition, $9.99)

 “If you don’t have a web presence, get one–quick!”

How often have you heard or received that stern advice? The implication, of course, is that you are the compleat 21st-century loser and nobody if you don’t have your own website or at least a blog, Facebook page or Twitter account — something digital somewhere that others across the planet can access via the Internet.

In truth, some of us do need websites, and some of us don’t. Some of us want websites, and some of us don’t.

If you need, want or currently have a website or multi-site web presence, consider having Matthew MacDonald’s Creating a Website on your bookshelf, very close to your computer, particularly if you intend to build websites and/or maintain them yourself.

 “This book won’t teach you to become a professional web designer. However, it will help you learn the critically important art of Not Making Bad Websites,” MacDonald writes.

Yes, his well-written book does start—briefly—with the sub-basics, including an introduction to the Internet and browsers. After all, not everyone is born with innate knowledge of Hyper Text Markup Language (HTML), Cascading Style Sheets (CSS) and Google Analytics.

But this hefty and well-organized, 563-page how-to guide moves quickly into the process of creating and posting a basic web page. Then it delves deeper into the process of designing efficient websites that are well-organized and relatively easy to maintain.

Very importantly, it also introduces readers to ways to promote a website and make money with it, using Google Adsense, Amazon Associates links and PayPal merchant tools.

Creating a Website will not teach you how to become a hotshot Java programmer. It does give a basic overview of JavaScript, a “simplified” programming language that can help you add interactive features to your website. The author includes “enough background so you can find great JavaScript code online, understand it well enough to make basic changes, and then paste it into your pages to get the results that you want.”

HTML5 is still under development and doesn’t work with all browsers. But this third edition of MacDonald’s book, part of O’Reilly’s popular “The Missing Manual” series, gives a quick introduction to HTML5 and its semantic elements (some of which are still embroiled in controversy).

The book provides a handy HTML reference guide, and the chapters of Creating a Website are supported with a good index.

The chapter lineup is as follows:

– Chapter 1: Preparing for the Web
– Chapter 2: Creating Your First Page
– Chapter 3: Putting Your Page on the Web
– Chapter 4: Power Tools
– Chapter 5: Text Elements
– Chapter 6: Style Sheets
– Chapter 7: Adding Graphics
– Chapter 8: Linking Pages
– Chapter 9: Page Layout
– Chapter 10: Multipart Pages
– Chapter 11: Introducing Your Site to the World
– Chapter 12: Web Promotion
– Chapter 13: Blogs
– Chapter 14: Making Money with Your Site
– Chapter 15: JavaScript: Adding Interactivity
– Chapter 16: Fancy Buttons and Menus
– Chapter 17: Audio and Video
– Appendix A: HTML Quick Reference
– Appendix B: Useful Websites – Index.

I have some do-it-myself websites that are long overdue for complete reworks and better designs.

With Matthew MacDonald’s Creating a Website to guide me, I feel confident that I can handle the tasks and at least create and maintain sites that are, in his words, “Not Bad.”

 — Si Dunn