First, no code. Sketch. Sketch using a magic marker on printer paper where the other side has already been printed. Make these sketches quick and not-pretty. Do many. You want to be able to throw these out without hesitation. Using software to build pretty wireframes will invest you in how something looks. Don't do it. Wireframe software is for presentations.

Think about the flow of the majority of users. Can you engineer it so that 80% can do what they need to do in the fewest clicks possible? Remove functionality. You can always add it later. What are the core experiences you want your users to have? How lean can you make the experience and still have it do what you want it to do?

Spend the next couple of months sketching. Leave your house. Go sip espresso at a cafe on the Rocks. Think about those people. Now go to Paramatta. Think about those people. (I'm assuming you're in Sydney.) Go be in places where different people from different walks of life are and be with them. Really figure out who your audience is. Get to know your audience really really well. Focus on that audience. You are their servant. Show them random sketches and get them to tell you what they think about the layouts you're sketching. See if you can engineer four or five different ways to flow the same experiences and functionality.

My favorite framework for social networks with ecommerce is Drupal with Ubercart. I've built several social networking sites with ecommerce using it. The user system is already built. It's very flexible and just a little PHP can get you a long way. What's more, there's a very strong community built up around it with forums and several IRC chatrooms. There are meetups in Sydney, Melbourne and Brisbane. There are many themes available that can be customized with just a little tweaking. There's going to be a learning curve no matter what framework you use, but Drupal has the advantage that the need for Drupal developers and themers is growing exponentially. (Recession? What recession?)

The way that Drupal adds functionality is by adding modules. There's a central repository on Drupal.org with thousands of modules already written. Chances are that much of the functionality you're looking for can be built using combined Drupal modules. Drupal has a system of hook functions for users, content and just about anything else you can think of. You can search for pieces of functionality using google and add the word Drupal in front of it. When you land on an article or forum post, pay attention to which version you've landed on. It's important.

The thing that will really prove Drupal's worth is the community. It's very supportive, has its own security team, and when you build a site, and there's a security update, your site will email you and let you know. (It'll let you know whenever there's an upgrade, too.) Drupal's a gratifying playground for developers. (While the framework isn't object oriented, it's good to be up on objects and arrays.)

While you're in the sketching phase, build a couple sites for nonprofits in your area. Not only will this teach you how to build sites in whatever framework you choose, it'll teach you about working with clients, and you'll learn a lot about why you don't want clients. (Nonprofits are notoriously disorganized. There's something about the profit motive that focuses people.)

Expect this kind of schedule:

3 months of sketching layouts and workflows. Meanwhile, become part of the community and build small sites for yourself and nonprofits.
3 months hacking at whatever technology you want to learn.
3 months starting and throwing away Drupal sites. Start over as many times as you need. Use version control. (GIT or SVN)
3 months building your site.
2 weeks to 1 month theming your site.
3 weeks testing with friends and family (closed beta)
3 weeks extending closed beta
1-2 months open beta
Launch when you have the marketing in place.

Marketing can be done for free in several stages. Very very often the free marketing is much more effective than the paid marketing.

Look at business partnerships. Who also serves the same audience but isn't a competitor? For example, if you want to reach kids, you can partner with one of those companies that takes the school pictures and has products like mugs or t-shirts with the kid's picture printed on it. You can add a membership to your site to their product catalog for no money down. See who is serving the same market and who has already done their marketing homework and partner with them for a percentage.

Lastly, remember that this is a marathon and not a sprint. Do not burn yourself out. It's important. Once you have the site up and running, it's only the beginning. I haven't mentioned hosting or other important details, but the information is out there. If you can get a partner, life will be easier and you can provide moral support for each other.