7 ms·
Ideas For Beginning Web Developers
- pfarrell 15y agoNice list. Along the lines of post yesterday, I'd encourage the developer to use an IDE and gems as little as possible in order to truly get what's going on under the covers. Also, the moving on is an excellent point. I've recently started an app-a-month goal for myself (I'm married with 2 kids) in order to keep myself shipping. I don't know how many times I've rewritten my mp3 site since 2002 :) Here's one more comment. 11. Add Unit tests to anything you've developed that you want to keep developing.
- excid3 15y agoTwo excellent points that I forgot to cover.
- Sapient 15y agoI would agree with your IDE point, IF the person doesn't know how to use the IDE properly. I used RubyMine when learning Ruby/Rails, after having used IDEA for years (Java), and the two things which helped me learn Ruby and Rails faster than anything else were code completion (for finding methods which I may have not found otherwise) and the Source Navigator (for want of a better term). Being able to Ctrl-Click on a method and instantly see the source for it(Whether in a gem or in Rails itself) was a massive time-saver when it came to understanding what was going on under the covers. Edit: Agree 100% with adding tests.
- oflannabhra 15y agoAs someone looking for some direction on starting Rails development, I'd just like to post a "Thanks", both for the list and the motivation.
- MJR 15y agoDon’t spend much time building any of these projects. Get the to minimum list of requirements you’d like each site to have and move onto the next one. Do them over the weekend and don’t let them stagnate for too long. I would revise this: Spend as much time as you want. If you get interested in something - keep going. Don't force yourself to keep moving according to this arbitrary list. Go where your interest takes you. JUST. KEEP. GOING!
- cantbecool 15y agoI one-hundred percent agree with your comment. It's all about the learning process and what makes you curious to learning something more on a topic. Doing forced projects is a quick way to burn yourself out if you are not completely interested.
- avstraliitski 15y ago+1! The only IT people worth their salt are those who have natural curiosity. Without it, you cannot sustain learning as technology evolves and the industry changes, and your skills will become irrelevant. Incidentally, this is probably why a lot of formally trained CS / software engineering grads actually suck. They never put 2+2 together for themselves, out of interest, in their own time, for fun.
- cmelbye 15y agoA wiki is a simple idea that beginning web developers can get started with. http://riki.heroku.com/ http://riki.heroku.com/ was one of the first web applications I wrote a few years ago (using Rails 2.1.0).
- tete 15y ago(slightly off-topic) Just out of curiosity. Is there a web framework in any language that can compete with Perl's Mojolicious? http://mojolicio.us/ http://mojolicio.us/ I know Mojo offer more but I would like to know whether there is another language with a framework where you have a complete box that is easy to deploy on any platform, comes with built in templates, comes with tools for testing, the ability to seamlessly grow Sinatra-style application into well structured Rail like stuff, a good plugin interface, a WWW library to directly get JSON or DOM elements from a remote location in one command, logs, interfaces for cgi, fastcgi, etc., production and development server with helpful exception handling inside the browser. I know you can have all of this when you use libraries, but it makes applications harder to deploy and maintain. Besides that it's way easier to write and read stuff when it's an all in one solution. I looked for something like that in Node.js and Ruby, but couldn't find anything.
- lacerus 15y agoIn Ruby there is Sinatra: http://sinatrarb.com http://sinatrarb.com
- tete 15y agoBut Sinatra is more like just the Mojolicious::Lite part with tests and plugins.
- desigooner 15y agoAre there anny similar projects for Python out there?
- avstraliitski 15y agoHonestly, I've coded loads in perl, and I think the language has a great place in the Unix user's toolkit. I certainly use it for small scripts all the time. However, the 10,000th time I had to type 'man perldsc' because of the ugly hack that perl data structures and their syntax represent ("Access and printing of HoHoAoHoHoAoA", anyone?), I swore never to use it for complex projects. I learned PHP, and never looked back. Do yourself a favour and learn Ruby, Python or PHP. Don't use perl for complex web projects - it's simply not the problem domain it was designed for, and it shows. I mean, look at the code example on that framework's page: "my $self = shift;" .. who can be bothered with such cruft in 2011? Get with the program!
- keke_ta 15y agoGood article. Now, I begin to build a todo web service.
- tmlee 15y agoI agree. Reading books and materials can only take you so far. In my experience, after reading an iOS dev book for countless time, you think you get it, but after a few weeks.. you tend to forget all about them. Eventually, i decided on a project to work on, and when i get stuck, refer to the book and continue working on it until it is done. I think the concept sticks better that way, plus you get a sense of satisfaction of a finished product..
- avstraliitski 15y agoI disagree strongly with the article's premise. Don't take a job where a language and framework has been chosen that you don't know, where you are still at the point where building basic websites is a 'project'. Why not? Because obviously the company you are working for has no idea what they are doing with their time and money, and you're therefore unlikely to be in an environment with skilled coworkers. If you are really a beginning web developer, read the HTTP RFC. Learn HTML. Learn Javascript. Learn CSS. Learn basic Unix. Pick one simple project and implement it in three different languages. Then implement it with three different database layers. Then implement it with three different web servers. Then implement it on three different operating systems or at least Linux distributions. Now try to benchmark and scale. Compare multiple front end load balancers. Compare various NoSQL database architectures and caching solutions. Try some cloud hosting, see where it falls down. This will teach you far more than fiddling in one framework.
- excid3 15y agoI agree if you're doing this fulltime. My job was a part time Rails job for a professor. There are lots of opportunities out there that you can do on nights and weekends if you have another fulltime job. It's a whole different situation than what you're talking about.