Notices
Results 1 to 20 of 20

Thread: New to Programming

  1. #1 New to Programming 
    Forum Freshman
    Join Date
    Aug 2009
    Posts
    29
    all right, well im a 17 year old junior in HS and have been interested in programming/computer science for a few months now.

    I would like to go to a university and major in Computer Science, but my school does not offer any programming classes at all. closest thing we have to programming is web page design.

    so i have decided to take the initiative and teach myself C++ on my spare time. i am also planning on taking the AP CS test in May (i realize it is in Java, but 5 years ago it was in C++ and from what ive heard, C++ and Java are pretty similar) so i want to learn the basics over the summer so i can crack open a review book throughout the year.

    so far i have gone to the library and rented the book (by Sams) "Teach Yourself C++ in 21 Days" Fourth Edition by Jesse Liberty. i know im not supposed to buy into the 21 days marketing lure, but considering this is the only book on C++ available to me i have no other options.

    so my question is, is this book i have reliable to teach myself C++? do you guys have any recommendations on books/classes that i can get via internet? i appreciate you taking the time to read this and thanks for the help.

    oh and btw, i just want to get started with CS with learning a language first. i really want to get into cryptography which is interesting to me to hide and uncover data.


    Reply With Quote  
     

  2.  
     

  3. #2 You can do it! 
    New Member
    Join Date
    Aug 2009
    Posts
    1
    Well I'm not new, new, but I just had taken 2 courses of CS in College, I am 19 Years old and still I need lots of studies and courses to learn about, so either book would be ok, as long as you commit yourself to study, read it and if you don't get something ask people who know about it, is always right to ask, even if you feel dumb, it's fine as long as you are doing what you like and what you want.

    So read, practice doing Pseudo code, by sketching and scrubbing, lines with pseudo-code will always help, because its you doing the whole process of the actual code/app/program that come from what you had learn, what you got in your mind, it's always difficult at first ( still struggling with it lol) but if you get used to it, you will feel in your comfort zone and you will need more challenge than the one you had.

    So keep at it, never give up and do always what you want to do and not what anyone tells you.

    Thanks


    Reply With Quote  
     

  4. #3  
    Forum Sophomore
    Join Date
    Mar 2009
    Posts
    139
    I would suggest not learning C++ in hopes to pass a Java exam. They are not enough alike for you to be able to pass a programming section.

    I would also suggest you go get the AP study guide for the specific test, it should be between 20 and 30 dollars, and will cover everything you need. Just from reading the following document, I can almost guarantee that any "Program X in Y Days" book will not give you enough information.

    http://apcentral.collegeboard.com/ap...escription.pdf

    According to the PDF above, you will also need to know something about algorithms and data structures, and most intro books do not have any information on that or program optimization.

    Good luck, but please remember that preparing for a test with the wrong materials is about the same as fishing with a chainsaw. AP/Collegeboard/SAT Tests are very unforgiving in this way.
    --
    -M

    "Those that would give up essential liberty to obtain a little temporary
    safety deserve neither liberty nor safety."

    -Benjamin Franklin, An Historical Review of Pennsilvanya, 1759
    Reply With Quote  
     

  5. #4  
    Forum Freshman
    Join Date
    Aug 2009
    Posts
    29
    thanks for the advice. I was basically reading the book i had right now because 1. It was the only book on programming available at my local library. 2. I enjoy learning C++, its summer, and the AP exam is in next May. I do appreciate you giving me a heads up on the AP CS exam curriculum i will look into getting a review book.

    another question would be, can i really learn the material from a review book that would help me be successful on the AP exam? even with no prior experience. or should i search for a college-level Java book for cheap to learn the basics, then stare at a $30 review book throughout the school year when i need to refresh?

    i dont feel much pressure to do bad on the AP CS exam because my school is paying for all AP exams this coming year (im taking advantage, hitting Physics C, Calc BC, CS, and maybe another), however, i will not let this seep into my mind set so i can stay properly focused.

    Thanks, your comments are appreciated.


    P.S. i just found this website http://www.ihs.issaquah.wednet.edu/T.../Resources.asp

    it looks like an older AP CS class assignment page, i found the powerpoints to be helpful so i will sift through those as i read:

    Java Software Solutions for AP Computer Science (1st Edition) by Lewis, Loftus and Cocking.
    Published by Addison Wesley, Boston, 2004.

    which i suppose is the textbook for the class. ill have to see if i can get my hands on one.
    Reply With Quote  
     

  6. #5  
    Forum Freshman jammer's Avatar
    Join Date
    Oct 2008
    Location
    Colorado
    Posts
    60
    I suggest rethinking your career choice immediately. If you like computer programming, then you can still do it but make more money and be more valuable to many companies if you go into computer engineering. Computer engineering will get you into the hardware aspect of building computers as well. It is a little more effort, but you won't be looking for a job for years after college because the job market is not flooded with computer engineers like it is for computer science majors. Just to get you excited, computer engineers generally have a starting salary of about $60k and computer science majors will often be more than $10k less than that.

    Programming is still a good start though. I recommend a book called "C++ for engineers and scientists" by Bronson because that's what I learned on and it was very straightforward and had great examples of application. You can probably get the second edition of this book for very cheap on Amazon.com.
    Reply With Quote  
     

  7. #6  
    Forum Sophomore
    Join Date
    Mar 2009
    Posts
    139
    For an alternate view on that:

    The hiring groups I've been on scrutinize the CEs much more thoroughly than EEs or SWEs. CEs really need to know their stuff because a lot of schools take their EE degree, add 3-4 programming classes and remove crucial EE classes so the programming classes can fit in. (Or rather, this is how it was explained to me by one of my employers.) So it may be harder to get a job, and I think if you really love to program and want to do it for life, your best bet is a Software Engineering degree. Not only will you have undiluted programming classes, but people are much more likely to hire you for programming than if you have a CE degree, which in my experience is considered a watered down EE degree.
    --
    -M

    "Those that would give up essential liberty to obtain a little temporary
    safety deserve neither liberty nor safety."

    -Benjamin Franklin, An Historical Review of Pennsilvanya, 1759
    Reply With Quote  
     

  8. #7  
    Forum Freshman jammer's Avatar
    Join Date
    Oct 2008
    Location
    Colorado
    Posts
    60
    Most of what you said is true, but the people who get hired where they want will take the necessary classes to make them valuable to employers. You shouldn't rely on the minimum requirements to get you by. You always need to stand apart from the masses....Or you can "know" people and get a job through current employees.
    Reply With Quote  
     

  9. #8  
    Forum Sophomore
    Join Date
    Mar 2009
    Posts
    139
    I don't know what colleges you've been to, but the three I've been to have set requirements with only a few electives that can be pretty meaningless.

    Either way, you're right, if you really want something badly enough, you should be smart enough to take the electives you can that relate to what you want.

    Of course, don't just listen to us, do your own research too. It never hurts to call the HR department of a company you would love to work for and ask what kind of requirements they have on someone doing the job you want.

    As far as your testing goes, I see no real reason for you to take the AP test, other than that it is free. The only book you should ever need for one of those tests is their review book. It has all of the answers they are looking for, you cannot possibly fail the test if you buy the college-board sponsored review book and study it seriously.
    --
    -M

    "Those that would give up essential liberty to obtain a little temporary
    safety deserve neither liberty nor safety."

    -Benjamin Franklin, An Historical Review of Pennsilvanya, 1759
    Reply With Quote  
     

  10. #9  
    Forum Freshman
    Join Date
    Aug 2009
    Location
    los angeles
    Posts
    53
    Don't know how to program.
    the more science you know, the less crap you get.
    Reply With Quote  
     

  11. #10  
    Forum Freshman LoKo1Wolf's Avatar
    Join Date
    Dec 2008
    Location
    Miami, FL
    Posts
    40
    Well Diem im in the same position as you are, im also 17 and in HS although a senior, ive worked with CS3 for a short while. Im a little behind with the knoledge of classes because i havent really put myself in the position to decide but i do love working with computers and programming.

    Although i do think Computer engineering is more of my thing because i have goal to make my own computer from scratch.

    Any suggestions on where to start?
    The_Wolf
    Reply With Quote  
     

  12. #11  
    Forum Sophomore
    Join Date
    Mar 2009
    Posts
    139
    Computer Engineering really isn't making one from scratch.

    A Computer Engineering degree at an accredited college (And check this, both of you, you do not want to go to a non-accredited college, the accreditation they need for your degree to be useful is ABET.) is an electrical engineering degree. It will teach you the basics of computer architecture, circuit theory, computer programming, digital logic, and good laboratory practice. Where it differs from an EE, is that you will have more and varied programming classes, theoretical computer organization (different ways to organize memory, etc, to make a computer), and few or no communications classes. You may not even have electromagnetics.

    A computer technician builds computers. It doesn't require a degree, but a good VoTech school can teach you that. Really, anyone with a brain can do it, all you need to do is read the spec sheets of the parts you want. Start with a processor, then choose a motherboard that can handle it. Choose ram that works with the motherboard, a HDD which is IDE/SATA depending on what's on the mother board, choose a video card that fits your specific PCI slot, a sound card for another slot, as many USB cards as you like, whichever drives you want, and networking cards. Make sure they all work with the motherboard and have the correct cables. Then figure out how big the power supply needs to be, buy it all and a case, and then assemble.
    --
    -M

    "Those that would give up essential liberty to obtain a little temporary
    safety deserve neither liberty nor safety."

    -Benjamin Franklin, An Historical Review of Pennsilvanya, 1759
    Reply With Quote  
     

  13. #12  
    Forum Freshman scubagirl's Avatar
    Join Date
    Aug 2009
    Location
    United States
    Posts
    12
    You can work as a programmer if you have a computer engineering degree (or EE), but in my experience, most engineers do not produce good code. They do less, if any, programming in college, and do not have the same thought processes for approaching programming problems. Just something to think about...

    I have a dual degree in CS and Physics, had 4 internships during college, and I started out making about $9,000 more at my company than if I hadn't had the job experience. The actual degree wouldn't have made a difference in my income level (all college hires start at the same pay grade unless they have previous job experience). That could be specific to my company though, I don't know.
    Reply With Quote  
     

  14. #13  
    Forum Freshman
    Join Date
    Aug 2009
    Posts
    29
    so what you saying is if i am passionate about programming, then i should pursue CE? dont get me wrong, i am interested in programming, but i want to push the limits of computing to improved artificial intelligence, theory, and encrypting, which im assuming is more CS? i am basically trying to teach myself a language and test how well i know it so i can get a headstart for college classes with some basic programming experience rather than going in unexperienced. I do enjoy mathematics and physics, but i will be the first to admit i am weak in chemistry, which i have been told as a rumor EE requires knowledge of Chem.?

    well i have been thinking about taking elective courses in college (nothing related offered at my HS), and possibly Majoring in Computer Science and minoring in computer engineering? so i can have an understanding of the hardware and software aspects of computers? I am aiming more into research and developing the future of computer possibilities.

    thanks for the suggestions.
    Reply With Quote  
     

  15. #14  
    Forum Sophomore
    Join Date
    Mar 2009
    Posts
    139
    No. I don't think anyone with a want to program should take CE. Here's my take on the four degrees from what I have seen in the workplace and in my school.

    CE: Watered down engineering. At my school they take: Basic circuit theory, Java, Java 2, "Multivarias" which is just HTML (supposed to be a survey of web programming), intro to C++ ("hardware/software design" is the official name, but you don't do anything other than intro to C++), "Hardware/software integration" (which is intro to C++ 2, no hardware component), digital logic, computer architecture, digital systems class, semiconductor device physics, and electronics (intro to transistors). My overall theory is that the school started it as an EE degree, removed important things like Electromagnetics (both classes), communication theory, embedded system design, and signals and systems (signal manipulation). The people that graduate this degree work all over the place. Some get jobs at the NSA, others at GE, Ford, DRS, Harris, etc. There's no pinning down exactly what they do. I know some that are glorified secretaries, just rewriting proposals (55k per year ).

    EE: Here you would take: Emag 1 and 2, Basic circuit theory 1 and 2, electronics (into to transistors), semiconductor device theory, signals and systems, communication theory, communication lab (actually building an RF system), digital logic, intro to C++ (hard/soft design), Embedded system design (really only talks about embedded system architectures and programming digital signal processors), fiber-optics, and there is a push to take digital electronics as an elective. EEs work everywhere as well, but they're more "specialized." Some of the people I know work at places like the NSA, GE, a few hybrid car companies, research labs, or any supplier of small electronics or electronic components. I personally have taken jobs in biometrics, teaching (current), lightning research, and wireless system design. This is where you would be if you wanted to do hardware research for AI, or neural nets, or other similar things. If you're looking to improve computing power, work in Quantum computing, or make a major development in computing you're likely to be here.

    The reason I can give specific class lists for the above is that I have both charts on my desk for my entry year. The requirements may be slightly different now, but not too far off of this. Also, you'll notice I have 2 more classes in EE, those are electives that the department doesn't require, but recommend. Those recommendations are fiber-optics, and communication lab. There are only 4 total choices for that "restricted" elective though. The other two are Semiconductor Fabrication Lab, and an acoustic based lab.

    For SWE: I don't have the charts, but the people I know in there take classes in C++, object oriented programing principles, operating systems, java, algorithms and data structures, systems analysis, and project management. These people are the ones that get jobs at Microsoft, EA Games, and other major programming corporations. Some go on and do research on things like neural nets, and ways to improve computing through software. This is where you should be if you want to program for a living. If every job you imagine your future having involves you sitting at a computer and being part of a large team making software, this is where you belong.

    For CS: Once again, I don't have the charts, but it is a survey of SWE classes. It is more generalized. They take more classes on computer architecture, project management, and system organization. They may take some circuit classes, but I don't think so. I don't know much about this degree as I don't know anyone that's taken it. I also don't know any CS graduates, so I can't really tell you where they work. I would suggest finding a college and looking at the class requirements for CS to see exactly what they do.

    As for the rest of your post, chemistry is not required to be a good electrical engineer. However, every school has these things called "general education classes." They waste the first 2 years of your degree on them, and about half of them are useless in your degree. The useless ones I had were Chemistry, Civlizations 1 and 2, Writing about Lit, Introduction to Lit, and "University Experience" (a BS class on how to feel good about yourself and join clubs). The non-useless ones were Calculus 1 through 3, Differential Equations, and Physics 1, 2 and modern. All of these classes were required.

    You don't usually get many electives. On my chart there are 6 spaces for electives, 2 are EE restricted, 1 is Math/Physics/Engineering, 2 are humanities, and 1 is social science.

    Finally, you simply won't get a good survey of both. The Bachelor degree is a survey of a field you intend to go into. It is broad so that you can find your interest and specialize later. Everything specific you will learn on the job. My best suggestion for a broad understanding of hardware and software aspects is going to be computer engineering. However, I don't think that is what you want, I think your research is going to end up being either software engineering, or electrical engineering. It depends on which part of the development you intend to work on. Do you plan on making new motherboards utilizing "spintronics" or do you plan on making new programs capable of utilizing all functions of the processor in such a way that computers develop abilities they never had before?
    --
    -M

    "Those that would give up essential liberty to obtain a little temporary
    safety deserve neither liberty nor safety."

    -Benjamin Franklin, An Historical Review of Pennsilvanya, 1759
    Reply With Quote  
     

  16. #15  
    Forum Freshman scubagirl's Avatar
    Join Date
    Aug 2009
    Location
    United States
    Posts
    12
    Quote Originally Posted by CarpeDiem
    i want to push the limits of computing to improved artificial intelligence, theory, and encrypting, which im assuming is more CS?
    Yes, I think you have the right idea. My CS degree studied first basic programming skills, then computer organization, data structures, algorithms, lots of computer science theory, AI, database systems, software engineering, etc*... There were a lot of optional electives that would have been introductions to other fields or more advanced versions of the required classes. I suggest taking a look at course catalogs for examples of what kinds of classes you'll be taking.



    *As a side note, programming isn't computer science. It's a tool to help computer scientists. In most CS programs in college, you will learn a lot of programming languages and less about computer science itself, so be careful.
    Reply With Quote  
     

  17. #16  
    Forum Freshman
    Join Date
    Aug 2009
    Posts
    29
    thanks for the clarification alienmindsinc. i think i am leaning more towards SWE more and more. but from what i gathered from the two posts was that CS is a theoretical view of computing, using SWE tools. i am interested in AI, quantum computing, and developing the next best software tools, so ill keep all of these options into consideration.

    thanks for the insight.
    Reply With Quote  
     

  18. #17 hmmm 
    Forum Freshman
    Join Date
    Sep 2009
    Posts
    19
    Wel i am not new to prgramming and i am 20.heck stil not at the university yet.but i have a tone of knowledge in the area....start with pascal first.then you move on.....
    BANKAI........
    Reply With Quote  
     

  19. #18  
    New Member
    Join Date
    Oct 2009
    Posts
    3
    At starting point "ANSI C" by bala gurusami is very good books
    you can purchase it and read it. :-D
    Reply With Quote  
     

  20. #19  
    New Member
    Join Date
    Nov 2009
    Posts
    3
    Hello Carpediem,
    I am Lucy."Teach Yourself C++ in 21 Days" is good . As you are new to programming so i would like to suggest a reference object oriented programming with c++ by E-Balagurusami. This book will guide you a lot.you can also get it from internet.
    Reply With Quote  
     

  21. #20  
    New Member
    Join Date
    Oct 2009
    Posts
    2
    Hey!

    I have the BEST resource for you.

    http://ocw.mit.edu/OcwWeb/Electrical...Home/index.htm

    It is an introductory course on computer science and programming at MIT's open course ware site. Best possible place to learn from

    They use the python programming language, but honestly, if you learn how to program in one language, you can move onto any other.

    Hope it helps! Check out all of the other material that they have on there as well. It is heaven for those who are self motivated learners.
    Reply With Quote  
     

Bookmarks
Bookmarks
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •