I'm currently sitting my BSc exams, but will finish late May. I will have a window of about 6 weeks where I shall not be working, but need to occupy my time when I'm not out drinking. I can commit a few hours a day as a minimum, but this could rise depending on the level of the challenge. I have decided that I'm going to spend that time to get a grasp on the basics of a web development programming language. I have all but chosen rails at the moment, but if opinions are strong enough, I could change. I don't know any programming languages, but my HTML, CSS and MySql knowledge are all ok. My questions are: 1) Is rails a good choice given my position 2) Is 6 weeks a realistic time frame? 3) What level should I use as an objective to meet? After the six weeks, I'll be starting a placement in a medical company. I hope to change their website to make it database driven. All of the data, designs, graphics have already been created by me. I'd ideally like to be able to change the static site to make it dynamic. I look forward to your replies. Ian
Yes, go for Ruby on Rails. Yes, get the Agile Development and the E-Commerce book and 6 weeks should be just fine. You should be intermediate to advance by then, mainly because of the lack of experienced users out there. You'd be in a great position for well-paid freelance work.
Thanks for your reply. It is pretty encouraging. I have just got to get these exams out of the way and then I can start learning. Anyone else got any opinions?
Also you may have a look at cakephp, it can give you more advantages. This framework was inspired by Rails for Ruby, but it still have php advantages. The main of advantages are widespread hosting servers, a lot of ready-made solutions, speed of work(I really like ROR, but it's still too slow now to use it in huge web applications). So just have a look at cakephp.org(The Blog Tutorial and ibm lessons), there is also a nice blog snook.ca/archives/cakephp/ Thanks, Eugene
Ruby on Rails for sure! It is not hard to learn in that time frame, as long as you get the resources you need, watch the screencasts and buy one or two books. RoR is a great thing to learn for web development, great for new-fangled web 2.0 applications, it is a well thought out and designed language, you wont believe how easy it is to use. For example search for the 'Blog in 15 minutes', great screencast! Good Luck (pm me if you want a list of bookmarks all RoR developers should have)
Thanks for your reply. When reading around the subject I did encounter cakePHP. Problem for me is really getting my head around languages, framworks and MCV's etc. Without having a good knowledge of each component, it's hard for me to really judge what to learn. One criticism that was made of cakePHP was the lack of documentation. If I decided to learn that framework, would I have to learn php? I like this post. I like posts that are encouraging and favour RoR. My friend who knows PHP to a very capable level starting learning RoR and has decided to leave it due to the lack of documentation. How much would the lack of documentation affect me? He had problems finding scripts for a login, but presumably there is help for me should I need it? His decision to drop RoR has made me think about it again. What to learn?
RoR uses a system of 'rubygems' or 'gem' which are basically like libraries, thee is one speciically for user accounts and logins (well user authentication but includes both of these things), simply include the rubygem, enter 1 line of code to import the library to your project, one line in your command prompt and youll have user database setup (with hashed/salted(encrypted) passwords) and then just enter a isngle line for the methods/pages you want to require login for, and just as simple to set up user levels for various acces rights. I'm not at home right now but I'll find the name of the particular gem and send you the URL so you can check it out, will also send a link to an example (screencast) of it being used. Too kme 5 lines of typing (only 3 of which were code) to have full user/admin system added to my application. (of course you owuld probably want to extend/modify the gem, but im jus tdescribing how easy it is to set up out of the box) Documentation, now this is something people always seem to be misleading. Sure there are nto as many examples/tutorials/forums on the internet, but RoR is still young. You will however find many books for various levels of skill that cover everything you need to know, a well formed + documentated API onload and downloadable, many screencast tutorials, as well as an insanely active IRC channel always full 24 hours a day of people willing to help, with a unique website available for RoR developers to uplaod/edit code snippets so others can help you easily(search google for pastie). I will send over those bookmarks when I get home (an hour or so) in he meantime check www.railscasts.com, updated pretty much every other day with screencasts, great way to learn.
Yap, you will need to learn some basics for start. Unfortunately there are not a lot of documentation for cakephp. You can start with 2 chm files: manual and api reference There is a very active and friendly google group for cakephp, irc is also available. My advice: 1. learn php basics - 2 weeks will be enough; 2. watch screencasts and then try to create a blog 3. then go to ibm 5 lessons I wish you good luck!
Thanks for all of your replies. At the moment I'm going to learn RoR. I had an exam today, and I've got one Friday so I won't be able to do anything for the time being. I watched the create a blog in 15 minutes on the RoR site and that made me fancy RoR. I'll let you guys know how I get on. I may blog about it.
Thanks for all the help guys. I've decided to go for it. You can follow my progress here: http://www.MyRailsBlog.com
How widely used is Ruby? I would have asked the poster for more information before recommending a language. If he wanted be active in open source or do fairly quick web development using a lot of free resources, I'd go with PHP. If he wanted to do rapid custom development, ColdFusion is my first choice. If he wanted to land a corporate job that pays well but would have limited scope, Java or .Net are the choices.
bowdeni, Rails is a great thing to spare a time. I terribly sorry I haven't got a minute, to spend it on programming Ruby and developing site with Rails