Practice Programming

I am just a third of my way through my first programming course at uni. To
become a half decent programmer you need to do a lot of programming. So I
am considering setting up a Beeminder goal to get me to do more of it. Does
anyone have any suggestions about what I should track on a Beeminder
programming practice goal? I was thinking quality lines of code or quality
statements (please forgive me if I am not using the right terminology, I am
very new to this game).

Any suggestions will be appreciated.

–David

Would be very interested in what people suggest. Perhaps it could be in
terms of specific tasks (a la deliberate practice –
A Better Way to Practice | Lifehacker) rather than just lines of
code?

Alex

On 16 December 2012 20:19, David John Wilson djwilsonmh@gmail.com wrote:

I am just a third of my way through my first programming course at uni. To
become a half decent programmer you need to do a lot of programming. So I
am considering setting up a Beeminder goal to get me to do more of it. Does
anyone have any suggestions about what I should track on a Beeminder
programming practice goal? I was thinking quality lines of code or quality
statements (please forgive me if I am not using the right terminology, I am
very new to this game).

Any suggestions will be appreciated.

–David

Being a book-oriented guy: I would always find several books you would like
to work through and then Beemind the number of pages.

And if I may plug some nice books: Allen Downeys Think Python (and other)
books at Green Tee Press.

Or Beemind your way through Project Euler.

Or get a side job where you code. A boss beats even Beeminder.

Cheers,
Willem

2012/12/16 David John Wilson djwilsonmh@gmail.com

I am just a third of my way through my first programming course at uni. To
become a half decent programmer you need to do a lot of programming. So I
am considering setting up a Beeminder goal to get me to do more of it. Does
anyone have any suggestions about what I should track on a Beeminder
programming practice goal? I was thinking quality lines of code or quality
statements (please forgive me if I am not using the right terminology, I am
very new to this game).

Any suggestions will be appreciated.

–David

2 Likes

Thanks for those suggestions, Willem. Project Euler looks very skill
inducing.

I guess I should stop paying thousands of dollars for something that I can
get for free or very low cost over the internet.

Regards,

David

On Monday, December 17, 2012 1:26:50 AM UTC+10, wkerstholt wrote:

Being a book-oriented guy: I would always find several books you would
like to work through and then Beemind the number of pages.

And if I may plug some nice books: Allen Downeys Think Python (and other)
books at Green Tee Press.

Or Beemind your way through Project Euler.

Or get a side job where you code. A boss beats even Beeminder.

Cheers,
Willem

2012/12/16 David John Wilson <djwil...@gmail.com <javascript:>>

I am just a third of my way through my first programming course at uni.
To become a half decent programmer you need to do a lot of programming. So
I am considering setting up a Beeminder goal to get me to do more of it.
Does anyone have any suggestions about what I should track on a Beeminder
programming practice goal? I was thinking quality lines of code or quality
statements (please forgive me if I am not using the right terminology, I am
very new to this game).

Any suggestions will be appreciated.

–David

Alternatively, do the free udacity CS101 course (
Learn the Latest Tech Skills; Advance Your Career | Udacity) which is an
excellent introduction to Python through a practical project.

On 16 December 2012 21:08, David John Wilson djwilsonmh@gmail.com wrote:

Thanks for those suggestions, Willem. Project Euler looks very skill
inducing.

I guess I should stop paying thousands of dollars for something that I can
get for free or very low cost over the internet.

Regards,

David

On Monday, December 17, 2012 1:26:50 AM UTC+10, wkerstholt wrote:

Being a book-oriented guy: I would always find several books you would
like to work through and then Beemind the number of pages.

And if I may plug some nice books: Allen Downeys Think Python (and other)
books at Green Tee Press.

Or Beemind your way through Project Euler.

Or get a side job where you code. A boss beats even Beeminder.

Cheers,
Willem

2012/12/16 David John Wilson djwil...@gmail.com

I am just a third of my way through my first programming course at uni.

To become a half decent programmer you need to do a lot of programming. So
I am considering setting up a Beeminder goal to get me to do more of it.
Does anyone have any suggestions about what I should track on a Beeminder
programming practice goal? I was thinking quality lines of code or quality
statements (please forgive me if I am not using the right terminology, I am
very new to this game).

Any suggestions will be appreciated.

–David

I think total lines of code written would work great; don’t bother trying
to decide which lines are “quality”. And actually, don’t count just the
total number of lines of code in a given file; count the number of lines of
code that you added or changed. Many version control systems can
automatically tell you this number for each commit. Editing code that you
wrote previously is also an excellent and important activity and should
count just as much as writing new lines of code in the first place.

-Brent

On Sun, Dec 16, 2012 at 10:19 AM, David John Wilson djwilsonmh@gmail.comwrote:

I am just a third of my way through my first programming course at uni. To
become a half decent programmer you need to do a lot of programming. So I
am considering setting up a Beeminder goal to get me to do more of it. Does
anyone have any suggestions about what I should track on a Beeminder
programming practice goal? I was thinking quality lines of code or quality
statements (please forgive me if I am not using the right terminology, I am
very new to this game).

Any suggestions will be appreciated.

–David

Thanks, Alex. I suppose I could set my ybr to 1 unit per week.

–David

Yes I think that’s doable. They’re highly interactive, and you could always
supplement with other courses. But the Udacity course is excellent. (I did
it with no previous coding experience).

On 16 December 2012 22:10, David John Wilson djwilsonmh@gmail.com wrote:

Thanks, Alex. I suppose I could set my ybr to 1 unit per week.

–David

Thanks, Brent. Very helpful.

–David

I have never tried to learn to code, but i do have some experience using
Beeminder to track “deliberate practice.”

I think I would track quality time spent programming. Sometimes this might
result in one line of code or maybe 20. My basic understanding is that
more isn’t necessarily better.

I think the overall goal should be to keep logging the time, learn and
practice new techniques, challenge yourself with increasingly challenging
projects.

Measuring time would work well with the course too, although I would count
time actually coding, not watching lectures or reading tutorials, towards
your overall goal.
On Dec 16, 2012 12:16 PM, “David John Wilson” djwilsonmh@gmail.com wrote:

Thanks, Brent. Very helpful.

–David

I completely agree with Jake Jenkins. I am using beeminder for a number of personal projects too.
I think quality time (maybe in terms of high-intensity pomodoros, 25 minutes each) would be great metrics.
In order to get used to the practice of programming, I would commit to coding just one pomodoro (or 25 minutes) a day the first week.
Then I would raise the bar gradually until the time you have available, or the moment you feel you find difficult to keep high concentration
and focus.

P: Why is this Email 5 sentences or less?
R: http://five.sentenc.es

From: Jake Jenkins
Sent: Sunday, December 16, 2012 6:53 PM
To: akratics@googlegroups.com
Subject: Re: Practice Programming

I have never tried to learn to code, but i do have some experience using Beeminder to track “deliberate practice.”

I think I would track quality time spent programming. Sometimes this might result in one line of code or maybe 20. My basic understanding is that more isn’t necessarily better.

I think the overall goal should be to keep logging the time, learn and practice new techniques, challenge yourself with increasingly challenging projects.

Measuring time would work well with the course too, although I would count time actually coding, not watching lectures or reading tutorials, towards your overall goal.

On Dec 16, 2012 12:16 PM, “David John Wilson” djwilsonmh@gmail.com wrote:

Thanks, Brent. Very helpful.

–David

I also agree about tracking time. Many studies on expertise suggest that it
takes about 10000 hours of practice to become an expert at most things -
chess, a musical instrument, programming etc. outliers by Malcolm gladwell
has a nice summary of this sort of research.

Sent from my iPhone

On Dec 16, 2012, at 12:25, Camilo Cienfuegos camilocienfuegos_@hotmail.com
wrote:

I completely agree with Jake Jenkins. I am using beeminder for a number of
personal projects too.
I think quality time (maybe in terms of high-intensity pomodoros, 25
minutes each) would be great metrics.
In order to get used to the practice of programming, I would commit to
coding just one pomodoro (or 25 minutes) a day the first week.
Then I would raise the bar gradually until the time you have available, or
the moment you feel you find difficult to keep high concentration
and focus.

P: Why is this Email 5 sentences or less?
R: http://five.sentenc.es

From: Jake Jenkins j2jenkins@gmail.com
Sent: Sunday, December 16, 2012 6:53 PM
To: akratics@googlegroups.com
Subject: Re: Practice Programming

I have never tried to learn to code, but i do have some experience using
Beeminder to track “deliberate practice.”

I think I would track quality time spent programming. Sometimes this might
result in one line of code or maybe 20. My basic understanding is that
more isn’t necessarily better.

I think the overall goal should be to keep logging the time, learn and
practice new techniques, challenge yourself with increasingly challenging
projects.

Measuring time would work well with the course too, although I would count
time actually coding, not watching lectures or reading tutorials, towards
your overall goal.
On Dec 16, 2012 12:16 PM, “David John Wilson” djwilsonmh@gmail.com wrote:

Thanks, Brent. Very helpful.

–David

There are a number of sites with practice programming exercises. Examples
include Daily Programmer on Reddit (Reddit - Dive into anything)
and Programming Praxis (http://programmingpraxis.com/). You could beemind a
certain number of these per day or week. Or, as Willem suggested earlier,
do Project Euler exercises (https://projecteuler.net/). If the exercises were
hard enough, they might qualify as deliberate practice.

Alternatively, you could take a personal project and break down what you need or
hope to do into small, manageable chunks. You’d set a Beeminder goal of
completing several chunks per day.

Best,
Alec

On Sun, Dec 16, 2012 at 08:21:21PM +0500, Alex Strick van Linschoten wrote:

Would be very interested in what people suggest. Perhaps it could be in
terms of specific tasks (a la deliberate practice –
A Better Way to Practice | Lifehacker) rather than just lines of
code?

Alex

On 16 December 2012 20:19, David John Wilson djwilsonmh@gmail.com wrote:

I am just a third of my way through my first programming course at uni. To
become a half decent programmer you need to do a lot of programming. So I
am considering setting up a Beeminder goal to get me to do more of it. Does
anyone have any suggestions about what I should track on a Beeminder
programming practice goal? I was thinking quality lines of code or quality
statements (please forgive me if I am not using the right terminology, I am
very new to this game).

Any suggestions will be appreciated.

–David

hi all,

great references.

here’s a recent quora thread on learning to program that may be of interest:

http://www.quora.com/Learning-to-Program/What-are-the-best-sites-for-learning-programming

-j

On Sun, Dec 16, 2012 at 6:20 PM, Alec Brooks zab1000@gmail.com wrote:

There are a number of sites with practice programming exercises. Examples
include Daily Programmer on Reddit (Reddit - Dive into anything)
and Programming Praxis (http://programmingpraxis.com/). You could beemind a
certain number of these per day or week. Or, as Willem suggested earlier,
do Project Euler exercises (https://projecteuler.net/). If the exercises were
hard enough, they might qualify as deliberate practice.

Alternatively, you could take a personal project and break down what you need or
hope to do into small, manageable chunks. You’d set a Beeminder goal of
completing several chunks per day.

Best,
Alec

On Sun, Dec 16, 2012 at 08:21:21PM +0500, Alex Strick van Linschoten wrote:

Would be very interested in what people suggest. Perhaps it could be in
terms of specific tasks (a la deliberate practice –
A Better Way to Practice | Lifehacker) rather than just lines of
code?

Alex

On 16 December 2012 20:19, David John Wilson djwilsonmh@gmail.com wrote:

I am just a third of my way through my first programming course at uni. To
become a half decent programmer you need to do a lot of programming. So I
am considering setting up a Beeminder goal to get me to do more of it. Does
anyone have any suggestions about what I should track on a Beeminder
programming practice goal? I was thinking quality lines of code or quality
statements (please forgive me if I am not using the right terminology, I am
very new to this game).

Any suggestions will be appreciated.

–David

I’m so in love with this thread I want to marry it.

Personally I agree with those who say time spent is the best thing to
beemind. It’s the obvious thing to start with, it’s something you have
100% control over (always a good criterion for beeminding), and if you
find that you’re not happy with the results of the time spent then you
can dial back your road to some bare minimum amount of time and add
another yellow brick road for something else (pages read, project
euler problems solved, github’s impact metric, etc).

One simple way to beemind time spent, if you’re not a TagTime nerd, is
to just let RescueTime watch how long you spend in your text editor or
IDE and automatically report it to Beeminder: rescuetime – integrations – beeminder
I’ve started doing that myself: tm – d – beeminder

On Mon, Dec 17, 2012 at 8:08 AM, Jake Hofman jhofman@gmail.com wrote:

hi all,

great references.

here’s a recent quora thread on learning to program that may be of interest:

http://www.quora.com/Learning-to-Program/What-are-the-best-sites-for-learning-programming

-j

On Sun, Dec 16, 2012 at 6:20 PM, Alec Brooks zab1000@gmail.com wrote:

There are a number of sites with practice programming exercises. Examples
include Daily Programmer on Reddit (Reddit - Dive into anything)
and Programming Praxis (http://programmingpraxis.com/). You could beemind a
certain number of these per day or week. Or, as Willem suggested earlier,
do Project Euler exercises (https://projecteuler.net/). If the exercises were
hard enough, they might qualify as deliberate practice.

Alternatively, you could take a personal project and break down what you need or
hope to do into small, manageable chunks. You’d set a Beeminder goal of
completing several chunks per day.

Best,
Alec

On Sun, Dec 16, 2012 at 08:21:21PM +0500, Alex Strick van Linschoten wrote:

Would be very interested in what people suggest. Perhaps it could be in
terms of specific tasks (a la deliberate practice –
A Better Way to Practice | Lifehacker) rather than just lines of
code?

Alex

On 16 December 2012 20:19, David John Wilson djwilsonmh@gmail.com wrote:

I am just a third of my way through my first programming course at uni. To
become a half decent programmer you need to do a lot of programming. So I
am considering setting up a Beeminder goal to get me to do more of it. Does
anyone have any suggestions about what I should track on a Beeminder
programming practice goal? I was thinking quality lines of code or quality
statements (please forgive me if I am not using the right terminology, I am
very new to this game).

Any suggestions will be appreciated.

–David

–
http://dreev.es – search://“Daniel Reeves”
Follow the Yellow Brick Road – http://beeminder.com

2 Likes