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.

Reply via email to