How to get MacBook Pro to read iBooks on OS X Yosemite

Got my copy of Soft Skills in pub format loaded to iBooks and about to go for a 4 hour drive to start new mobile project in ST Pete area. Good time to get back into my CarUiversity, in this post will list steps to use MacBook as it continues to read without highlighting, second post will show how to use iPhone

  1. MacBook Pro – very easy
    a) in iBooks select Edit/Speech/Start Speaking
    Text to voice will start with nearest chapter, the pages will not turn but it will continue to read, you can also select some text to read

Screen Shot 2015-04-26 at 1.48.08 PM

To change voice or reading speed go to Settings/Dictation and Speech

Screen Shot 2015-04-26 at 2.07.06 PM Screen Shot 2015-04-26 at 2.09.11 PM


In my next post we go over the steps how use VoiceOver to read iBooks on the iPhone with iOS 8

read more about iBooks on the Apple site


Software Engineering Book List

This is recommended book list by Mike Potts 



  • Principles, Patterns and Practices
  • Analysis Patterns
  • Clean Code
  • CLR via C#
  • Code Complete 2
  • Domain Driven Design
  • Mythical Man Month
  • Object Oriented Software Construction
  • Patterns of Enterprise Application Architecture
  • Refactoring


  • Agile Management for Software Engineering
  • Managing Humans
  • The Goal


  • A Discipline for Software Engineering
  • Agile Software Development with Scrum
  • Cleanroom Software Engineering
  • Implementing Lean Software Development
  • Kanban
  • Lean Software Development
  • Out of the Crisis
  • Personal Software Process
  • Scaling Lean & Agile Development
  • Software Estimation
  • Theory of Constraints


  • Adrenaline Junkies and Template Zombies
  • Beautiful Teams
  • Management Challenges for the 21st Century
  • Peopleware
  • Rapid Development
  • The Essential Drucker
  • The Fifth Discipline
  • The Idea Factory

Reasons to choose Xamarin to develop your next cross platform mobile app

  1. Xamarin is a world-class development environment for cross-platform mobile apps. Using Xamarin with Visual Studio or Xamarin Studio you are getting all the advantages of modern and powerful IDEs, which helps to boost a development process and simplify development and support process.
  1. Xamarin delivers high performance compiled code with full access to all the native APIs so you can create native apps with device-specific experiences. Anything you can do in Objective-C or Java, can be done in C# with Xamarin
  1. Using Xamarin technology allows to keep Native UI across all three platforms, therefor preserving Native Performance while enjoying full API coverage, shared codebase and application logic. It also allows for re-using skills, teams, tools and most importantly – the CODE! Needless to say, it saves time and resources.
  1. Xamarin is integrated with SDKs of all of the different operating systems. You have the ability to utilize native controls that exist for the iPad, Android or Windows but only coded once.Linked files, conditional compilation, and portable class libraries make it possible for developers to share the code. The ability to reuse 60-90% of the code cuts the development time in half. That obviously saves time and money to both customers and service providing companies on the app’s multi-channel distribution. Additionally, a single codebase dramatically reduces costs for support and new features introduction.
  1. Xamarin supports iBeacons, Google Glass devices, Android Wear, Apple Watch and Microsoft Band. That is a great opportunity for developers to innovate with Xamarin.
  1. Windows Phone and Windows 8 development is natively supported by Visual Studio, and Xamarin is not involved here. Code can be shared between iOS, Android and Windows using Portable Class Libraries and proper application architecture.
  1. Xamarin TestCloud  allows to automatically test iOS and Android apps immediately, on hundreds of devices, offering continuous integration, beautiful reports, test for fragmentation, and object-based UI testing.
  1. Xamarin allows building applications on C# and here are some reasons why C# is good for that: it is a simple, modern, general-purpose, object-oriented programming language. You can leverage all the power of strong typed language, lambdas, LINQ, async programming:
  • Language integrated queries make it even more powerful. LINQ introduces standard, easily-learned patterns for querying and updating data, and the technology can be extended to support potentially any kind of data store. Visual Studio includes LINQ provider assemblies that enable the use of LINQ with .NET Framework collections, SQL Server databases, ADO.NETDatasets, and XML documents.
  • The most powerful way to do parallel work is using Microsoft Task Parallel Library (TPL) and Xamarin supports it. The purpose of the TPL is to make developers more productive by simplifying the process of adding parallelism and concurrency to applications. Parallelism is crucial for responsive mobile application user interfaces. Unfortunately, existing approaches with callbacks and synchronization make the code less readable, complicated and confusing. Conversely, with the TPL you can focus on business logic and let the framework deal with an asynchronous code.  In addition, the TPL handles partitioning of work, scheduling of threads on the ThreadPool, cancellation support, state management, and other low-level details.
  • The C# language is great to develop async code in a nice and clean way.


  1. Today, nearly 500,000 developers are already using Xamarin to create amazing apps. And here are the companies that are taking advantage of Xamarin today:
  1. What experts are saying about Xamarin:

“We knew we had to cover a large demographic of mobile users—to do this we decided to adopt the Xamarin platform. Xamarin is the only platform that gives us what we needed. If you want to build high-quality native apps, then Xamarin is the only platform you should use.”

Gordon Langford

Mobile Director, Screenmedia


“As a QA Engineer, I am really enjoying Xamarin Test Cloud because it offers me a broad range of Android and iOS devices. It gives me the ability to have more test coverage and to discover issues sooner. And what’s particularly helpful is that Xamarin offers exceptional service and support that I can depend on every day.”

Derrick Lam

QA Engineer, Flipboard


“Xamarin’s architectural approach provides completely native UIs with better performance than other cross-platform techniques… Xamarin uses multifaceted technology built by a cohesive team with a solid long-term track record.”


Magic Quadrant for Mobile Application Development Platforms


“The broad collaboration between Microsoft and Xamarin is targeted at supporting developers interested in extending their applications across multiple devices. With Xamarin, developers combine all of the productivity benefits of C#, Visual Studio 2013 and Windows Azure with the flexibility to quickly build for multiple device targets.”


Corporate Vice President, Microsoft Corporation


Using Xamarin, we can write apps entirely in C#, sharing the same code on iOS, Android, Windows and Mac. Reuse favorite .NET libraries, and still easily incorporate platform-specific libraries and frameworks when we need to. It allows to produce fast, modern, reliable user-friendly apps faster and more cost effectively.