views:

168

answers:

8

One of the reasons why I don't want want to go the iPhone development path is because there isn't much to do with Objective-C language. You either develop iPhone or Mac apps with it.

If I go the Windows Phone 7 development path, can I apply my Silverlight skills in other areas besides the mobile phone development? Is Silverlight useful in the financial industry? Or IT industry?

If something is unclear, comment below and I'll update my question accordingly.

update: After reading all the answers, going with Silverlight seems like a way to go. Thanks everyone.

+2  A: 

Starting with Silverlight 3, I think it became useful for general web line-of-business applications that look nice.

However, this is true if it's OK to force the user base to download and install Silverlight. In some markets, client companies have tight restrictions on what their employees can install on their machines.

Chris Dwyer
I agree with Chris. Silverlight development is better since version 3, but the biggest barrier to entry is having to install Silverlight in the first place. If the client base is okay with installing SL, you're fine. If not, then the graceful degradation still leads to an RIA built on either Flash or HTML/AJAX/CSS.
Robert Hui
+2  A: 

You can develop for the WP7 (Windows Phone 7) using either Silverlight 3 or XNA. I am currently using both to write utility/productivity applications and a game.

Silverlight is a subset of the Windows Presentation Foundation (WPF) and the knowledge and experience gained one is easily transferable to the other. More line-of-business (LOB) applications are starting to use WPF/Silverlight everyday.

I can see Silverlight being utilised more in the coming years for a few reasons: it is easier to deploy than ActiveX, it has excellent tool support (VS2010, Expression Blend), and you can leverage your existing code base. The current install-base for Silverlight is sitting at 60% (sorry; no link to backup that claim, it was stated in a conference call last week with Microsoft).

I receive calls/e-mails from recruitment agencies frequently asking if I would be interested in changing industries (from videos games to commercial/government) as there is a massive demand for candidates that have WPF/Silverlight experience.

Dennis Roche
Updated/cleaned up my answer as it quickly written whilst waiting for latest to sync this morning. It was a bit scattered.
Dennis Roche
Support for Silverlight on many devices is a major investment for Microsoft - which allows developers to learn-once write anywhere, be that Windows Phone 7 or on the web/desktop with Silverlight 4. Plus Silverlight is being ported to more platforms such as Xbox 360 and some Set-top devices. Plus for Line of Business apps because all you need is Silverlight it has a larger install base than other platforms as they need prerequisites that are not installed by default - and much larger than Silverlight.
RoguePlanetoid
even MS says Silverlight has a 60% market penetration - that's hardly a larger install base than Winforms and WPF. You'd be better off with Flex unless you want to be stuck with what is actually a niche tool.
gbjbaanb
+1  A: 

Silverlight is very useful for LOB applications, especially when paired with RIA Services.

It's also a much shorter leap to WPF development on the desktop (and Silverlight out of browser), and .NET development in general, since you're using the same languages, and (mostly) the same framework.

Reed Copsey
+3  A: 

I think Silverlight (and WPF, which is closely related) are mainly user interface libraries, but you can use them in quite a few ways:

  • Silverlight was originally targeted at developing rich client-side web applications (that is, run in a browser like Flash). There are plugins for many web browsers and it is quite good in this scenarion.

  • Recently, you can also use out-of-browser exection model, which allows you to develop ordinary windows applications in Silverlight (though they stil run in a security sandbox and are in some ways restricted).

  • Moreover, Silverlight is to some extent compatible with WPF, which is a complex framework for developing desktop user interfaces. By learning Silverlight, you'll learn a lot about WPF too and you'll be able to use it.

Tomas Petricek
+2  A: 

Silverlight is a competitor to Flash, and is intended to be used in similar areas:

  • Video Most of the videos on the Microsoft website use Silverlight.
  • Games SilverlightGames.com has a large collection.
  • Image editors There are a lot of Flash image editors like pixlr and sumo paint and Silverlight ovbiously has the power to do this, but I can't find any as of now.

Still, with the canvas and video tags, those areas are becoming less exclusive to browser plugins.

Simon Brown
+1  A: 

I would say that there are many areas where Silverlight is useful, for example, some companies are starting to move their WinForms apps to WebForms and Silverlight is one way to go.

Esteban Villalobos
+1  A: 

Well so what you want to know is as a side effect of developing apps for winph7 what can you gain. Here it is:

C# and .Net : You will learn the .net way of things and this experience will help you speed up your understanding of any other .net based libraries. This is the major advantage.

  1. The same tools ( VS-2010 + blend ) is used for app development on PC: desktop apps, games/ Xbox:games/ Webapps.
  2. The ability to develop cross platform apps with as much of common code base is really exciting: for example the ability to game on the phone, xbox and pc (coupled with azure backend) for the same game . That is exciting.
Egon
+2  A: 

Apart from W7 apps, Silverlight is not gaining much traction in the marketplace at all. WPF is, a little, for LoB apps but considering that Sivlerlight has 60% market penetration at best then its useless for writing anything other than a intranet-type application (ie one where you can mandate users use it).

So, for mobiles you're stuck: Silverlight or XNA for WM7; objective-C for iPhone; Java or C++ for Android. Choose one... or choose C++. WM7 can run C++ code if you use the subset that can be compiled to Managed C++; iPhone apps can run C/C++ code even if you have to develop the GUI part in objective-C; and Android apps can run C/C++ directly with the NDK. In all cases you'll be writing different GUIs for each platform, but at least your back-end code can be the same.

gbjbaanb