Hopefully a couple years down the road I can refer back to this post as what was going on in my head while I was helping make clay.io a successful business -- but let's not get ahead of ourselves...

I started off writing this post as a set of tips, but realized I'm not exactly in a position to give advice. I'm still largely unproven. Regardless, here is the approach I am taking each and every day.

Using the resources I'm given (something called the INTERNET!)
I'm always trying to extend my knowledge in all areas and I do that mostly through four sites you've probably heard of: Quora, Stackoverflow, Twitter and Google (no, I'm not going to link to that...)

Quora is great for following topics that interest you, seeing what others are asking, and more importantly what smart, capable people are saying in response. I check Quora a few times a day and read any thread I feel might teach me a thing or two. For an idea of what I follow, check out my profile.

Stackoverflow is much like Quora in this aspect (questions and answers), but with more of a focus on programming. There are good answers and there are not-so-great answers, with the format it's quick and painless to see what is generally accepted as a 'good' answer. It's also beneficial to look at the top questions and read the responses for the languages/paradigms that are relevant to you. For example: PHP and JavaScript

Twitter is my new Google Reader. It's something much less verbose so I can easily weed out what I don't want to read, and save valuable time. If someone I look up to retweets something, I'll check it out.

Most programmers will tell you they just google everything - that's a good description for myself as well. I became a competent programmer by first learning how to be a good googler. What I find myself doing more and more is searching "<problem I'm having> stackoverflow" since most of the time it seems someone else has had that problem before.

Programming involves constantly learning new APIs, languages, and techniques and that's really hard to do alone without google - even with a book I'd imagine it would be very time consuming. I'm finding entrepreneurship is the same way, having to deal with stuff like filing as a company, partnership agreements, stock options and vesting, ideologies for product development (like the lean startup method and MVP). Quora, Google and Stack Overflow make all of this easy.

There's also Reddit (the relevant, productive /r) and Hacker News - though sometimes reading too much can get in the way of productivity.

Doing what it takes to stay motivated
I've been able to accomplish this by choosing something I'm really passionate about - video games.

What I've been working on the past few days - payment processing - isn't the most exciting thing in the world. In fact, I'm sure most programmers despise it. But what's keeping me going is the vision I have for this business.

I've had sites in the past where I really enjoyed the process of building and creating a snazzy product, but that only goes so far if you're not truly passionate about the problem your site solves.

A couple other factors that have helped immensely are having an office to work in, working on various different aspects of the business, and having someone on the ride with me.

In the last 4+ years I've been in a few different 'ecosystems' and gone through ups and downs in terms of how much I network. The most productive periods for me are obviously the ones I did a better job at reaching out and meeting others.

Now that I'm at the University of Texas - after a couple months - I was able to achieve this by getting involved in some startup and hacking events. I can already see the rewards of doing this with clay.io being formed, and having an awesome environment to work in.

Seeking advice
There is a lot I don't know. Because of that, I ask other people with experience. Luckily, it seems like most people are willing to help (which relates to networking to get connected with these people). I am very grateful for everyone who helps me out and I hope one day I can return the favor.

So I guess the two main things I'm doing are networking and always trying to learn more to put myself in a better position to succeed.

I'm not strictly focusing on programming. I don't want to be just a programmer -- it may but what I'm best at right now, but I'm actively trying to improve all those other areas that are necessary. It's good to have variety.

I will give one tip... be sure to apply what you learn. There are people out there who are all talk and no game. If reading Quora and various blogs gets in the way of implementing things, it's time to cut back.

P.S. This may be a bit TMI, but for me, in the bath on my phone is a great time to learn (mostly with the Quora app or google). In fact, I'm writing this post in the bathtub right now... Another time I find myself doing this is on my bus rides to and from downtown -- anywhere, anytime really.