Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Possible Duplicate:
Learning to program without a computer

I have a bit of experience programming (6 Months) and am soon to go on a 2 month trip where I will be without a computer, but with lots of spare time. Is there a way I can keep programming (or learning to program) even without a computer? Should I read language-agnostic books like Code Complete or PragProg?

share|improve this question

marked as duplicate by Yannis Rizos Apr 14 '12 at 2:12

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

4  
Read some books and make better use of your spare time. –  Bernard Apr 14 '12 at 1:00
1  
How was I making bad use of my spare time? –  Billjk Apr 14 '12 at 1:03
5  
Enjoy yourself on your trip and don't be thinking of how you will program. You will have plenty of time to program once you're employed, believe me. Read a book, have a drink and see some sights. –  Bernard Apr 14 '12 at 1:06
    
When I was a teenager, learning to write software, I had no regular access to a computer. I wrote code with paper, pencil, and erasure, and stepped through the code by hand, verifying variable values. Executing code in your head is always a useful skill. –  Frank Hileman Apr 23 at 2:10

3 Answers 3

up vote 11 down vote accepted

You can do what we used to do before IDEs - write your programs out by hand on paper.

Stop laughing. I mean it. Please?

There's a lot you can learn about programming without ever touching a computer. Modern programs used to write programs (editors, IDEs, whatever) are a crutch, and they get in the way of your understanding. Write a few programs where auto-complete didn't tell you which method to use or what argument comes next, and all the other little helpers. You'll find that, in actuality, programming is a purely mental exercise that we have ceded large parts of to machines, at great loss.

Go retro, and revel in the hipness :-)

share|improve this answer
1  
Haha, I actually don't use an autocomplety IDE, i go old school and use emacs! –  Billjk Apr 14 '12 at 0:22
    
That's good news. But a pen or pencil and paper will even teach you more than emacs or vim. –  Ross Patterson Apr 18 '12 at 23:29
    
would you advice this practice as a regular one ? I found out that I'm much more efficient when I'm with pencil and paper only. –  Rytek Apr 11 at 7:30
    
I advise people to use whatever works for them personally, as long as it fits with the team they're part of. These days, it's difficult to be as productive with hand-written code as with an IDE, but for you, it might be right. –  Ross Patterson Apr 11 at 10:52

I did something like this a while ago when reading "The Little Schemer". The book is about scheme and uses a format where one side of the page asks a question with the other side having the answer. So it worked well writing out everything on a piece of paper, covering the answer side of the page, then checking if what I wrote was correct. I did not intend on actually using Scheme... just wanted to know what it was about. I thought I got a lot out of it despite not actually running anything on a computer. It's especially good if you want to get the hang of recursion... there is a ton of recursion in "The Little Schemer".

share|improve this answer

Reading is helpful. More helpful still would be writing. If you can't bring along a laptop or even a smartphone, take a notebook and some pens or pencils. Start working on some sort of personal project. Write out your code in one section, and your ideas and thoughts in another. Since you don't have a compiler, check your work in your head. See how much you can learn from the process, and when you get home, enter your code into your computer and see how close it is to actually working.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.