Skip to content

Instantly share code, notes, and snippets.

@stonean
Created January 2, 2015 16:36
Show Gist options
  • Save stonean/5e33488c4f4cf2123c72 to your computer and use it in GitHub Desktop.
Save stonean/5e33488c4f4cf2123c72 to your computer and use it in GitHub Desktop.
New web browser

This is a brain dump, many grammatical errors to follow ...

About a week ago I was chatting with my team about my technology choices for now (things will change) and the subject of Javascript arose. Obviously there's a lot of talk going on about Javascript, both good and bad, which frameworks to choose, the overall poor performance of the frameworks, etc... I've simply come to the conclusion that I'll only use Javascript when there's a clear UX win.

This got me thinking about Javascript in general and resurrected some older thoughts regarding the difficulty that still exists in web development. Difficulty that I think should not still exist.

So I was wondering why that is. I think it's that we are still dealing with an old foundation. Javascript is a language with many flaws and not one designed with security in mind. HTML has made some advancements with HTML5, but I think so much more could be done. CSS could use a lot more power/flexibility to reduce code duplication and help code reduction. Addressing all these would be nice, but I don't think it would ultimately be enough to truly wow. So what if these didn't exist?

Due to the constraints of these technologies, to my eyes, most web pages end up only having slight variations and no real outstanding differences.

What if the browser was more like a gaming engine?

What if we had a simple way to add images and text without the markup we need now?

Could we change the web from a huge directory of documents to discoverable app store?

I see the browser as just another app, another VM. If it were to focus on this would we need propreitary app stores?

What could this do for offline capabilities?

Think how we could simplify the creation of web sites. For clarification, I'm using web "sites" to refer to sites with only a couple of dynamic functions like lead capture and searching. Content can be dynamically generated, but no per user functionality.

Think of what we could do with web "applications".

What would this mean for phones if the browser was this uber app? Would the browser end up being an OS?

Outside of the more advanced web application idea where coding would definitely be required, I'm going to jump back to web "sites".

Instead of web components, we'd have app components. To make lead generation work it would be kind of simple. We do a version of this now with services like Formstack and WuFoo. I think it would be greatly simplified without using our current web technologies.

The search would be interesting because the component would need to know what is searchable on your site. So how would text be done? I'm thinking Markdown is a good step in that direction, but it would need the ability to add in placement metadata.

@aeden
Copy link

aeden commented Jan 2, 2015

I'm glad you took the time to write it up. I had the same musings a couple years back and I created a slide deck about it. I'll see if I can share it as a PDF at some point soon.

@stonean
Copy link
Author

stonean commented Jan 2, 2015

Thank you. Sharing such raw thoughts always makes me nervous. I think of a lot of stuff I later realize is really stupid.

I'd definitely like to see that when you get a chance.

@tekwiz
Copy link

tekwiz commented Jan 2, 2015

This seems to be the genesis of a "next generation" of the WWW from what the other great minds on the Internet have pushed... I'm thinking about technologies like Chromium OS, PhoneGap, Marionette.js, and HTML 5. These (and combinations of the like) are, at a certain level, attempts at using the "standard" web technology stack (ie. HTML, CSS, JavaScript) as the basis for everything. There have been many proposed deal-breakers to the adoption of this stack, but from a pragmatic perspective, the hangups have been:

  1. functional cross-over between the technologies,
  2. slow implementation/adoption within browsers, and
  3. poor JavaScript implementations (and resulting performance issues).

All of these are issues created by the "browser wars." It's interesting to me that the Internet was originally developed (and to some extent still is) with a focus on consensus but degrades into Holy Wars at the drop of a hat. The end result being the tangled mess we now call "standards." This is to say: I love this concept, but the question is how could one market it and get it implemented without it turning into a monstrosity?

@stonean
Copy link
Author

stonean commented Jan 2, 2015

Good question. I think it would have to be taken from the chipset approach. I think this is where I was going with the question: "Does the browser end up being an OS?".

Take what Docker promises and apply it to this idea. The browser becomes the OS that accepts "containers". As long as the container (e.g. the app) follows the rules similar to an OS following the chipset rules, then the applications can have their own proprietary craziness.

Maybe?

@stonean
Copy link
Author

stonean commented Jan 2, 2015

Take a look at the Wolfram language and how it has abstracted complex operations. We should be able to do this with presenting basic web sites.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment