Live data from Hacker News

Ask HN: How can I become a better programmer?

news.ycombinator.com

11–18 of 18 posts

Re: Ask HN: How can I become a better programmer?

#11
- are there meetups around you or remote pair programming? If not, start something. Doesn't have to be more than a few people in a coffee shop. The railsbridge curriculum is really well done: http://workshops.railsbridge.org/

- tooling: learn heroku, github/git, unit and functional /integration tests, capistrano, Firebug/chrome dev tools, selenium/watir etc (etc could include continuous integration/deploy libs,

http://pragprog.com/book/pg_git/pragmatic-guide-to-git

http://guides.rubyonrails.org/testing.html

- learn a couple editors. e.g for scala/java/clojure, I think people should learn one of emacs/vim and IntelliJ.

- the db/serialization/search trilogy: learn JSON, XML (just to read XML, pretty important in javaland), a relational database, a nonSQL, and a fulltext indexing lib e.g. sphinx or elastic. Look at protobufs, avro also

- learn linux setup/tuning pretty thoroughly (inital setup with ssh, iptables, postgres, etc), basic monitoring tools, and the stuff that heroku or digital ocean or linode provide.

Re: Ask HN: How can I become a better programmer?

#14
You may just be trying to learn too much too fast. Set small goals for a side project and focus only on that, without getting distracted. Like anything else, you gotta put the time in, but if you don't "genuinely love it" you are frankly doomed. Software development is simply too hard to do unless you love it. Remember the fun is in the challenges too, so never get discouraged. You have to enjoy the challenges and enjoy the journey (which means lots of confusion until you finally get it). But it should be fun the whole time, or else "you're doing it wrong!" LOL.

Re: Ask HN: How can I become a better programmer?

#15
Read this https://code.google.com/p/tokland/wiki/RubyFunctionalProgram... and master it by refactoring some of the source code that you work on. Also follow up the references to work by Joe Armstrong and Rich Hickey. If there is anything there that is unclear, then google for pages that explain it in a non-Ruby context.

And read everything written by Uncle Bob starting with his books "Clean Code and "Clean Coder". He has a lot of blog articles out there as well as various conference videos. And he is also a Ruby developer in addition to C++ and Java.

Learn and apply the SOLID principles http://blog.rubybestpractices.com/posts/gregory/055-issue-23... and maybe read some more of those Ruby Best Practices articles.

Don't let the speed freaks drive you. Many of them are writing bad code fast. It is better to write clean maintainable code at a slower rate than it is to rush into things and create a complex unmaintainable mess. It is possible that some of the complex code that you have difficulty with is actually bad code and not something to emulate in your practice.

P.S. focus on learning Ruby not on Rails. Ruby is the basis for Rails but Rails is not the only Ruby game in town. Someday Rails will fade away but Ruby will still be going strong with new frameworks like Sinatra or Celluloid or Cramp.

Re: Ask HN: How can I become a better programmer?

#16

You may just be trying to learn too much too fast. Set small goals for a side project and focus only on that, without getting distracted. Like anything else, you gotta put the time in, but if you don't "genuinely love it" you are frankly doomed. Software development is simply too hard to do unless you love it. Remember the fun is in the challenges too, so never get discouraged. You have to enjoy the challenges and en…

Thanks! No worries, I do love it

Re: Ask HN: How can I become a better programmer?

#18

PeepCode https://peepcode.com/ , Railscasts and https://www.codeschool.com/ premium accounts are a good investment if you want to learn new skills on web development.

codeschool is not a great place to learn how to code if you can already code. The courses don't really have any depth.
Post reply on HN