Showing posts with label coding. Show all posts
Showing posts with label coding. Show all posts

Friday, September 4, 2015

Three Tips for Sticking With Coding in Busy Times!

This week has been tough in terms of coding.  I had a lot of stuff going on at work and I was only able to do about half of what I normally do in terms of coding.  I have also passed through the early stages of coding and am now into some of the tougher stuff.  Early on, coding seems very easy!  I can make it print a number, make it branch off, etc etc.  However, as you begin to get deeper in, things get rough.  This is where I am at.  In the spirit of determination I offer you the best I have to keep on coding, even if it seems the going is getting tough.

(1) Focus on learning for its own sake, remember what drew you to it!  This probably needs to be more than a job.  If you are only learning because you want a job or an end goal, coding (or anything!) is very tough.  In order for you to really get anywhere you have to do it because you like it.  If there is no joy in simply sitting down to code, maybe you should ask yourself why you are so determined to do it.  Remember, just as you are auditioning to code, coding is auditioning for you.  Is it what you want or what you think you should want?  If you have no intrinsic motivation to learn, you will eventually quit.

(2) Have a few resources at your disposal.  I always like to have a few different types of resources I can work on.  I like to have one serious resource which requires my full attention as my top goal.  However, I have a good deal of free time when I can't focus like this.  That's when having some easier and quicker resources like Code Academy or TreeHouse can be handy.  You can review old lessons, poke into a new language, in small chunks.  This way you are not always waiting for the perfect four hour block to study (this will rarely/never come), you can use all of your time.  Only have 30 minutes?  You would be surprised what can happen on TreeHouse in 30 minutes!

(3) Force yourself to do something every day, even if it is just reading an article or working through one lesson.  Sometimes life gets busy and you miss a day.  However, for me when I miss one it can turn into two, three, and four.  When I miss many days in a row, I start to doubt myself and ask if I am serious about it or now.  This is why I try to stay as consistent as I can.  Posting daily on a blog, Twitter, and other social media can help you to stay in it even if you are not getting the time you want in.  Even though it's silly, I have a 40 day streak on Code Academy.  I do it every morning not because it teaches me much, but because it focuses me and keeps me engaged with my goal.  Everything stops being new after a while, methods of accountability are so important for when the fun slows down.

Code Report (from a tough week!)


Resources in Progress:
Total hours into Programming: 108 (4 since last time )
Days into Programming/Hours per day: 2.5 Hours Per Day (Goal:3.0)

Progress on Gaddis' Starting out with Python: Done With Chapter 1, Appendix A,B


Progress on Shaw's Learning Ruby the Hard Way: Finished Exercise 1-13

My Text game: 3 hours, 118 lines

TreeHouse (3164 Points, 37 Badges)

Code Academy Points: (748 points, 77 badges)

Progress on Hartl's Tutorial Ready to start Chapter 3! 

Resources Finished:
Josh Kemp's No Degree, No Problem 8/14/2015

Chris Pine's Learn to Program 8/9/2015

TreeHouse Make a Website Track 8/17/2015
TreeHouse Ruby Basics 8/20/2015
TreeHouse JavaScript Basics 8/22/2015
TreeHouse Console Foundations 8/24/2015 
TreeHouse Git Basics 8/25/2015
TreeHouse Installing a Ruby Environment 8/26/2015
TreeHouse Making a ToDo Rails App 8/31/15
TreeHouse Ruby Logical Operators 9/4/2015

Code Academy Make a Website Course 7/29/2015


Code Academy Ruby Course 8/5/2015
Code Academy HTML and CSS Course 8/24/2015


Friday, August 28, 2015

Beating Coding Fatigue

Well, it finally happened.  My initial push into coding got me through around 34 days.  My enthusiasm combined with free time in the summer sustained a pretty impressive push of over a month.  This, however, is where things get difficult.  I have learned most of the easy syntax.  I have said "Hello World" and mastered much of the easy to learn stuff.  Now, I am sitting about halfway through the Rails tutorial on TreeHouse and about 1/3 of the way through Shaw's Ruby the Hard Way book.  Life is going to get a great deal more difficult, but I am determined to push through and keep working hard!

One of the major issues I have always come to in my life is what happens when you lose the initial push of momentum?  This blog entry represents my bold intention to work through a few hours of coding tonight and stay the course even though work made it impossible to code on Wednesday and Thursday.  I am rusty and tired, but tonight I code!

Thanks for reading and if you have any tips for beating fatigue please holler at me!



Code Report!

Resources in Progress:
Total hours into Programming: 98 (0 since last time )
Days into Programming/Hours per day: 2.8 Hours Per Day (Goal:3.0)

Progress on Gaddis' Starting out with Python: Done With Chapter 1, Appendix A,B


Progress on Shaw's Learning Ruby the Hard Way: Finished Exercise 1-13

My Text game: 3 hours, 118 lines

TreeHouse (2558 Points, 32 Badges)

Code Academy Points: (737 points, 76 badges)

Progress on Hartl's Tutorial Ready to start Chapter 3! 

Resources Finished:
Josh Kemp's No Degree, No Problem 8/14/2015

Chris Pine's Learn to Program 8/9/2015

TreeHouse Make a Website Track 8/17/2015
TreeHouse Ruby Basics 8/20/2015
TreeHouse JavaScript Basics 8/22/2015
TreeHouse Console Foundations 8/24/2015 
TreeHouse Git Basics 8/25/2015
TreeHouse Installing a Ruby Environment 8/26/2015

Code Academy Make a Website Course 7/29/2015


Code Academy Ruby Course 8/5/2015
Code Academy HTML and CSS Course 8/24/2015

Thursday, July 30, 2015

So Many Resources

I just started the Ruby on Rails Code Academy lesson and in this natural breaking point I started to look around at different resources.  I found Joshua Kemp's blog and I don't know if it's a blessing or a curse.  It seems as though he started give or take where I'm at and has become quite successful.  One thing I am finding is that there are so many different tutorials and resources out there ranging from Code Academy to books to other stuff like free code camp.  I am thinking I also need to get myself into some type of community, but that seems like a tall order in West Tennessee, quick searches turn up nothing nearby.

A an old school video game completionist, I am really drawn to contained sites that one can work through.  This is why Code Academy drew me in, I really wanted to stick with one program and work my way up.  However, after spending 25+ hours with just Code Academy, I realize I need to do some different and varied stuff.  In the Rails tutorial (which is only 5 hours mind you!) I am already encountering some of the same stuff I did with Ruby.  The site wants you to move quickly through it, but I don't feel like there is enough explanation.  I can pretty easily earn my badges, but I want knowledge, not badges.  I think I am going to check out this Ruby on Rails tutorial I mentioned in the previous entry.  Still, I do like the badges.


Ruby: Finished!

I completed the Ruby lesson a few minutes ago and while I know a good deal about terminology (method, classes, procs, variables, modules, etc) I really have no idea how I would sit down and write a program.  The encouraging and upbeat language of the tutorial seem confident that I have some new found skills, but I don't believe it at this point.  I think that they need to come up with some additional levels or practice projects to really push the person into the realm of programming.  Code Academy does not do a good job of introducing you to anything beyond their tutorials, does not address how one sets up a coding environment on their own computer, or what the process is for turning your code into a functional program.  While I appreciate the lessons and I definitely feel like I am on the cusp of being able to create, Code Academy has, to this point fallen short on prepping me to make much in Ruby, set up my own environment, or really get started outside of their comfortable shell world.

That said, I love it as an intro and as a starting point.  I think next I am going to do the Ruby on Rails lessons in tandem with Michael Hartl's Ruby on Rails tutorial book (free online!).  While I have only read Hartl's into I can say he does a much better job getting a beginner set up to code in a real environment that Code Academy at this point.  More to come!

Code Academy stats:
Skills:2
Points: 327
Badges: 39

Wednesday, July 29, 2015

Code Academy: Pushing You Right Along

One complaint I have with Code Academy is that it seems more interested in awarding me a badge rather than teaching me context, meaning, and mastery.  The lessons are very to the point and you can get through them pretty easily.  I do feel like in terms of the nitty gritty of executing the code, you do get better by going through.  That said, it does not explain why you need to do these things or give any real qualitative explanations about why things are this way and why you might need to worry about them.  At times I must also admit that I gave up on understanding the slim text and just used the code provided by fellow students in the forums as a template for understanding.  I believe this is probably pretty common among beginners.

Other times, it goes into depth that cannot possibly be digested meaningfully by beginners and seems pretty arcane.  I desperately tried to understand why one would use lambdas vs. procs for quite some time.  They seem to be more or less the same outside of a few differences which I was not able to wrap my mind around.  Despite the fact that I did want to learn more, Code Academy pushes you relentlessly forward.  In some ways this misses the point.  I want to go through the lessons so I understand the coding process, not simply so I can earn badges.  I am hoping that as I go through more lessons and begin to code some of my own primitive projects some of this will come to make sense.

It's amazing how much resistance the brain puts up to learning new things once you reach a certain point.

For Reference:  279 points, 35 Badges

Tuesday, July 28, 2015

Deep or Wide?

As I close in on completing my Ruby tutorial on CodeAcademy (69%!), I am pondering what to do next.  Should I try to work more in Ruby to develop a deep knowledge or should I work through a series of Code Academy tutorials so I have an idea which I will like the best.  I am quite sure the CodeAcademy tutorials will not get me to a functional level in any language so I am seeing them as more of an extended preview.  At this point, I am thinking I will work through at least the major lnaguages on CodeAcademy including Rails, Python, JavaScript, and maybe a few more.  Once I have some idea of how they all work, I will begin to specialize.  After all, there is no rush here.

I have also read that it is crucial to begin to make your own programs which seems pretty scary to me right now 'but I totally understand why this is the way to learn.  Living in the happy bubble world in CodeAcademy is fun, but I have already encountered lessons I have forgotten because I did not work seriously enough with them and just moved through the lessons.

Am I doing it wrong?


Sunday, July 26, 2015

Code Academy Days 1-3

As I previously mentioned, I come to this with basically no knowledge.  I did some work with basic about 20 years ago and was not very advanced then,  As a history professor, I have no day to day background in this.  This is, partly, what makes the process so intriguing to me.  Code Academy is well marketed and really does make you feel like it can help you learn to program with no real background.

So, does it work?  Well, I have been at it for 3 days.  I have around 170 points and 25 badges which equates to around 15 hours of work.   I went through the HTML introductory lesson pretty quickly and I am now around halfway through the Ruby programming language one.  Some of the lessons are smooth and very easy to follow.  Others are exceedingly vague and you have to go sifting through the forums to find your way. .  One thing is clear, I will be nowhere near ready to do anything on my own when I finish the Ruby lesson.  While the lessons teach you how to work within their nicely curated format featuring an editor and an output box which will allow you to see what your programs do, I have no idea how to open or begin to actually Program in the language at this point.

I have taken copious notes and can make things happen if I concentrate and follow along.  However, I feel sort of rudderless in terms of what I might or might not do in Ruby or any other language.  One thing I think the Academy needs is more forced practice.  While you must get your answers correct to move on in the lessons, one never really practices and masters.  One gains a basic level of familiarity and then it is on to the next thing.  Also, so far, there is very little practical talk about why I want an array.  What might I use an array for?  I have determined that Code Academy is a great first step, but that I am going to have to use it along with other resources to become a functional intermediate programmer.

Help, ideas, books?  Feel free to drop me a line!

..amazed, excited, empowered...frustrated.

Getting Started


A few days ago, I decided to see if I could learn how to make computer programs.  This happens just about every day, but in my case it is a little strange because I already have a career as a history professor.  In college I studied history and finished my Ph.D. in 2008.  Since then, I have been working at a small liberal arts college using computers but never much thinking about how they work.

Honestly, I can't think of a particular reason why I am interested in computer programming outside of my teenage years.  As a teen, I assembled my own computers, worked as "SysOp" of my own Bulletin Board System (BBS), and tinkered with my computer endlessly mostly in an effort to get it to play a host of computer games.  I worked with some Basis computer language and even did a high school independent study where I designed a lengthy but simple program.  I did some work on some very simple text games.  However, ultimately, I drifted away from this as I attended college and at this point I am no more computer literate than your average 35 year old person.

I don't know what I want to do with the skill of computer programming, but I do have a mini-goal.  I want to create an ap to go along with my basic history courses.  I don't exactly know how that will work yet, but I will be sharing my ups and downs in the coding world here.  After a basic google search, I have begin work in Code Academy which advertises itself as a (free!) site to help people teach themselves to code.  I completed the basic HTML lessons and am now around halfway through Ruby.  I also have begun to look at the MIT Open Courses (http://ocw.mit.edu/index.htm) and have started on the basic computer science course.

More to come as I have more to say!