, Bass wrote

@evildictaitor:

I realize you're not a big fan of web technology. I don't think web technology is perfect, but it is worth looking on the positives and the negatives. The combination of simplicity, ease of access, openness, security, marketshare, etc. etc. the web is often the best solution for exposing a user interface to your applications.

The problem is that, as I see it the web fails on most of those fronts.

As I said before, to write a good webapp you need to learn (C# or VB or PHP or Ruby or node.js) and HTML and CSS and Javascript and (JSON or AJAX) and SQL. So it loses on simplicity compared to my just C# (the compiler can automake the crufty SQL/JSON/HTML/CSS/JS crap for you - there's no reason to have a billion crappy half-hearted languages for the web).

It's probably quite good for ease of access - but it's not a panacea. I can write documents and fill out spreadsheets on a plane with Office 2007, but I can't with Google Docs.

And openness is a bit of a joke too - my Word documents are mine because it runs on my machine. But my google docs? No - that belongs to Google. If Google wants to charge me for it in future, I have to cough up the cash. If Google wants to change the interface or drop features I need? Sucks to be me. With Office on my machine at least I get to veto a change of interface.

Case in point; I like the VS2010 interface. I don't like the VS2012 interface. I have chosen not to upgrade. If Visual Studio was on the web, I would have zero choice in the matter.

Facebook and Google and increasingly Microsoft go to lengths to wrest your data out of your hands and they don't like giving it back. That's quite a contrast to lots of apps on my desktop who put all of my content in easy-to-access forms in files on my desktop.

And security? Are you high? SQL injections count for almost all 0-days. They are easy to find and easy to exploit - in total contrast to native apps.

Also I don't think it's productive to linger too much in "it's not perfect enough" territory. As much as I think the English language is completely and utterly broken (and there are far better designed natural languages), I'm still using it because that's the best way to "interoperate" with people on this forum. I tend to look at technology stacks in the same fashion, as much as I enjoy Erlang, it's not realistic to rewrite a 1 million line codebase in it because I don't like how JavaScript's faux-equality operator works in corner cases.

I wasn't trying to linger. I was just opposing the notion that "neat" HTML output is somehow a thing that end-users give a damn about.

And for the record - I do occasionally write websites. But I do so by writing C# code that interact with abstractions that spit out HTML. That way I get to make a one-size-fits-all login page and use that for all sites I make that use a login page. I have no sentimental attachment to HTML, because if tomorrow the W3C ordered a change of HTML to something different, I just change the backend of the abstractions. The top level code stays the same.

This is in contrast to most web-developers who re-invent the wheel so many times that most can write a login page blindfolded. It's completely backward. If people actually abstracted rather than just wrote yet another script to spit out text (which let's face it is what PHP is), the web would be a better place right now.

And if people stopped thinking that everything is a string (you know, like Javascript has no types and PHP has no types and SQL is a string) then we'd probably not have quite so many XSS, code-inclusion/arbitrary-upload bugs or SQL-injections on the web causing customer details to get lost to hackers or companies to crash and burn in lawsuits.

In the end of the day the market decides technology choices. Not dictators. Smiley

Nah - at the end of the day, bad choices by developers mean that the market is still good for dictators. If people wrote fast, secure websites and apps, I'd be a poorer man Smiley But don't try and pretend to me like the web is fast or secure. It just isn't.