views:

230

answers:

7

Hello,

I am working on a video chat applicaton, i am not sure which one is the best for the current market??

please any suggestions??

+2  A: 

Depends on your programming experience and user audience. If you're a skilled .Net developer, then Silverlight is the best tool for your. But if you want maximum compatibility for your users, you should choose Flex, because it uses the Flash browser plugin.

Prutswonder
Disagree -- see my answer. Flash clearly has the technologies to build a video chat application, where Silverlight is definitely lacking.
WPCoder
+4  A: 

I am a Silverlight developer myself, but looking at the adoption rate as of today I would not use it for a public app. If you have the skills, definitely go with Flex.

Henrik Söderlund
Flash also has a much more mature code base at this point, with stronger community support, so there's a lot more information / open source libraries available for it.
quoo
Right now, the technology is more limiting than Silverlight adoption rates. See my more detailed response.
WPCoder
quoo:You're not correct. Flex/Flash has a reduced amount of community support in comparison to Silverlight. While it is a lot of signal vs noise in the Microsoft camp, you're look at around 4:1 developer share compared to Flash.Ubiquity aside.
Scott Barnes
+1  A: 

the winter olympic games and a lot of other major streaming events chose Silverlight over Flash. take that into account: they wouldn't waste their money neither compromise the results. and for latest adoption rates check www.riastats.com

rene
Good point. The Silverlight adoption rate is climbing rapidly. If you are planning to release the video chat app in, say, a year from now, Silverlight might be a better alternative.
Henrik Söderlund
I think the main reason for Olypics or Netflix choosing Silverlight is for the DRM / copy protection. So unless you're in cahoots w/ thugs like RIAA or MPAA, I don't think that's a great reason to pick Silverlight.
Scott Bailey
+1  A: 

One great thing about Silverlight is that you can reuse existing .NET-Code.

gammelgul
+4  A: 

In this case, Flash 10 has the clear advantage as Adobe includes the necessary functionality to build a working video chat application (including video encoding codecs). Adobe has an in-beta (lab) product code-named Stratus which makes connecting two video clients easy for example. Flash also has built-in support for the various streaming protocols needed to efficiently send video to another location.

Here's a web site with a walk-through for example using Flash technologies. There are plenty of other options though that are available for Flash video chat distribution as well from 3rd parties.

That's not to say that it's not possible to build something like this using Silverlight. However, there really isn't the industry behind it as the video camera support in Silverlight is just emerging and in it's first release in Silverlight version 4.0. For now, there's still a LOT of work that must be done to build out the equivalent of what exists in the Flash community (has existed for years). The web camera support in Silverlight has made it simple enough to capture a snapshot from the camera, but not yet a video.

WPCoder
This is exactly the right answer for this question. I'm in the process of doing a Silverlight videochat app, and trust me, it's a PITA. Presumably MS will have this part fixed by V5, but it's currently about 100x more work to get a videochat app working in Silverlight than in Flash/Flex.
Ken Smith
A: 

I've been developing in Flex for a while and I absolutely love it. Unless you're a big MS .net shop (and I doubt you'd be asking the question if you were) then I'd recommend Flex. It's more mature, the plug-in has a huge install base and it runs on more platforms.

One consideration is how marketable will your skills be in the future. Flex jobs currently outnumber Silverlight jobs on Monster at a rate of about 4 to 1. Conversely, if you've got to go out and hire folks for the job, you may want to look at Silverlight because there has been a shortage of Flex programmers for a while.

Scott Bailey
+2  A: 

As the former Product Manager for Silverlight and one of the guys that helped craft Adobe compete strategy for Microsoft let me simply say "it depends on each individual"

RE: Ubiquity.

Flash has around 8-18 million installs every day, so whilst the assumption that Flash is on every single machine world-wide? the reality is that an average person is likely to install Flash at least 7 times per person each year so thus it implies mathematically impossible for Flash to be absolutely 90% ubiquitous

In actuality, I sat next to the office who was one of the architects for that methodology and it took 3 goes to get the right "positive" number. So do what you will with that.

Silverlight has around 400million+ installs and is growing actually quite rapidly. It took Flash approx 6 years to reach that number and the acceleration of Flash to go beyond that was largely due to Windows XP baking the runtime into the OEM installs. The fact Flash is no longer installed on Operating systems by default and relies heavily on Hardware OEM deals (cash for installs) this is where it gets a little murky on "sustaining ubiquity".

I'd say Flash isn't 90% ubiquity on clients, i'd say Flash is 90% ubiquity on the web itself, in that i think Adobe are pushing the wrong agenda - it's saturation they have not install sockets.

RE: Skillset

I'd say most on here are correct with a twist. In that it's not so much always about what you know, but it's more about "who else will know what you know" as you're most likely going to have to work with someone on a project sooner or later?

It's really about what your team and you are comfortable in terms of adopting, it also has to do with budgets and time. If you have time to do some personal development and want to explore into either Flash or Silverlight, choose both - you will learn 10x as much (I know Flash, Flex and Silverlight/WPF quite well - 9+ years at this).

However, if you're a .NET developer then understand you're about to invest in not only a language but a complete foreign entity ranging from tools to community dynamics as well. You will need to simply absorb about 6months to 1 year of being a "junior" developer/designer should you wish to adopt either technology.

I'd highly recommend you adopt both though as i honestly wouldn't declare either one just yet an outfront winner. Adobe is making strong gains in attemps to fix a lot of their lazy tooling and ubiquity issues so they may turn this ship around. Microsoft is getting complacent and still has a long ways to entice the design audience, so it's still quite early days for them as well.

RE: Jobs Monster stats are a b.s stat to track as it is like watching rain fall outside your house and declare that the world is suffering from an influx of rain today... it doesn't answer how long the Flex jobs have been in market for the said advertising, in that is there a skillset shortage? why? is it because the price per hour for a Flex developer doesn't match the said market rate or working conditions etc..

It's a supply/demand argument and I could create spin on both sides of that isle should I choose to.

The reality is there's about 6million .NET developers world wide today, and most of them are slowly turning their heads towards the future in that they aren't quite ready to abandon Microsoft and its tools for a foreign technology. Furthermore, Visual Studio 2010 is about to unload onto the market, so that will create a new wave of excitment behind WPF/Silverlight given it will be a much easier access point to the technology "File-New-Project" vs "download, follow these steps etc"

Windows Phone 7, despite what others may say about iPhone etc will overtake the market again, that i'm sure of. This will also increase the mindshare around the product and stimulate the supply/demand further.

Right now, if you are a designer with both Flash/Flex and .NET skill set, it's definately your market right now as you are in HIGH demand.

- Scott Barnes

Former Silverlight Product Manager and now UX Specialist for both Adobe/Microsoft technologies.

Scott Barnes