Jump to content
Larry Ullman's Book Forums

Second Edition Of The Effortless E-Commerce Book Whats Changed?

Recommended Posts



I wanted to find out what will be difference in the second edition of this book. On amazon it mentioned that it will have OOP code.


Will there be any other additional chapters or topics?


does it cover things like facebook or twitter marketing etc of the site or products?

Link to post
Share on other sites

Thanks, Hassan. I'll blog about this soon, but the short answer is that the new addition:


- Uses Twitter Bootstrap (for the 1st example)

- Now uses password_hash for secure password hashing and verification

- Uses a different approach for communicating with PayPal (IPN)

- Uses the newer Authorize.net SDK

- More securely verifies uploaded files

- Introduces and uses openssl_random_pseudo_bytes()
- Introduces and uses Composer and Zend\Mail (in the Zend Framework 2)
- Better explains mod_write, stored procedures, and the other most complicated stuff


I also cleaned up some code and optimized some oddities.

Along with those changes to the existing content, I added four new chapters (about 200 pages):
- One on extending the 1st example site, which includes PayPal PDT, using prepared statements, better security, an alternative password reset method, and implementing additional features
- One on extending the 2nd example site, which includes not using stored procedures, and how to implement additional features
- A chapter dedicated to JavaScript and Ajax enhancements
- A chapter dedicated to using Stripe to process payments
The OOP chapter did not make it in, due to time and space constraints.
Link to post
Share on other sites

I agree, Jon. I successfully used it in a project recently and would love to use it for local businesses here in Norway too. It'll come, though. It's to great for it to keep it to a few countries in the long run.


Also, Larry; Norway is one of the few EU countries not affected by the global economic crisis. We are a very highly educated people with a strong IT community. Make Stripe support the Norwegian Kroner, please! :D

Link to post
Share on other sites

Thanks, everyone, for their feedback. Working on better international presence at Stripe! (Coincidentally, I'm at Stripe's offices in SF right now.)


The Stripe chapter was the first time ever (with like 20+ books) that I had to declare a conflict of interest.

Link to post
Share on other sites

Yeah, I'm in Ohio, but I still have lots of contacts in Japan, some of which are currently trying to set up sites with e-commerce aspects to them.

Furthermore, even if I create an e-commerce site in America, I'd like it to have international reach, which isn't wholly possible with just Stripe at the moment.

Link to post
Share on other sites

I know Stripe is actively working on expanding its international reach. The logistics of doing so are really quite something, however. 


Jonathan (Hartley), could you explain what international reach is not wholly possible right now? For example, with the Yii book site, I'm based in the US and can take charges from anywhere in the world. Is it support for different cards that's the issue? Or support for purchases in native currencies? Or...?


Other Jonathon: working on a Stripe extension in the extensions chapter of "the book that will not end" right now. Hopefully it'll work well!

Link to post
Share on other sites

Yes, Larry, you're right. I misspoke.

You absolutely can access a US site anywhere in the world and use Stripe on the site.


My main point is that I'd like Stripe to be available for sites hosted in other countries (such as Japan).

Sorry for not thinking through my statements before posting them.

Link to post
Share on other sites
  • 4 weeks later...

I have the 1st edition of this book. Because I have a similar project to example 1 coming up, I'm thinking about purchasing the 2nd edition.


For now, if I want to start setting up my server and db before the new book arrives, can I download the new:

Complete Set of Scripts

effortless_ecommerce_2nd.zip (721 KB, last modified 11/17/2013)


and use the tables intended for the 2nd edition ( I assume it's for the 2nd edition) with the .php scripts from edition 1(that go along with the book I currently own)? Or have the table names changed? If I start now, using the files from the first edition, will it cause a problem when I start substituting the .php files from the 2nd edition?


Actually, I have downloaded the above file but not created any of the tables yet. One thing I noticed is that the download only includes "ex1". Thought this is the one I want, I was wondering about "ex2" being absent from the .zip package.



Link to post
Share on other sites

You don't want to mix the tables and scripts from the two editions. I have made some changes, and you're just planning on creating errors and bugs if you mix the two. 


Why not download the 2nd edition's set of scripts and then create the tables from the 2nd edition and use the scripts from the 2nd edition? Or, if you're worried about following along, then use the 1st edition's scripts with the 1st edition's tables?


I'll fix the download. Thanks for bringing that to my attention.

Link to post
Share on other sites

Thanks, Larry.


I think I'll go with the second edition downloads and fool around with them until the new book arrives.. just anxious to get started.


Also, glad to hear you've got a new way to attack the PayPal IPN. I still have a migraine from calling PP tech support on that. Also, I've been using Bootstrap for a year now so that's also a plus.

Link to post
Share on other sites

As an owner of the first edition (along with at least a dozen others) I'll certainly buy the second edition for some of the new features. While your books are probably the most educational in this space, it seems like the OOP implementation always gets left out due to space/time. Since OOP is where nearly everything seems to be today, wouldn't it be most useful for readers to include more OOP implementation examples instead of the procedural approach?

Link to post
Share on other sites

Hello phpdave. Thanks for your input! I did want to put an OOP example chapter into this book, but as you saw, ran out of space and time. I guess the reason OOP examples get abandoned is this: in my mind, if you know OOP, it's pretty easy for you to take a procedural example and OOP-ify it. But if you don't know OOP, it's impossible to take an OOP example and turn it into a procedural one. In other words, I think it's better to leave more advanced programmers to up-convert examples than to leave more beginning programmers to down-convert them. 


Other than that, it's a matter of: for the book's audience (as I imagine it), is it better to drop the OOP example, or the chapter on JavaScript or the chapter on Stripe (no!) or... 


So that's how it happens. Sorry for the disappointment. 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...