How Can I Be Better At Programming/Logic

  • Thread starter theitcrowd
  • Start date
In summary: Also, with respect to the aviation industry, it's important to be able to understand and work with avionics and cockpits, which may involve working with various types of semiconductors.
  • #1
theitcrowd
16
0
Hi Everyone,

Okay well I have just got into my second year of Computer Science Engineering, and I take two subjects related to programming, mind you I have a fairly good knowledge of C/C++, and I know how to write basic programs and a few data structure implementations.

Now I just want to know before I get into more detail stuff in my later years, how do I prepare and improve my logic of programming? or how do I understand more stuff or maybe learn a little earlier?

I am taking Discreet Mathematics , and I believe its one of my subjects to improve my logic and rational thinking , though I just started with it and I am not sure what to expect.

Also please help me and tell me what things to look out for during my Engineering Degree in Computer Science, I love networking , and hardware personally but it looks like Ill be doing it only in the third year, I also have to learn Electronics (MOSFET's etc.)

It sounds a lot of fun, but I just want to be prepared , right now I have to take 8 subjects as prescribed by my university.

Also is there any website with diagrammatic representations of stacks, queue etc. data structures or maybe videos, I have learned these in my high school, but I have forgotten.

Thank You All,
 
Physics news on Phys.org
  • #3
In what way are you "good" at programming or logic now, and in what way are you "bad" at them? You've asked a very vague question.
 
  • #4
If you're going to study discrete maths, I'd suggest Discrete Mathematics and Its Applications by Kenneth Rosen. The book might be a little bit dry (according to others), but I find it very useful and broad for all types of math that relate to computing and things like that. It's one of the most useful math books I have, if not the most useful.

Anyway, on getting better at these things... there's really no way other than to practice a lot. Programming is something that you can only get better at with time and experience. You can't learn to ride a bike by reading a book.

In regards to learning about stacks and stuff (and someone correct me if I"m wrong), it sounds like what you're looking for is something with operating systems and data structures (the latter you had mentioned). I know you said you wanted some diagrams and stuff only, but if you're going to be a computer scientist/engineer, you should have some books on the subject as it will be very handy in the future.

The computer scientist in me would say get an algorithms book... but I'm pretty sure you could live without one of those (though it might help to see them as it would surely help with improving your logical thinking). If you, however, decide you want to get one, I'd recommend Algorithm Design by Kleinberg and Tardos.
 
  • #5
These are all relevant articles.
http://www.paulgraham.com/avg.html"
http://www.paulgraham.com/gh.html"
http://www.paulgraham.com/head.html"

I would definitely agree that learning a functional language (not necessarily lisp, but just some functional language) helps you think logically, and frame problems in different ways.
 
Last edited by a moderator:
  • #6
  • #7
Thank you all for your inputs :)

Also can you tell me some tips or some subjects I should really look into now.

Are MOSFET's etc. important ?

Any specific area I should concentrate on, I am looking forward to joining the aviation industry with Computer Science , i.e. Making working with Avionics and Cockpits or something for the Airlines.

Any suggestions would be lovely.
 
  • #8
theitcrowd said:
Are MOSFET's etc. important ?
From the logic end, the type of semiconductors is immaterial. You can build the various logic gates using each type and from a digital design point of view you don't worry about the type of semiconductor.

e.g. TLL=Transistor-Transistor Logic, CMOS = Complementary Metal Oxide Semiconductor...
( MOSFET=Metal Oxide Semiconductor Field Effect Transistor is used for MOS or CMOS logic)
See e.g. http://en.wikipedia.org/wiki/Logic_family"

At the hardware level the choice of semiconductor type will determine the voltage levels of the 1 vs 0 and the power consumption, also thermal, EMF noise, and radiation resilience of the device, ... the production costs, speed, and degree of miniaturization as well. These engineering concerns may dictate some choices at the design level.
 
Last edited by a moderator:

FAQ: How Can I Be Better At Programming/Logic

How can I improve my problem-solving skills in programming?

In order to improve your problem-solving skills in programming, it is important to practice regularly and challenge yourself with different types of problems. This will help you develop your analytical and logical thinking abilities. Additionally, seeking help and guidance from experienced programmers, and studying and understanding code written by others can also aid in improving your problem-solving skills.

What strategies can I use to become a better programmer?

One strategy to become a better programmer is to break down complex problems into smaller, more manageable tasks. This will make it easier for you to identify the root cause of an issue and find a solution. Additionally, continuously learning and keeping up with new technologies and programming languages can also help you improve as a programmer.

How can I become more efficient in writing code?

To become more efficient in writing code, it is important to practice writing clean and organized code. This means using proper indentation, naming conventions, and commenting your code to make it more readable and understandable for both yourself and others. Additionally, learning keyboard shortcuts and using automation tools can also help increase your efficiency in writing code.

How can I improve my debugging skills?

To improve your debugging skills, it is important to understand the common errors and bugs that can occur in your code. This will help you identify and fix issues more efficiently. Additionally, learning how to use debugging tools and techniques, such as breakpoints and stepping through code, can also aid in improving your debugging skills.

How can I overcome challenges and obstacles while programming?

Overcoming challenges and obstacles in programming requires patience, perseverance, and a problem-solving mindset. It is important to break down the problem into smaller parts and focus on one step at a time. Seeking help and collaborating with others can also help in finding solutions to difficult problems. Additionally, taking breaks and stepping away from the problem for a while can also give you a fresh perspective and help you come up with new ideas.

Similar threads

Replies
12
Views
2K
Replies
3
Views
1K
Replies
19
Views
3K
Replies
11
Views
2K
Replies
6
Views
2K
Replies
7
Views
574
Replies
32
Views
2K
Back
Top