My First Computer, Advice Please

  • Thread starter Thread starter wScott
  • Start date Start date
  • Tags Tags
    Computer
AI Thread Summary
A flyer offering a local flyer delivery job has prompted a discussion about earning potential and the need for a suitable computer for programming. The individual aims to save for a personal computer to support their goal of becoming a programmer. Key points include the debate over the best operating system for programming, with Linux and Windows being recommended for their compatibility with popular programming languages like Python, Java, and C. While some argue that a powerful computer is essential for programming, others contend that any computer from the last decade is sufficient for learning. The consensus suggests that investing in programming books is more beneficial than purchasing an expensive new computer. Recommendations for beginner programming languages favor Python due to its accessibility, with suggestions for resources including O'Reilly books and online tutorials. The discussion emphasizes the importance of understanding programming concepts and design, advocating for a solid foundation in programming through structured learning materials.
wScott
Messages
87
Reaction score
0
We got a flyer in the mail today that I'm able to deliver flyer's in my area, and my sister thinks I'll earn at least $100 a month by doing this two times a week two hours a day.

I've got the patience and with this job I want to start saving up for my very own computer, the only problem is I don't know what to buy.

I want to be a programmer when I earn a living on my own some day, so I was wondering if you guys could give me suggestions for buying a computer that would be suitable for a programmer including the type of Operating System it has and etc. if at all possible.

I would really appreciate ANY help on this. After all I can't go asking a company's site what brand of computer I should buy :rolleyes:, so the only logical idea is to ask people with experience.
 
Computer science news on Phys.org
If you want to learn programming really well, I would recommend a powerful computer, it makes life much better.

learn linux though for OS, but keep windows. Mac really isn't that great for programming work, linux is prolly the best (if i am wrong, correct me).
 
physicsCU, eveything you've said is basically wrong. You really don't need a powerful computer at all to learn how to program; I have no idea why you'd come to that conclusion. In fact, any computer made in the last ten years would run Linux quite well, and that's all you need. In fact, the computer you have now is certainly adequate. If your hard drive is small, you might consider buying a larger one so you have room for a Linux distribution, though.

The languages that you'd start with (ANSI C, or Java, or Python) are available and behave identically under Linux, Mac, and Windows. It comes down to personal preference. Keep in mind that you'll probably end up using the computer for more than just programming.

I do suggest a Unix variant (MacOS X or Linux), as some exposure to Unix will help you understand computers in general better. MacOS X is as good (or better) for programming than any other kind of Unix. Again, I have no idea why physicsCU claims what he does.

- Warren
 
Last edited:
Ah, chroot, thank you for correcting me.

I forgot that those languages run the same in Linux, however, I did recommend linux to him as the best option.

I do a lot of numerical work in MATLAB, that is why I said i powerful computer is best. For just python programming or C, you are right. But for what I do, I notice a huge difference running stuff on my powerful computer versus my laptop. and a powerful computer DOES help with speed, you know that as well as i do. So if he is set on buying a new computer, he wants to be as future-proof as possible.

It is a smart idea to keep windows around, because sometimes there are issues if he gives code to someone working on windows. It can happen, so if he has windows he can check that himself.

Again, thanks for correcting me, but there is no need to act in the manner you did. You simply have another opinion and another methodology. However, don;t you think its best that he hear from people who use computers for different things so he can see what different applications need on the hardware side?
 
physicsCU:

Why on Earth did you make the assumption that he was talking about scripting in MATLAB? I assumed he meant general-purpose programming languages, since he just said we wanted to learn how to program.

The speed of a computer has very little do with learning a programming language -- the majority of the design cycle is spent in the editor, simply typing (or editing) code. Particularly when you're writing short, simple programs, compilation and runtime are insignificant compared to the amount of time spent writing.

I just don't want to see wScott waste a lot of very hard-earned money on some fancy state-of-the-art computer when he'd learn programming just as well on his current PC -- and he definitely would.

wScott, I'd strongly suggest putting the money you earn into a few good programming books instead of buying a new computer. (Let me know if you'd like some suggestions.)

- Warren
 
I also assumed he meant general programming, however, I was giving him another point of view. If he can see different ways that people use programming and knows what he wants to do, then he can make a better choice as to what he really needs.

You make a good point about most of the programming time being spent actually writing, but if you have a faster computer, the code runs faster. I know I notice that running MATLAB or even python.

I agree, he should try to save his money. But perhaps he needed a new computer anyway. Just trying to offer a different viewpoint of program work, that is all, not trying to start an argument here.

and actually, can you recommend me a python book, i am learning it using the built-in tutorial, but it doesn't really help me since I want to make programs that output graphics and such (example would be a simple game in python). Thanks!
 
Well I thank you for both of your help, and I don't even know what MATLAB is, but thanks for the suggestions anyways.

I guess I should of asked for books anyways, I just want my own computer so I don't have to put passwords on all of my documents and such.

Could you recommend some books for me, and physicsCU apparently, that are cheap to buy and aren't full of bs?
 
I recommend most of the O'Reilly books, like "Learning Python." I strongly suggest you avoid any of the "LEARN SOFTWARE ENGINEERING IN 3 HOURS" type books, because they're 500 pages long yet contain about 50 pages of actual worthwhile material.

You should start with Python or Java or C, in my opinion. Python is probably the 'coolest' and easiest of the three, but is still an "up and coming" language and is not used everywhere. C and C++, on the other hand, are used everywhere -- whether you like it or not, you're eventually going to have to learn both if you become a professional programmer. They aren't the friendliest languages, however, and you might be better off starting with Python.

Particularly since you plan on self-teaching, I'd say Python is the best language to start with.

If you really do need a new computer, you can get a basic one, certainly adequate for learning programming, for no more than a couple of hundred dollars. You might also consider looking around at school and corporate auctions in your area -- sometimes you can pick up a good lightly-used computer for practically nothing.

- Warren
 
Thanks for the idea on languages, I'll search my library database to see if there are any books related to that author.

Do you know of a way that I can find corporate auctions in my area?

EDIT: What's O'Reilly's first name?
 
Last edited:
  • #10
O'Reilly is not an author, it's a publisher.

- Warren
 
  • #11
Ahh okay, thanks for that. I found the site, and although the book isn't available through my public library I think I'm going to save up for it.
 
  • #12
Now that I see the cover of the python book, i think that is the one my EE friend used to learn python, and he made a program to play tetris, so I am figuring its what I am looking for too.
 
  • #13
Tetris with Python? Going to be cool.

Chroot, does the OS affect the Python language? I don't think it should but just ou of curiosity. I have Windows.
 
  • #14
wScott,

Python programs should run identically on any OS. The windows and buttons may look a little different, but they will function identically.

- Warren
 
  • #15
Most of the time you don't really need a book though. There are plenty of tutorials on the web, for example, for C, i use the following site as a reference:
http://www.cs.cf.ac.uk/Dave/C/

If it's your first language then book might be a good idea, but you'll see that programming languages are similar enough. Books can be expensive.
 
  • #16
That's a good point, Job. You can certainly get started with a language using nothing but online tutorials. On the other hand, you might have some trouble figuring out things like GUIs without some kind of reference. You can often find snippets of code demonstrating various things all over the net, but they often are not discussed as well as they would be in a book.

Here's a good tutorial for Python:

http://docs.python.org/tut/tut.html

- Warren
 
Last edited by a moderator:
  • #17
Thanks you guys.

Chroot, I found two resources so far but i'll make sure to give that a looksie.
 
  • #18
This is also a good C resource:
http://beej.us/guide/bgc/output/htmlsingle/bgc.html
 
Last edited by a moderator:
  • #19
Thanks for the link -Job-, but I'm not ready to take on C/C++ just yet.
 
  • #20
-Job- said:
Most of the time you don't really need a book though. There are plenty of tutorials on the web,If it's your first language then book might be a good idea,

When you're learning your first programming language, you're learning not just the nuts and bolts of that particular language, you're also learning how to program in general: how to take a vague idea of the problem you want to solve, sharpen it up and figure out an overall design or strategy for writing a program to solve it. It's like learning how to solve "word problems" or "story problems" in math, physics, etc., only harder.

Even for just the "nuts and bolts", most Web sites just give you bits and pieces. That's fine if you know which bits and pieces you need to know about, but if you're just starting out you're not likely to know that.

For both of these reasons, if you're just starting out, I strongly recommend getting a good introductory textbook for your first language, that also discusses general aspects of program design. After you've mastered one language, it's fairly easy to pick up new languages in bits and pieces because you have some idea of what to look for.
 
Back
Top