Live data from Hacker News

Where does a wannabe hacker begin?

news.ycombinator.com

51–60 of 70 posts

Re: Where does a wannabe hacker begin?

#51

Earlier quoted context omitted.

Or just do it, and ask for forgiveness later, as necessary. Your chance of being "caught" in a medium-to-large lecture is pretty low.

Agreed. Or just ask the professor. If I were a professor I'd be ecstatic if someone wanted to sit in on a lecture just to learn, not for credits. However I've also had great professors who would allow it because they feared the students wouldn't be fully committed since they weren't obligated to do assignments and exams.

correction: would not allow it

Re: Where does a wannabe hacker begin?

#52
post #29

I'm self-taught. My recipe: 1 - Find something you want to build 2 - Learn everything you need along the way 3 - ???? 4 - Profit I built a pop-up blocker and privacy suite this way (as a single founder) and earned more than I was making at my day job, so I eventually quit. I see a lot of "things you should know" in other posts, but in my experience, they won't be interesting until you need them. You'll have to go ste…

Some tips:

To see how something works, break it and unbreak it in many different ways. Sometimes the part you think does something isn't it. You don't know code well until you know how it acts when broken. Seeing what error messages mean will help you recognize them in your own code. Hotkeys are good. Ctrl-Z (undo) and Ctrl-Y (redo) are great for breaking/unbreaking code. Version control will be useful at some point.

Change one thing at a time when fixing bugs, or you'll never know what fixed it. Afterwards, explain what happened.

Do not make changes without a reason--that's a short path to cargo-culting. Read the doc, then use the scientific method--hypothesize something, then test. Rinse, lather, repeat. Otherwise, you're just guessing and will waste infinite time, like a Shakespeare-typing monkey.

When borrowing code, understand it, or it will cost you in the long run. Stripping code to the bare minimum or adapting it is a good way to know what parts do what, even if you just use the original.

Remove lines you "think" you need in your solutions and see if they still work. If a line of code isn't necessary, but is not hurting anything, remove it anyway.

I have no idea how people coded before Google, and it scares the crap out of me. Paste in your errors with variable names removed. Invest time to become a Google search pro.

If you haven't tested it, it's best to consider it broken.

Re: Where does a wannabe hacker begin?

#53
post #30
post #24

Earlier quoted context omitted.

C is not the path of least resistance for the OP. He is neither trying to make a career out of software engineering nor hack on a UNIX kernel. He wants to be at the fringe of business and software and these days if that's where you want to be you can "get by" knowing only a high-level language really well and hiring/partnering with more specialized engineering talent as needed if the business-side requires it. Master…

Yes, I am in complete agreement with you. Which is why I suggested C. You only realise the huge productivity jump when you first program a small application in C and then do the same thing in Python / . Hence the C recommendation.

I would argue that any developer should spend a couple of years maintaining a small to medium-sized application written in C. It's like eating bran: not a particularly huge amount of fun, but good for you in the long run.

But maybe that's just me...

Re: Where does a wannabe hacker begin?

#54
You can do it if you work hard. I did econ / accounting @ UCLA and took a couple of C++ courses that was enough to get me hungry for building a web app rather than a desktop app.

I am self taught and was stubborn enough to learn to setup a load balanced web cluster in linux, a postfix mail server, and write the code for my web app.

The secret, like others have said, is to build out an idea you have. Once you finished that project you will most likely have dozens of ideas you want to work on. Right around that time read The Dip by Seth Godin so you learn to know when to hold em and when to fold em.

Re: Where does a wannabe hacker begin?

#55
Perry, how do you know that the two of the founders actually do lots of programming in Auctomatic?

They could've helped the team in other areas such as:

1) Strategy

2) Marketing (newsletter, beta invitation, etc)

3) UI design (but not UI coding)

4) Sys/Net/DB-admin

5) Legal issue

and let the Collison brothers do the actual programming without having to worry of these stuffs. The Collisons are one of the kind. Prodigy is the right word to describe them both.

If you look at their About page: http://auctomatic.com/about , there are 2 more people beside the 4. At least one of the two is of technical type.

Summer is 4 months long, I'm sure you can learn something. But I don't think you'll be anywhere near the people in this website in terms of technical ability.

The more you ask technical questions from News YC, the more you "dig" yourself deeper in the technical side of the world and the less time you will focus on your startup.

But don't be discourage, anyone can start anything at this day and age.

You can:

1) Learn PHP/MySQL/JavaScript/HTML/CSS and ignore advices

2) Learn Back-end (PHP/MySQL/AJAX) and outsource front-end

3) Outsource everything to India/China/Russia/East Europe

There are the News YCombinator kind of startups.

There are the Google, Microsoft, Amazon, Yahoo! kind of startups.

There are also the kind of iContact, "Ben Casanova", PlentyOfFish kind of startups.

I wish you the best on whatever the path you chose.

Re: Where does a wannabe hacker begin?

#56
post #37

Start here: http://mitpress.mit.edu/sicp/ No, seriously. If you've never programmed before, this will teach you far more than you'll need, initially, but later on you'll realize that you picked up a lot of really good habits and never needed to unlearn the bad ones. Try it. If you like it, you won't look back. If not, perhaps a career in finance isn't such a bad idea anyways.

If the OP is interested in learning to hack, in the sense of making computers do great things, then this is the best resource suggested on this thread. In addition, MIT published videos of the lectures by the authors of this book (http://swiss.csail.mit.edu/classes/6.001/abelson-sussman-lec...). They are spectacular.

Re: Where does a wannabe hacker begin?

#57
post #29

I'm self-taught. My recipe: 1 - Find something you want to build 2 - Learn everything you need along the way 3 - ???? 4 - Profit I built a pop-up blocker and privacy suite this way (as a single founder) and earned more than I was making at my day job, so I eventually quit. I see a lot of "things you should know" in other posts, but in my experience, they won't be interesting until you need them. You'll have to go ste…

Another good example of this recipe in action:

http://www.catonmat.net/blog/learning-python-programming-lan...

Re: Where does a wannabe hacker begin?

#58
http://catb.org/~esr/faqs/hacker-howto.html

If you want to be more of an Admin I recently wrote this:

to start do 4 os installs, centos, debian, gentoo, and freebsd in that order. install apache, mysql, bind and postfix on each. set up joomla, drupal, and word press on each. make sure all 4 systems will come up with all services working on reboot. get a free subdomain from someone like dtdns.com. set bind up to use it. make sure that you can view the web pages and send emails to the machine from an external machine, doesn't have to be at a remote location, and that it continues to work on reboot (without your intervention). drupal, word press, and joomla must be working at the same time. by the time you are done you will have an ok understanding of the the various nix's and nix itself, and the tasks common for a sys admin. if you need help you can probably ask for it on the distributions forum/mailing list or the softwares forum/mailing list.

it's a good start even if you want to be a programmer.

Re: Where does a wannabe hacker begin?

#59
post #47

Earlier quoted context omitted.

Or just do it, and ask for forgiveness later, as necessary. Your chance of being "caught" in a medium-to-large lecture is pretty low.

Most school charge roughly 50% of regular tuition rates to audit a course (attend lectures without earning credits.) They will usually allow you to complete all the coursework and get feedback as part of the auditing arrangement. Getting caught attending lectures without being enrolled can have implications beyond just being kicked out...you're essentially "stealing" an education. They can charge you with theft or cr…

Interesting. I guess I shouldn't have been so flippant.

Re: Where does a wannabe hacker begin?

#60
post #30
post #24

Earlier quoted context omitted.

C is not the path of least resistance for the OP. He is neither trying to make a career out of software engineering nor hack on a UNIX kernel. He wants to be at the fringe of business and software and these days if that's where you want to be you can "get by" knowing only a high-level language really well and hiring/partnering with more specialized engineering talent as needed if the business-side requires it. Master…

Yes, I am in complete agreement with you. Which is why I suggested C. You only realise the huge productivity jump when you first program a small application in C and then do the same thing in Python / . Hence the C recommendation.

We can't possibly be in complete agreement if we are drawing opposite conclusions.

I think the difference might be that I assume the OP is heavily concerned with efficiency.

Given his background and goals it is not efficient [1] for the OP to learn C when in the same amount of time he could learn a high level language and then directly accomplish his goals, and never need to learn another language for the rest of his life.

[1] achieving maximum productivity with minimum wasted effort or expense (O.A.D.)

Post reply on HN