You will always start with an idea, whether it be a forum, a blog, an e-commerce site, a social site, or other. Here are my tips for solid design work:
1. Sketch the idea out on paper and gain an idea of what core features you want to incorporate into your app. Think about authentication, authorization, specific features, administration, usability, etc. 2. Design your database models. Use a software like RISE to build ERD schematics or entity relationship diagrams so you get an idea of how everything will connect, and in the process you will be able to normalize your tables. 3. Then, start to dig deeper. If you notice so far, you haven't done a single bit of programming or design work. It's better to keep sketching until you have a well rounded idea before you proceed further. 4. Once you have your ideas in place and most of the sketches, try to simplify your code by using gems and libraries that are well placed and lightweight on resources. Do you need pagination? Do you need xml/html parsing or similar? Are you going to be using Jquery over Prototype? It's important to research what gems will work well with other gems. >From here, you can do many things. But, the most important thing is to make sure that you write solid test code while you are developing your app. If you build a controller, a model, and a view, start writing your tests for that controller, that model, and that view. The best advice I can give you, which may differ from other people is to write as much "necessary" test code to ensure that your app is working properly. However, if you get stuck writing test code, you need to balance the development of your app and the writing of test code without sacrificing too much time. I could give you another 100 tips for development and design, but it's best to stick to the basics I stated above, and then branch out as you feel comfortable. I've built numerous sites in Rails - it's a very solid framework. Make sure you keep your feet wet with Ruby programming as well. The more you know and realize, the better. Other than that, start with understanding fundamental web design - gain knowledge about CSS/Sass, Javascript/Jquery, html5, mobile frameworks like JQMobile, DBs like MySql, Postgres, etc. and stay grounded with your development tasks. When you can balance all of this, the rest is like riding a bike. -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.