Thursday, June 07, 2012

Parallel Programming with OmniThreadLibrary – Current Status

imageIn accordance with the Lean Publishing Manifesto, Parallel Programming with OmniThreadLibrary is published as it is written. When I’m happy with a chapter (or even with a section, if it is important enough), I click the Publish button on the LeanPub site and new, updated book is available to all the readers.

Such a book would be of a little use if you would not be able do buy and read it before it is finished. Therefore, you can buy the book in the current state of completion and you’ll get all future versions for free. That way, you will get the information as soon as it is ready and I get feedback from my readers before the book is completed (which also means I am able to react immediately, fixing the errors and updating the already written parts). You’ll be informed by the email when an update is ready. Alternatively, you can follow this blog or my Twitter feed.

The picture on the right shows the structure of the book. Chapters marked green are already finished. Blue color marks the chapter I’m currently working on. Orange color indicates chapters that are available in the free sample book. Brown color marks the content that is only partially included in the sample book.

If you want to affect the order in which the book is written, go to the home page of this blog and vote in the current poll. The poll is restarted each time new part of the book is published.

To get a better idea about the way the book is written, check the sample PDF.

image30image31

Translations

Parallel Programming with OmniThreadLibrary is also available in Russian (translated by Егоров Александр) and in Spanish (translated by Juan Antonio Castillo H.).

9 comments:

  1. Please, can you explain content of How-to section, maybe just short description.
    I have own needs on multi-threaded programs and maybe i can make some comments)

    ReplyDelete
    Replies
    1. Most of the articles in this section will be rehashed how-tos from the web (with better explanation at some points) and/or descriptions of relevant OTL test projects. The intention is to explain more complicated stuff so you can get ideas for your projects.

      Delete
    2. My general need for any app is removing all worker code from UI thread, to let app perform tasks in background. Task can be any - web download, database update, etc. All tasks can be queued (just linke in iTunes), but each task itself can include some parallel threads (if applicable: for ex - web download of several files; but database query can not be splitted into parallel tasks - just one bg thread).

      So, I want to know common patterns to build task queue (queues?), and communicate between task and main UI thread. Maybe you can discuss areas of potential problems: deadlocks, etc.

      Delete
  2. Can you explain how I can get the updates. Will my iBooks remind me that there is a newer version or I need to check somewhere?

    ReplyDelete
    Replies
    1. You will get an email each time I publish an update.

      Delete
    2. Hi,

      I purchased the book but have not gotten an update. Can you please send me an update notice with a download link? My email is thomas jaeger at gee mail dot com. Thank you.

      Delete
    3. Thomas, you can always download the latest version by logging into leanpub.com. They are available on the Purchases tab.

      Delete
  3. Hi gabr, is there any future update plan for your book? Want to see the low-level threading section :)

    ReplyDelete
    Replies
    1. Yes, I did not forget (or "forget") about the book and I will update it. In the last few months I was incredibly busy with things outside my controls, but my life will get easier in the second half of that month.

      I plan to resume writing this month and then really push into it in July.

      Delete