Posts

How to Buy My Books

 

First, I want to thank all of you that have bought one or more or my books.  I’m very grateful.

Second, I wanted to post to make sure that everyone knows that I have three books out  and how you can buy them.

Book

Buy in Paperback

Buy in Digital Form

CodingInDelphiCoverFront Buy on Amazon for $39.99

Buy on CreateSpace for $39.99/p>

Buy on LeanPub for $39.99, which includes *.MOBI, *.PDF, and *.EPUB
MoreCodingInDelphiCoverFront Buy on Amazon for $39.99

Buy on CreateSpace for $39.99

Buy on LeanPub for $39.99, which includes *.MOBI, *.PDF, and *.EPUB
title_page Buy on Amazon for $39.99

Buy on CreateSpace for $39.99

Buy on LeanPub for $39.99, which includes *.MOBI, *.PDF, and *.EPUB

Another option, for those that want to buy all three, is to buy them in a digital bundle on LeanPub for $74.99

Flotsam and Jetsam #119

  • Hey, we have a hotfix available for RAD Studio.  It can be found on Code Central.  It focuses on some issues in the tool chain.  Given that it’s a hotfix, it only replaces a few choice files and doesn’t require an uninstall/reinstall process.
  • Thanks to everyone who filled out the RAD Studio survey.  We had a very good response, and we’ll pour over the results and make decisions based on what we learn from there.  Thanks.
  • If you are an InterBase customer,  the InterBase 2017 survey is out and available. This is your chance to have your voice be heard on the InterBase front. 
  • Jason Southwell is at it again. This time he has an interesting framework called ConinAsync that makes parallel programming with data structures really easy.  Give it a look.
  • A lot of folks have been asking when my new book, Dependency Injection in Delphi, will be available in physical form.  Well, it’s available now on Amazon.  I’m grateful to all of you who buy my books.

Flotsam and Jetsam #118

  • Delphi for Linux is soon to be here.  We’ve unleashed the Beta Bloggers, so keep an eye out for more information coming from any number of sources.
  • Thanks to all of you who have bought my new book, Dependency Injection in Delphi.  I’m grateful for all the support.  My wife is working on the cover for the paperback edition, and it should be available soon.
  • I’ve had a job change – I’m moving from being the Director of Product Management to the Director of Engineering.  Instead of managing the Product itself, I’ll be managing the actual development process for all the Embarcadero products, as well a couple of other Idera tools.  It’s a bit of a switch, but one I’m looking forward to.  Managing the development process is no small task, but I feel up to the challenge.
  • I’ve always said that if I could teach new developers one thing, it would be to “program to an abstraction, not to an implementation”.  I was at a great talk on Code Reviews by Travis Laborde at a recent Philly Code Camp, and he said that that most important thing to teach a new developer was the Single Responsibility Principle.  I thought that was a worthy competitor.  What do you think is the most important thing to teach to a new developer?

Flotsam and Jetsam #116

  • The Starter Version of Delphi is currently 100% off.  I.e.  Free as in beer.
  • The proper use of comments is to compensate for our failure to express ourselves in code.” – Uncle Bob Martin
  • I continue working hard on my materials for Delphi Developer Days.  If you haven’t signed up yet, do it.  I’m really looking forward to seeing you all there.
  • I’m really looking forward to attending TechBash 2016 at the end of the month here in the Poconos in Pennsylvania.  Not only will there be a great lineup of speakers and a great venue, there will be some old friends there that I’m looking forward to seeing again.  It’s nice to have a world-class event like this so close to where I live – it’s so close that I’m driving, as well as taking advantage of the water park.  🙂
  • And while we are on the topic of conferences, I’ll be at Philly CodeCamp this year as well, on October 21-22.  It’s at the Microsoft Malvern office.  Friday is a pay-for-it all day session, where Saturday is hour long talks and is totally free.  If you are in the area, you should go.  It’s always been very good, and they give away a lot of prizes.
  • The new book is drawing closer.  I know I keep saying that, but I only so because it is true.  It will finish sooner rather than later.  As always, you can sign up to  be kept abreast of things.

Flotsam and Jetsam #115

  • I put up a poll on Google Plus asking what the greatest all time Delphi freeware/open source plugin/framework was.  Thought you might like to vote.
  • Work continues apace as we continue to prepare for Delphi Developer Days.  I’m happy to say that there will be six folks attending in Baltimore from my employer, Gateway Ticketing.  I’m really looking forward to seeing so many Delphi developers from all over the world.  Sign up today if you haven’t already.
  • Remember, the price for the Coding in Delphi Bundle remains at the low price of $54.99 (You can pay more if you want. <g>).   That’s a savings of just over $25 when buying both individually.  Thanks to everyone who has bought the bundle already.
  • Jason Southwell is a friend of mine and a fine contributor to the Delphi community.  His company, Ideal Software, is looking for a Senior Developer.  Sounds like a good opportunity to me.
  • Shameless Plug:  My wife is an artist and writer.  She has a fun coloring book designed for all ages called “Color the Cats”.  Give it a look.
  • My latest book, Dependency Injection in Delphi, is still in the works.  I know I said that a while ago, but it always takes 90% of the time to finish the last 10%, right?

Flotsam and Jetsam #114

  • Signups are open for Delphi Developer Days.  Remember, the “Very Early Bird” special price ends on August 12, so start planning now.  I love presenting and hanging out with Delphi developers, so I hope you’ll be at one of the events.  Should be a very fun time all around.  And of course, if your company wants to help sponsor the event, then please be sure to contact Cary via the website.
  • RAD Server is the latest “official” product at Embarcadero.  (It previously was known as the Enterprise Management Server and was a feature of high end Delphi SKU’s).  This is a cool tool.  It’s basically an “AppServer” to Delphi as AppServers are to Java Enterprise Beans (or at least as I understand it).  It in effect makes it pathetically easy to build REST APIs.  Microservices are all the rage, and so this is a well-timed release.  I’m definitely going to investigate it.
  • Book Update:  You can find out the basics of my new book here. You can also sign up to get email updates, and help me price it by letting me know what you’d be willing to pay.  Currently the book is being proof-read and is under technical review.  I can’t say for sure when it will be available, but it’s definitely in the “The last 10% takes 90% of the time” stage.  I just realized that I hadn’t covered attributes enough, so I’m going to have to add a section on that. 
  • I simply cannot say enough good things about CodeInsightPlus.  Here’s the one thing I will say. If you value your time even slightly, get it and install it now.
  • This blog post by Marco started an interesting discussion.  For what it’s worth, I stand on the side of proper encapsulation, after having originally been on the other side of the argument.

Book: Dependency Injection in Delphi

My new book, “Dependency Injection in Delphi” is getting close to being published.  It is a deep dive into Dependency Injection and the Spring4D DI Container. 

It’s going to be about 90 pages long or so, depending on the exact size the book ends up being.  I’ll be publishing it first as an eBook, and then soon after in hard cover. 

You can click on the link above to find out more information, including the chapter list.  Please feel free to enter your email address to be notified about it being published, etc. (You don’t even have to let me know your email address if you don’t want to).

My previous two books – Coding in Delphi and More Coding in Delphi – exceeded my expectations, and I’m very grateful to everyone who bought it.  I know I’ll appreciate the support that Dependency Injection in Delphi receives as well.  Thanks as always.

Flotsam and Jetsam #112

  • Been a while, eh? 
  • Obviously the biggest news to cover is the Idera acquisition.  By now I’m sure you all are aware that Idera Software has acquired Embarcadero. (It always seems strange to me when a smaller company bys a bigger one, but never mind….)  They’ve done an interesting thing.  They’ve taken the Embarcadero database tools (what we used to call “DataGear”) and incorporated them into Idera’s software brand.  Then, they’ve left RAD Studio and Interbase under the Embarcadero banner as a separate entity.  I don’t know what the accounting setup is, but it does seem like a separate company altogether.  Neither website mentions the other.  Embarcadero put out a press release stating that they are exclusively focused on development tools, which I really liked to see.  It does seem like Idera wanted the “DataGear” stuff and have now set up “CodeGear” as a separate entity.  What that means I don’t know. But here’s to continued success under the new management.
  • Along those lines, I did have a conversation with Atanas Popov, General Manager for Embarcadero. He was quite confident in things going well as they execute on the roadmap.  He’s actually quite open and accessible – he publishes his email: atanas.popov@idera.com  Don’t be afraid to get in touch with him if you have any questions or issues about the path forward.
  • I can’t vouch for the book, but you can get Delphi Succinctly for free.
  • I will be presenting two days of material at the Danish Delphi User Group at the end of April.  I’m really looking forward to it, not only for the excellent conference, but also because my youngest will be making the trip with me.  I’ve talked at this conference twice before, and it’s always been fun.  If you are in thearea and want to excellent Delphi content (if I do say so myself), then you should attend.
  • My books continue to sell, and I’m very grateful to each and everyone of you that have made a purchase.  If you still want to buy, supplies are unlimited, but don’t let that stop you!  You can buy both books in paper copy, both on  electronic copy from LeanPub, and if you are really excited, you can buy them both as an electronic bundle for a $15 savings.  Again, you have my thanks and gratitude for your purchases.  The books have been way more successful than I ever hoped.
  • The bummer news is, of course, the departure of Allen Bauer from Embarcadero. Allen is a great friend, and I wish him well on his new endeavors at Google. He was with the Delphi team from the very beginnning.  His loss is a blow to the product.  But the team isn’t just one guy, so here’s to others stepping up to fill the void. 
  • Link of the Week:  Giving up on TDD by Uncle Bob.  Apparently a guy named Ian Sommerville “gave up” on TDD, and Uncle Bob refutes his argument. Uncle Bob doesn’t pull his punches.  Good stuff.
  • Coding in Delphi Bundle

    Want to buy both of my books in electronic form?  Well now you can get a deal on it – The Coding in Delphi Bundle.  Buy the bundle and save $15!

    As always, I’m very grateful to the Delphi community for all your support.

    Flotsam and Jetsam #111

    • My friends David Millington and Roman Yankovsky have teamed up to offer a Christmas time special.  You can buy both of their tools for the price of Fix Insight.  What are those tools?  Well, David’s tool is Navigator – a powerful, easy to use way to navigate your code.  Roman’s tool is Fix Insight – a static code analysis tool.  Right now, you can get both for the price of Fix Insight – that’s a $40 in savings.  I can vouch for both tools as being very useful and of high quality.  Don’t miss this good chance to get two excellent tools at a low price.  (While you are at David’s website, be sure to download the excellent and free Bookmarks plugin. And did you know that he has some open source items available as well?)
    • ‘Tis the season for Delphi updates.  Of course, Delphi 10 Seattle Update 1 is out.  It even includes a few new features.  It is available for all people on Update Subscription.  (For those of you complaining about this, I hate to say it, but you were given plenty of warning and opportunities to get on board.)  Dr. Bob reports on two hot fixes that are also available.
    • It looks like I’m going to be speaking in Denmark in April at DAPUG’s annual conference.  I have spoken twice before, and have always enjoyed my trips there, and the fine hospitality provided by Jens Fudge and his family.  I’m looking forward to speaking there again.  Not 100% sure what the topics will be yet, but I promise it will be interesting.
    • I had a great time at EKON 19 – you should attend next year no matter where you are in the world – and the thing I enjoyed the most was my three hour seminar on Dependency Injection.  I covered Dependency Injection in Coding in Delphi,  but things have changed in the mean time, and there have been additions to the Spring for Delphi framework that make things even more powerful and capable.  So much so, in fact, that I’ve decided to write a book entitled Dependency Injection in Delphi. It will very likely be shorter than my other two books, and I think to start I’ll sell it as an ebook only (MOBI, ePub, and PDF) on Leanpub.  It will, however, go into Dependency Injection much more in depth than my two chapters in Coding in Delphi.   In any event, you can follow this link and sign up for updates about  the book and let me know how much you think I should charge for it.  There’s absolutely no time table on this – as you saw above, I have a lot of preparation to do for DAPUG – but I will be working on it.  I’ll go with “it will be available later this year”.  Again, I’m humbled and grateful by all the people who have bought my books.  

    More Coding In Delphi Now in Electronic Form

    My deal with Embarcadero has expired, so More Coding in Delphi is now available for sale in electronic form

    That makes a total of four ways to buy my two books:

    Both books are also available on Amazon

    Both books have been more successful than I could have hoped for, and I’m very grateful to all of you that have purchased.  I hope you are pleased with it.

    More Coding in Delphi

    I hope most of you have heard by now, but my second book is out and it is called “More Coding in Delphi”.   It’s a book very similar in nature to my first book (Coding in Delphi, which is still very much for sale) in that it covers coding techniques for Delphi Developers. 

    You can get the book for free if you own Delphi XE8.  If you don’t yet own Delphi XE8, I suggest you upgrade, get the great product, and then get both my and Marco’s new book as well – both for free.  It’s a win all around.   Sorry, but the only way to get the ebook is to be a Delphi XE8 owner.  Well, I shouldn’t say sorry; as I said – it’s a win for everyone to own XE8. 

    If you want a paperback copy of More Coding in Delphi, you can buy it from CreateSpace.  You can also buy it on Amazon, but you’ll be doing me a favor if you buy it from CreateSpace – my royalty is markedly bigger there.   CreateSpace is owned by Amazon if that makes a difference, and you’ll get the exact same book either way.

    Here’s the Table of Contents of the main body of the book:

    • Six Things Before We Start
    • Writing SOLID Code
    • Patterns
      • Factory Pattern
      • Observer Pattern
      • Adapter Pattern
      • Decorator Pattern
      • Command Pattern
    • Operator Overloading
    • Multi-Threading and Parallelism Overview
    • Using TThread
      • The Parallel Programming Library
      • Parallel For Loops
    • Interception and Aspect-oriented Programming
    • A History and Review of TSmiley

    In addition, here are also Appendices about Duck Typing and “Things Nick Does When He Codes”. 

    More Coding in Delphi was a lot of work, but well worth it. It’s quite satisfying to complete a book. 

    I hope you like it. 

    Flotsam and Jetsam #106

    • Number 10 with a bullet!
    • As you may have noticed on my LinkedIn Profile, I am once again an employee at Gateway Ticketing.  This time around, I am a Senior Software Developer, meaning I am full-time Delphi Developer.  I’m delighted to be back in the new beautiful building that Gateway has built.  I’m also pleased to have shaved an hour off of my commute each way.  I enjoyed my time at Veeva Systems, but the prospect of returning to Gateway and reducing my commute was just too much to resist.
    • Why did Borland fail?  Danny Thorpe gave an answer on Quora, and it is being discussed on Hacker News.
    • The inestimable Julian Bucknall has released is well-known EZDSL data structure library at GitHub.  Thanks, Julian!
    • Book Update:  As many of you know, I’m working on a new book called, naturally, “More Coding in Delphi” and I thought I’d give you an update on it.  The whole book is written, and it’s going to be a little longer than “Coding in Delphi”.  It’s now in that really hard stage where you have to read it and read it and update it and change the demos and fix things and do all the millions of little things that it takes to finish things up.  In other words it’s in the “The last 20% takes 80% of the time” mode.  But don’t worry, as I type this I’m sitting at Burger King getting ready to plow into things and “git ‘er done”. 

    Flotsam and Jetsam #102

    • Wallace and Gromit run on Delphi.
    •  I of course want you to buy my book, but I have been doing research for my next book and am thus reading sections of Delphi XE2 Foundations.  I can’t recommend this book enough.  It’s a tour de force for Delphi and the RTL.  I know how hard it is to write a book, and I can’t imagine how much work this one took.  It’s excellent, and I highly recommend it (after you buy my book, of course….).  Don’t be put off by “XE2” in the title, this is a great book for all Delphi developers.  Kudos to Chris Rolliston.
    • I’ve never really gotten into Quora, but it seems like a pretty cool site which has somehow managed to produce quality questions and answers without all the spam and other nonsense that often attends such a site.  Here’s a Quora question about Delphi that many of you might like to answer and/or read about.
    • Yesterday, I tweeted the following:  “Of all the types of reviews out there, the  ‘I couldn’t understand it so it must really suck, 1 star’ reviews are my favorite.” In researching my book, I’ve been re-reading Dependency Injection in .NET
      by Mark Seemann.  I looked up the book on Amazon, and was astonished to find that someone had given this amazing and enlightening book a 1-star review.  Some people, I swear.  This review is more along the lines of what the book deserves.
    • Correction:  Apparently, it was Borland C++ 3.0 that was the big box with the handle.  Thanks for the correction from Jeroen Pluimers, who also found a picture. (You have to scroll down a bit, but it’s there…)
    • A Clarification:  Two points to make on my last post about subscriptions.  First, it wasn’t about EMBT, but rather the software industry in general. Second, the point wasn’t “Software subscriptions are great!”, but rather “The industry is moving to subscriptions, and here’s why”.  Many folks seemed to believe I was arguing the former.  Perhaps I was just inarticulate.  Sorry for any confusion.

    Coding in Delphi $10 Off During #DelphiWeek

    To help celebrate #DelphiWeek and 20 years of continuous innovation, my book, Coding in Delphi, is $10 off for the next week.  Just use the link below to receive the discount:

    https://leanpub.com/codingindelphi/c/delphiweek

    Thanks!

    Flotsam and Jetsam #95

    • Last week I sang the praises of Stefan Glienke.  Well, he has done it again.  He’s released TestInsight – an IDE integration for unit testing.  This is really cool – you can run your tests automatically right in the IDE.  Give it a look – very, very nice stuff.   Plus, it works with all the major unit testing frameworks.
    • Tweet and Quote of the Week:  “As long as managers think programmers are young interchangeable pizza-fed cheaply hired commodities, buggy software will rule the world.”
    • Glad to see that this website is still alive and kicking: http://www.isdelphidead.com/ Hehe.
    • Work on my new book continues apace.  I’ve just started showing chapters to my “beta testers”.  I’m grateful for all the feedback I get.  If you are interested in reading rough drafts of my chapters, you can join the Coding in Delphi group.  It’s a private group, so I’ll have to approve your entry, but that’s usually not a problem.  I welcome and am grateful for any help in making the book better.
    • Next week is Delphi Week.  You can register to participate.   Hard to believe it’s been twenty years.  Seriously?  Great that the product is still rolling along as strong as ever.  I’ll have few thoughts, tweets, and other things to offer as we celebrate.  Keep an eye on this space and the #delphiweek hashtag, as well as the presentations from Embarcadero.  Should be fun.
    • Jim McKeeth does a nice interview with Darren Kosinski, who is a member of the FireMonkey R&D team.  Darren is a friend of mine from my days at Embarcadero and a good guy as well as a brilliant developer.  Give it a listen. 

    Flotsam and Jetsam #93

    • In my post about my new book, I mentioned that I thought my outline was a little thin, and indeed it was.  I left out a large topic about which I planned on writing – “Writing SOLID Code”.  Add that in, and things seem a bit more fleshed out.  The silly thing was that I was working on that chapter when I put together the outline and wrote the blog post.  Anyway, the outline has been updated and all is well.  Thanks again for the support.  If you want to keep up with the book’s progress, help out answering my silly questions, and generally be supportive, you can sign up at the LeanPub site, or you can join the Google Group
    • Here’s some food for thought for my post about not using nilThe Null Object Pattern.  Yet another reason never to return nil.  Instead of doing that, you can return a null object that won’t cause an access violation and yet won’t do anything.  You can check if the object is a null object if you need to.  Win all around.
    • So the rumors were true – Embarcadero has bought the main products of TwoDesk Software.  Jacob Thurman has stated that while he’s not now an Embarcadero employee, he will be working on the Delphi IDE.  I guess it’s none of our business exactly what the relationship will be, but if Jacob is working to improve what the IDE can do with code and to improve developer productivity in the Code Editor, I’m very happy.  I know that Jacob has had a lot of things that he wanted to do, but found it difficult as an “outsider”.  Now that he’s an “insider”, I hope he can do them.  I think we’ll see some fun stuff coming out of this deal. Congratulations to Jacob, who I hope was well remunerated, and to Embarcadero for the wisdom to see and acquire Jacob’s skills.
    • True words tweeted by me: “There are two things that developers love to do: Make pronouncements, and point out the exceptions to other developers’ pronouncements.”  I like to make pronouncements as you’ve probably noted.  I’m always trying to learn new things and new ways of doing things, and I don’t want to be held back by the “well, we’ve always done it that way” way of thinking.  I believe that the way software is developed is evolving and improving, and that we’ve found new ways of doing things better.  I try to learn those things and blog about them.  That’s what I’m trying to do here.  If you disagree with what I say, I welcome your comments. But I ask you to consider that maybe I’m actually on to something.  I’d encourage you to take the same path I have – the path of learning these new things that developers are finding and doing.  For instance, I don’t ever intend on writing another Delphi application without utilizing MVVM.  But ten years ago, such a thought would have occurred to almost no Delphi developer.  I encourage you to study the SOLID principles, to read Clean Code, to find better ways to decouple your code, and to generally seek out new thinking about software development.  I’m a firm believer that there is always a better way, and I encourage you to think so as well.

    More Coding in Delphi

    First of all, I want to once again thank all of you who have purchased, read, or otherwise supported my book Coding in Delphi.  I’ve said it before and I’ll say it again  — the response has been overwhelming and humbling.  The book has been more successful than I could have ever hoped for.

    It’s so successful, in fact, that I’ve decided to write another one – More Coding in Delphi.  I am once again using the LeanPub publishing platform.  LeanPub is really an interesting tool – it makes it really, really easy to produce a book. Highly recommended.  You write the book in Markdown, and they take that and turn it into PDF, MOBI, and ePUB files for you.  Easy as pie.  I’ve been using MarkdownPad for writing the book.  It does a nice job of helping you write Markdown text. 

    By default, LeanPub uses DropBox.  First, I granted LeanPub access to a shared folder on Dropbox.  Then, when I go to publish a preview or the real thing, LeanPub looks in that folder for a file called “Book.txt” which describes the format of the book by pointing to *.md files.  It then accesses those files in the shared folder and creates the book. 

    This time around, though, they’ve added a new feature where you store the book in GitHub and they pull from the repository to get the files for the book.  Cool.  When the book is ready for proofing by any of you interested in doing so, you’ll get access to the manuscript by pulling it from the private repository on Github.  So if you want to help out, you’ll need to brush up on your Git. SmileIt also means that I get the benefits of a DVCS, and you guys can make pull requests if you have improvements for me. 

    Right now, the outline for More Coding in Delphi is currently:

    • Four Thoughts on Coding Before We Start
      • Encapsulation, CQS, Postrel’s Law, Compostion over Inheritance
    • Duck Typing
    • JSON
    • Aspect-oriented Programming
    • Design Patterns
      • Observer Pattern
      • Adapter Pattern
      • Decorator Pattern
      • Another Pattern to be named later
      • Another Pattern to be named later
    • Parallel Programming
    • Model-View-ViewModel

    That feels a little thin to me right now, so I am seeking more topics.  If you want to suggest anything, I’m all ears — either comment here on this post, or join the Google Community for the book.  Remember the philosophy of the book, though – it’s all about the code.  I’ll write about code frameworks, RTL type stuff, etc., but I don’t want too many screen shots of forms in the book.  There will be some in the MVVM chapter, but the idea is that the book covers code and how to write good code.   That’s what I want to focus on.  I’m also open to turning “Four Things” into five or six or seven things, so if you have small topics – a page or two, not enough for a full chapter — I’d love to hear those as well.

    Okay, so now the real work begins.  It’s a lot of work to write a book. My hope is to have the book published by the end of this year.  I know that I can’t do it without your help – you guys made the first book possible.  Again, I’m grateful to all you readers and supporters.