Let me set the stage here. I'm a very junior developer who's recently made the transition from Network Admin who does some WinForms for his employer to a full-time development position working on an ASP.NET product that will be transitioning to Silverlight. I have precious little web development experiences. Some basic understanding of HTML and ASP.NET. I have no JavaScript experience and have very minimal understanding of CSS.
My wife has asked me to develop a website for the local chapter of Junior Women's Club to which she belongs. There are a few goals meant to be acclomplished by the site.
- Create a real web presence for the chapter. Currently they have only a single page on the local town website.
- Provide a PR platform for the chapter. Here are some of the community services we provide, here are some upcoming events, etc...
- Help drive membership. They're a small chapter and want to use the site as a mechanism to help increase membership, especially amongst younger women.
- Act as an application for members to track basic information (e.g. list of members, etc...)
I have a few goals for myself on this project
- Learn Silverlight (at least at a basic level).
- Improve my knowledge of HTML.
- Improve my knowledge of CSS.
- Provide a reasonably searchable (from Google, et al.) site.
So, here are the basic high-level architectures (without consideration of DB, etc...) that come to mind for me.
Host an entire silverlight app in an HTML or ASPX page and buid the entire site in Silverlight. - This option strikes me as at best, less than optimal for building a searchable web presence.
Build an ASP.NET site with a master page to manage overall look & feel and host Some Silverlight controls (Menu in header, rich control for photo album, controls for managing data, etc...) in appropriate locations. - This strikes me as easiest to maintain overall look & feel while still maintaining some searchability.
Build a primarily HTML site, using CSS as the primary mechanism to manage look & feel and host appropriate Silverlight controls where I want a rich interaction (as #2 above). - This strikes me as the most searchable option, but probably most difficult for me given my current skillset.
I realize that there are other options for architecture and want to hear those suggestions, but please keep in mind that I have an upcoming Silverlight project at work and want to use this in part as a vehicle to learn that technology, which means that an all HTML, CSS, JavaScript/JQuery options doesn't really provide that for me.
I'd also like hear what you all say regarding good resources (paid or free) to learn CSS and any aditional technologies I'd need to learn based on the choice made.
Thanks for your patience with the long post.
---Added later For Clarity (I hope)---
I should add that I'm willing to re-write this at a later time for better performance and to learn more things, but in order to get this site going in a month or less (in my spare time), I'd like to limit the number of new things I need to learn. I'd LOVE to have the time to learn JavaScript, MVC, maybe a DotNetNuke framework, but from the perspective of a very junior developer and even MORE junior web developer, it's too much all at once. Baby steps first, and preferably baby steps that will help me in my day-to-day job, since I have plenty of learning to do there too.