A must for senior programmers

Source: Internet
Author: User
Tags qmail

Become advancedProgramRequired knowledge

Learning content:
Part 1: computer structure and working principle, performance parameters of various spare parts, assembly of mainstream brands and computer hardware, CMOS settings, and hard disk partitioning, formatting, Windows 98/2000/XP installation, hardware driver and application installation, Windows Registry structure, backup and application, Windows Kernel: distribution of CPU, memory, hard disk, optimization of hardware and software systems, performance evaluation of the entire machine, principles and prevention of computer viruses, and common causes of software and hardware faults, symptoms and solutions, correct identification of counterfeit goods, goods, software and hardware sales skills.

Part 2: Basic composition, Development and Topology Design of the network, construction and implementation of 10 BASE-T LAN, as well as various Server structures and features, Ethernet peer network and other methods. Similarities and differences between the layer-4 TCP/IP model and the OSI Layer-7 model, TCP/IP protocol analysis, how to set IP addresses, subnet masks, default gateways, distinguish between subnets and network segments and hubs, switches and routers, creation and maintenance of RJ45 Network cables and Internet cafes, establishment and maintenance of NT, win2000server, and Linux server, establishment and debugging of 98 peer networks, and setting of proxy servers

Part 3: Win2000 configuration, user and permission, file and folder management, new feature Directory management, and group policy. Network Resource Monitoring, system environment setting, and disk system management. Installation, configuration, and management of web, FTP, DNS, DHCP, wins, and other servers. The exchange mail server software is used to establish and manage the personal mail server, bulletin board server, website email sending and receiving server, and chat server within the enterprise. SQL Server database creation, table creation and publishing, database backup and recovery, table Import and Export and a series of maintenance and management methods. The basic principle of the proxy server. Microsoft Proxy is used as an example to set and manage proxy servers.

> More positions

Part 4: Basic Principles of proxy servers. Microsoft Proxy is used as an example to set and manage proxy servers. Popular network management software Cisco work2000 configuration, use, and management skills, managing all the routers and switches in the network on a monitoring computer, real-time monitoring of network traffic, and timely detection of network problems. Routing and switching technology: Describes the routing principles and describes common configuration commands and configurations of Cisco routers by studying router configuration instances. The exchange principle is explained through

Part 5: manual customization of the system, system performance Detection Management, kernel settings and compilation. FTP and Samba services, and other services, such as DHCP and NFS. Web services. Including configuration and use of Apache services and security settings. Introduction to other web service software. DNS technology and application. Some simple routing technologies and some simple load balancing technologies. Mail network service. Configuration and use of Sendmail and qmail. Use of some mail client programs

Part 6: basic overview of network security, introduction of network protocols, basic knowledge of general encryption, basic knowledge of public key encryption and digital signature, difficult to authenticate, use PGP and digital certificates for email encryption experiments to comprehensively Describe network security countermeasures in the environment, various vulnerabilities, attack types, defense methods, and Security Configuration solutions (system security, IE Security, Outlook security, etc.) in Windows 98 ). In combination with the Attack Process of senior programmers

Implement Network Security countermeasures in the WindowsNT environment. Various vulnerabilities, attack types, defense methods, and Security Configuration solutions under WindowsNT fully describe the implementation of network security countermeasures, Windows System Log Security, Web security, and software firewall in the Windows2000 environment. Various vulnerabilities, attack types, defense methods, and Security Configuration solutions in Windows2000.

Part 7: Linux Administrator
I. Basic Applications
1. GNU/Linux introduction and RedHat Linux installation.
2. system knowledge (shell, file system, pipeline and redirection, process concept), common system commands (LS, CP, mkdir, RM, Vi, man, chmod, etc)
3. Basic System Management (including introduction to the system startup process, disk management, user management, log view, use of tar/GZ packages, and RPM software package management.

Ii. Basic System services (including graphic terminals and basic network services) (9 lessons)
1. Configure and use the graphic terminal (that is, X-window. The friendly interfaces of UNIX systems are displayed around KDE and (or) gnome.
2. Simple shell to teach you how to write, Environment Variables
3. Basic configurations (IP addresses, gateways, and names) of IP networks in Linux)
4. Configure and use network services in Linux (including basic configurations of FTP, DNS, Apache, Sendmail, and Samba ). RedHat-based setup and linuxconf are introduced. Introduction to Webmin management tools.

3. Prerequisite (background course)
1. Preface
2. Advanced system management. Including: manual customization (inetd, service, ntsysv), system performance Detection Management (Ps, top, tail, dmesg,/proc ).
3. kernel settings and compilation.

Iv. Advanced network applications
1. FTP and Samba services, and other services, such as DHCP and NFS.
2. Web Services. Including configuration and use of Apache services and security settings. Introduction to other web service software. DNS technology and application.
3. Some simple routing technologies
4. Some simple load balancing technologies.
5. mail network service. Configuration and use of Sendmail and qmail. Use of some mail client programs.

V. System Network Security
1. theories and applications of the packet filtering Firewall (NAT technology, kernel architecture, ipchains/iptable), and introduction of other non-core firewalls.
2. system security. Configure and use SSH. Intrusion Detection System and checkpoint Technology and Application
3. Theory and Application of VPN (virtual gateway. Including: IPSec, PPTP, authentication, Key Exchange Protocol, and other technologies.

Vi. Summary
Build a secure network service system in hybrid mode.

Basic advanced programmer Technology

The attitude of senior programmers is important, but the technology is more important. Attitude cannot replace technology. Before you are called a Senior Programmer by other senior programmers, you must master a basic set of technologies. With the emergence of new technologies and the passage of old technologies, this basic technology also changes slowly over time. For example, in the past, machine code programming was used, and HTML was only recently included. However, the following technologies are clearly included:

1. Learn how to program

Of course, this is the most basic high-level programmer technology. If you do not have any computer language, I suggest you start with python. It has clear design and complete documentation, which is suitable for beginners. Although it is a good elementary language, it is not just a toy. It is very powerful, flexible, and suitable for large-scale projects.

But remember, if you only speak one language, you will not reach the technical level required by senior programmers, it cannot even reach the level of a common programmer-you need to learn how to think about programming problems in a common way, independent of any language. To be a real Senior Programmer, you need to learn how to use some manuals within a few days to quickly master a new language based on what you know. This means you should learn several different languages.

If you want to do some important programming, you will have to learn the C language, Unix core language. Other languages that are important to senior programmers include Perl and lisp. Perl is very practical and worth learning. It is widely used in active web pages and system management, so you should be able to understand it even if you never use Perl to write programs. LISP is worth learning because you will get a wealth of experience when you finally master it; these experiences will make you a better programmer in the days to come, even though you may rarely use lisp itself.

Of course, you 'd better have four options. (Python, C, Perl, and lisp). Apart from being the four most important basic languages, they also represent four very different programming methods, each of which will benefit you a lot.

Here I cannot fully teach you how to program-this is a complex task. But I can tell you that books and courses cannot be written either. Almost all the best senior programmers are self-taught. What really works is to read it in person.CodeAnd write code.

Learning how to program is just like learning to write in natural language. The best practice is to read some famous masters and try to write something by yourself, read something, write something, read something, and write something .... so forth until you reach the conciseness and power you have seen in the essay.

In the past, it was difficult to find good code to read, because few large programs are available.Source codeIt allows new users to practice. This situation has been greatly improved; there are now a lot of available open source software, programming tools and operating systems (all written by senior programmers ). This makes us naturally come to the second topic...

2. Get an open-source Unix File and learn to use and run it.

I suppose you already have a personal computer or an available one (today's children are so happy ). The most basic step for beginners is to get a Linux or BSD-UNIX file, install it on a PC, and run it.

Of course, in addition to Unix, there are other operating systems in the world. But they are all sent in binary form-you cannot read its source code, and you cannot modify it. An attempt to learn advanced programmer technology on a DoS or Windows machine is like a tie on the leg to learn to dance.

In addition, UNIX is an Internet Operating System. You can learn to use the Internet without knowing UNIX, but you cannot become an Internet high-level programmer without knowing it. For this reason, today's high-level programmer culture is largely Unix-centric. (This is not always true. Some very early senior programmers are very upset about this, but the symbiotic relationship between UNIX and the Internet is so strong that even Microsoft is helpless)

So, install a Unix-I personally like Linux, but there are other options. (You can also run dos, windows, and Linux on the same machine. Run it. Use it to talk to the Internet. Read its code. Try to modify it. You will get more programming tools (including C, lisp, Python, and Perl) than the Microsoft operating system, and you will have fun, and will learn more than you think.

For more information about UNIX, see the loginataka.

For Linux, see: Where can I get Linux.

3. Learn how to use WWW and write HTML

Most of the things built by senior programmers play a role where you can't see them. They help factories, offices, and universities run normally. On the surface, it is hard to see the impact of these things on others' lives. Web is a big exception. Even politicians agree that this huge and dazzling high-level programmer toy is changing the world. For this reason alone (there are many other reasons), you need to learn how to master the web.

This does not only mean how to use a browser (anyone can), but also how to write HTML and web markup language. If you don't program, writing HTML will teach you some habits that help you learn. Therefore, create your own homepage first.

However, building only one home page cannot make you a Senior Programmer. Web pages are full of web pages. Most of them are meaningless and free of information.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.