Women’s Day, also known as international Working Women’s Day, in China is also known as “international Women’s Day”, “March eighth” and “March eighth Women’s Day”, it is the world’s women for peace, equality, development of the festival. The advent of women’s Day has to make people associate with women’s rights and interests, women as a vulnerable group in society, how to protect their rights? Although rights protection is very important, but for women programmers in the Internet era is more important, how to become an excellent programmer is also very important, so today we talk about how to become an excellent female programmer, see you meet several?

empty

What makes a good woman programmer

Start small and expand

Whether it’s creating a new system or adding features to an existing one, I always start with a version so simple that it has almost no required features, and then work through the problem step by step until I’m satisfied. I never dreamed that I could reach the sky at once. Instead, I learn as I develop, and the new information can be used in the solution. I love this quote from John Gall: “Complex systems always evolve from simple systems.

Change one thing at a time

When testing fails and features don't work during development, it's much easier to get to the bottom of a problem if you study it one at a time. In other words, use short iterations. Make sure this problem is solved before you move on to another one. This applies to downward submissions. If you need to refactor code before adding new features, submit the refactoring first and then add new featuresCopy the code

Add logging and error handling as early as possible

One of the first things I do when developing a new system is add logging and error handling, because both are very useful from the start. If the system isn't working, then you need to know what's going on in the program -- that's what logging is for. The same goes for error handling -- the earlier errors and exceptions are handled, the better.Copy the code

Each new line of code must be executed at least once

Before you can actually finish a feature, you have to test it. Otherwise, how do you know if it's working the way you want it to? Often, but not always, the best way to do this is through automated testing. But anyway, every new line of code must be executed at least once, rightCopy the code

Test the modules before testing the whole

It saves time to test some modules first. Generally speaking, we also have problems integrating different modules, such as interface mismatch between modules. But tracking integration issues is much easier if we can trust the componentsCopy the code

Everything always takes longer than you expected

Especially in programming, even if everything goes well, it can be difficult to properly budget the time required for functionality. And it's not uncommon to encounter unexpected problems when developing software. The truth of Hoidard's Law is that things always take longer than you expect, even if you have Hoidard's law factored into your expectationsCopy the code

Start with existing code

Most coding requires changing existing code in some way. Even new features need to be adapted to existing applications. So before you add anything new, you need to understand the current solution. Otherwise, you can easily break existing features if you're not careful. This means that reading code and writing code are necessary skills. This is one of the reasons why seemingly minor changes can still take a long time to resolve -- you have to understand the context firstCopy the code

Reading and running

Fortunately, there are two complementary approaches to understanding code. You can read the code and you can run it. Running code is a great way to do it. So make sure you take full advantage of both.Copy the code

Bugs are inevitable

I don't like the hype that software development can be "done in one go." No matter how hard you try, there will always be bugs. It is best to have a system that can quickly troubleshoot, fix bugs, and deploy fixesCopy the code

Troubleshooting Report

Every developer should take the time to deal with bug reports from customers and fix bugs. This gives you a better understanding of the customer's intentions, how to use the system, how easy it is to troubleshoot, and how the system was designed. It's also a good way to take responsibility for your own developmentCopy the code

A recurring problem

The first step in fixing a bug is to reproduce the problem. And then you have to make sure that once you fix it, the problem goes away. A simple rule like this ensures that you don't mistake a non-problem for a problem and that the solution actually worksCopy the code

Fix known errors and then look again to see if anything is missing

Sometimes, there may be several different problems at the same time. Their interactions can leave you clueless and helpless. Don't get caught up in trying to figure out what's going on, fix all the known problems first, and then see what else isn't rightCopy the code

There is no coincidence that

When testing and troubleshooting, don't believe in coincidences. If you change the value of the timer, you change the frequency at which the system restarts. So none of this is a coincidence. Add a new feature and an unrelated feature slows down? This is definitely not a coincidence. Instead, it's something you should investigate carefullyCopy the code

Associated timestamp

Event timestamps can be a useful aid in troubleshooting. Look for even increments. For example, if the system has been restarted and a request has just been made for around 3000 milliseconds, a timer may have been triggered to cause the restart.

Face-to-face communication is most effective

When we need to discuss how to solve a problem, is face-to-face communication better than video, phone calls and emails

Rubber ducks method

When you have a problem that you can’t solve by racking your brains, find a colleague and explain it to them. A lot of times, when you’re narrating, even if your colleague isn’t saying a word, you may suddenly have an Epiphany and get to the heart of the matter

Ask questions

Reading and running code is often very helpful in pointing out the purpose of the code and how it works. But if you have the opportunity to consult someone who knows better (for example, a former programmer), don’t miss it.

Share the honor

Don’t go for the honor, it’s yours. For example: “Marcus came up with this idea…” (if he did) instead of “We came up with it…” .

Try try

If you don’t know how a programming language feature works, write a small program to understand how it works. The same goes for testing the system you’re developing. What happens if I set the parameter to -1? What happens if the service fails when I restart the system? To study how it works.

Sleep with your problems

If you’re working on a difficult problem, sleep on it. There are scientific studies that show that while you may not be consciously thinking, your subconscious mind is doing it. As a result, go back to the problem the next day and find a solution

Jump slot

Don’t be afraid to jump ship. It’s fun to work with different people, develop different products and experience different company cultures

Keep on learning

We need to constantly learn and understand software development. You can try different programming languages and tools, read books on software development, and take MOOC courses. Believe me, quantity makes a great leap, these small accumulation of learning, will one day greatly improve your knowledge and ability

empty

Great female programmers

U = 2123409806234596, 921 & FM = 26 & gp = 0. JPG corrinne yu

Hong Kong-born famous female programmer. Kotaku named one of the 10 most influential women in games of the decade, and the only female programmer. Microsoft halo group lead game engine programmer, Microsoft game studio first and only female technical lead, known in the industry as the “female John Carmack”. She is a co-founder of Microsoft’s Direct3D advisory board, has worked on NVidia’s CUDA and GPU simulations, and has worked as a technical director at Gearbox, 3D Realms, Ion Storm, and more. The Game Developers Conference gave her the Game Woman of the Year award. China’s most beautiful programmer is Zhao Jieqiong interested in friends can see, from the IQ point of view, perhaps only Chinese child prodigy He Biyu can compare with him

Download jpeg.

Margaret Seinfeld Hamilton

Born into a modest family in 1936, Margaret sailed through high school and college, earning a bachelor’s degree in mathematics and a minor in philosophy in 1958. While at school she met and married James Hamilton, who became Hamilton Too. After graduation, Margaret Hamilton taught math and French in high school while waiting for her husband to get his bachelor’s degree. They then moved to Boston, where Margaret did research in abstract mathematics at Brandeis University, and took a temporary software development job at M.I.T. in 1960, writing weather-forecasting software at age 25. A year later, she moved to the 10-year-old Lincoln Laboratory. Here, Margaret worked on the NORAD project for semi-automatic ground air defense systems, writing software to detect enemy flight.

I hope this article is helpful to you, and I hope you will continue to pay attention to reprint. Please reply to the concerned public account for relevant information: Typescript, SpringCloud, Springboot, NodeJS, NGINx, MQ, JavaWeb, Java Concurrency, Advanced Java concurrency, Geek time, Dubbo, Kafka, Java interview questions, ES, Zookeeper, Java entry to master, block chain, Java quality video, big data, Kotlin, instant beauty, HTML and CSS, in-depth experience of Java development, Web development CSS series, Java Web development details, SpringMVC, Java concurrent programming, Spring source code, Python, Go, Redis, docker, that is, get the relevant information.

Follow me, there are surprises