Si Dunn

Archive for the ‘Book review’ Category

Windows 8: The Missing Manual – The reference guide you need to sort it all out – #bookreview

In Book review, Book reviews, How-to, Kindle, Microsoft, Microsoft Windows, Software, Windows 8 on March 27, 2013 at 2:08 pm

Windows 8: The Missing Manual
David Pogue
(O’Reilly – paperback, Kindle)

Okay, so Windows 8 is not exactly setting the digital world on fire these days. Many of us bought it anyway, because we have been using Windows machines at home and in office settings for a long, long time. And we like to keep up–if only out of curiosity and to hedge our digital bets. For example, I now have Windows 8 on one laptop, Windows 7 on another, and Windows XP on two other computers. And all versions have served me well, thus far. 

I have been using Windows since the days of IBM PC-XT clones in the early 1980s. Yet that doesn’t make me a Windows expert. I make good use of the features I need as a writer, editor, and occasional programmer. And I completely ignore the many other features, until I suddenly need details such as how to work with an ISO disk image or temporarily override a pop-up blocker or set up a remote desktop connection. 

That’s when I grab for a reference book. David Pogue’s new Windows 8: The Missing Manual now occupies a prominent spot on my reference shelf. At 905 pages and 3+ pounds, it’s hefty enough to double as a doorstop or workout weight. But I keep it within quick reach when I work with Windows 8. 

The book’s 28 chapters and three appendixes are divided into eight well-organized parts: 

  • Part One: TileWorld
  • Part Two: The Windows Desktop
  • Part Three: Windows Online
  • Part Four: Pictures & Music
  • Part Five: Hardware & Peripherals
  • Part Six: PC Health
  • Part Seven: The Windows Network
  • Part Eight: Appendixes 

“Let’s start with the elephant in the room: Windows 8 is two operating systems in one,” Pogue writes. “They have separate software programs, control panels, Help systems, Web browsers, application switchers–and separate ways of doing things.” Microsoft, he adds, strongly disagrees with that assessment and “certainly doesn’t use the term ‘TileWorld’….”

The familiar Windows desktop portion of Windows 8 “is basically Windows 7,” Pogue says. “It’s the familiar world of overlapping windows, the taskbar, and drop-down menus. It’s designed for use with a mouse and keyboard. In this environment, you can run any of the four million existing Windows programs…..”

Meanwhile, the TileWorld part of Windows 8 is, Pogue says, “a new environment for touchscreens, like tablets and touchscreen laptops. This environment looks completely different–and works completely differently. There’s no taskbar, windows don’t overlap, and there are no drop-down menus. For TileWorld, you have to buy and install a completely new kind of app.”

My Windows 8 PC does not have a touch screen, so I don’t make much use of TileWorld or its apps, yet. Sometimes I click on the Calendar app or tiles that bring up Google Chrome, Amazon, eBay, or the Kindle reader. Mostly, however, I just click on the tile that brings up the traditional desktop, where I feel much more at home. 

But once I am ready to venture deeper into TileWorld (and that day is coming soon), Windows 8: The Missing Manual  offers five full chapters of how-to information.

David Pogue’s new book covers all versions of Windows 8, including Windows RT. “There are no longer 17,278 versions of Windows, praise Ballmer,” he writes. “No more Starter, Home, Home Premium, Ultimate, blah blah blah. Basically, there are only two versions for sale to the public–Windows 8 and Windows 8 Pro–and the differences are minor.” (He does note that a third version, Windows 8 Enterprise, is available to corporate buyers only.)

“And then,” he warns, “there’s Windows RT. Be careful.”

He explains: “Windows RT does not run on computers with Intel processors and does not run traditional Windows software (Photoshop, Quicken, iTunes, and so on. It’s designed for low-powered touchscreen gadgets like tablets–notably Microsoft’s own $500 Surface tablet–and maybe a few simple laptops.

“Basically,” he continues, “Windows RT is all TileWorld. It runs only TileWorld apps.” It has such traditional Windows apps as the Calculator and Control Panel. And the Surface tablet runs RT versions of Word, PowerPoint, and Excel. “But otherwise,” Pogue cautions, “Windows RT doesn’t run ‘real’ Windows software.”

I download lots of stuff and run many programs, so my hard drives tend to get cluttered and fragmented fairly quickly. One of my favorite chapters of Windows 8: The Missing Manual focuses on “Maintenance, Speed Tweaks & Troubleshooting.” Among its tips are “Three Speed Tricks” that can help keep my Windows 8 PC forging ahead at reasonably full steam. There also are some cool tips in Appendix B, where I can have (dangerous) “Fun with the Registry” if I desire.

I have made a list of several chapters that I intend to revisit soon so I can spend some time hooking up and testing a few peripherals, updating some drivers, and making adjustments to some icons. Essentially, almost anything I want to know or need to know about using my Windows 8 PC appears to be covered in this well written, well illustrated, nicely organized book.

Everything, of course, except the recently leaked news of a Windows 8 upgrade called Windows Blue. (Yet Pogue does predict in his book: “Maybe Windows 8 is meant to be a transitional OS. Maybe the next one will be all TileWorld, all touchscreen, all the time.”)

Having experienced many run-ins over the decades with Microsoft’s legendary “blue screen of death,” I will not be quick to grab any Windows software product named Blue. Not as long as Windows 8, 7, and XP keep working well enough for what I do.

Si Dunn 

NOOK HD: The Missing Manual – Tips and tricks for getting the most from your e-reader tablet – #bookreview

In Android, Barnes & Noble, Book review, Book reviews, ebook, How-to, NOOK, Paperback, Tablet computer on March 22, 2013 at 4:22 pm

NOOK HD: The Missing Manual
Preston Gralla
(O’Reilly – paperback, Kindle)

Prolific and top-notch technical writer Preston Gralla is back again, this time with a handy “Missing Manual” that explains how to use two Barnes & Noble e-reader tablets, the NOOK HD and NOOK HD+.

His 18-chapter, 464-page book is divided into eight well-written parts containing generally good illustrations. The parts are:

  • Part  One – The Basics – A guided tour of the hardware, showing you how to use the NOOK as an e-reader and tablet.
  • Part Two – Reading Books and Periodicals – Shows how to use the NOOK’s many reading tools.
  • Part Three – Managing Your Library – How to buy books, newspapers, and magazines and track them in your personal library. Includes how to borrow and lend books from your NOOK, too.
  • Part Four – Apps, Media, and Files – Includes “how to find, download, install, and use thousands of apps…” and how to watch movies and TV shows and listen to Internet radio stations or play music from your own collection. Also, how to transfer files to your NOOK and use its built-in music player.
  • Part Five – The Web and Email – Shows “how to browse the Web and send and receive email using any email account.”
  • Part Six – Getting Social – How to keep track of your contacts, how to use the NOOK’s social features, including NOOK Friends. Also discusses using the NOOK on Facebook, Twitter and Google+.
  • Part Seven – Advanced Topics – Shows how to tweak some features and how to root your NOOK so it can “run like a standard Android tablet.”
  • Part Eight – Appendixes – These cover troubleshooting, accessories for the NOOK, file formats that a NOOK can handle, and things you can do with a NOOK at a Barnes & Noble store.

Gralla notes that the NOOK HD and NOOK HD+ can be used with microSD cards to expand the available memory for your stuff. The HD comes in 8 GB and 16 GB versions. The HD+ has 16 GB and 32 GB versions.

The HD’s screen is 7 inches.  The HD+ screen is 9 inches. The HD+, he adds, also “has a slightly faster processor than the NOOK HD–a 1.5 GHz dual-core speed demon. The extra oomph is needed to power the HD+’s larger screen.”

If you’ve gotten a NOOK HD or HD+ or are planning to get one soon, definitely add this book to your must-have list. Also, Gralla urges,  “strongly consider buying a cover or case. A cover protects your NOOK and its screen from damage, so they’re well worth the small investment.”

Si Dunn

The Definitive ANTLR 4 Reference – You, too, can be a parsing guru – #programming #bookreview

In ANTLR, Book review, Book reviews, How-to, Java, Paperback, Programmer, Programming, Software, Software development, software testing on March 21, 2013 at 3:21 pm

The Definitive ANTLR 4 Reference
Terence Parr
(Pragmatic Bookshelf – paperback)

The self-described “maniac” behind ANTLR — “ANother Tool for Language Recognition” — is at it again. Terence Parr has rewritten ANTLR “from scratch” and celebrated by bringing out a new edition of his book, The Definitive ANTLR 4 Reference.

Parr, a professor of computer science and graduate program director at the University of San Francisco, says his book is “specifically targeted at any programmer interested in learning how to build data readers, language interpreters, and translators. This book is about how to build things with ANTLR specifically, of course, but you’ll learn a lot about lexers and parsers in general. Beginners and experts alike will need this book to use ANTLR 4 effectively. To get your head around the advanced topics in Part III, you’ll need some experience with ANTLR by working through the earlier chapters.”

Also: “Readers should know Java to get the most out of the book.” ( Java 1.6 or later is required.)

According to Parr: “ANTLR v4 is a powerful parser generator that you can use to read, process, execute, or translate structured text or binary files. It’s widely used in academia and industry to build all sorts of languages, tools, and frameworks. Twitter search uses ANTLR for query parsing, with more than 2 billion queries a day. The languages for Hive and Pig and the data warehouse and analysis systems for Hadoop all use ANTLR. Lex Machina uses ANTLR for information extraction from legal documents. Oracle uses ANTLR within the SQL Developer IDE and its migration tools. The NetBeans IDE parses C++ with ANTLR. The HQL language in the Hibernate object-relational mapping framework is built with ANTLR.”

So…it’s out there in many different and big ways. But ANTLR also can be used for smaller projects.

Notes Parr: “…you can build all sorts of useful tools such as configuration file readers, legacy code converters, wiki markup renderers, and JSON parsers. I’ve built little tools for creating object-relational database mappings, describing 3D visualizations, and injecting profiling code into Java source code, and I’ve even done a simple DNA pattern matching example for a lecture.”

Parr’s 305-page, 15-chapter book is divided into four major parts:

  1. Introducing ANTLR and Computer Languages
  2. Developing Language Applications with ANTLR Grammar
  3. Advanced Topics
  4. ANTLR Reference

This latest version of ANTLR “has some important new capabilities that reduce the learning curve and make developing grammars and language applications much easier. The most important new feature,” Parr adds, “is that ANTLR v4 gladly accepts every grammar you give it (with one exception regarding indirect left recursion….)”

To properly understand that exception and how it must be dealt with, you will need to read “Dealing with Precedence, Left Recursion, and Associativity” in Chapter 5.

This is not a book for programming beginners. But Terence Parr is a good writer who injects both clarity and occasional humor into his descriptions. And he provides numerous code examples and illustrations to help guide you along the way to becoming a parsing guru and mastering ANTLR v4.

Si Dunn

Blender Master Class – Excellent hands-on guide to modeling, sculpting, materials & rendering – #bookreview

In Blender, Book review, Book reviews, digital arts, GIMP, Graphic design, Graphics, How-to, Kindle, Paperback, Software on March 21, 2013 at 10:26 am

Blender Master Class
A Hands-On Guide to Modeling, Sculpting, Materials, and Rendering
Ben Simonds
(No Starch Press, paperback, Kindle)

This excellent hands-on guide shows “how to create models and environments in 3D, using two pieces of software: Blender, for 3D design and animation, and GIMP, for 2D image editing.” It covers Blender 2.6x.

The author, Ben Simonds, is a professional 3D artist and co-director of a London-based post-production and computer animation company, Gecko Animation Ltd.

Simonds explains and shows “how to approach and finish your own projects in Blender.” He offers detailed how-to explanations for three of his own projects “to provide the narrative and examples of the tasks required.”

Along with demonstrating how to use Blender and GIMP, he shows “how to block out and create models, sculpt and detail them, texture and create materials, use lighting, and render finished images.”

This 266-page, 15-chapter book is beautifully organized, richly illustrated and well-written, with numerous headings, subheadings, step-by-step lists, and chapter reviews. The accompanying DVD “contains all the files for the projects in this book, including separate .blend files for each project (corresponding to each chapter in the book) and each project in its final state at the end of the chapter (where relevant).

“These resources,” Simonds adds, “should allow you to look in-depth at the workings of each project and to examine how each one takes shape. Also included are the textures used for each project, .blend files with some useful brushes for sculpting and MatCap materials, and a GIMP brush that you can use with your own projects.”

Simonds notes that Blender has many more tools than can be covered in his book. So Blender Master Class “attempts to deal only with the aspects of Blender that are needed to create, texture, and render models as still images. It doesn’t cover Blender’s rigging and animation tools, simulation tools, or the game engine.” For more information, he refers readers to a Blender website.

Blender is a powerful software package, and even experienced artists and designers can struggle while using it to create finished pieces. Blender Master Class can step you smoothly through the entire process of working from concept to completion.

Si Dunn

Kindle Fire HD: The Missing Manual, 2nd Edition – Covers new features, how-tos for 7-inch / 8.9-inch tablets – #bookreview

In Book review, Book reviews, HTML5, Kindle, Paperback, Tablet computer on March 18, 2013 at 12:14 pm

Kindle Fire HD: The Missing Manual, 2nd Edition
Peter Meyers
(O’Reilly – paperback, Kindle)

O’Reilly recently has brought out the second edition of Peter Meyers’ popular how-to guide for using the Kindle Fire HD multi-purpose tablet.

The new edition covers the 7-inch and 8.9-inch Kindle Fire models, but does not cover the original, first-generation Kindle Fire that was released in November, 2011. For details of how to use that model, get the first edition of Meyers’ book.

Many of us who own Kindles tend to have more than one version in the family: his, hers, and the kids’, for example. And we tend to use just a few of the features over and over–until we suddenly need or want to try another feature and aren’t sure how it works. So it can be good to have both editions of this book on your reference shelf (or in your Kindles).

The new edition includes how to use the front-facing video camera and microphone that were added to the 7-inch and 8.9-inch Fire HD models for video and audio chat capabilities. An HDMI port also is offered on the HD models, so you can hook up a cable and view a Kindle-stored video on a TV screen.

By  the way, if you enjoy audiobooks, they “are now full-fledged members of Team Sync” in the Kindle Fire HD world, the author notes. For example, if you buy a Kindle book and click the “Add Narration” button, you will also get the synchronized audiobook. (The button appears on your Fire’s screen, and the extra charge ranges from free to $3.95, depending on the book.) You can listen to the audiobook played on your Fire HD while driving to work, and then, when you’re ready to read quietly during your lunch break, you can pick up, in the text, right where you left off. The Kindle Fire HD now includes an Audible.com player, as well, and you can link an existing Audible.com account.

This well-written, richly illustrated Missing Manual definitely covers “the important stuff you need to know,” in a well-organized, easy-to-use format. It can help you get the most–and possibly more than you expected–from your Kindle Fire HD.

Si Dunn

Killer UX Design – How to create compelling, user-centered interfaces – #bookreview

In Book review, Book reviews, How-to, Kindle, Lifestyle, Project management, psychology, Software development, user experience, UX, Visual design, Web applications, Web apps, Web designer on March 15, 2013 at 2:39 pm

Killer UX Design
Jodie Moule
(SitePoint – paperback, Kindle)

The overused term “killer app” tends to kill my curiosity about books with “killer” in the title.

Still,  “killer” title aside, Killer UX Design deserves some attention, particularly if you are struggling to create a better user experience (UX) for products, websites, services, processes, or systems. The eight chapters in this 266-page book provide a well-written “introduction to user experience design.”

The focus, in UX design, is on “understanding the behavior of the eventual users of a product, service, or system. It then seeks to explore the optimal interaction of these elements, in order to design experiences that are memorable, enjoyable, and a little bit ‘wow’,” the author says.

She is a psychologist who co-founded and directs Symplicit, an “experience design consultancy” in Australia. “With the digital and physical worlds merging more than ever before,” she says, “it is vital to understand how technology can enhance the human experience, and not cause frustration or angst at every touchpoint.”

You won’t find JavaScript functions, HTML 5 code, or other programming examples in this book, even though software engineering increasingly is a key factor in UX design. Instead, the tools of choice during initial design phases are: Post-It Notes, index cards, sheets of paper, tape, glue, hand-drawn diagrams and sketches, plus clippings from newspapers, magazines and other materials.

And, you likely will spend time talking with other members of your UX design team, plus potential users of your product, service, or system.

Some of the chapters also deal with prototyping, testing, re-testing and tweaking, and how to modify a design based on what you learn after a product, service, or system has been launched.

A key strength of Killer UX Design is how it  illustrates and explains the real-life — and seldom simple — processes and steps necessary to design an app that is both useful and easy to use.

Si Dunn

Hadoop is hot! Three new how-to books for riding the Big Data elephant – #programming #bookreview

In Big Data, Book review, Book reviews, Database management, Hadoop, Hive, HTML5, Kindle, Linux, Mac OS X, MapReduce, Microsoft Windows, MySQL, OS X, Paperback, Programmer, Programming, Software, System administration on March 14, 2013 at 1:22 pm

In the world of Big Data, Hadoop has become the hard-charging elephant in the room.

Its big-name users now span the alphabet and include such notables as Amazon, eBay, Facebook, Google, the New York Times, and Yahoo. Not bad for software named after a child’s toy elephant.

Computer systems that run Hadoop can store, process, and analyze large amounts of data that have been gathered up in many different formats from many different sources.

According to the Apache Software Foundation’s Hadoop website: “The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models. It is designed to scale up from single servers to thousands of machines, each offering local computation and storage.”

The (well-trained) user defines the Big Data problem that Hadoop will tackle. Then the software handles all aspects of the job completion, including spreading out the problem in small pieces to many different computers, or nodes, in the distributed system for more efficient processing. Hadoop also handles individual node failures, and collects and combines the calculated results from each node.

But you don’t need a collection of hundreds or thousands of computers to run Hadoop. You can learn it, write programs, and do some testing and debugging on a single Linux machine, Windows PC or Mac. The Open Source software can be downloaded here. (Do some research first. You may have use web searches to find detailed installation instructions for your specific system.)

Hadoop is open-source software that is often described as “a Java-based framework for large-scale data processing.” It has a lengthy learning curve that includes getting familiar with Java, if you don’t already know it.

But if you are now ready and eager to take on Hadoop, Packt Publishing recently has unveiled three excellent how-to books that can help you begin and extend your mastery: Hadoop Beginner’s Guide, Hadoop MapReduce Cookbook, and Hadoop Real-World Solutions Cookbook.

Short reviews of each are presented below.

Hadoop Beginner’s Guide
Garry Turkington
(Packt Publishing – paperback, Kindle)

Garry Turkington’s new book is a detailed, well-structured introduction to Hadoop. It covers everything from the software’s three modes–local standalone mode, pseudo-distributed mode, and fully distributed mode–to running basic jobs, developing simple and advanced MapReduce programs, maintaining clusters of computers, and working with Hive, MySQL, and other tools.

“The developer focuses on expressing the transformation between source and result data sets, and the Hadoop framework manages all aspects of job execution, parallelization, and coordination,” the author writes.

He calls this capability “possibly the most important aspect of Hadoop. The platform takes responsibility for every aspect of executing the processing across the data. After the user defines the key criteria for the job, everything else becomes the responsibility of the system.”

The 374-page book is written well and provides numerous code samples and illustrations. But it  has one drawback for some beginners who want to install and  use Hadoop.  Turkington offers step-by-step instructions for how to perform a Linux installation, specifically Ubuntu. However, he refers Windows and Mac users to an Apache site where there is insufficient how-to information. Web searches become necessary to find more installation details.

Hadoop MapReduce Cookbook
Srinath Perera and Thilina Gunarathne
(Packt Publishing – paperback, Kindle)

MapReduce “jobs” are an essential part of  how Hadoop is able to crunch huge chunks of Big Data.  The Hadoop MapReduce Cookbook offers “recipes for analyzing large and complex data sets with Hadoop MapReduce.”

MapReduce is a well-known programming model for processing large sets of data. Typically, MapReduce is used within clusters of computers that are configured to perform distributed computing.

In the “Map” portion of the process, a problem is split into many subtasks that are then assigned by a master computer to individual computers known as nodes. (Nodes also can have sub-nodes). During the “Reduce” part of the task, the master computer gathers up the processed data from the nodes, combines it and outputs a response to the problem that was posed to be solved. (MapReduce libraries are now available for many different computer languages, including Hadoop.)

“Hadoop is the most widely known and widely used implementation of the MapReduce paradigm,” the two authors note.

Their 284-page book initially shows how to run Hadoop in local mode, which “does not start any servers but does all the work within the same JVM [Java Virtual Machine]” on a standalone computer. Then, as you gain more experience with MapReduce and the Hadoop Distributed File System (HDFS), they guide you into using Hadoop in more complex, distributed-computing environments.

Echoing the Hadoop Beginner’s Guide, the authors explain how to install Hadoop on Linux machines only.

Hadoop Real-World Solutions Cookbook
Jonathan R. Owens, Jon Lentz and Brian Femiano
(Packt Publishing – paperback, Kindle)

The Hadoop Real-World Solutions Cookbook assumes you already have some experience with Hadoop. So it jumps straight into helping “developers become more comfortable with, and proficient at solving problems in, the Hadoop space.”

Its goal is to “teach readers how to build solutions using tools such as Apache Hive, Pig, MapReduce, Mahout, Giraph, HDFS, Accumulo, Redis, and Ganglia.”

The 299-page book is packed with code examples and short explanations that help solve specific types of problems. A few randomly selected problem headings:

  • “Using Apache Pig to filter bot traffic from web server logs.”
  • “Using the distributed cache in MapReduce.”
  • “Trim Outliers from the Audioscrobbler dataset using Pig and datafu.” 
  • “Designing a row key to store geographic events in Accumulo.”
  • “Enabling MapReduce jobs to skip bad records.”

The authors use a simple but effective strategy for presenting problems and solutions. First, the problem is clearly described. Then, under a “Getting Ready” heading, they spell out what you need to  solve the problem. That is followed by a “How to do it…” heading where each step is presented and supported by code examples. Then, paragraphs beneath a “How it works…” heading sum up and explain how the problem was solved. Finally, a “There’s more…” heading highlights more explanations and links to additional details.

If you are a Hadoop beginner, consider the first two books reviewed above. If you have some Hadoop experience, you likely can find some useful tips in book number three

Si Dunn

Getting Started with Mule Cloud Connect – To help sort out the chaos of Internet services – #bookreview

In Book review, Book reviews, Cloud Computing, How-to, integration platform, Internet, Kindle, Programmer, Programming, Software, System administration, Web applications, Web development on March 4, 2013 at 4:05 pm

Getting Started with Mule Cloud Connect
Ryan Carter
(O’Reilly – paperback, Kindle)

In a digital world increasingly cluttered with Software-as-a-Service (SaaS) platforms, Open APIs, and social networks, complexity quickly can get out of hand.

“It all starts,” Ryan Carter writes in his new book, “with a simple API that publishes somebody’s status to Facebook, sends a Tweet, or updates a contact in Salesforce. As you start to integrate more and more of these external services with your applications, trying to identify the tasks that one might want to perform when you’re surrounded by SOAP, REST, JSON, XML, GETs, PUTs, POSTs, and DELETEs, can be a real challenge.”

Indeed. But never fear, Mule ESB can ride to your rescue and connect you quickly and easily to the cloud. At least, that’s the marketing claim.

Some truly big-name users, it should be noted, are adding credibility to Mule’s claimed capabilities and usefulness as an Open Source integration platform. They include Adobe, eBay, Hewlett-Packard, J.P. Morgan, T-Mobile, Ericsson, Southwest Airlines, and Nestle, to mention just a few.

Meanwhile, riding Mule to the cloud is the central focus of this compact (105 pages), well-written get-started guide. Its author, Ryan Carter, is both a specialist in integration and APIs and “an appointed Mule champion” who contributes regularly to the MuleSoft community.

“Mule,” Carter points out, “is an integration platform that allows developers to connect applications together quickly and easily, enabling them to exchange data regardless of the different technologies that the applications use. It is also at the core of CloudHub, an Integration Platform as a Service(IPaas). CloudHub allows you to integrate cross-cloud services, create new APIs on top of existing data sources, and integrate on-premise applications with cloud services.”

The book is structured so you start off by building a simple Mule application that will serve “as the base of our examples and introduce some core concepts for those unfamiliar with Mule.” Then Carter shows and illustrates how to “start taking advantage of Mule Cloud Connectors.” He includes numerous code examples, plus some screenshots and diagrams.

The book’s six chapters are:

  1. Getting Started
  2. Cloud Connectors
  3. OAuth Connectivity
  4. Configuration Management
  5. Real-Time Connectivity
  6. Custom Connectivity

Carter emphasizes: “Mule Cloud Connect offers a more maintainable way to work with APIs. Built on top of the Mule and CloudHub integration platforms, Cloud Connectors are service-specific clients that abstract away the complexities of transports and protocols. Many complex but common processes such as authorization and session management work without you having to write a single line of code. Although service-specific, Cloud Connectors all share a common and consistent interface to configure typical API tasks such as OAuth, WebHooks, and connection management. They remove the pain from working with multiple, individual client libraries.”

If Mule does not have a connector for a resource that you need, the book shows you how to create your own.

Getting Started with Mule Cloud Connect can get you started on a beneficial ride of  discovery, and it can take you onto the trail that leads to solutions.

– Si Dunn

Outsource It! — The good, bad, and ugly of offshoring tech projects – #bookreview

In Book review, Book reviews, business, How-to, outsourcing, Project management, Software development, software testing on March 2, 2013 at 12:08 pm

Outsource It!
A No-Holds-Barred Look at the Good, the Bad, and the Ugly of Offshoring Tech Projects
Nick Krym
(Pragmatic Bookshelf – paperback)

Like it or not, outsourcing tech projects is here to stay. It’s also there to stay, and everywhere else to stay.

There is no clear way that outsourcing will shrivel up and die within the interconnected and increasingly interdependent world economy.

So, perhaps it’s time to stop griping, resisting, and mouthing political slogans–and focus, instead, on finding ways to make the best of offshoring. There are ways to profit from its advantages. And there are ways to minimize the risks from its quirks, management challenges, traps and disadvantages.

Actually, some “offshoring” is “nearshoring.” To help keep development costs down, big corporations in North America sometimes farm out tech work to smaller companies and individual freelancers located in less-expensive areas of the United States, Canada, and Mexico.

“Inshoring” happens, too. U.S. firms move some of their overseas tech operations back to the States, and foreign companies establish some tech outsource operations in the United States, Canada, and Mexico. Their outsourcing is our insourcing.

Outsourcing veteran Nick Krym calls his new book Outsource It! “a down-to-earth guide to offshore outsourcing.” It is aimed, he says, at “technology professionals…working in small- to medium-sized companies or in the technology trenches of large organizations.”

Outsource It! is well-written and packed with good information and how-to steps, plus insights drawn from Krym’s experiences and the experiences of many others in real-world offshoring. His 25 years in the IT industry include 20 years working in offshore outsourcing.

If you work in outsource situations, or if you are helping manage or set up an outsource team, you can glean good information and how-to ideas from Krym’s pages. And, you likely will want to keep the book handy in your reference collection, because he covers many “soft skills that need to be reinforced continuously until they become second nature.”

The 244-page book is divided into five main parts:

  1. Decide If, What, and How to Outsource
  2. Find the Right Vendors
  3. Negotiate Solid Contracts
  4. Lead Distributed Engagements
  5. Keep Risks Under Control

Three appendices take you inside the positives and negatives of outsourcing to India, China, Russia, Central and Eastern Europe, Ireland, Israel, South America, Central America, Mexico, Canada, and the rural United States.

Other appendices offer: an “Outsourcing Readiness Assessment Checklist”; a summary of “Vendor Search Criteria”; an “Outsourcing Checklist”; and an “Offshore Vendor Technical Assessment” process.

As someone who previously worked in multinational software development, on projects involving teams in the U.S., Canada, France, Italy, Sweden and China, I found myself particularly agreeing with Krym’s assessments of software outsourcing.

“Many companies think that QA—software testing—is a logical function to outsource,” he reports. He offers several reasons why this not always “the most prudent approach” and describes what it takes to make offshore QA work.

For example: “The first rule of setting up a productive offshore team,” he stresses,” is to use QA professionals rather than software developer rejects or English major graduates.”

It is likewise vital to find “a solid QA lead—someone who is sufficiently technical, understands the process and requirements, and can manage the team.”

Krym further emphasizes that “[t]he cost difference between local and outsourced QA engineers is not always as dramatic as it is for developers.”

And: “Poor QA management can generate huge amounts of useless work, producing hard-to-manage artifacts and creating unhealthy team dynamics.”

Nick Krym’s new book is an excellent guide to the ins, outs and complex gray areas of outsourcing technology projects. And it’s not just for managers and executives. Employees, freelancers, and leaders of start-ups also can find ways to benefit and profit from the knowledge and experience Outsource It! offers.

Si Dunn

Testing in Scala – How to Test First, Then Develop Effective Code – #programming #bookreview

In Book review, Book reviews, How-to, Java, Kindle, Paperback, Programmer, Programming, Scala, Software development, software testing on February 26, 2013 at 3:32 pm

Testing in Scala
Daniel Hinojosa
(O’Reilly – paperback, Kindle)

In test-driven development (TDD), a software developer first creates some specific tests that are intended to fail and then writes code that is good enough to pass the tests. After that, the code is refactored, improved to make it better and easier to maintain and extend.

A key goal of TDD is to reduce the time and costs required to develop software.

Daniel Hinojosa’s well-written Testing in Scala effectively introduces test-driven development basics to Scala newcomers, as well as to developers already familiar with Scala or other programming languages, including Java, Ruby or Python.

The scala-lang.org website describes Scala as “a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages, enabling Java and other programmers to be more productive. Code sizes are typically reduced by a factor of two to three when compared to an equivalent Java application.”

Both TDD and Scala have been around for a number of years, but each is now gaining new traction with corporations, software companies, and individual developers seeking faster results at lower costs.

One big reason for Scala’s rising popularity, the Scala website proclaims, is Scala’s close ties to Java:

“Existing Java code and programmer skills are fully re-usable. Scala programs run on the Java VM, are byte code compatible with Java so you can make full use of existing Java libraries or existing application code. You can call Scala from Java and you can call Java from Scala; the integration is seamless. Moreover, you will be at home with familiar development tools, Eclipse, NetBeans or IntelliJ for example, all of which support Scala.”

The Spring Tool Suite also can support Scala using the Scala IDE for Eclipse, but there recently were a few “caveats” if you have the Java 7 JDK installed. Meanwhile, the Spring Scala project, announced last October, is underway.

The new book Testing in Scala is structured as six chapters that utilize different testing frameworks while an example application is tested and developed from scratch:

  1. Setup
  2. Structure and Configuration of Simple Build Tool (SBT)
  3. ScalaTest
  4. Spec2
  5. Mocking
  6. ScalaCheck

The book and its code examples, Hinojosa says, are “organized in a TDD fashion: test first, fail; test again, succeed maybe; test again, succeed, and so on.”

If you’ve never tried TDD, Testing in Scala may help you learn how to become a better, more efficient Scala developer.

It also can introduce you to a development style that you may be able to adapt quickly and effectively to other programming languages, as well.

Si Dunn

Follow

Get every new post delivered to your Inbox.

Join 1,338 other followers