Neophyte's Guide - I Want To Make Things

I Want To Make Things

So you're a digital creationist eh? Wink

Making things can be looked at from 3 perspectives:
- Make Programs

Making a program involves programming. Programming will open your
eyes into the digital world like no other experience can. I will
forever argue that you do not know computers until you've programmed.

A good place to start is to learn C and Java. Visit the tutorials
page, ask questions in the forum and IRC for more details into this
dark and wonderful world. A great tutorial series on this site is Basic Programming Concepts by Amp.

Here is a tutorial from another site that can also help you to get started in C programming:
http://www2.its.strath.ac.uk/courses/c/

- Make Servers

Building a server is a fun adventure that takes far less time
than learning to program and is a bit easier. Most people venture
here and there's absolutely nothing wrong with it. Everyone should
have a file server. Smile

If you would like to build a server I would recommend starting with a
left over computer that you don't use anymore. It will be older
than your current desktop which is perfectly acceptable. You need a
super computer to play video games- you DO NOT need one to host
a website.

I would recommend starting out with something like Debian Linux
www.debian.org.

- Make Hardware

Making hardware is the most intimidating of the 3. Yet I would argue
it's the most expensive and the easiest. You're going to want to start
out by looking into the following 2 things:

1. FPGA - http://www.fpga4fun.com/ - Field Programmable Gate Array.
FPGA are programmable circuit boards that allow you to get started
right away. Sadly - you do have to buy them and the software to
interface with them. It's worth it though.

2. Verilog or HDL - Hardware design programming languages. You feed
your verilog or hdl code into the FPGA and viola instant firmware Smile.
See it's not that hard.

Alternatively, if you're a masochist, you can start from scratch and
build your own ciruits using breadboards. If you're going to go this
route I recommend you just enroll in an electronics class. The machinery
needed to do this properly is very expensive to buy on your own. Plus
there aren't many tutorials regarding these things.