# Computer Science / Electrical Engineering



## Steve (Jul 3, 2010)

For as long as I could remember, computers was one of my greatest passions. I felt powerful knowing a little more than the average kid. But a time ago I had lost much of my mind from depression and since then, I've had to rebuild my interest.

So this fall I'll be moving from home, and going to college. I want to learn all I can about computers. Programming, networking, sysAdmin, circuits... I want to feel the joys I did as a child, exploring the digital world for the first time. 

So a simple survey is all I'm asking for now, with more questions if people are interested. 

How old were you when you got your first PC?
What was your first operating system?
Your first non standard video game?
Do you program, and what languages / proficiency?
What do you do most with your computer?
Do you have a degree, or certification?

What do you want to be better at?


I find the almost limitless cyber world to be as interesting as outer space itself. I'd like to learn some things from you, if I could. 

a grasshopper with a new dream,
Steve


----------



## blit (Dec 17, 2010)

*How old were you when you got your first PC?*
10 or 11, but I didn't learn how to type until I was 14. This is when I was teaching myself ActionScript and C. Gah, long summer.
*What was your first operating system?*
Windows XP
*Your first non standard video game?*
Roller Coaster Tycoon
*Do you program, and what languages / proficiency?*
Order of preference/skill: C++, Objective-C++, C, Java
Quick for testingython (I recommend learning Python for your first language if you haven't learned one) 
Web: HTML (if you consider this a lang), javascript, PHP, Python
..........
.....
*What do you do most with your computer?*
Programming, Graphics (I recommend to learn to use Photoshop or GIMP for your own programs rather than asking for graphics), Web browser, Music, Docs, Mail
*Do you have a degree, or certification?*
HS Diploma  (In college)
*What do you want to be better at?*
The lower level _stuff_. I'm learning assembly, discrete math, and electronics right now. My goal at for the end of year is to create a chip8 console with using assembly and electrical parts. I made a chip8 emulator in C++ with SDL a few years ago. Hopefully, I solder a physical one by this time.

I especially recommend this youtube channel for beginners. I wish he (or someone else) created videos when I started learning. It would have saved so much time. The first (real) language is the usually the toughest. Expect to be frustrated with collectives of meaningless symbols (at least initially). After a while, it's the same shit different smell. Recently, I flew through his tutorials for Objective-C++ and Cocos2d in a weekend. I have books on cocoa and objective-c because he doesn't explain everything in his videos. Yes, I highly recommend buying a book on the language. Personally, I have a strong preference to use a physical copy for reference. Using solely ebooks with the internet is a huge pain in my opinion._ Apply Google generously._


----------



## Steve (Jul 3, 2010)

Thanks. What kind of learning schedule did you have for programming, and what kind of perspective did you have about it? Like was it liberating, or more demanding of you?


----------



## Erbse (Oct 15, 2010)

Steve said:


> How old were you when you got your first PC?
> What was your first operating system?
> Your first non standard video game?
> Do you program, and what languages / proficiency?
> ...


1. Mid or late 90's, can't remember. Was like 12'ish.
2. 95, followed by 98ME, finally replaced by SE.
3. What's a non standard video game? First games I loved would have been Motorcross Madness / Might and Magic 6 and Anno 1602 / Civ II. (Blood / Quake / Doom / Hexen / Turok 1 having been awesome of course due to their gore factor as a kid)
4. Not right now, I however do know C(++) and Java. Will be starting to programm again in September.
5. Browsing, gaming has taken the backseat throughout the years. I'm too lazy however to fully use a computers / networks capability by creating giant media centers coming together in a single system.
6. Not a University one, but a schoolish apprenticeship one (ITA = Information Technology Assistant) - shall be replaced by an economical acknowledged degree in 2 years, when I finish my apprenticeship in a company.

What I want to be better at? Probably databases and programming, electrical engineering isn't my thing at all, and I find Network / Hardware to be generally lame to deal with.


----------



## ayu (May 20, 2010)

*How old were you when you got your first PC?*

When I was 15.

*What was your first operating system?*

Windows XP

*Your first non standard video game?*

Feeding Frenzy, I think.

*Do you program, and what languages / proficiency?*

Yes, I used to. Mostly in Ruby and VB.

*What do you do most with your computer?*

Browsing, learning about databases, watching video tutorials and playing some games.

*Do you have a degree, or certification?*

Bachelor Degree in local uni.

*What do you want to be better at?*

Database administration. I kind of obsessed about it lately, especially with SQL Server.
I think I need some time to finish it and then move on to compare it with other database
engines.

It's pretty weird when you created this thread and the survey but you didn't fill it out yourself :happy:

So, why don't you share it with us?


----------



## Malovane (Jul 12, 2010)

*How old were you when you got your first PC?*

Around 6 or 7 years old, I think.

*What was your first operating system?*

MS-DOS 3.0

*Your first non standard video game?*

Hmm. The original Drug Wars. Then got into BBS Gaming, Trade Wars and the like.

*Do you program, and what languages / proficiency?*

Used to. Started in Basic, then PERL, a stint in assembly *shudder*, C, C++. Then I stopped there. I was doing some AI work in college, so not too bad.

*What do you do most with your computer?*

Web browsing + research, system administration, pen testing, games.

*What do you want to be better at?

*Not being behind the computer so damn much.


----------



## absentminded (Dec 3, 2010)

Steve said:


> How old were you when you got your first PC?


Around 10.



> What was your first operating system?


Either Windows Me or Windows XP.



> Your first non standard video game?


Roller Coaster Tycoon



> Do you program, and what languages / proficiency?


A little.

I've hacked a few programs together in Visual Basic and I know some HTML/Python.



> What do you do most with your computer?


Surf the web. Particularly Wikipedia.



> Do you have a degree, or certification?


Nope, not yet.



> What do you want to be better at?


Everything. Computer related? I probably want to learn more about Python and start working with C++. Ultimately I'd like to work with computers full-time.


----------



## blit (Dec 17, 2010)

Steve said:


> Thanks. What kind of learning schedule did you have for programming, and what kind of perspective did you have about it? Like was it liberating, or more demanding of you?


I didn't really have a schedule. I pretty much did as much as I could in the late day and through the night. It was liberating after the several hours of debugging paid off. Once it felt like a chore, I either took a short break or push through to finish an exercise/chapter/function and took a long break for the rest day. Headaches. Lots of headaches.

*Advice:*
-Initially, the most difficult part for me was accepting that symbols are relative to each language, human or not. Although, I never explicitly thought this, it really bothered me that code is not like a human language. It was hard to express English thoughts into code. This was because I wasn't thinking like a programmer and algorithmically. The symbols only have as much meaning as they are given. Any language can standardize whatever symbols with whatever grammatical rules the creators choose. All I had was a 700 page book filled with techno-jumbo and no teacher. I strongly recommend (re)viewing the videos when you are stuck or google around.

-After you learn a bit, you may be eager to jump around languages and start with graphics, audio, etc. Trust me on this. Learn how a programmer "thinks" (non-sequential, non-linear, divergent, logic flow, ...) and become comfortable with the basics of one language. Teach Yourself Programming in Ten Years The most important parts of the program aren't displayed with fancy graphics or cool sounds. Learning your first language should be a tool to learn how a think. Otherwise, you will struggle significantly the less sequential the code becomes.

-There is no perfect program and some design approaches are more effective than others in different situations. Effective doesn't always mean efficient.

-The equals sign ( -> *=* ) in most language means assign or set to. It doesn't not mean equals or equal to. Usually *==* means equal to.

-You will fail countless times before something compiles and works okay-ish. Don't beat yourself up. What I'm saying is to program incrementally. Absolutely no one creates a huge project, compiles it only once, and it runs flawlessly. There's lots of testing and debugging stages in between for each aspect.

-Avoid copying and pasting code you are learning from. Type it all yourself. Then, toy with the code. This is crucial.

-The compiler and the computer doesn't hate you. It does exactly what _you_ tell it.

-Logic and runtime errors are harder to fix than compiling errors. Plan ahead before starting larger projects.

-How much math should you know before you learn? Be comfortable with basic algebra. Well, at least understand what a variable is. It doesn't have to be mathematically intensive when you first learn.

-A big hurdle for languages in the C family is understanding what is a pointer. _It's like a variable of a variable. What is this madness?_




I struggled hard with this for about a month. I'd get it. Then, I wouldn't. Then, I get it again... The video above might help. Or, the cup analogy. The rest is syntax related to the language.

-Lastly, make it a habit to comment your code. There isn't a standard way to do it, unless you plan on using an auto-documentation program like doxygen. It should be a quick reminder to what is happening. It should not be a statement by statement guide.


----------



## sprinkles (Feb 7, 2010)

*How old were you when you got your first PC?*
I don't know, 8 maybe
*What was your first operating system?*
It didn't have much of one. It was an Apple IIc. There wasn't really any kind of 'desktop environment' like with new computers.
*Your first non standard video game?*
A code breaking game that I made for myself based on something I saw in a magazine.
*Do you program, and what languages / proficiency?*
A little bit. PHP, shell scripting (KSH) some C++ (mostly for ARM7 stuff, fiddling with my Nintendo DS. Like making sprites dance to silly music >.>) Proficiency - consider myself mediocre. 
*What do you do most with your computer?*
Everything?  Listening to music and browsing probably the most, but often with multitasking.
*Do you have a degree, or certification?*
No.
*What do you want to be better at?*
Everything?


----------



## Arbite (Dec 26, 2010)

Steve said:


> For as long as I could remember, computers was one of my greatest passions. I felt powerful knowing a little more than the average kid. But a time ago I had lost much of my mind from depression and since then, I've had to rebuild my interest.
> 
> So this fall I'll be moving from home, and going to college. I want to learn all I can about computers. Programming, networking, sysAdmin, circuits... I want to feel the joys I did as a child, exploring the digital world for the first time.


Keep in mind the sheer amount of maths involved in electrical engineering. So many matrices.

How old were you when you got your first PC?: 7 or 8
What was your first operating system?: Windows '98
Your first non standard video game? Can't remember, mechwarrior or starcraft.
Do you program, and what languages / proficiency?: C++ and Java, of average skill. Python well
What do you do most with your computer?: CAD
Do you have a degree, or certification?: Studying Chemistry/Mechanical Engineering.

What do you want to be better at?: Having the willpower to study.


----------



## Vidar (Jul 7, 2011)

*How old were you when you got your first PC?
*
About 10 or 11, I'm not really sure.

*What was your first operating system?
*
Windows 98

*Your first non standard video game?
*
What is non standard? I think it was Jazz Jackrabbit, which btw is still freaking awesome.

*Do you program, and what languages / proficiency?
*
I do, most of the time it's Java, C++ and LaTeX.
Sometimes I play with Javascript, PHP, SQL and Bash scripts.

*What do you do most with your computer?
*
1) browsing the web for entertainment or to find new things to do
2) working: programming, research, etc.

*Do you have a degree, or certification?
*
I'm currently working on my bachelor degree. (computer science + electrical engineering)

*What do you want to be better at?*
Computer related: assembly and artificial intelligence


----------



## jameswood037 (Oct 19, 2011)

EE does get more interesting. You just need to develop a solid background in the basics before you move on to the good stuff. You should look at the descriptions for senior-level EE courses to see if they are up your alley. Maybe, i'm wrong and you find those boring as well...

2) ABET doesn't matter for CS

3) Hard to say that you will graduate in 4 years or not; talk to a counselor. I would say, it should be possible. if you can take a summer quarter, even more so.

Just keep in mind, CS is more than robotics and video games.
Lets see how much fun you're having when you're creating B-Trees and calculating the computational runtime of different algorithms. A lot of it is very dry, in my opinion. But again, the senior level courses will be more interesting.


----------

