What is Larry Thinking? #63 => The Life of a Web Developer, Part 1

November 19, 2012
The Yii Book If you like my writing on the Yii framework, you'll love "The Yii Book"!

In this edition…

About This Newsletter

I’ve been a professional Web developer for over 13 years now, and I have a few things going on now that are making me self-reflective about this role that many of us perform. Hence, this newsletter covers a range of subjects and resources that are part of the life of a Web developer, as I think about it at the end of 2012. I imagine there will be a few more newsletters in this same vein over the next couple of months, so I’m calling this release “Part 1”.

As always, questions, comments, and all feedback are much appreciated. And thanks for your interest in what I have to say and do!

On the Road => Speaking at Boston PHP

I’ve been invited to speak to the fantastic Boston PHP user group (over 3,000 members!), who is currently using my “PHP for the Web: Visual QuickStart Guide” for Season 4 of their PHP Percolate! program. On Wednesday, December 12th, I’ll be presenting “How To Become A Web Developer“. This will be a new, 75-minute presentation on the progression of tools and technologies needed to be a Web developer today. Along with the presentation, there will be socializing opportunities both before and offer, and a Q&A session.

If you’d like to attend, you’ll need to join Boston PHP (you don’t have to live in Boston to do so), which is free. Then you can indicate your attendance (the presentation is also free). As of this writing, 254 people have RSVP’ed! But spots are still available.

There is discussion about recording the session, which will hopefully happen. Either way, I will post my presentation slides afterwards.

My thanks to Boston PHP for the hospitality!

On the Road => True North PHP Conference

This is my first newsletter since I attended the inaugural True North PHP conference. On Friday, November 2, at 2pm, I gave a presentation on the Yii framework. I just posted my slides on my blog, although more than half of the presentation was a live development of a Yii-based site, and that content is not reflected in the slides.

Overall, I thought the conference was a great success. It was well attended, with many good, informative presentations. I was also able to meet a couple of people that have purchased my books, which was a pleasure for me.

If you’ve never been to a technical conference before, I’d recommend that you do so at least once. Find one that’s feasible for you, in terms of both geographic location and dates, and attend at least one day. Before you go, do a bit of research on the presentations and speakers to best select which ones suit your interests and skill level. Good conferences have multiple quality presentations going on at the same time, and you want to choose judiciously. Then, when you’re in the presentation, close your email, your Twitter, your Facebook, your other projects, etc., and just pay attention. The only reason your computer should be open is if you’re taking notes!

Many of the True North PHP presenters have posted their slides on joined.in, if you’d like to take a look.

On the Web => Recursive Software Development Teams

One of the presentations that I attended at True North PHP was “Recursive Software Development Teams” by Scott Mattocks. I really had no idea what the presentation was about, but, in hindsight, was very glad I attended it.

In the presentation, Mr. Mattocks started by talking about what qualities and behaviors a good team member has, such as writing things down, adapting to change, and communicating clearly. Mr. Mattocks then put forth the notion that your code itself is a member of your team and that it should have those same qualities and behaviors. I found it to be a very interesting idea. Mr. Mattocks then walked through in some detail what it means for code to have and exhibit these behaviors.

Mostly the presentation puts forth what many of us already know as best practices, but it does so with a fresh perspective. I’ll certainly be thinking about this presentation the next time I’m developing something.

On the Web => The Yii Book

On October 30th, just after the previous newsletter went out, I started selling my self-published book on the Yii framework: “The Yii Book”. I’m selling the book as I write it, in electronic format. Later on, I may sell print editions, too. The URL for the book is yii.larryullman.com, and you can find more information on its FAQ page.

I am, of course, terribly behind schedule, but am doing my best to catch up.

It’s safe to say that in this day and age Web developers are expected to be familiar with at least one framework, so why not consider Yii?

On the Blog => Processing Payments with Stripe

I’ve started writing a new series on my blog. This one is titled “Processing Payments with Stripe“. In the series, I explain everything you need to know to start accepting payments on your Web site via Stripe. The first three parts in the series are:

My hope is that the series will be useful to all Web developers, whether or not you plan on doing any e-commerce in the near future.

Q&A => How do I Make a Web Site Profitable?

In response to my most recent book giveaway, W.R. asked me this question. It’s a great one, but not one that’s easy to answer. Well, I can answer it easily, but there are no easy solutions to making a site profitable.

The very short, consistent answer to this question is: time. You need time to make any business profitable, and Web sites are no different. Fortunately, Web sites don’t have the overhead that traditional brick-and-mortar stores do, which makes waiting for profitability more feasible.

Second, you need to think about expenses. Income affects profitability, and most people think about that the most, but the business’s expenses have an almost equally important role. If I bring in $100, without having spent $100, I’m profitable. And that’s a whole lot easier than bringing in $1000 because I’ve spent $950. (Although, obviously, not all expenses are controllable.)

So if I were starting a new Web business today, or analyzing an existing one, I’d look at what the absolute minimum expenses are. Then I’d calculate how long the business can afford those expenses without any income. If that result is not a pretty long time, as in more than 18 months (as a ballpark figure), I’d question whether it makes sense to pursue the business in the first place. Say the fixed expenses are $100/month: does the business have more than $1,800 available that it can lose?

Next, I’d calculate how much income would be needed to cover the expenses and provide enough additional money to pay the business owner and expand the business. So after 18 months, at least $100/month needs to be coming in. But really, at some point in time after that, maybe $1500/month needs to be coming in: $200 for expenses (because more business almost always means more expenses), $300 for expansion, and $1000 for income. I’d then ask if those numbers are sufficient to make it all worth while.

Obviously I’m using relatively small and general numbers here, for simplicity sake. Your actual mileage may vary.

The original question was about profitability, and I haven’t touched upon that at all yet. Well, the reason is that you can’t talk about profitability, or business in general, in abstract terms. I’m not the type of person that creates and lives by goals. It’s just never been my style. But businesses must have quantifiable goals. It’s the only way. If you want to make a Web site profitable, you must first identify exactly what that means.

Once you have specific numbers in mind, you can break down how to arrive at that income level. If a business needs to make $1500/month, that means $X in sales and $Y in advertising and… How you do get that income depends upon the type of Web site involved. Let’s look that some categories.

If the site provides content, with the intent of making money through advertising, the good news is that the expenses will be low. The bad news is that money is hard to come by through advertising. The only “trick” then is to make a lot of great content over a long time. Web advertising is a shear numbers game: a site will only get a small percentage of clicks on ads, and you only get a small amount of money for each, so you have to get as many users and visits as possible. You do that by having a lot of great content, doing SEO, and by being online for a long time.

It is possible to make a lot of money through advertising alone, but it will take a lot of work and a lot of time.

If a site sells digital content, life is a bit more predictable as income is tied directly to sales, not to visits and clicks. But expenses will be higher, depending the content being sold. The main factor is having a product that users will want to buy. This is one of those situations where the same rules that apply to traditional brick-and-mortar stores applies to Web stores: have something customers want to buy. No tricks to it, really. You will want to use SEO to make sure the product turns up in searches, of course.

As an example of this, my Yii book was technically profitable within two days. The SSL certificate will cost me $200/year and I’m hosting the site on my own server, so there’s no additional expense there. I also paid some money to the person that created the cover for me. With very little expenses, and 50 sales in two days, the project was profitable, technically, almost immediately. But you have to ignore the fact that I’ve thus far made about $1.95/hour. Profitable, yes, but I couldn’t quit my day job (especially since this is my day job).

If a site sells physical products, the same rules apply as when selling digital products, but your expenses and logistics will be much greater and more complicated.

In terms of more specifics for increasing profitability (by increasing revenue), on any site in which the visitor is the customer (i.e., in which something is being sold), you can increase the amount of income through two avenues. One is a streamlined, flawless e-commerce system. I’m a firm believer that once a user has found your site and is thinking about buying your product, the e-commerce work flow’s job is to make the act of buying as easy as possible. The process should also do nothing that might make the user think twice about becoming a customer.

For example, on the site for my Yii book, the buy page has a single form for buying the book. The form takes the credit card information and an email address and nothing else. The user can buy the book quickly and simply, and the site worries about creating accounts later. The programming ends up becoming a bit more complicated this way, but this approach increases sales. The user doesn’t have to worry about entering matching passwords or any account settings. No extra complications that might be enough to make the user “come back later”. Further, the e-commerce system should give the user as many convenient payment options as possible. Again on my Yii book site, I initially only allowed payment via credit cards (this was a sacrifice I made in order to satisfy a need to start selling the book quickly). I just recently added support for PayPal and saw a flood of new orders come in. I’m probably seeing a 60/40 split since then (credit cards/PayPal). I expected as much (and, again, did plan on integrating PayPal eventually), but it just goes to show how not having great payment options will hurt sales.

The second thing any site that sells stuff should do is have truly excellent customer service. Many businesses and sites put too much emphasis on getting new customers and not satisfying, retaining, and re-engaging the customers the site already has. This is a big mistake! Think about any good business experience you’ve had in which it’s clear that your patronage is appreciated. Think about the number of times that businesses do nothing for you once you become a customer (this is especially true for businesses with regular monthly payments, such as mobile phone companies, Web hosts, and cable or satellite television companies). Which type of business do you feel better about? Which are you more likely to say nice things about to other people?

For example, I like DirecTV, but I have to threaten to leave in order to get free upgrades to my old equipment (the kind of upgrades new customers get for free). On the other hand, my preferred Web host, ServInt, regularly expands my account’s features. Or take, Amazon, who does almost everything right when it comes to e-commerce: they continue to add features to my Amazon Prime account, at no extra expense. The end result: I’m promoting ServInt and Amazon to over 2,000 people in this newsletter, even though I get nothing from either company for that promotion (and have no affiliation with either).

This, then, leads to my final recommendation. For any site, I would also advocate for personal marketing. Marketing, like online advertising, is a numbers game: very few people will act on advertisements, so you have to create a lot of them in order to bring in sufficient traffic. If you have a ton of money, you can spend a lot on marketing and hope it works for you. This is what established companies do as well as startups that are well funded. But for the rest of us, use personal marketing, which is infinitely more effective. Customer service is part of this (i.e., for existing customers), but this also means going out into the digital and physical world and establishing connections. You can’t be too much of a salesman, but a personal connection is worth a lot. Be on forums and blogs, meet people at relevant groups, and so forth. Make personal connections to bring attention, and therefore money, to your business.

Larry Ullman’s Book News => “The Yii Book”

As already mentioned, “The Yii Book” is now available for sale (or pre-sale, I guess) at yii.larryullman.com. Version 0.2 of the book is up there now, which is about 70 pages of material, including the Introduction plus Part 1 (four chapters). You can view the complete table of contents online.

The minimum price is $20 (USD). For this you get:

  • The right to download the current edition in as many formats as you’d like and as many times as you’d like.
  • The right to download updates to the book—for free—for the foreseeable future (until at least the end of 2014, I imagine). And, of course, as many times as you’d like in as many formats as you’d like.
  • No Digital Rights Management (DRM) imposition.

You can also pay whatever price you’d like above $20. Thus far, there have been not quite 200 orders, at an average of $25.69, in case you are curious. You can purchase the book using Mastercard, Visa, American Express, JCB, Discover, Diners Club, or Paypal. See the FAQ page for answers to most of the questions you may have.

After I send out this newsletter, I’m going to get back to working (hard!) on “The Yii Book”, in the hopes of publishing the first update soon. And thanks to everyone for their interest in this book and to everyone that has already purchased a copy!