|
Would get my +5000, but only +5 is available...
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
There's a good TED talk by Alan Kay (can't link yet - at work) in which he shows pictures of Einstein, Newton and Darwin to a room of programmers, who all recognise them, then shows them pictures of Englebart, John McCarthy (LISP), Jacob Goldman (Xerox PARC), Bob Barton (Invented bytecode at Burroughs) and other pioneers of computing, none of whom were recognised.
He summarised this situation as illustrating why computing isn't a science yet - nobody knows who these pioneers were, so are condemned not to learn from them. (You've probably guessed I'd include Alan Kay in my personal list).
Imagine a physicist who didn't know who Newton was.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
It's easy to change it now!
We can create a server that uses WCF net tcp (or even plain tcp socket) to handle requests. With Razor, we can compile exising asp.net mvc (cshtml) files on the server, get a string, perhaps use an in memory compressor, and then pass it to the client. We need a browser app on the client that can communicate over WCF, decompress and display in memory html.
With that in place, second version can start with sending objects to client instead of html or strings. Since objects have type, type-specific optimizations can be applied.
It's a cool project really! It can work with existing technologies. We just need to add few layers in between.
|
|
|
|
|
It may be cool, but all it's doing is adding further complication layers on top of an existing pile of steaming layers!
If your car engine is smoking, you don't bolt an extra exhaust filter on the roof to remove the toxic stuff, you replace the piston rings or the valve stem seals to stop it burning the engine oil in the first place!
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
Agreed, version one I talked about above is that but version two isn't. Technically, there's a bit difference! I mean to use the good parts of exising technology. In your example, let's not throw away the entire car, but replace bad bad parts of the engine! :-P
|
|
|
|
|
Yes - but in this case the bad parts are HTML and Javascript!
To continue the car analogy, if you pull out the engine and find that it's not just the piston rings, but the bores, pistons, and big end bearings are made of chocolate, the cam is gold plated wood, the oil pump is missing, and there is a huge hole in the crankcase that has been covered with silver painted cardboard: then its time to get a whole new car!
And at the moment, that is what we have: a rotten core to the whole presentation system - HTML.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
Never mind the fact that we would have just invented a browser and technology stack tied to a single platform/VM. Not exactly progress.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
Why?
Is IL platform specific? Or does C# code work in Linux under Mono; on X86 or ARM processors?
The JIT compiles the IL to the native code, and if the browser was a "portable" OS shell (as it should be for security purposes) all that is needed is to produce the browser engine for Windows, iPhone, Android, etc. - just as they do with the Chrome core HTML/javascript engine, Mozilla, ...
(I'm not seriously suggesting IL as the solution, BTW - though C# on the client would be very nice.)
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
IL isn't platform-specific, but I suspect strongly that elements of WCF are.
Regardless of that, adopting CLR as a VM in a browser would harm adoption on other platforms - if only due to resistance from developers.
I also don't think .NET, as it stands, is really up to the task. Unforgeable references are key to an object-capability system. I'd personally like to see non-nullable references too. Maybe something more like Rust (when its matured), but targeting bytecode. I strongly believe in managed languages, (in the general sense) for the protection they bring. There are limitations to the .NET/Java model, however, that could stifle innovation.
It's all pipe dreams anyway, but I do wish someone (hopefully more qualified than me), starts moving the Web away from its mistakes, instead of entrenching them further.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
At last . . . someone else who realizes that binaries are very specific critters.
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "As far as we know, our computer has never had an undetected error." - Weisert | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
Actually, .NET is quite portable. The issues I see are more political than practical.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
Yes, it is progress. Potentially massive progress. I don't see how tying development to HTML and javascript is preferable to "avoiding" a standardised VM. You may be pleased that Google for example looked like it wanted to go down the VM route but there was no agreement and even dissent within their own ranks. We are stuck with HTML and brain-dead javascript.
|
|
|
|
|
OriginalGriff wrote: and we would stand a chance of getting "browser independence" Oh Mighty One! Explain how binaries will help produce browser independence? I've always considered the opposite to be true.
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "As far as we know, our computer has never had an undetected error." - Weisert | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
I hope Griff doesn't mind me answering on his behalf, but bytecode has been around for decades now (first by Burroughs machines in the 1960s if my sources are correct), as have the concepts of VMs. Both of these could be used to achieve platform-independence.
I don't care about browser-independence - the whole HTML+CSS+JS stack disobeys all good principles of software engineering. Each component should do just one thing, and do it well.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
The little endians and big endians will not hear of it!
I noted your stack didn't include PHP. When I do webdev, it generally includes all four - and a bunch of SQL on the back end to keep all things in balance.
In some ways, I haven't had this much fun since I found out about inline assembly block for C.
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "As far as we know, our computer has never had an undetected error." - Weisert | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
Luckily, the back end is something entirely different - a variety of technologies are available there.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
"The little endians and big endians will not hear of it!"
As for Unicode, simply add a byte order mark.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
the IE and its design and "machine" are legacy code of Windows 95 stuff. On old legacy project trowing all in the trash can is the only solution, and make a new start.
Press F1 for help or google it.
Greetings from Germany
|
|
|
|
|
I'm a web developer, and as most (maybe all) of us, I don't use it for development, but the truth is that if you target IE as your main browser, you have 99% chances that things will work everywhere.
If on the other hand, you target other browsers (any), chances are that it will only work properly on that browser.
Also the IE dev tools improved A LOT!
Also, if we're here today we have to thank a lot to IE.
Actually the torture is IE8, which according to wikipedia was released in March 2009. It's not MS fault that companies/people froze in time and we still have to target this version.
Go and develop for the Chrome version that was released at that time
Also, try to work for a customer that requires Opera...
Bottom line, don't blame IE for this inconsistency between environments, it's the same pain that native developers feel when developing for different devices and platforms.
Live with it and ENJOY!!!
|
|
|
|
|
Even if Microsoft comes up with a new browser, there is no guarantee that it will stay up to the mark.
New browser = new bugs, less functionality and developers will have to struggle to satisfy client's need for new browser.
Life is a computer program and everyone is the programmer of his own life.
|
|
|
|
|
That's all I've got to say about it!
New version: WinHeist Version 2.1.0
My goal in life is to have a psychiatric disorder named after me.
I'm currently unsupervised, I know it freaks me out too but the possibilities are endless.
|
|
|
|
|
You're being exceedingly generous...
The best way to improve Windows is run it on a Mac.
The best way to bring a Mac to its knees is to run Windows on it.
~ my brother Jeff
|
|
|
|
|
Yeah I was going to say they could put it where the sun don't shine but the anger management classes have really been paying off!
New version: WinHeist Version 2.1.0
My goal in life is to have a psychiatric disorder named after me.
I'm currently unsupervised, I know it freaks me out too but the possibilities are endless.
|
|
|
|
|
Slowest browser ever
|
|
|
|
|