Monday, January 23, 2012

How I Learned to Stop Worrying and Love the iBooks Author EULA

I've been debating whether to post about the iBooks Author EULA or not. In general, I've been trying to avoid hotly debated and controversial subjects here for the simple fact that those discussions tend to eat up a lot of time and often aren't very productive. My opinion on iBooks Author and iBooks 2 is fairly close to some other authors I know. Because this is something that's near and dear to my heart, however, I figure it's worth a few words. And with me, a few words is usually more than a few.

There's been a lot of foofooraw since the iBooks 2 announcement last week. There's been all sorts of stories, tweets, and blog posts about how Apple is going to "steal your work" if you use iBooks Author. There's also been the all-too-familiar refrains of just how evil Apple is. It all seems vaguely familiar. Almost like… almost like we've been here before, what with all the people gnashing their teeth, rending their clothes, and complaining to the heavens about how evil Apple is because of the developer agreement app store guidelines iBooks 2 EULA.

There's also been a lot of complaints about the fact that Apple is using a proprietary format rather than using and extending ePub 3.

None of this bothers me terribly. Oh, it's not that there aren't things I would want different if I were King of the World, but the reality is that deciding whether to use iBooks Author is just another business decision for me. Emotional outcries and hyperbole are all well and good, but they don't change the parameters of the decision. Business decisions inherently involve risk, and the risk here is at a level that I'm perfectly comfortable with.

Before I explain why, though, I want to put up front that I'm not a lawyer. Well, that's not technically true, but I'm not a practicing lawyer and I'm not YOUR lawyer, so don't take anything I say as legal advice. I'm just explaining why I'm not concerned. If you have concerns, you should take those concerns to your lawyer before making up your mind.

The EULA

Make no mistake, the iBooks 2 EULA is poorly written and vague. The mere fact that people are up in arms is testament to that fact. And if the ambiguity that is there bothers you, don't use it. There are plenty of tools for creating eBooks, so if you think the risk of Apple "stealing" your work is too high, using another tool solves the problem.

There are several reasons why I'm perfectly comfortable with  the risk involved. In no particular order, those reasons are:
  • It's simply not in Apple's long-term interest to take ownership of authors' books and Apple can almost always be relied upon to do what's in their own long-term best interest. Getting 30% of every iBook sale means they are motivated to keep authors happy. More than that, though, they need authors to want to write for this new platform in order to establish it as the dominant interactive next-generation eBook platform. Stealing books won't get them to that goal. Suing authors who publish non-interactive versions of their content for other platforms like the Kindle or ePub won't either.
  • Although the wording is certainly vague enough that you could argue more than one interpretation, the capitalization of "Work" in the EULA (meaning it has a specific contractual meaning) combined with the verbiage, "Work you create with this software" implies that the intent is to restrict only the application-specific output. In other words, the most likely intent as I read it is to cover the proprietary file format used for the new features not supported by other existing eBook platforms.
  • Even if that weren't the intent, from a purely evidentiary point of view, the other file formats that iBooks Author exports to are open, standard formats and it would be difficult for Apple to prove a particular non-interactive work was "generated" with iBooks Author even if they really did want to try and "steal our books". A PDF generated from iBooks Author would be nearly impossible to distinguish from one generated using Pages by simply copying and pasting the content from iBooks Author .
  • The EULA contains the following phrase: Title and intellectual property rights in and to any content displayed by or accessed through the Apple Software belongs to the respective content owner. Basically, it explicitly states that the ownership of any content you create outside of the app and import into it is completely unaffected by any "book stealing" clause, even if such a thing existed. This seems to counter the notion that Apple is trying steal our intellectual property in the first place because unless the words and images were created directly in iBooks (as opposed to being imported from Pages, Word, Photoshop, etc.), Apple would have no claim to the content anyway. Their claim would be limited to the way the content is formatted. Again, from an evidentiary standpoint, it would be incredibly hard for Apple to prove you created the content in iBooks.
  • The deal we're getting with iBooks Author isn't all that different from the deal we get when using Xcode as iOS developers, and the language of the agreements aren't all that different from each other either, and that's worked out pretty well so far.
  • And last, but not least, the kicker: Let's say, for giggles, that "book stealing" was Apple's intent, and such an intent was found to be both legal and the actual intent of the contract, and Apple decided to exercise those rights to steal my books. You know what? Even with all that, it's still a hell of a lot better deal than I've ever gotten from a traditional publisher. Apple is offering 70% of the sale price to me. The most favorable contract I've ever gotten from a publisher starts at 12% of the net price the publisher gets from the distributor, wholesaler, or retailer (which is half or less of the retail price). That percentage does slowly escalate up to 20% if I sell a ton of books, but if I publish a new edition of an existing book, the escalators go back down to 12% and I have to start all over. To put this in more concrete terms, if I were to sell a book in the iBooks Store for $9.99, I would get $6.99 per book sold, which is about four times what I get when one of my current $39.99 books sells, and I'd get that money months sooner. Oh, and guess what? I don't own those books published through a traditional publisher, either. My publisher can even have someone else update the book and can continue to use my name to promote it, even if I don't like the revisions or think the update sucks.
You can go on about what Apple "might do" or "could do", but the fact is that contracts aren't magic. If Apple wanted to screw me, there's no doubt they could, with or without this language. They've got a disproportionate amount of power in this contractual relationship because they have the audience and the platform, and they also have a ton of money and lots of really, really good lawyers. If they came after me, the merits of the case would matter little because I couldn't afford to defend myself against them, anyway. That's a risk, sure, but based on my past dealings with Apple, them trying to use the legal system to screw me seems a very remote possibility, and I'm willing to accept that risk. The language of the contract does almost nothing to change the amount of risk here for me. It's little more than a red herring as far as I'm concerned.

ePub 3 vs. iBooks 2


Many people have suggested that Apple should have used the existing ePub 3 standard and worked with the standards body to extend it in whatever ways Apple needed it extended. Instead, they decided to create a proprietary file format using the older ePub 2 specification as a starting point. It is important to note, however, that Apple is not advertising this new format as being ePub; we only know it's based on ePub 2 because people have reverse engineered the generated .ibooks files.

Now, I'll be honest. In a perfect world, I'd prefer to see Apple using an open standard here. But, there isn't an existing open standard that does what Apple wanted to do, and working with a standards body to revise existing standards to meet their needs for a yet-to-be-released piece of software would have tipped their hand about the software they were developing. People would have known exactly what Apple was working on from the things they were requesting of the standards body, which would have given competitors an advantage and could have hurt Apple's negotiations with publishers. Apple's culture is steeped in secrecy, and many would argue that this secrecy has been a contributing factor to their repeated successes over the last decade. Anybody who follows the company and understands the way they work knows exactly why they made the choice that they did here. Was it the best choice for Apple? Only time will tell, but there are obvious reasons why they would think it might be.

It's also important to note that iBooks Author is completely and totally free. But really, nothing is free. TANSTAAFL. Developing both a platform to do what iBooks 2 can do and developing a tool to create content for that platform was not a trivial task and Apple almost certainly devoted a lot of resources to getting it done and to getting existing publishers on board. Apple doesn't write software to be nice, they write software to make money. In this case, they're not making money directly, but make no mistake, it was written to make Apple money. The fact that they are not letting people use this free product to compete with them, or to create works for competing platforms should surprise no one. We, as users, authors, and publishers might desire such a tool and might have all sorts of reasons why such a tool would be an awesome thing for us. But so what? I'd like a pink unicorn that farts money. That doesn't mean I should expect somebody else to find one and give it to me for free.

Embrace, Extend, Extinguish


Lastly, several people on Twitter have pointed out that Apple's move here seems frighteningly similar to what Microsoft did throughout the nineties with their infamous "embrace, extend, extinguish" campaign. There's definitely some uncomfortable similarities, but I'm not quite ready to put this in the same camp… yet.

First, iBooks is not the dominant eBook platform, so any suggestion of a monopoly would be silly. Amazon sells far more Kindle books than Apple sells iBooks, and there are other eBook platforms, including Barnes & Noble's Nook, Kobo, and Sony's eReader to name just a few of many. The very idea of embrace, extend, extinguish requires monopoly-like control of a market to be effective, which Apple doesn't remotely have here (yet). There's also been no evidence (yet) of an attempt to "extinguish" the open ePub standard, or to brand the proprietary extended version as the standard. iBooks still supports ePub, and until Apple moves to change that, we're missing the most important and deadly of the three Es, without which there's really no harm, no foul.

The Bottom Line

To quote the narrator in Peter Pan, "all of this has happened before, and it will all happen again." Many developers railed against the "unfair" restrictions of the iOS developer agreement, the inability to sell apps outside the App Store, and the review process. I'm sure there will be similar teeth-gnashing the next time Apple creates a new market or platform, or revises any of the agreements related to any of the existing ones.

And certainly, there have been bumps in the road, some of which are still around. But overall, iOS has proved to be a great platform for developers to be on. The number of iOS devices in the world now numbers in the hundreds of millions, and many of the owners of those devices have shown a willingness to pay for content, including apps, movies, and books. It's not the gold rush the mass media thought it was four years ago, but it has been fertile grounds providing a great many people with a living, including me.

It's not a perfect place, but personally, there's no other place I'd rather be. The fact that I can now do both of the things I do professionally (write apps and write books) on those same fertile grounds, excites me. The fact that I can do things while writing my books that simply weren't possible before excites me even more.

Absolutely, things could change in the future, but I'll worry about the future in the future if I need to. For now, I'm happy here and thrilled about the possibilities that iBooks 2 and iBooks Author represent.

Monday, January 9, 2012

Blog Files

As my inbox can well attest this morning, the web server that hosted most of my blog files is gone. I moved all the blog files over to Github, but forgot to post about the new repository.

Unfortunately, I just don't have time to go back and update all the old links, but every bit of code that I've posted that's now missing, can be found at GitHub.

Old code repository at GitHub.

Sorry for the inconvenience.

Friday, December 30, 2011

Speaking at MDevCon

I'm proud to publicly announce my first speaking opportunity of 2012. I'll be speaking at MDevCon in Amsterdam this year on March 10th. This will be my first trip to Amsterdam and I'm incredibly excited to have the opportunity. I'm so excited, actually, that I'll be staying in the city for several days after the conference to hang out in Appsterdam and visit. When I know exactly which days I'll be in the city, I'll let you know.

I have one other conference that I've already agreed to speak at this year, but that one hasn't been publicly announced yet, so I can't spill the beans quite yet, but I'm equally excited about that one.

Thursday, December 29, 2011

Treadmill Desk Update

I'm coming up on the end of my second week using my treadmill desk, albeit two relatively quiet work weeks thanks to the holidays. I haven't put together the plans yet for those who might be interested in building a similar one, but the desk does seem to be holding up well. It's still very sturdy and has been working great for me.

After a really great first day where I put in over nine miles, my daily averages have backed off a bit to more in the 6-7 mile range and I'm averaging about 800 calories a day burned according to the treadmill. It seems that 1.6 MPH is my sweet spot for being able to type and mouse, though I sometimes go a little slower if I'm tired. I also usually start the morning at about 1.3 MPH, but after about 15 minutes, I'm usually up to 1.6.

I'm not finding it difficult to work for the most part. In fact, often I feel more alert and able to deal with complex problems. However, late in the day, I often feel just the opposite. I start to get fatigued, and when I do, then I often find that a difficult problem requires me to go over to my sitting desk or else needs to be pushed off until the next morning when I'm fresh. I suspect that this problem will go away as I continue to get used to it and am able to walk longer.

I currently spend about 4 hours walking, another 1-2 standing at my new desk, and the rest of my workday right now is at my old sitting desk. My goal is to get up to at least 8 hours of walking, but I'm really happy with this so far. It's not hard to do. There's no motivation for me to find. It's just part of my routine. When I go to my office, I start the treadmill. Easy-peazy.

I'm walking slow enough that I'm not experiencing much in the way of muscle soreness. A tiny bit in my calf last week, but none this week. There are some other problems that go along with the treadmill desk, however. First and foremost, my feet start to hurt something fierce by the end of the day. This week was better than last, and I suspect in a few weeks it will be a non-issue. A lot of it, admittedly, was poor shoe choice. More on that later.

Another problem with spending this amount of time moving is the potential for chafing and rashes. It goes away relatively quickly if you're smart enough to wear appropriate clothing, which I wasn't at first. If you experience chafing, here's two words to remember: coconut oil. Yep, the kind you buy for cooking. It's a solid at room temperature, but will turn into liquid from the heat of your hands. It's magic for irritated skin and it's also a lubricant. It's better than any lotion or salve I've ever tried.

I close my office door and open the window while I'm working, even though it's winter and I wear shorts and a t-shirt while working. Even at that, I'm a little warm, but I'm a warm person in general, always have been. I haven't broken out my winter jacket yet this year, so your experience might be different. Nobody I've talked to has mentioned being this warm, so it might just be me.

This one's important. Get some good walking shoes. Don't wear your existing sneakers or shoes, or worse, don't be stupid and go barefoot or wear sandals, crocs or whatever shoes happen to be closest to you. Good shoes, designed for walking, fitted by somebody who knows WTF they are doing. Four or more hours of walking is a lot of steps you're taking each day. Your feet will thank you.

So, the big question people probably want to know is: Have I lost weight?

It's really too early to tell. The scale says I've lost between two and four pounds, but honestly, my weight can fluctuate more than that just from water weight over the course of a single day. I might have lost nothing, or I might have lost more than that. I need more data points before I can form any conclusions. But, I suspect I have lost some. Even with a holiday party last weekend, I've been eating less than normal. I'm not sure if it's psychological or physiological, but I'm hungry less, and when I do eat, I'm tending to eat less and to eat healthier. I also haven't been tempted by my personal demon, the midnight snack. Well, more like the 2:30am-up-late-coding snack. Part of that may simply be that I'm too tired to work until 2:30am these days, though.

Overall, I'm declaring the experiment a success already. I'm able to work just as well walking as I am sitting except when I get fatigued, I'm burning calories while I work, and am just generally feeling better than I have in a long time.

Tuesday, December 20, 2011

Brilliantly Simple Idea: the Treadmill Desk

Software development is not the easiest vocation for getting or staying in shape. For that matter, being part-owner of a relatively young business isn't either.

I've been steadily putting on weight and getting in worse shape since before the dot com boom. Since we started MartianCraft, I've had very few days off, and my average work day has been probably twelve hours, possibly longer. Every time I try and get into a routine of exercising, something happens: a client emergency, a deadline, a build, a new prospective client, a minor family emergency. When there's not enough hours in the day (and there never are), the exercise was always the first thing to get cut.

Recently, I came across this brilliantly simple idea from a Mayo Clinic cardiologist. It's called the Treadmill Desk. Essentially, you replace your chair with a treadmill, and instead of trying to get a good strenuous calorie-burning bout of exercise in a few times a week, you just walk while you're working. You don't walk fast; in fact, you go quite slow. They typically recommend that you walk between one and two miles per hour, which is about half of most people's normal walking speed. This speed allows you to function fairly normally. After just a few minutes, you can type and mouse normally. If it gets hard to type, you back off on the speed a little. It's not a race. It's not even exercise in the traditional sense.

I'm typing this blog post while walking on a treadmill.

The goal with this walking is not to break a sweat, but rather to just be in constant motion. You will want your office a touch cooler than normal, though, as even slow walking does raise your body temperature. Despite the low-key nature of the movement, a typical person burns an additional 100 - 130 calories per hour they're at their desk. For a typical person working an eight hour day, that's between 800 and 1040 calories per day. If you work longer hours or weigh more than the average person, it's even more calories. Now, think about that. You have to burn approximately 3500 calories to lose a pound of weight, so assuming you don't increase your caloric intake, that's about a pound every three to four days of work, or two pounds a week. For someone working a forty hour week, that's about five pounds a month, or sixty pounds a year without additional exercise or dieting. There's a lot of health benefits that go along with losing extra weight, also. Lower blood pressure, lower cholesterol, lower incidence of several types of cancer.

If you work more than forty hours a week, the benefits can be even greater, assuming you don't eat more to make up for the extra calories you burn.

I've talked to a number of people who are using treadmill desks, and the feedback was universally positive. Everybody lost weight – several of them a considerable amount – and all were in better health than when they started. And almost everyone said the following word-for-word phrase to me: "I would never go back to a normal desk".

After about the third person gave me the same basic story, I was sold. Sign me up! I can do this.

But there was a problem.

There are lots of plans for treadmill desks around the Internet and you can actually buy treadmill desks now. But, here's the thing: My primary machine is a Mac Pro with two 27" ACD monitors along with a crap-ton of accessories. I couldn't find any desk for under $5,000 that looked sturdy enough to safely and securely hold the weight of all my gear, and all the plans I found for building one seemed to assume the use of a laptop or small computer with small monitor.

Because of that big sheet of glass, Apple's monitors are heavy. Because of that big aluminum case, the Mac Pro is also very heavy. My computer and monitors alone weigh well over a hundred pounds, and I wasn't about to trust that much weight worth that much money to something that looked flimsy or was designed to hold a laptop.

I experimented for a week using a makeshift treadmill desk with my MacBook Air, and I found the walking and working quite easy to do, but also found myself constantly pining to move back to my desk to use my more powerful machine and bigger monitors. I usually abandoned the treadmill after about two hours when I'd start getting into more hardcore coding, not because of the treadmill, but because of the computer.

But, that week was enough to convince me that this was a good way to reverse the slow but persistent upward trend in my weight that's marked the last several years of my life. Unfortunately, it also convinced me that I could only make it work if I could find a way to use my computer while walking.

So, I decided to build my own desk. Building a sturdy desk this tall (over four feet tall in my case, since I'm 6'3" and will be standing on a treadmill desk that's about 6" high) turned out to be an interesting, but not-entirely-trivial engineering exercise. It took a couple of re-designs and a lot of swearing, but my desk is now done and I've been happily using it for a couple of days now.

Here's my rig on my desk (excuse the messy office):

Finished 1

(Yes, there's a beer bottle in the background. That was my reward for finishing the desk.)


After I've been using it for longer and am convinced the design is good, I'll share how I made the desk for anyone who might wish to build one for themselves.

So far, so good, though. The desk seems to be solid, has no perceptible wobble, and the monitors and computer don't seem to be putting any noticeable strain on it. Yesterday, I walked nearly nine miles at an average of 1.6 mile per hour and had a productive work day. Today's about half over and I've burned a little over 600 calories while fixing two pretty gnarly bugs in client apps. These two days have been enough to convince me that this is going to work.

By having my good computer on the treadmill desk and my MacBook Air at my regular desk, there's a built-in incentive for me to walk, or at least stand, rather than sit at my desk. I'm simply more productive when I have more screen real estate and a more powerful computer.

In a week or so, I'll put together a parts list and basic instructions, but the design is pretty basic. 1¼" galvanized pipe makes up the main frame of the desk with ⅛" wire rope and turnbuckles as guy wires to provide additional lateral stability.

This is the treadmill I use:
NewImage


It's designed only for walking, will hold up to 400 pounds, and it's shorter than most treadmills, so it takes up less room. It's not cheap, but it's fairly reasonable for a treadmill at $400, and it can fold up out of the way if you need to. I've been very happy with it so far. While it's not whisper quiet, it's nowhere near as loud as most treadmills I've used, and it has a full set of controls on the handle where you can reach them easily while using it as part of a treadmill desk, which is much nicer than having to awkwardly reach over the desk to the treadmill's console.

The desk plans (when I post them them) are intended to work with this treadmill, you will probably need to make minor adjustments to use it with other models, as well as account for any height difference.

Monday, November 14, 2011

Comments Gone

I regret to inform you that I've had to completely disable comments on the blog. I had to switch to moderation a while back since the spam detectors were failing to catch anything meaningful. Unfortunately, the rate of spam comments has been accelerating recently to the point where I simply don't have the time to search for the few actual and valid comments in the proverbial haystack of spam.

I wish I didn't have to do this. I like comments. I like hearing other peoples' takes on things and love it when somebody catches a mistake or proposes a better solution. But, comment moderation has been sucking away what little time I have for the block lately.

Maybe at some point I'll have the time to transition to software that can handle spam comments better, but I don't right now.

Sorry it had to be this way. It sucks that there are people in the world who do this shit and ruin things for everyone else.

Wednesday, November 9, 2011

Flash is Dead. No, Really this Time

It appears that Adobe is going to cease development of mobile Flash.

I'm not ordinarily one to gloat or dwell on I-told-you-sos, but I'm going to make an exception in this one instance. I took an awful lot of heat for those blog rants backin 2009 for saying things like

I hate to break it to you, but Flash, as it currently exists, is dead. Oh, it's not going to die quickly, it's going to die a slow painful death precisely because there has been such a large investment of time and money into using it by so many large corporations like Disney. Flash's roots run way too deep for it to disappear quickly.

Here's the thing, though: Flash is a product of a different generation of computing. It's a product of a world where 90% of the people used one platform, and the bulk of the remaining used another. There was Windows, and there was the Mac.

[…]

And now, the world is changing. People are increasingly browsing the web from mobile devices, and unlike the computer world of a decade ago, the mobile computing landscape is not anything like a monoculture or monopoly. There are several viable mobile platforms all competing in that space. We have the iPhone, Blackberry, Palm Pre, Windows Mobile, Android, Symbian and probably others that have slipped my mind. All of these are operating systems currently shipping on phones and all come with browsers. None of them, except a solitary model of Android phone, has Flash.

But before I get too smug, you know what? I missed a huge factor in the demise of Flash. I assumed the performance issues they were having back then were simply technical hurdles that would be overcome by Adobe's engineers before long. In the end, the lack of a monoculture was certainly a significant factor in the demise of mobile Flash, but the real nail in the coffin was that Adobe never even got mobile Flash working demonstrably well on a single model on a single platform, let alone working well on the "billions of mobile phones" they were shooting for with the Flash Consortium. I completely overestimated Adobe's ability to deliver, technically.

But all is not lost for Flash developers. Adobe has stated that they are going to "refocus" their efforts on allowing Flash to create HTML5 compliant web apps. What a brilliant idea!

If I may… one last quote from my much-reviled Flash rants:

But, that doesn't mean there's no hope. There are many ways that Adobe could save Flash/Flex for the mobile world. One way would be to create something like Google's GWT - an environment where some or all of the code gets translated into HTML and Javascript to be run on the client, leaving to a VM only those tasks that can't reasonably be handled that way.

I said that back in August 2009 and, frankly, I was kind of stating the obvious. Maybe Adobe should have made me CEO. I doubt I would've done much worse than the current management given the recent layoff announcements.

I know people think of me as an Adobe hater. I'm not. More accurately, I'm a disgruntled fan. In the nineties I held Adobe in higher regard than I held Apple (at least Apple before Jobs' return). I adored Photoshop, which I had started using around version 1.5 and which enabled me to make a living for a couple of years. Somehow, in the span of fifteen years, Adobe went from being a company that made amazing things to being a company that made mediocre things that they marketed as amazing. A company that had no focus. A company that churned out new versions of software in order to generate new income, not to meet honest customer demand. I watched a great company become a company that didn't care about being great as long as quarterly profit sheets looked good.

I, for one, am hoping for a Phoenix-like rise from the ashes on the order of Apple's comeback. Hoping… but not expecting.