Tim Berners-Lee is the mastermind behind the World-Wide-Web. He has decided to start blogging. His blog is located at: http://dig.csail.mit.edu/breadcrumbs/blog/4 . Take a look, he only has 2 blog entries so far, but I’m sure we’ll see some great stuff in the future.
First Official Provo Labs Meeting
I love my job! I don’t think I could ever find a cooler job. I love the people that are in the company, I love the philosophy of the company, I love the vision, and I love the flexibility and autonomy that the job offers.
Tuesday afternoon, we had our first “all hands” meeting with everyone in the Provo Labs company. I thought it was great to finally meet everyone. I think we have an incredible group of people. During the meeting, we talked about the Provo Labs vision, philosophy, and a few of the companies and new projects that we will be working on in the near future.
Paul had some great insights into entrepreneurism. In the meeting he said that nothing else has changed the world in such a drastic way as entrepreneurs have. As an example, he pointed out how Google in just four or five years has changed so much of how we live. The inventor of the cell phone has really changed history. We are living in a great time for new ideas, and the changes that we will be involved in are going to be exciting.
Paul also talked about ideas being like little kittens. He said being a serial entrepreneur is like having a whole litter of kittens, and you can only keep one and have to drown the rest. Only after the one kitten grows up you can get another kitten. That is why he likes the parallel entrepreneur philosophy where we are going to drown as few kittens as possible and try to make as many ideas grow into mature companies or products.
We have some very exciting new products in development. Blastyx is going to be an awesome company. The name comes from the word blastocyst which is the state of a newly conceived embryo before it begins to grow exponentially. Blastyx services will do the same to businesses that need some publicity and buzz to be shot out into the world so that they can grow at an exponential rate. I think the business plan is incredible, and it will definitely be something that people will be hearing about.
Blastyx will be needing the service of independent, amateur film makers. If you know of anyone that likes to do film and would like to be involved in an exciting new company, let me know. We would like to build a database of film makers all around the world.
While worldhistory.com is in ruins right now, there is a great future ahead for this site. It will become the richest source of information regarding the history of the world. I will be working on that project with Jonathan Balinski. This is way cool.
I’m still working on finishing up the Provo Labs website. We are running into problems with our hosting company. We will be moving onto our own servers soon, and hopefully we will be able to get everything working smoothly.
Utah Geek Dinners
I missed out being able to write about this yesterday, but I still want to talk about the Utah Geek Dinner that went down on Tuesday. Despite a rough start, I think it was a great success.
I was a little concerned about how we were going to pull off the dinner at the Mayan in Sandy as it is a very exciting, interactive atmosphere aimed at keeping children entertained. However, after everyone was finally able to eat, we crammed in the little party room or whatever you would call it, and began to talk.
I liked Phil’s vision that he shared on the new facility that they want to build in Provo. I think it would be a great place to hang out and get to know other developers. Right now at BYU among the various computer or technical majors there seems to be very little or no communication. When I was a Computer Science student, I rarely talked to other programmers as it felt like such a competitive environment that we rarely shared ideas or thoughts. The Information Systems major has been way different, as there is an ISYS mailing list, the IS Land community, and lots of focus on teams and collaboration. However, there isn’t much communication between ISYS, CS, IT, or whatever technical major you might be studying. I think a geek facility where anyone can go and work on projects would be very conducive for that kind of non-denominational major environment.
I thought it was amazing how many great job offers there were presented at the dinner! As an information systems student, I’ve experienced a bombardment of recruiting efforts by the accounting firms, but not a whole lot from other more tech-oriented companies. That is why I was so excited to get the job offer from Provo Labs. I will be sharing this with the rest of the ISYS students for sure. I think we could get a really big turnout to the next dinner.
I think the possibility of venture capitalists coming to these dinners to meet up with technology entrepreneurs is exciting. I was really excited to hear that some people that work at the governor’s office were present as well. I think the vision of Dev Utah is great. I hope that Utah can become the next Silicon Valley. As I wrote earlier, Salt Lake was rated as one of the fastest cities in the U.S. by Fast Company and hopefully this will allow it to move even faster.
Rapid Web Development
I’ve mentioned earlier that I work for Provo Labs, and one of our main goals is be able to take an idea from concept to product as fast as possible. I’ve been thinking a lot about the best way to do this, and yesterday I came up with this thought.
Historically, when I have wanted a site with certain functionality, I would go out and find an opensource solution that most closely matched what I was trying to do. However, digging through an entire application to tweak the code can be cumbersome, and take a very long time. Sometimes, I only want one piece of functionality offered by the application.
As I was thinking about this, it came to me that software development is a lot like building a custom car, here’s why. Most cars are built up of standard components such as an engine, transmission, drive shaft, tires, frame, etc. A website also has standard components, headers, footers, navigation and content blocks. My tweak the opensource package model fits an analogy of taking a fully-built VW Bug and figuring out how its built, take it apart, and try to rebuild it into what I want. But, what if the only thing I really needed from the Bug was the frame and tires? That’s a lot of extra work tearing the beast apart and then building on top of it.
So, I was thinking, what if we created a garage full of components or modules that would be much like car components. With the car, you would have the engine, the transmission, etc. With web, you would have a navigation module, header modules, footer modules, and lots of different content box modules. You would then have multiple page frames that these modules could fit into. The modules would all have standard interfaces for displaying and you could just plug in new modules into your site. The important thing is that you would be able to use these same modules on any site that you create.
An example, say that you wanted to build a page that had displayed a standard navigation block, 2 article blocks, and an RSS aggregator block. You pick a frame that would support the layout of the blocks, take from your garage of modules a navigation module, an article module, and an RSS aggregator module, and plug those into the page. Upon initializing these modules, you would have to point them to where they will actually get the content, which leads me to my next thought.
Each of these modules would be made up of two parts (there will probably be more parts as I think this through more thoroughly). The display object, which actually plugs into the site’s view, and the data access object, which could grab the information from a database, xml file, access it from some web service, who cares, it would just have a standard interface that works with the display object to get the information needed for that object.
Lets look at the navigation module. The navigation module will most likely display some sort of hierarchical tree of hyperlinks. So, you get your navigation module from the garage, and you plug it into your frame. You then (or upon initialization) give it the data access object which will give it the data needed to display the links. Because all of the display objects have the same interface with the frame, you can plug them in anywhere on your page, shuffle them around, etc.
CSS 2.0 has provided the ability to do all of your positioning and design with a stylesheet. The html should be data placed in
containers so that which makes the site more flexible and not stuck in one particular design.So, what is the difference between these modules and PEAR and some of the libraries that we already have? I think the main difference is that it seems that PEAR offers great raw materials for web development, but not so much complete components. It can save you time from having to actually harvest or create from scratch these raw materials.
Anyways, maybe this is already being done somewhere, but it seems that we could get a lot of re-use out of our components, and use this model to speed up future applications that don’t fit already built full opensource applications.
Any thoughts? It is possible that my model has flaws, so if you see any, please post a comment. I’m just trying to come up with a better way of doing things. Thanks.
Web 2.0 – What is it?
On Monday, Jonathan Balinski and I met with Phil Burns, COO of Provo Labs, to discuss the upcoming technology that we will be architecting and developing. Throughout our meeting, Phil referred a lot to “Web 2.0″ compliance. That got me thinking, ‘What exactly is Web 2.o?’ So, I’ve done a little research this morning and I’ve broken it down into the following.
Web 2.0 encompasses the following:
- A move from places and locations to information flows
- A vision change of the web being viewed as a platform for full applications using AJAX technology
- A move from read-only web to read-and-write-web through Wikis, Blogs, Tagging, etc.
- A move to making the web more machine readable through XML technologies such as RSS and ATOM feeds
- A shift to create and use web services through open web APIs to quickly create more functional sites
- and more.
Basically, the web has gone through a major change in the last 10 years. Money is actually changing hands online and solid business models have been created for the web.
Sometimes I look at our technology today, that we have and think, ‘Wow! All of this stuff is so cool! How can it get better?’ After Phil described the vision of worldhistory.com, I began to realize that the best really is yet to be. We will continue to see amazing new innovations in the short-term, and we’ll be blown away by what we experience in the long term.
Business is an Artform
I believe that entrepreneurship is an artform much like music composition, painting, sculpture, photography, and literature. The reason I believe this is because we all can learn how to critique art. We can learn lots about the technical nature of the artwork, but until you become the author, or artist and actually create it, you will never develop the skills to be called a true artist.
My wife is in a entrepreneurship for women course here at BYU. As a final paper, she interviewed my sister, who has just started a quilting and crafts business, to ask several questions about her experiences as an entrepreneur. She is in the starting phases of her business and I found it interesting that most all of the challenges that she is facing and has faced have all been topics covered in my marketing class (Business Management 341). Much like an artist, my sister is actually practicing the principles of this artwork. She has not had any professional training on business, but is learning hands-on. I feel more like a critic who can see the final result and judge whether it is good or not, and if she is doing it right. I am like the observer and she is like the composer.
I grew up in a family where learning to play the piano and other instruments was very important. I learned to play the piano, the trumpet, and percussion instruments. I am very opinionated about music that I hear. Some of the local radio stations play LDS music on Sundays that were written by LDS musicians. Some songs I can tell I just don’t like from the get go, because they contain cliche musical themes, lyrics, and such. However horrible I think the music is, I could not compose anything better. That is what I’m trying to say about business.
We can learn all about business, entrepreneurship, technology, etc., but just digging in and doing it is the only way to truly become good at it. The first few attempts will probably be bad and are likely to fail. With persistence, mistakes can be overcome and experience attained that is required to be successful.
My brother composes and records music and is becoming quite good at it. As I look at the progress that he has made, his early compositions aren’t half as good as his latest ones. It took the experience of creating these early pieces in order to move towards excellence. These things just take practice.
Invent the Future
I was reading Paul’s blog, and a statement by Alan Kay that he had posted really stood out to me. I had to find more about Alan Kay and find the quote. Here is the quote:
Don’t worry about what anybody else is going to do… The best way to predict the future is to invent it. Really smart people with reasonable funding can do just about anything that doesn’t violate too many of Newton’s Laws!
I got this quote from http://www.smalltalk.org/alankay.html . I guess Alan Kay was the inventor of SmallTalk, the Graphical User Interface that inspired the MacIntosh and all the other great GUI based operating systems.
I think lots of people have some good ideas and visions for the future, but I think that most people (including me) don’t really know how to get the funding needed to make their ideas become a reality.