Self-taught computer science/engineering curriculum?

In summary: I would recommend checking out "Computer Architecture: A Concise Introduction" by David Patterson. It's relatively short and should give you a good understanding of how computers work.In summary, Chris is looking to learn more about computer science and engineering, and is interested in problem solving for the sake of learning. He recommends Project Euler as a good way to start. He also recommends learning computer architecture from David Patterson.
  • #1
kcaco10
2
0
Hello all,

I am not sure if formal introductions are required on this forum, but my name is Chris and I have degrees in physics and mechanical engineering. My current job is unrelated to these fields, but I hope to get an engineering-related job soon.

In any event, I have been antsy lately to exercise my mind and advance my knowledge of computer science and engineering. Specifically, I would like to learn both the physical and theoretical basis of computers, learn about software and hardware, and coding and programming as well. I took some EE and logic courses in college, and of course calc and diff eqs, which may help a bit. I was hoping that someone could recommend a self-taught program and some good books to help along the way.
 
Computer science news on Phys.org
  • #2
What language/paradigm do you want to learn the most? And more importantly, what do you want to do with what you learn?
 
  • #3
I suppose I am interested in process-oriented programming...I am more interested in learning how computers operate and how to build programs to assist in solving problems rather than for the purpose of developing games, applications, etc.
 
  • #4
I don't know what process oriented programing is. Is it something like multiprocessing or something? If it is, multiprocessing can usually be achieved in any language, given the APIs. I would suggest you learn something like C or C++, because of how ubiquitous they are.

If you're interested in problem solving for the sake of learning, you may want to try Project Euler. A whole site of problems to be solved with programming.

What do you mean by solving problems? What's an example of a problem you would like to solve?

Learning programming isn't going to teach you much about hardware though. A lot of people confuse computer engineering with computer science, when, in fact, they are two very separate fields.
 
  • #5


I can certainly understand your desire to continue learning and expanding your knowledge in different fields. It's great that you have a background in physics and mechanical engineering, as those subjects provide a solid foundation for understanding computer science and engineering.

In terms of a self-taught program, there are a plethora of online resources available to help you learn about computer science and engineering. Some popular options include online courses from sites like Coursera, edX, and Udemy, as well as tutorials and guides on websites like Codecademy and W3Schools. Additionally, there are many books on computer science and engineering that you can use as a supplemental resource. Some recommended titles include "The Art of Computer Programming" by Donald Knuth, "Code: The Hidden Language of Computer Hardware and Software" by Charles Petzold, and "Introduction to Algorithms" by Thomas H. Cormen.

It's important to note that self-teaching can be challenging, as it requires a lot of self-discipline and motivation. It may also be helpful to join online communities or forums where you can connect with others who are also learning and share resources and tips.

Overall, I encourage you to continue your pursuit of knowledge in computer science and engineering. With your background in physics and mechanical engineering, I have no doubt that you will be able to grasp the concepts and excel in these fields. Good luck on your learning journey!
 

1. What is a self-taught computer science/engineering curriculum?

A self-taught computer science/engineering curriculum is a learning program that individuals undertake on their own, without formal instruction or guidance from a teacher or institution. It typically involves learning and practicing various computer science and engineering concepts and skills, such as coding, software development, and hardware design.

2. Can someone with no background in computer science/engineering successfully learn through a self-taught curriculum?

Yes, someone with no background in computer science/engineering can successfully learn through a self-taught curriculum. However, it requires a lot of dedication, self-discipline, and determination to overcome challenges and acquire the necessary knowledge and skills.

3. What are the advantages of a self-taught computer science/engineering curriculum?

Some advantages of a self-taught computer science/engineering curriculum include flexibility in learning pace, the ability to choose specific topics of interest, and the opportunity to develop problem-solving and self-learning skills. It can also save time and money compared to traditional education options.

4. Are there any disadvantages to a self-taught computer science/engineering curriculum?

One disadvantage of a self-taught computer science/engineering curriculum is the lack of structured guidance and feedback from a teacher or mentor. This can make it challenging to identify and correct mistakes, and may lead to knowledge gaps. It also requires a lot of self-motivation and discipline to stay on track and complete the curriculum.

5. How can one create a successful self-taught computer science/engineering curriculum?

To create a successful self-taught computer science/engineering curriculum, it is important to have a clear goal in mind and a plan for achieving it. This may involve researching and selecting relevant resources, setting a study schedule and goals, and continuously evaluating and adjusting the curriculum as needed. Seeking support from online communities and forums can also be helpful in staying motivated and getting feedback on progress.

Similar threads

  • Computing and Technology
Replies
13
Views
2K
  • STEM Academic Advising
Replies
3
Views
794
  • STEM Academic Advising
Replies
1
Views
355
Replies
7
Views
1K
  • STEM Academic Advising
Replies
8
Views
1K
Replies
2
Views
890
Replies
18
Views
3K
Replies
4
Views
1K
  • STEM Academic Advising
Replies
6
Views
1K
  • STEM Academic Advising
Replies
3
Views
292
Back
Top