How to learn to program/code/script while depressed


#1

I’m new to this board. If I understand correctly, this is a place where developers can talk about depression. This topic is about a depressed individual talking about how to learn to program. If this isn’t the correct forum, you may delete it or I can delete it–just let me know, and I apologise, in advance.

So a quick intro: This isn’t my real name. My story, like many here I’m sure, is complicated. I’ve never talked about my depression (online or offline). My family really doesn’t know about it.

I’m 30 years old. I studied languages and literature at university and graduated around 3 years ago, but computers have always been my life.

I’ve always been depressed. My mother is schizophrenic and I suffered a couple traumatic experiences in my childhood, which I won’t get into here. After trying to get my career off the ground a few years ago, and failing miserably, I decided to learn about web development and how to program/script/code. I only started this year.

Question: how do you work up the desire to learn (in my case, programming) when you feel so down, out of it, or generally do not feel anything? I’ve also been told I think too much (I’m sure others have heard it, as well.)

I genuinely feel programming is something I like more than any other thing, career-wise. There are a couple other things, but I cannot really make a career out of them.

When programming, it is the only time I’ve experienced a so-called ‘flow’ (psychologically speaking). But even then, I snap out of it. I get unmotivated by other things happening in my life. I feel everything in my life is wrong. It doesn’t help that I’m “overworked, underpaid” and close to being poor, if not poor if you consider debt.

Other questions: How did you start off programming? What motivated you? What resources did you seek? How did you work that into having a full-time job?

Again, if this is not the right forum, I will not get offended if this is deleted and I will search elsewhere for a resource.

Thank you for all your feedback.


#2

What do you want to build? I’d say pick a small but exciting project and work on that.It helps me to pick a goal and work gradually towards that (in reality my hard drive is littered with dozens of half completed projects though :slight_smile: )

Say you were interested in building a simple game, you could go through this first to learn Python

http://learnpythonthehardway.org/

Then move on to http://www.pygame.org/wiki/tutorials once you have the basics down.

That’s just an example though, programming is obviously a big and varied field!


#3

I agree with @longcat - pick simple stuff, todo lists, or some basics features from twitter or Facebook. Its surprising how easy some things are, under simplified conditions of course.

For me learning is always the easy part. As long as there are no exams, deadlines or customers to satisfy I can learn and learn.

I’d suggest learning by screencasts, most common languages have pretty good screencast tutors out there usually with loads of free material piled up over the years. You can learn pretty much anything regarding Ruby or Rails by watching other people program.
And it feels better having a “virtual” tutor.


#4

I personally recommend not trying to do it alone. Try to find a mentor or someone else willing to learn with you. Make sure they are aware of your moods and find out what they can do to help you stay on track. Finding excellent programming peers early in my career helped immensely when I was going through my cycles, at the time I was unaware of my diagnosis but looking back now I can see how I would never had made it to where I am now without them. Find someone else you can be accountable to who also understands your mental constructs.

If you are not already, find and attend some local programming meetups and put yourself out there. Don’t be afraid to get up in front of the group and tell them your story. I can’t speak for every group but I know my local Ruby programming group would be receptive to you.

I’m going through a pretty trying time personally right now so I can’t offer my time today but if you decide to go this route and 30 days from now you aren’t having any luck, get ahold of me on this board. I may be able to google hangout a couple of times or help you find a more proper mentor or learning partner.


#5

Hi longcat,

Thank you for your reply.

There are a lots of things I’d like to build but so far this hasn’t been such a great approach for me, because most of the things I want to build are way too advanced. So, I’m trying to think of small, simple projects to start. I’ve done the most of the Codecademy tutorials, including PHP, JavaScript, jQuery, CSS and HTML. Plus, I took an intro to CS course at university, where there was a portion on JavaScript.

I wasn’t going to do Python and/or Ruby, but it seems like these are two of the most popular languages, so I will get to it.

Right now, I’m also doing the SQL tutorials on SQLzoo.net.

Thank you for the links, and after the Codecademy Python and Ruby tutorials, I’ll use the sites you’ve provided.


#6

Thanks, Ray!

I had never thought of video tutorials. I will definitely look up Ruby tutorials on YouTube and Google.


#7

Cycleaware,

Finding a mentor/group is one thing I’ve probably subconsciously been looking for but have not, as of yet.

When I first signed up to Codecademy, I signed up to go to their Meetup, but decided not to. I was new to this city and was intimidated.

I still am very much intimidated by developers and programming, so being in a group of them probably compounds this.

I live in Los Angeles and just checked that there is a pretty active Ruby meetup here.

After I finish some Ruby tutorials, I will look into joining a Ruby group at meetup.com–I just feel like I need to have at least some idea of what I and others are talking about before I put myself out there.

Thank you to everyone for their reply. It has helped immensely.


#8

I completely understand the intimidation factor. When I speak in front of large groups of developers I feel it every time and I’ve been programming professionally for 15 years. I can’t speak for all groups. But many groups do a good job of welcoming newbies. If the first group you try doesn’t make you feel welcome try something else or spend some time talking to individuals in the group until you find one that does make you feel welcome. Thats the key I think. Once you feel like part of the club, you are. I spent the first 5 years of my career coding in isolation as a single contractor.I learned more in the first year that I found other developers to work with then in that entire time before that point.

Good Luck.