As a programmer what are some important things to know?

  • Thread starter EntropicLove
  • Start date
  • Tags
    Important
In summary, this book is about computer security and covers different topics such as buffer overflows, malware, and attacks.
  • #1
EntropicLove
45
1
Specifically,

What are some important things to learn about:

memory management, and about; exploring operating systems.

Thank you for your time!
 
Computer science news on Phys.org
  • #2
Hey EntropicLove.

I'd recommend learning about memory management systems, and the partitioning and design of memory with respect to the kernel, OS application, and other application levels.

I'd recommend you look at the device driver framework for modern OS platforms and I would also suggest you look at multi-threaded paradigms at both the kernel and application level.

Finally, take a look at the modern data structures that the kernel uses for I/O, networking, memory management, application execution, system and application libraries, system executables, and cache management.

Since the linux kernel is fully available open source, this will give you a real repository to look into and if you can find a decent guide, then it will keep you busy for a while.
 
  • #3
chiro said:
Hey EntropicLove.

I'd recommend learning about memory management systems, and the partitioning and design of memory with respect to the kernel, OS application, and other application levels.

I'd recommend you look at the device driver framework for modern OS platforms and I would also suggest you look at multi-threaded paradigms at both the kernel and application level.

Finally, take a look at the modern data structures that the kernel uses for I/O, networking, memory management, application execution, system and application libraries, system executables, and cache management.

Since the linux kernel is fully available open source, this will give you a real repository to look into and if you can find a decent guide, then it will keep you busy for a while.

Wow Thanks Chiro for your thorough answer.

I suspected my question was too broad.
 
  • #4
Since everything in the world is on the net, or will be soon, and since everything on the net is under attack, this seems like it would be important to know:

http://www.cl.cam.ac.uk/~rja14/book.html
 
  • #5


I understand the importance of having a strong foundation of knowledge in any field. As a programmer, there are a few key areas that are crucial to understand in order to be successful in the field. Two of these areas are memory management and operating systems.

Memory management is a critical aspect of programming, as it involves the allocation and organization of a computer's memory resources. It is important for programmers to have a deep understanding of how memory is managed in order to optimize the performance of their programs. This includes understanding concepts such as memory allocation, deallocation, and garbage collection. By understanding these concepts, programmers can ensure that their programs are efficient and do not cause any memory leaks, which can lead to crashes and other issues.

Exploring operating systems is another important aspect of being a programmer. Operating systems are the software that manages a computer's resources and provides an interface for users to interact with the computer. As a programmer, it is important to have a solid understanding of how operating systems work, as this can greatly impact the design and functionality of your programs. This includes understanding concepts such as process management, file systems, and security protocols. By understanding how operating systems work, programmers can design programs that are compatible with different operating systems and take advantage of their unique features.

In addition to these technical aspects, it is also important for programmers to have good problem-solving skills, attention to detail, and the ability to work well in a team. Programming is a collaborative field, and being able to communicate effectively and work well with others is essential for success.

In conclusion, as a programmer, it is important to have a strong understanding of memory management and operating systems. These are fundamental aspects of programming that can greatly impact the performance and functionality of programs. In addition, having good problem-solving skills and the ability to work well in a team are also crucial for success in the field. Continued learning and staying up-to-date with advancements in these areas is also important for staying competitive in the rapidly evolving world of technology.
 

1. What programming languages should I know?

As a programmer, it is important to have a good understanding of at least one high-level programming language such as Java, Python, or C++. It is also beneficial to have knowledge of web development languages like HTML, CSS, and JavaScript.

2. What skills do I need to be a successful programmer?

Aside from technical knowledge in programming languages, important skills for a programmer include problem-solving, critical thinking, attention to detail, and the ability to work in a team. Good communication and time management skills are also essential.

3. How can I stay updated with new technologies and programming languages?

To stay updated as a programmer, it is important to keep learning and practicing new technologies and programming languages. This can be done through online resources, attending workshops and conferences, and collaborating with other programmers.

4. What are some common mistakes made by beginner programmers?

Common mistakes made by beginner programmers include not properly commenting their code, not planning and organizing their code before starting, and not testing their code thoroughly. It is also important for beginners to ask for help when needed and to not get discouraged by challenges.

5. What is the importance of clean and efficient code?

Clean and efficient code is essential for a successful programming career. It allows for easier debugging, maintenance, and collaboration with other programmers. It also results in faster and more reliable programs, making it a valuable skill for any programmer to have.

Similar threads

Replies
9
Views
2K
  • Computing and Technology
Replies
6
Views
1K
  • Computing and Technology
Replies
6
Views
1K
  • Computing and Technology
Replies
20
Views
692
  • Biology and Medical
Replies
2
Views
904
  • Computing and Technology
Replies
2
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
9
Views
1K
Replies
20
Views
1K
  • Astronomy and Astrophysics
Replies
6
Views
1K
  • Computing and Technology
Replies
14
Views
1K
Back
Top