Friday, August 13, 2010

Stay Hungry, Stay Crazy -- a CodrSchool inception plan

There are a few students who will be visiting our office today, and here's an overview of the kind of talk i'm going to give later. What do you think, anything else i should add or take away? Of course, it also includes the mandatory Steve Jobs commencement talk viewing.

Stay Hungry, Stay Crazya CodrSchool inception plan

*Figure out what you want to do in life.*

Figure out your vision, what's burning inside

Keep a vision as a guide, and execute for the short term.

Don't worry about 5 years, or 10 years. Just do it. Get it done. Do something.

*Programming*

is not a job, not a profession

it's a lifestyle. it's who you are.

it's not an 8-to-5 job, it's something you live with.

day-in-day-out, you are a programmer, you constantly think about programming, about computers, about solving problems.

it's a natural type of job. it's what you really do.

it is a creative work, you're required to create/innovate, and not encode, or type source codes.

you can only master progamming through years and years of practice

earn your 10,000 hours to greatness

using a software tool or technology, will *NOT* make you a great programmer.

*Opportunities now*

The world is flat. A com. sci. student in US is in the same playing field as we are. The Internet is a great leveler. We can compete. If they can code, so do we. If they can build Google or Microsoft or Apple, so do we.

Internet access is cheap, at least cheaper than 10 years ago.

More people has access to computers, an entry-level netbook is more than enough to start learning.

Open source has made it easier for all of us to learn, and improve our skills.

*Learning Strategy*

Experiment a lot

Read lots of code -- lots of it, until your eyes pops-out

Don't worry about your parents or friends tell you that you spend too much time on computers. It's normal to be obsessed with computers. There-is-no-other-way.

Explore what programmers are doing

Download open-source codes

Ditch Windows or Mac, and exchange with Ubuntu, or Linux, or any of the hackers OSes (BSD?).

You don't need to work for a company to learn. Or, don't need to work for the sake of working.

Find what you want to do in life, and figure out a way to earn money from it.

You can start at home, start with your computer

Join mailing lists, contribute to open source

Try freelancing, learn on your own

Or, work in a company. No harm in that. Though, you won't learn a lot from a company, apart from what the company wants to extract from you.

There is more learning outside of what you do in a company. Yes, i operate a company, but i still say this, because it's true.

*Read lots of codes. L-O-T-S**EXPERIMENT A LOT*

*SIDE BITS*

Discuss the difference between how learning is viewed now, versus what is really learning.

It's not about achievement, grades or honors. It's an external symbol, but only a symbol. It doesn't mean you have learned or not. It means, you have achieved something based on the criteria of the award.

Learn, because you want to learn. Not learn, so you will have something to use when you plan to work later on. It won't work like that. Of course, you can go on with it, but it is something not sustainable.

Imagine, cavemen going to college so they can apply at tech company later on. Impossible. Whoever invented education and work anyway? Of course, there's no point going back to stone age. There's a lot of benefit towards a good education and a good set of skills. That's it, beyond that, what you do, you don't have to work.