Ten secrets that new programmers should know

Ten secrets that new programmers should know

You are a freshman who steps into the workplace with your diploma still smelling of ink, and is immediately confronted by the rules that are not written in the books and the various complicated daily affairs. Such stories are really common, and programming work is no exception.

Few students are 100% ready for their first real job. If you don't want to be one of them, learn these 10 essential skills that you can learn without any instruction:

1. Version Control System (VCS)

VCS may be the biggest omission in computer courses. These courses only remember to teach students how to write code, but often forget to teach students how to manage code. Every programmer should know how to use Git or Subversion to effectively create repositories, edit and submit code, branch and merge, and understand project workflow.

2. Learn to write

Being a programmer means more than just writing code. You also write release notes for your project, write commit messages to version control, and write bug reports in your system. These and many other areas require clear and effective written communication—a skill rarely emphasized in computer science.

3. Regular Expressions

Regular expressions are a language in themselves, and every modern programmer must be good at them. Every modern language supports regular expressions or has a standard library for them. If your code needs to check if a string contains 5 characters, 1 dash, and 1 digit, you should be able to write /^[AZ]{5}-\d$/ in no time.

4. Use of the library

It's 2014, so nobody needs to use regular expressions to extract hostnames from URLs anymore. Every modern programming language has a standard library that performs common functions.

Programmers need to understand that code that has been developed, tested, and debugged is usually better than code that you write from scratch. More importantly, code that doesn't need to be written is much faster to implement.

5. SQL

Many people learn SQL at work. How can database be an elective course? Is there anyone who doesn't use database?

The days of storing data in flat files are over. Everything goes in and out of the database, and SQL is the language for getting to and from the data. It is a declarative language, not a procedural one, so solving problems with it requires a new way of thinking. Every programmer should understand the basics of database normalization and be able to perform SELECT (and INNER, OUTER JOIN), INSERT, UPDATE, and DELETE.

6. Be able to use IDE, editor and CLI tools

A carpenter who only knows how to use a saw will never become a master, so it is surprising that a computer science graduate only knows Notepad or pico. Programming tools help manipulate code and other data, making programmers' lives easier. So every programmer should know how to use the command line, shell scripts, find, grep, and sed.

7. Debugging

Every programmer should know how to debug a program using an interactive debugger or by interspersing your code with output statements. The ability to track down a problem through step-by-step refinement is invaluable.

8. Error-proof programming

Mistakes are inevitable, even for star programmers. Out of control is the norm in the world, and mistakes are not surprising. Error-proof programming understands this fact. If things can't go wrong, we won't check whether the file is successfully opened, we won't check whether the customer ID is a valid number, and we won't test whether the code is allowed to be correct.

Programmers need to know that compiler warnings are useful tools that make our lives more comfortable, not troubles to be avoided. Every programmer should know why every PHP program starts like this:

set_error_reporting(E_ALL)

Every Perl program must contain these statements:

use strict; use warnings;

9. Teamwork

There is very little programming work that you can do alone. If you do it too often, your intelligence will be damaged and your performance will be weakened. Your code must interact or mix with others. Even the most talented programmers will have a negative impact on the project if they cannot collaborate with others and quickly become a burden on the organization.

10. Leverage existing code

When you are in school, every assignment is a new project. But the real world is not like this. For people who have just started working, the first task they receive is often to fix a code vulnerability. Then, based on the existing code base, add a small function to the existing system. Designing new code is a matter of a few months later, if you are lucky.

<<:  Qualcomm Vice President Shen Jin: Smart hardware startups focus more on user experience

>>:  WeChat 5.5 is coming! O2O highlights: card wallet and micro POS

Recommend

Beautiful buttocks exercise Beibei Baidu cloud download

Beautiful buttocks exercise Beibei resource intro...

How to go from 0 fans to 7K+ seed users through Missionbao?

In mid-July, I did an online micro-class sharing ...

How to improve the conversion rate of cash loan products?

1. The focus of products at different stages is d...

The outstanding appearance of corals is largely due to these “green pearls”!

Zooxanthellae are yellow-brown single-celled alga...

The zoo has issued a "fruit ban", how should we eat fruit? | Ficus microcarpa

Eating fruit in the zoo can cause diabetes . Is f...

How much does it cost to create a ticketing app in Shangluo?

In order to better penetrate into various industr...

Go 1.4 is officially released, officially supports Android

[[124626]] Go 1.4 is officially released, the fif...

Entering the "flower umbrella world" in the ocean - jellyfish

In the mysterious depths of the ocean, there live...

Lunar soil bricks: the first step in building a house on the moon

As my country's lunar exploration project con...