if "worse is better" and time to market is key, why don't startups do their front ends in flash?

Not in any appreciable amount. I don’t mean to be rude, but it’s very clear that you have absolutely no idea regarding how businesses actually work, or what role IT plays in a business. That seems to be relevant to your interests, so you should probably spend some time researching it.

I assume “worse is better” is another way of saying an 80% solution now is better than a 100% solution never. Of course this is only true if people don’t hate that 80% solution because it is clunky and unusable.

I will echo what SciFiSam said and say that a lot of it relates to the end-user’s website experience. The startup I work for uses flash for our application. But we can afford to have a somewhat clunky app because the software is a web hosted B2B solution. That is to say we can work directly with our corporate clients to make sure their systems are properly set up to run our software. For B2C, the user’s experience is much more important and much more unpredictable.

Now that we have some traction though, we do plan to invest more in making our user interface slicker and are moving away from Flash.

Even without taking blind people’s screen-readers into account, there are a hell of a lot of people out there who need to increase the text size to read some websites, and flash doesn’t allow that. That is a big, big market that goes across a lot of demographics.

Also, setting up a website now that intentionally makes it difficult for smartphone users to access it is like a travel company in 1997 saying ‘ah hell, nobody really uses the internet to book holidays anyway, let’s not bother with a website.’

Did you see Zoid’s link up there and his comment about not being able to copy and paste an address? That’s something that’s turned me off several business’s sites recently - I want to be able to paste their address into Google maps.

I do hope you don’t actually have a ‘welcome’ page with no useful info. The only people who like those are the people who get paid to design them.

If the Gmail interface is your idea of nice and useable then I give up - I HATE it.

both these claims are false. In AS3 you can incorporate a feature for increasing font size - just iterate through all textboxes and labels and reset the font. You might even be able to do this using the usual browser hotkey CTRL ±. And you can obviously display texts in such a way that it will be possible to copy-paste them manually. Use a readonly textbox for that.

In short, the line of argument based on mocking commonly occurring poorly designed flash apps is irrelevant to this thread. Just because dumb people design dumb interfaces does not mean that smart people cannot design smart interfaces.

Meanwhile, the line of argument based on people’s biased treatment of flash pages, as shown by the mentions of flashblock and by the desire of msmith537’s company to switch from the superior flash technology to the inferior html technology even though presumably their app is normally used on desktop machines, is apparently a legitimate one.

Well, nothing other than potential customers. But who needs them?

And what on Earth makes you think that Flash development is quicker or cheaper than HTML development, anyway? One can make perfectly functional HTML in minutes, using any of a half-dozen different programs that come free on any computer, or hundreds more that can be downloaded for free. It may not be as pretty as Flash or Java, but it’ll be at least as functional if not more so. Besides, as you point out yourself, being quick to have functionality available is more important than than being the shiniest.

From the Wikipedia article on “Worse is Better”:

(It’s helpful to remember that Unix, the OS that Gabriel saw as having killed his beloved ‘better’ software environments, came from Bell Labs in New Jersey.)

Gabriel’s own webpage on the idea. It links to his essays on the subject, wherein he argues both sides using a pseudonym. (Sockpuppetry is perfectly acceptable in respectable academic journals, after all.) Fascinating reading, even if you only dimly grasp some of the technical details.

perhaps this is an empirical question deserving an empirical answer from somebody experienced in both forms of development.

It may also be that level of competence (and commensurate salary) for making a basic 3 tier app with flash front end is lower than for making an equivalent app using a powerful web framework like ASP.net. Flash frontend is sort of like a desktop app, and even college kids can build good desktop apps. Whereas making web apps allegedly costs several times more than similar desktop apps.

I am a bit hazy here, but I suspect that the stateful nature of flash allows for greater decoupling of the backend and frontend. And the more things are decoupled, the better they work with the less programming effort. Mr. Architect, build up that separation wall! :stuck_out_tongue:

Oh, all you need to do is iterate through the textboxes? You need to be able to see them first.

If you put stumbling blocks in front of people, and they already have a way round them, ie. going to competitor websites, they are not going to jump through your hoops unless you have something amazingly unusual to offer.

Flashblock (which I also mentioned) is not people being ‘biased’ against flash. It’s because flash is crap.

Interesting that the ‘worse is better’ concept seems to argue against Flash in most contexts.

I am not a web designer by any means, but I have designed two websites, and the one I did for an actual company was successful because it was really really simple. It was for a language school advertsing all over the world, including some places that didn’t have good web access. No flash. Lots of info upfront and intuitive menus. ‘Professional’ colour scheme and a few graphics and happy pictures to make us look ‘posh’ because there was an element of prestige marketing. This was all in line with the successful companies in the field at the time.

The main reasons it worked better than their previous websites were that customers could access it, customers could use it (navigate towards the checkout, in other words - I’m amazed by the number of sites that make it difficult for you to give them money), and it could be maintained by almost anyone. After all, I was the one who set it up.

This was just HTML with a little CSS, so things have moved on a lot, but still, less is more.

And I have to amplify this: Flash is a Right Thing kinda thing in that it renders the exact same on every system where it renders at all (barring unusual bugs) and it gives you fonts and video and audio and so on and so forth in a reasonably sane fashion. None of those things are necessarily true of HTML5 and AJAX, especially if you have to support oddball browsers like Internet Explorer 6 or you really want to have video on your page.

HTML is Worse Is Better. Always has been. It’s a bastardization (of SGML) in the service of a bastardization (the Web, compared to Project Xanadu) and it spread like wildfire because it was easy to implement something serviceable based on it quickly.

Well, for a start, every single iPhone and iPad user…

The problem is that so many flash apps are so poorly designed, that as soon as I see you use flash, I’m off to your competitor’s website (which doesn’t use flash). I’ve seen so many bad flash apps that I’m not even willing to stick around long enough to see if you did a good one. I’m going to assume “bad”, and leave. There goes a potential customer.

As a professional Web developer who works in HTML, AJAX and ASP.NET, around here Flash is more expensive than what I do.

And, also, my Flash guy doesn’t know any “back end” stuff so I would have to build the entire application up to a point then get him to doll it up (he does amazing stuff with Flash, hence his pricetag). Once he’s got it all dolled up I don’t really have the means to tweak it without him or without another expensive app (Flass versus VS.net)

You’re saying Flash is so easy but I’ve been coding for 15 years and it is beyond me. I can’t barely tweak someone else’s existing FLA let alone make my own. To make something halfway decent in Flash takes some skill and some money.

On the other hand, dragging and dropping Telerik controls or any other of a number of other controls from pre-packaged control suites like Telerik’s is easy as pie. And looks good. And you generally don’t need two different skillsets (programming and Flash design) to make a whole working application from them.

If you happen to be a person or a group where Flash + backend < backend + anything else then sure it’s the best way to go. But in my experience, if you expect your Flash product to be able to make you that first $100k or $1mm, the Flash solution is going to be the more expensive one.

ZipperJ, thanks for the professional input.

I guess I might argue here that learning Adobe’s IDE may be needlessly complex, especially given that it is not free, so the cheap people who don’t do do flash professionally are not going to play around with it to learn it. Which serves to protect the livelihoods of flash programmers :slight_smile:

Nevertheless, if all we wanted was a WinForms imitation in AS3, you don’t even need Adobe. It’s easy enough to write in FlashDevelop. And yeah, the absence of a visual forms designer sucks, I even started a thread on the topic awhile ago why is there no 3rd party IDE visual designer for Flash and related frameworks? - Factual Questions - Straight Dope Message Board .

Hmm, here is a business idea - an online visual forms designer for flash, implemented in flash and with enough code placed on the server to keep people from just taking the flash app and using it without paying. You use the designer to work out the screens or the dialogs, then it spits out the source code you can paste into FlashDevelop. Or, even better, a FlashDevelop plugin then downloads the code automatically from the server without any copy-paste.

good point, thanks.

Maybe we need to invent a camouflaged flash app that pretends to be an html one :wink:

This.

Here is a live example from Friday. After some discussion, it was agreed I would meet some friends for dinner after work at Buffalo Wild Wings. I kinda, sorta knew what it was but only in a “somewhere around a particular intersection” kinda way. Hey thought I, I’ll go look it up. It is too new to show up on a google map search.

So I went to company page… oops Flash, can’t do it from my phone.

Go to a work pc (IE 8 IIRC), hmmm doesn’t have a current version of Flash… and I guess BWW just had to use the latest flash for some reason. Can’t upgrade Flash at work.

OoooKaaay, I thought, I guess I’ll swing home before heading out, and fire up my home PC (Firefox 4). Went home, turned on the PC, enabled Flash (yes I keep it disabled by default. No dice. Hmmm. Played with AdBlock. Nope that’s not the cause. Disabled NoScript for the site… that at least cleared the Flash Player notice. Now I’ve got a a blank background image… but still no content… Hmmm, turned off all Extensions (granted it wasn’t likely to TinEye or Flagfox). Still no dice.

Screw it. Cursed Flash and Buffalo Wild Wings roundly. Called friends, suggested that we go to competitor instead.

Three browsers and quite a bit of tinkering to try to give them money. I doubt most consumers are going to bother doing that much. I don’t do web development, outside of playing with some ancient perl scripts for a departmental webpage. But from a consumer point of view, Flash sucks diseased monkey balls. Given a choice why would anyone tie themselves to a single vendor solution that sucks that badly? Please give me open standards solutions that work.

Concur - I’m PHP/MySQL and it’s a similar situation here.

Most web sites and services are database applications built largely on the server side, where it’s going to be PHP, ASP, Rails, Java or something like that. Generally speaking that means the primary developers start on the back end. Most web sites are not built using a client-server model. The server-side developers usually build the structural HTML and functional JS using jQuery or similar building blocks, essentially constructing a skeleton app where almost all of the code is server-side. It probably starts as a HTML-only app, with JS added bit by bit in an iterative fashion. Designers gradually bring in CSS, refined HTML and JS to implement the presentation. That’s obviously simplified but roughly speaking how it tends to happen.

That allows the design and the functional app to be developed in parallel and with lazy iteration. New pages or forms can be quickly added by a single developer (as skeleton HTML with basic JS), then refined later by either the developer or the designer. It’s still usable, even when it’s not finished.

A Flash-based site would tend to suggest something closer to a client-server model, which doesn’t lend itself so well to iterative development. Adding a new page or form would often require changing the Flash client and the server. That probably requires coordinating two developers. Maybe that’s not always the case, I haven’t had a whole lot to do with Flash development of late.

Most server-side devs are competent with basic HTML and JS. Very few know Flash. Of the Flash developers I’ve known, very few were strong back-end developers. Mostly they’re designers.

Missed the edit window. There are other considerations too, outside of the dev team itself, like SEO, mobile devices, and a wealth of services easily integrated into a HTML-based site: Analytics, website optimizer for A/B testing, ad campaigns and so on.

I would have to say that Flash is generally considered harder, more expensive, and less friendly. HTML sites are pretty easy unless there is some major dynamic aspect such as a database or storefront, neither of which has an advantage in flash. Made even easier by programs like Dreamweaver which take care of all the coding, and easier still by the use of fill-in-the-blanks templates. Flash is harder to learn and is generally considered a more specialized web skill. It’s also unfriendly in that it’s third party (not a web standard), eats up browser speed, isn’t universally supported, is often blocked by users, is hard to interact with (can’t copy text or bookmark specific pages), and is an obstacle to web searches.

Anyone rushing to throw together a business site is not going to find it cheaper or easier to use flash.

The only things flash might be better for are animations, games, and simulations.