Chrome OS and Steve Jobs at WWDC 1997
I've enjoyed watching this Steve Jobs WWDC video from 1997.
Funnily enough, some of the things he was describing sounds very familiar to Chrome OS.
"because we were using NFS, we were able to take all of our personal data, our “home directories” we called them, off of our local machines and put them on a server. And the software made that completely transparent..."
"that carrying around these non-connected computers or computers with tons of data and state in them is byzantine by comparison"
Don't you think that sounds a lot like what Google is trying to achieve?
Via onstartups.com. Read more: 16 Brilliant Insights From Steve Jobs Circa 1997
Watch the video. Comments on networking start at around 17 minutes in.
An idea community: good or bad idea?
I'm planning on starting a new website to build a community of people who want to share their ideas.
Why should I share my ideas?
There are a lot of benefits to publicly sharing your ideas.
1. Get early feedback
Getting early feedback is crucial. Other people think differently. They will see problems you don't. They will highlight what is good about your idea, or how it could be better.
2. Get others onboard
If someone else discovers your idea and is passionate about it, why not let them get on board and help make it reality?
3. Collect early interest and turn them into customers
If someone likes your idea, they would probably want to hear about it when you have something ready to show. Get them signed-up to your mailing list or following you on Twitter.
4. Momentum
Keep others up to date with your progress. You should get feedback at every opportunity. If you are flailing, why? What do you need to get you back on track?
5. Get others to develop your idea
Maybe you just need some little tool to get something done. Perhaps you don't have time to make it, but someone else does.
So that's a lot of benefits. Let's tackle the one big drawback.
"But someone will steal my idea and make millions"
Yes, they could. Here is why they won't:
1. They don't have the passion you do
So your idea is about windsurfing, reading, classical music, biscuits, whatever. The point is, it's something you're passionate about. Other people don't care about what you care about. If they are just as passionate about it as you, why not join forces?
"One person with passion is better than forty people merely interested".
2. It's all about the execution
"Ideas are a dime a dozen, successful implementation is what matters. Use this phrase when explaining to others why you stole their idea."
@HackerNewsTips
Want a few more quotes about ideas being a dime a dozen?
3. It's all about the people
"If you give a good idea to a mediocre group, they'll screw it up. If you give a mediocre idea to a good group, they'll fix it. Or they'll throw it away and come up with something else."
Ed Catmull, Pixar: Keep Your Crises Small
4. They don't have your insight or experience
Most of the time ideas come about from the environment around us and/or through a direct experience. Will others have the knowledge and passion you have?
5. They won't find out about it in time
It's called first mover advantage. Use it to your advantage. Make sure you get a flying start. Make overcoming that head-start you gained a hurdle that will put them off.
6. Really great ideas don't catch on immediately
"Don’t worry about people stealing your ideas. If your ideas are any good, you’ll have to ram them down people’s throats."
Howard Aiken
Hasn't this idea already been done already?
Yes, but not done well enough. As I mentioned, it's all about the execution. I've got lots of ideas on how to make a better ideas community.
One of the problems with existing idea sites is that the ideas are too diverse. Most people will not tolerate too much noise - ie. topics they are not interested in. I would focus on a specific topic area and try and grow a loyal community. Since I'm interested in technology and web apps, it would make sense to start there.
Interested in helping me build this website? Please contact me.
Want to find out when I launch the site? Please subscribe to this blog or follow me on Twitter.
Tell me why this is a crazy idea and why it won't work. Tell me why you think it might work. Write a comment below.
If you're interested in reading more on this subject, you might like to read:
Something published every week
One of my goals of 2011 is to get more stuff published onto the web; blog posts, code on github, tweets, whatever.
Sometimes it takes a little bit of extra effort by putting something in a form that is worthy of publishing online. When you're busy that little bit of extra time means doing it later rather than now. Let's try doing less. Write/code less and publish more often.
Hit publish. You can always edit it later.
Developing offline web apps with HTML5
There are currently 3 separate areas of the HTML5 specification that will help you build an offline web application; web storage, offline caching and web database.
These areas are in different stages of development. Only web storage has been implemented by the latest versions of IE, Firefox, Safari and Chrome. The following pages are good places to find out the very latest status:
- Which browsers support html5 offline storage?
- Wikipedia - Comparison of layout engines (look for "Web Storage" and "Web Database")
Web storage
This is basically key/value storage or, as Remy Sharp put it, "basically cookies on steroids". It will help web developers store more data on the client side, but since it does not provide a means to loop through records it will have limited uses.
To find out more about implementing this, a great summary web storage and offline caching.For all of the details check out the Web Storage specification.
Offline caching
The specification is pretty simple. Define a manifest file with a list of all of the files that should be cached for offline usage. Then link to the manifest file by using the following HTML.
You can also use JavaScript to control what stays in the cache. Check out the 24ways.org article for info about offline caching.
Web database
There are two draft W3 specifications that are in the running to make it into the HTML5 spec; Web SQL Database and Indexed Database API.
Web SQL Database
Google have already developed a GWT mobile webkit that has an API based on the Web SQL database spec.
This spec uses the SQLlite dialect of SQL. Since SQLlite's SQL doesn't have its own spec, work needs to be done to establish a full specification.
Index Database API
This seems to be Oracle's choice. Since this API doesn't use SQL, NoSQL databases such as CouchDB will prefer this specification.
The specifications seem very comprehensive, yet the sample code looks very simple.
Summary
The web database specifications are still very much work in progress at the W3C. It's going to be a while before an agreement is made on standards and browsers do their implementations.
I really hope the Index database API (or NoSQL) version wins over the SQL spec. I don't want to be tied down to using SQL which means not be able to take advantage of document-orientated databases such as CouchDB, MongoDB and Redis.
When will the SilverStripe book be released on the web?
The new English version of the SilverStripe book is out. This is great news. A first book for any open source project is a real milestone, not many projects get that far.
I encourage the authors to publish it on the Internet, not for my sake, but for the community.
Great documentation = more developers
We all know as developers the frustrations of poor documentation. Every time a developer hits a road block with their code, they turn to documentation; failing that they turn to a community for help. If after several failures they cannot get something working, it's likely they'll give up and try something else.
Let's look at the proof
WordPress, Symfony, Ruby on rails, CouchDB.
What do all these open source projects have in common? Great documentation. They even have free books available online. One of the reasons why these projects have grown so quickly is because their documentation is so easy to read and very comprehensive.
Why should authors give away their hard work for free?
The community will inevitably grow if the book is good, so this means there are more potential buyers of the book. Symfony's books are advertised alongside its web pages. This seems to work very well. It's a good way to target those most likely to buy the book.
An online book also makes getting more feedback and suggestions to improve the book.
Where do we go from here?
As a SilverStripe developer myself I've become so frustrated at the state of the documentation, I've even considered setting up a documentation site myself. However, since I know there is a book available, and it might be published on the Internet, what is the point working hard re-writing what needs to be said?
It doesn't always make sense for authors to publish all of their work on the Internet, but in the case of growing open source projects with little good documentation, it makes a lot of sense. What do you think?
Hello world!
Welcome to my new space on the web. I'll intend to blog occasionally on technology and software.

