I read a great interview with Jerry Lawson, video game and computer industry pioneer, who recently passed away. Mr. Lawson was a black engineer in an industry that was almost entirely white. In his interview, not only does he talk about a fascinating period of time (interviewing Steve Jobs for an engineering position, the first computers, the first video games), but he also shares his perspective on the role of race in engineering careers.

I just read About Stock, a really useful article on allocating and distributing stock in a startup.

The article covers how many shares to issue, founders stock, setting aside stock for investors or options, what to do when you add employees later or a founder leaves, and capitol structure after an investment.

I found this bit of wisdom to be useful:

One way to deal with that (and it’s something an investor is likely to insist on) is that all founder stock purchases will be subject to a buy-back provision (part of the stock purchase agreement between each founder and the company).  Basically this means that the founders do purchase and own their stock, and can vote the stock.  But if the founder leaves the company (by either their choice or the company’s choice) in some period of time (4 years is typical) then the company has the right to purchase back some percentage of the stock at the same price the founder paid for it. 

For example, let’s say a founder owns 20% of the company, and the company’s buy-back provision states that 20% of each founders holdings are not subject to buy-back, but for the first year after the purchase, 80% of a founder’s shares are subject to buy-back, for the second year, 60% is subject to buy-back, the third year, 40% is subject to buy-back, and the fourth year, 20% is subject to buy-back.  After a full four years, there would be, in this example, no buy-back right remaining.  This is basically a 4 year “vesting”, but it’s actually a declining buy-back right, as opposed to a vesting. 

So what does that mean?  Let’s say that founder left the company after 6 months.  Under that arrangement described above, he or she retains the 20% of the original 20% ownership (i.e., 4% of the company) because that “vested” up front.  The company has the right to buy-back the remaining 80% of that founders 20% ownership (i.e., the company buys-back a 16% share in the company).  So the founder ends up owning 4% of the company.

I worked at a startup, and had a significant equity stake subject to buy-back. It vested 25% each year. When I left after six months, I lost all of that stock. I should have negotiated for 20% vested immediately, and 20% vested each year afterwards. Now I know for the next time around.

I’ve had my Google CR-48, the reference implementation notebook for Chrome OS, for a week and a half now. You can read my earlier reviews here and here.

The pilot program asked that you use your CR-48 as your primary computer. Although my employer’s privacy rules would restrict me from doing that for my day job, it was my full intention to do so for all other use, which includes personal computer use as well as writing fiction.
It turns out that the browser has some shortcomings as the primary user interface, and the CR-48 has some hiccups. As I mentioned in my last post, two issues include the lack of a taskbar/dock/start menu, which makes quickly launched desired apps and getting notifications awkward, and the lack of fixed menu/buttons in web applications, which makes every invocation of functionality a cognitive task, rather than a muscle memory task. (On most web pages, menus and buttons float with the content, rather than remaining in a fixed location.)
Add to that two other issues: The CR-48 is slow. Slow enough that even when I plan to do a browser based task, if it’s a big enough task, I find myself thinking that maybe I’ll just run downstairs and use my MacBook Pro. It also does very poorly on YouTube. (Hello, last I checked, YouTube was a Google property, yes?) And Pandora. And sometimes the simplest page refresh takes an awkward amount of time – as much as 20 or 30 seconds.
The other, lesser, issue is that resume is slow. Sure, the screen is on, but the notebook is still negotiating the wireless connection for another 10 or 15 seconds. By that time, I’m already engaged with the keyboard trying to get to whatever app I want, only to get an error message because the Internet isn’t available yet.
On the plus side, it’s still extremely portable, and has a stunning battery life. I went about four days over the holidays without plugging it in. Granted, I wasn’t using it that much, but in that time, even just standby mode on my MacBook Pro or a Windows PC would drain the battery. That portability and battery life makes it very convenient and tempting, so I do reach for it first – even over my smartphone when around the house. But the slow speed is a barrier to any serious use.
During the Chrome OS presentation two weeks ago, they said the Chrome OS development team had been using these as their exclusive computers for months. I can’t imagine how. Am I just missing something? (And how would you do software development in a browser?)
On the topic of the trackpad, I have figured out by trial and error that by seperating my fingers by at least a quarter of an inch, I can reliably right-click and scroll. However, I still haven’t figured out how to reliably click-and-drag, an operation that is terrifically easy with a mouse, possible with a Mac trackpad, and seemingly impossible with Chrome OS. 
Despite the negative aspects of this, I am still hopeful that some of the performance issues can be addressed with software updates. And hopefully by the time Chrome OS comes to market, it comes with a higher powered CPU than an Atom processor.
In the meantime, it makes a great second notebook, and fulfills the classic role of a netbook. But I’d like it to be viable as a primary computer, which is what is needs to be in order for it to have strategic value to Google.

This is day two of using Google’s Chrome OS reference netbook, the CR-48. I obtained mine by signing up for the pilot program. As of yesterday, they were not only accepting applications, but still soliciting them through Chrome, so my guess is that more are still available if you want one.

I’m continuing to be eager to use it, although I’ve started to notice some of the flaws.

Here’s an example: Google promised an instant-on ability, and in fact, the screen is instantly available, and the current page is display within a second of opening the notebook. But then it’s got to negotiate for wifi access, and that takes time. Finding the router and getting an IP address seems to take about five to ten seconds or so. By this time, I’ve tried loading a new page typically, and I get an error that the page is not available. Then I need to refresh once the wifi connection is established. It’s not that any other notebook is faster at this, it’s just that the promise of instant availability raises my expectations.

The other issue is a small cosmetic issue. The matte black finish is cool. They could have called it an Ono-Sendai cyberspace deck, and it would have felt right. On the other hand, the CR-48, slid into the same laptop bag that my MacBookPro slides into, comes out covered with dusk and glitter. The MacBookPro comes out (looking) clean. Apparently I need to get a new laptop bag.

This are small, trivial issues.

The bigger issue right now is that I’m feeling the lack of a taskbar/doc/start menu/application menu. When I have new email, it’s not exactly obvious, because there’s no email indicator. When I want to launch an application, I have to open a new tab, and then remember whether the web page I’m looking for is a bookmark or an application shown on the new tab menu. It’s vaguely unsettling. Somehow it’s easier to get to where I want on either Android, iOS, Windows, or Mac than in Chrome – but perhaps this is just settling into the OS. (Woah, when did I become a user of five different operation systems? Talk about fragmentation after years of consolidation.)

The other issue is that in a desktop OS environment, we’re used to application menus and tool buttons appearing in a consistent location: either at the top of the application window or at the upper left hand corner of the screen. Either way, the functionality is accessible from a fixed (rather than relative) geographical location. That’s important, because it allows us to use muscle memory to invoke functionality rather than cognitive processing. By comparison, web applications have (1) no standardization on where and how their functionality is invoked, and (2) it’s located in a relative location within a browser window. If I have scrolled the browser window, then the menus and buttons of the application have moved. The application controls and the application content scroll together. This is the opposite of every desktop application, in which the application controls remain constant while the content scrolls.

Perhaps I’ll adapt, but for the moment, it feels like the chrome os user interface metaphor has a few gaps. And that’s more than just a stability issue, it’s a usability issue. It’s not traditionally where Google shines. I hope they get some help. Maybe there’s some small company out there that’s developed the perfect user interface for browsers, and Google can acquire them.

Here’s what I really liked so far day:

  • Long battery life and lightweight: it was easy to carry around, and I didn’t need to bring my charger to work.
  • Nearly-instant on. It may take a while to negotiate wifi, but it’s still about 100x faster than Windows, and about 4x faster than Mac OSX.
  • The fonts: I’m really digging the selection of fonts.
  • Form factor: great combination of keyboard size, screen size. Not too big or small.

What I used the CR-48 for:

  • writing blog posts
  • checking email
  • online shopping
  • facebook
  • trying to watch youtube video (didn’t work)
  • playing games
  • writing a few documents using Google docs
What I used my Windows XP work laptop for:
  • work email (on Outlook, work security rules prohibit me using it on Gmail.)
  • coding (ruby console app)
  • database queries
What I used my MacBookpro for:
  • playing Urban Terror

When I got home last night there was an unmarked box waiting for me. Uncertain of whether it was a gift for me, or a gift I bought for my family, I opened it carefully. I didn’t recognize the interior box, so I asked my wife to open it for me. Ten minutes later, she was still puzzling over what it was. So I came over and let out a yelp – It was a CR-48 – the Chrome OS reference notebook by Google.

I hurriedly unboxed it, and it’s understand why my partner was confused. This notebook is completely unmarked. There is not a single logo, lettering, or marking with the exception of the plain indications on the keyboard. The matte black body makes it look and feel like something out of an early William Gibson novel.

It took about two minutes to get the battery inserted, power cord plugged in, and about ten minutes to clear enough kids’ stuff away to find a space to put it down and play with it.

If you watched the Chrome OS press event last week, the startup and login experience is exactly as shown. It takes a second for the notebook to start up. On my particular model, the top quarter inch of the display flickers for about 15 seconds. I’m not sure if this is a screen warmup issue, or something else.

Using my typical web apps, such as Gmail, iGoogle, and Facebook, the notebook is speedy, and delivers an experience similar to Chrome on the Mac or Windows. The fonts are somewhat different, but pleasant. They seem to be optimize for good screen readability and compactness.

The experience slowed down a bit when I tried to use YouTube and Pandora. Pandora definitely worked, but it slowed down the machine. The flash player crashed a few times. (How about a native HTML5 app Pandora?)

The trackpad, as mentioned elsewhere, is a little wonky. Regular left clicks work fine, and tracking is pretty good most of the time. Right clicks and scrolling, both two fingered gestures, are hard to get to work. I find it works better if I separate my fingers slightly – whereas the Mac doesn’t need that. I find I use alt-click when I need to right-click.

The browser has crashed a half dozen times so far – it’s never happened during use of an existing tab, but it’s happened when opening new tabs.

The hardware itself has been admired by everyone who has seen it, even though the idea of the Chrome OS itself has been puzzling to about half the people who have seen it. “What advantage does this have over running Chrome on a regular PC?” is a question I’ve heard a few times.

I think the answer is that you don’t have the headaches of a regular PC. No OS updates to manage, no security holes, no complicated settings. Whether the long battery life (supposedly 8+ hours) is a function of the hardware or of efficiencies gained from doing away with a traditional OS, I don’t know.

Part of the deal with Google was promising to use this as my main computer. The biggest challenge is figuring out a web based replacement for Scrivener so I can continue working on my novel. I’ve used Google docs before, and it’s almost there. The main shortcoming is the difficulty of organizing the chapters and scenes. I almost imagine that this could be done as a layer on top of Google Docs, since individual documents could be used for each scene. Then I would need the ability to search across scenes, and compile the set of documents into a single .doc or .pdf for sharing.

Ultimately, this is the biggest challenge for Chrome OS: not whether the OS is stable enough or fast enough. Google can do that. The biggest challenge is whether browser apps can become good enough replacements for desktop apps. Microsoft Word has 15+ years of development behind it, and Google Docs has a couple of years. That’s a big different to make up.

Mobile apps have had the benefit that they’ve been focused on small, simple tasks. Useful mobile apps can be written in a weekend. Nobody expects to edit a novel on their phone, but they do expect to edit a novel on their computer. Can useful browser apps be written for the kinds of heavy duty tasks that people want to do?

I hope so, because I’m enjoying the CR-48 so far, and it’d be awesome to be able to make it work as my primary machine.

I was fortunate enough to see Jason Glaspey give his “Build Something, Build Anything” talk, and although I’ve previously published the notes from his talk, I took some fresh notes again today.

Jason Glaspey
Build Something Build Anything
Why you should work on side projects
@jasonglaspey
  • Works at Urban Airship: platform for mobile apps
  • Always working on little side projects and jobs
    • Massive impact on career
  • People see the Internet differently
    • having lunch with someone: realized they had an entirely different perspective of what the Internet is: the internet is good for directions and screwing off, and that’s about it.
    • Jason was frustrated for days trying to articulate why he felt differently, and finally what he concluded was: the internet was a source of hope
    • People should just believe that anything is possible. 
      • She wasn’t different because of the Internet, just more efficient and faster.
      • Don’t let people like that be the ones to define what to build on the web
    • Knowing what we do is different than the way it used to be. It’s not just about convenience, but it’s about making a difference.
  • Clay Shirkey: 2008 Web 2.0 Expo
    • Introduces the term cognitive surplus
    • Check out the video of his presentation.
    • Going back to the industrial revolution, people were living differently for the first time. People were moving into the city. There wasn’t theatre or arts or things to use up people’s time. They were intrinsically uncomfortable. People would roll gin carts up and down the streets, people would get drunk until they had to go to work the next day.
    • It was only after a while that people learned how to use free time: that they could create art, go to cafes, etc.
    • There was another similar revolution in the fifties with the introduction of the 40 hour work week. People didn’t know what to do with all this time they had in the evening. Sitcoms sprung up to occupy people’s time from 7pm to 10pm.
    • Then came Wikipedia. Where did all the time come from to build Wikipedia?
      • Doing some calculations, he found that in 2008, about 100M hours of effort went into building wikipedia.
      • Americans spend 100M hours watching commercials every weekend.
    • People are starting to turn off the TV and build something instead.
  • Some examples
    • Again and Again: Song by a group called the birds and the bees.
      • they didn’t have a video out.
      • Dennis Liu was a 23 year old college grad trying to become a full-time director/creative. He was a producer at an ad agency, and wanted to produce an Apple commercial. On his own, he build a commercial / music video showcasing Apple technology, set to the song Again and Again. It was a huge success: accomplishing both a music video and an apple commercial.
      • It took him from being a guy working in the accounts department, somewhat stuck, to a really successful promotion at a new company, getting to work on more creative projects.
    • What is Google Wave: By Epipheo Studios
      • Put a video together explaining what Google wave is. Made a super simple video using basic line animations. He was funny and himself. 
      • The thing he did was to solve a problem: everyone trying to understand what Google wave was.
      • He was hired by Google to build more videos. He built a company out of it, now they have a 15 person company.
      • All he was hoping for was an invitation to Google Wave, and what he got out of it was a 15 person company and contracts with Google
    • iPod Touch by Nick Haley
      • 18 year old London kid made a video for the iPod Touch, because he thought it was the coolest thing, and there were no ads for the iPod Touch. He loved his product, and he has lots of time.
      • Apple heard about the video, and loved it. They flew him out to California, to have a Pro version made. (Essentially the same exact video.)
      • Here’s a guy who doesn’t have a marketing team or a PR agency, just had the tools to create and share something cool.
    • unthirsty
      • we’re broke, we’re thirsty, we need to find a happy hour…
      • they put it on the web, and soon other people started adding happy hours to it.
      • they hired a couple of designers, and did 3 or 4 revisions of the site over a few years.
      • there are thousands of happy hours listed.
      • it was wonderful to see it take off.
      • what is success?
        • They sold it, not for a ton of money, but something.
        • but huge cultural, community success: invited to conferences, meet people, get hugs on the street, get invited to interviews.
        • Got hired by an interactive shop based solely on the reputation of having done unthirsty.
        • At the point prior to this, doing a bunch of lame websites, and afterwards getting to do high profile stuff.
    • Jason on Cars
      • Would get to drive high performance cars once a week as part of his job.
      • Put up a wordpress blog on his experiences driving the exotic cars. 
      • After he left his job at the magazine, he asked the car folks if he could keep getting the cars so he could blog about it.
      • The car folks shrugged their shoulders, checked the blog, and then said yes.
      • For two years he got a new exotic car each week. On Thursday a guy would show up in his office with a new car key, and take away the old car. He’d write a 300-400 blog post, and that was it.
      • He gets a few hundred bucks a month in advertising, and a new exotic car every week.
    • Bacn.com:
      • An experiment in “can we build a company in three weeks?”
      • “Why not, let’s build something.”
      • They had full-time jobs, but they were bored. They wanted something fun to do.
      • So they started the business, launched the store, acquired bacon, etc. All in three weeks. Just for fun.
      • They got invited to write a book: From idea to Web Start-Up in 21 Days: Creating bacn.com. Now he has a book on Amazon.com.
      • Sold the site to a competitor.
      • “Oh, you’re the guy who sold bacon.” –> much more valuable than “oh, I could build that for you.”
        • It’s a more interesting story, a more convincing story.
        • It’s not just a story of you following orders, it’s a story about you doing things because you care about it.
    • Paleo Plan: Launched in 3 weeks
      • Threw up WordPress, spent $100 in adwords, to find out whether people would pay for it or not.
      • Now it’s a $9.99 subscription service. He hired programmers, he hired a paleo dietist.
      • Not much traffic initially. But did a redesign, continued working on it, and by March it was making more money than anything else he had every done. 
      • Now he spends an hour a week, and makes a great second income.
    • Lots of failures, we don’t need to talk about.
      • laptopia
      • to smoke a cigar
      • snotips
      • revolution cyclewear
      • on and on…
  • The point is to keep trying.
    • All of them had some success.
    • Some of them were really small successes: e.g. learning “don’t sell t-shirts online”
    • Don’t work on something that absolutely, positively has to be up. You’ll never get to take a vacation.
    • Just keep trying.
  • You don’t have to broadcast your failures
    • Make them count
    • Get there fast
  • Other successes in Portland
    • Mugasha
    • 30-hour day: raised a bunch of money for some charities.
    • Sunago – Scott Andreas: always had two full time jobs, and doing fun stuff on the weekend. 
    • PDXBoom: crowd sourced map of sound: put a pin on a Google map with the intensity of the sound. Was able to find a pipe bomb that had been set off in a park, based on the loudness clustering on the map.
    • Avatari: Sam Grover
    • @ was wrong: Michael Richardson
  • The tools are free. It’s fun. Let’s do something to get excited.
  • Questions to Ask Yourself
    • Is this for art?
      • Are you using for an outlet to be creative?
    • Is this for money?
      • Are you trying to make money?
    • Don’t confuse the two: art and money. You can’t do both. Let your outlets be your outlets.
    • Is this for your career?
      • Will do this help build your skills or reputation?
    • What does success look like?
  • Talk to everyone. Week out bad ideas early.
    • Jason focuses on low risk ideas: a few hundred bucks and a weekend.
  • Ways to get started
    • Partner with someone.
    • Expect this won’t work. Expect you’ll be trying something else soon. Build!
    • Test (with Adwords) and prove a model
    • Start with a simple prototype.
    • Don’t worry if you haven’t figured it out right away.
    • You can adjust as necessar once you get going.
    • Publish a work, tell people. Publish again.
    • Don’t take yourself too seriously. This should be fun.
  • USE THESE:
    • WordPress
    • Cheap cameras and flip cams
    • Simple audio/video tools
    • Twitter
    • Facebook
  • How?
    • Building 50 cups.
    • There was a pottery class. The instructor split the group into two parts. He told the first group that they would be judged entirely on the quality of one piece. he told the second group that they would be judged entirely on the quantity of output. If they made 50 bowls, they would get an A.
      • The first group labored over making a bowl. They were so petrified of screwing it up, they made lousy bowls.
      • The second group made so many bowls, so many flopped, and they learned from their successes, and in the end they produced the best bowls.
    • You don’t want to be the person who almost launched that one website.
  • Questions
    • Q: How do you get traffic to your site?
      • It varies: for Paleo, I use Adwords. the money i spend brings in more money, it’s a profit. For unthirsty, we got great organic search results: no one else has a blog post on “Vancouver Chiles Happy Hour”.
    • Q: How is it different for things that deliver a social value?
      • Paleo has a huge community: they are people who have decided to be healthy in a particular way. They’re friends think they are crazy, so they get a lot of value from the community. on the other, it’s harder to form a community around unthirsty, because there’s no social value to bring a drunk.
      • Are you catering to someone’s identity, and can you strengthen that by catering to it?
    • Q: You mentioned that your T-shirt thing didn’t work. Maybe we’re in the same place. Did you have any idea on what you would have wanted to do if you wanted to make it work?
      • The barrier to entry is so low to that market. Anyone can make, market, and sell it. So you have to find a novel way to sell it. There’s a white underwear, white sock, and white undershirt subscription service. It’s totally plain. But it’s sold in a novel way: you need these things replenished on a regular basis.
      • What about doing that for ink sales? Shouldn’t they just come to your office, house based on what you use?
      • Threadless shows customers wearing their t-shirts. That’s how they advertise. Is there some way to do that for printers? To tie in to the community of customers?
    • Q: something about advertising.
      • If I am selling something, like bacn or paleo plan, then there’s no advertising.
      • But for giving away information, then i do advertising.
      • People don’t want to see advertising for things they pay for.
      • Subscriptions are great because the money keeps coming in. Beats advertising. People just stay subscribed, even if they stop using the service.
      • Every person should get great customer experience, because they have friends.

I was recently pondering the interplay between Google, Microsoft, and Apple. Microsoft’s strengths have traditionally been in the software realm, and Google’s in the web realm. Apple’s strengths have been in delivering great user experience and design, great operating systems, and hardware.

Google has been moving into Microsoft’s territory by offering cloud based applications. Over time, Google Docs and Gmail are becoming more competitive, and hence more of a threat to Microsoft. Microsoft has responded by moving into online search and offering their own cloud based office applications.

Cloud-based applications have some serious benefits including the ability to access the applications from anywhere, ready access to data from wherever you happen to be, secure backup of data, and easier sharing of information. But users do have to make some tradeoffs. Frequently the user experience and features of those cloud applications are nowhere comparable to what you’d find in the equivalent desktop app. (Gmail and Google Docs have only the most rudimentary formatting for example.) But that user experience will improve over time.

Where does Apple fit into the picture? I realized that Apple could offer some very useful cloud-like benefits by building on top of their expertise (great devices, great operating systems). Let me paint a picture for you, using three complementary features that together create a great experience and offer many of the benefits of cloud apps, without having a cloud.

Apple’s OS X is built on top of Unix, and an integral part of Unix is X11 (pronounced X eleven), the windowing system that allows applications to display graphical windows. A great feature of X11, little known outside of technical users, is that it can be used to run an application on one computer, and display the window (output) on another computer. However, this is typically hard to do. It’s not wrapped up in a nice little graphical user interface.

Imagine if Apple modified the application switcher (Apple-Tab, equivalent to Alt-Tab on Windows), so that it showed you not just the applications running on that Macintosh, but also those applications running on any Mac you happened to be logged into. You’d get something like this:

Above the line, you see two computers. An application is running on computer #1, and displaying the GUI of that app on the same computer. On computer #2, the same user is logged in, and they run the app switcher. They see the applications running on computer #1 in the app switcher, just like any locally running apps. The user can select the app, and have the GUI moved from computer #1 to computer #2.

With this ability, Apple users be running an application at home, and access it seamlessly from work. Or be running an application on their desktop PC, and access it seamlessly from their iPad.

Now let’s talk about distributed file systems. Another benefit that the Unix operating system has over Windows is that it is used far more extensively for high performance computing, such as running weather simulations. In this situations, clusters of Unix computers work together on computationally difficult tasks. In order to share massive data sets among computer, these Unix computer run distributed file systems that allow any computer that is part of the cluster to access any file, regardless of exactly where it lives. Many distributed file systems also incorporate data redundancy so that if any one hard drive fails, the data exists in at least one other location. There are several different distributed file systems for Unix.

Here’s a picture:

In this example, computer #1 and #2 both are part of the same distributed file system. As a user, if you use Finder (the equivalent of Windows Explorer) to look at the file system, it appears that File A is present, even though it’s actually on computer #1. It would be possible to also choose to incorporate true cloud storage services, so that for a small cluster of computers, data redundancy is guaranteed by being replicated seamlessly in the cloud.

Just as we integrated app management into the application switch to make X11 more palatable to the masses, Apple would need to integrate distributed file systems into the out of box experience and user management aspects of OSX, so that users would not need to think about distributed file systems, but could instead just enjoy the benefit of seeing one hard drive that contained all their files, and which appeared identical, regardless of which computer they were accessing it from.

The third and final feature that brings cloud-like benefits to Apple would be a browser-based interface to user’s computer. Browser based versions of X11 windows managers already exist, and by integrating user account management and secure connections, users of Apple computers could enjoy accessing their applications and data from any web browser. Imagine, for example, going to apple.com/mymac, and then accessing your Mac directly. This can already be accomplished, by some extent through solutions like GoToMyPc.com, but through OS and X11 optimizations, Apple could probably deliver a better experience. It would like similar to the first diagram, except now the experience is running within the web browser:

With these three features, Apple could deliver many of the benefits of cloud computing (apps anywhere, data anywhere, data backup) by primarily leveraging their expertise in user operating systems and their advantages in desktop user experience and features. In other words, Apple doesn’t have to build cloud applications or cloud expertise.
It also builds and leverages upon the myriad devices Apple offers. The value of the iPad goes up when it becomes an interface to my MacBook Pro. I can better justify buying a second Mac when the synergies of having two Macs provides more benefits. (Compare this to today, where having two computers means I have to manage application licenses and ensuring that I have the right files where I need them.) 
The beauty of this is that it builds on advantages that OSX already has: the X11 windowing system and distributed file systems. It’s inherently better and more scalable than anything Windows has.
So Apple, how about it?

I frequently hear people debating the definition of cloud computing, or embracing a particular example of cloud computing as the definition of cloud computing.

I put together a few slides intended to illustrate a few different examples of cloud computing. I think that there are at least three fairly different classes of cloud computing that provide different value to different people. What all have in common is the use of computers and software in the Internet to replace computers and software residing on a particular physical computer in a known location.

The three different classes I use are Computing as a Service, Platform as a Service, and Software as a Service.

Computing as a Service replaces the management of physical computers with virtual servers running on the Internet. At it’s most basic, Computing as a Service may still require managing the server operating system, and other low-level operations/system administration tasks. But it does eliminate the need to own or rent particular pieces of hardware, and manage or rent datacenter services. Eliminating physical hardware provides an additional benefit: it becomes easier to rapidly scale computing resources up and down to respond to peaks in demand, as well as reducing up front investment. Computing as a Service is rarely talked about by end-users, because it’s mostly invisible to them.

Platform as a Service replaces the management of computer operating systems and databases with a well-tuned environment for running applications. For example, when I deployed a Ruby on Rails application last year, I used Heroku, who provided a platform environment for running Rails applications. Heroku allowed me to ignore basic system administration tasks, OS-level security issues and patches, and database engine tuning, with a scalable environment well-tuned for running Rails applications. These kinds of environments tend to be utilized by developers and smaller companies, who are seeking to avoid system administration overhead in addition to eliminating datacenter management overhead.
 

Application as a Service replaces traditional applications run on a personal computer with software running on a web server. Examples of this include Gmail, Salesforce.com, Google Maps, etc. End-users tend to be most familiar with these applications, and so many times they think of cloud computing as limited to this particular category. Here the value provided is the elimination of installing and managing local applications, the benefits of frequent releases with effort to upgrade.

Different people, depending on their role, may default to a particular mindset around cloud computing. But embracing a broader definition, and understanding how other people may be thinking of cloud computing, can lead to more productive conversations about the benefits and tradeoffs of various cloud computing options.

CloudCamp 2010
Portland, Oregon
#oscon #cloudcamp #pdx
CloudCamp is a free birds of a feather session at OSCON, the O’Reilly Open Source Conference. I came out of general interest, and because one of the promised tracks is deploying your own cloud using open source tools.
Promo: New user group: pdxdevops
Lightning Talks
open cloud
Sam Johnson
Google, Zurich
  • open source / open cloud: freedom. You can move from one cloud to another. avoids lock-in.
  • unfettered competition leads to commoditization leads to utility computing.
  • case study: free software 
    • open source is a happy medium between free software and proprietary software that leads to useful stuff, good for business.
    • open source is trademarked, giving it some instant recognizability and specific criteria for being open source
  • criteria for open cloud
    • open interfaces (atompub)
    • open formats (open document)
  • http://opencloudinitiative.org
Adrian Cole
Ops Code
@adrianfcole
5 APIs for Provisioning
  • Provisioning
    • Allows access to cheap resources
    • APIs -> automation
    • Tools exists
  • Manage Complexity
    • multi-cloud APIs
      • abstract what is commoditized
      • provide a consistent substrate
      • reduce complexity and lock-in
  • Dasein Cloud
    • Written by guy who did first JDBC
    • Focuses on services
  • Apache Deltacloud http://deltacloud.org
    • Ruby implementation
    • provides REST endpoint. Can use curl to manipulate the clouds.
  • fog
    • ruby cloud computing library
    • compute an storage across many providers (about 6)
  • jclouds
    • multi-cloud framework
    • zero lock-in to cloud apis
    • written in java
    • runs in google app engine
  • libcloud http://libcloud.org 
    • was a python library, with java coming soon
    • is about compute
    • works with 16 providers
The Simple Cloud API
Doug Tidwel
The Simple Cloud API brings cloud technologies to PHP and the PHPilosophy to the cloud, starting with common interfaces for three cloud application services: File Storage Services, Document Storage Services, Simple Queue Services.
  • Joint effort of Zend, GoGrid, IBM, MS, Nirvanix, and Rackspace.
    • But you can build libraries to support other clouds
  • Supports 3 areas:
    • File storage (s3, nirvanix, azure blob, rackspace)
    • Document storage (s3 doc, azure doc)
    • Simple queues (sqs, …)
  • Uses Factory and Adapter design patterns
Eric
Principal consultant with Center Stance
Cloud Consultants: do implementations in the cloud
Not much of an open source person, more of a cloud person.
  • SalesForce.com, SAAS.
  • VisualForce is a templating language + Apex (java like) = to do addons for SalesForce.
  • App Exchange: app marketplace. 
  • managed and unmanaged packages.
    • managed packages are controlled, no code.
  • 940 packages in the app exchange.
  • less than 10% of those are open source: about 80 packages.
Cory 
Dyn, Inc.
DynDNS.org
  • Doing DynDNS for over 12 years. 3.5M people using it.
  • Dynect Platforms: hosts companies like twitter, 37signals, zappos.
  • Geotarget multiple clouds
    • Users in EU, go to Amazon EU, users in the Western USA go to GoGrid, users in the Eastern USA go to …
    • Automatically redirect traffic to servers that are running (active failover)
  • DNS can give you a slider for your traffic: how much do you want to send to the cloud vs. your own servers? you can base it on latency, on location, on etc.
  • DNS resolution time is part of overall latency for users. DynDNS is faster (like 32 ms vs 120 ms in example.) that’s 90ms you’re getting back to be able to do more in your own server.
Unpanel
Hahahaha: They asked “who considers themselves an expert on the topic of open source and cloud computing?” Five people raised their hands. “OK, you’re the panel. Come on up.”
  • How is CC going to change the choice of the dev platform?
  • Is open source still relevant in cloud computing?
  • Will open source save us from a handful of monopolies?
  • What are the implications on hardware? What will change for hardware?
Stuart Smith, Rackspace: Is open source still relevant?
  • Only if you value freedom.
  • In fact, it is even more important.
  • When your proprietary software vendor goes out of business, you still have the software, you still have the license key.
  • When your proprietary cloud vendor goes out of business, your company is fucked.
Will open source save us from monopolies?
  • Just being free isn’t enough. There have been other free efforts that have been crushed by monopolies.
  • You have to have people adopt it.
  • The only way it is going to work is if everyone gets involved. otherwise cloud computing will be dominated by a few proprietary stacks.
How does this influence our choice of platforms?
  • With some platforms, like Google App Engine, you either drink the koolaid, or you don’t.
We’re going through this change between latency sensitive and bandwidth sensitive. Everything moving to data centers. highly multicore systems. now losing in the market place to classic out of order design. we’re going to see lots more cores, lots more latency sensitive. gpu assisted. more message passing hardware to avoid going through the OS.
Breakout Discussions
Why open? Open stack. Open cloud.
Open is:
  • creative commons license on the specs themselves. if the specs themselves are copyrighted, you can’t even tell your customers about them.
  • patents: you can’t have key technology locked up.
  • trademarks: when you start talking about “amazon compatibility”, you have problems. so the relevant names must be open for use.
  • implementations: you need to have multiple implementations.
  • open design / transparency / open process: so the community can participate, so i can understand the design, what is going on.
    • open process is hard: because standards bodies are in theory open, but they cost $12,000 to join, so it;’s not really open.
    • if it’s not open, then other people can’t innovate and move things forward. that’s limited to the standards setters.
  • then what are the options? a different standards body?
    • we had an unconference, and invited people to participate, and we were able to learn from each other and move things forward.
      • (this was on the format used for virtual machines)
  • Open cloud is:
    • open formats
    • open interfaces
    • open source
    • open data
  • “multiple, interoperable implementations, at least one of which is open source”
    • having an open source implementation does give you a real viable alternative. 
    • example: if there was an open format for microsoft office, and they said, well all you have to do is implement microsoft office yourself, then it isn’t really viable, unless there really is an existing open source implementation.
  • part of the core of open source is the right to fork.
    • if you don’t have the right to go, then you are married to the solution (e.g. whoever will buy MySQL)
    • this would include the right to fork a spec
      • let the best API float to the top.