Global stocks sank Wednesday after US President Donald Trump said he was not satisfied with talks that are aimed at averting a trade war with China. Equities were also dented by poor eurozone economic data, and as Trump cast doubt on a planned summit with North Korean leader Kim Jong Un. “Trump (is) continuing to drive uncertainty over global trade,” said analyst Joshua Mahony at trading firm IG. “European markets are following their Asian counterparts lower, as a pessimistic tone from Trump is compounded by downbeat economic data,” he added. Markets had surged Monday after US Treasury Secretary Steven Mnuchin and Chinese Vice Premier Liu He said they had agreed to pull back from imposing threatened tariffs on billions of dollars of goods, and continue talks on a variety of trade issues. However, Trump has declared that he was “not satisfied” with the status of the talks, fuelling worries that the world’s top two economies could still slug out an economically pain...
There's a lot more to professional programming than writing code. From working with a team to solve problems to version control, you won't make it to the major leagues without a toolkit of other critical skills. We asked you, and some other professional developers, what those skills are, and here's what we learned.
With all the buzz about learning to code, it's easy to think that knowing a programming language is all it takes to be a professional developer. However, like other jobs, it takes more than one skill to really be great. We can't list everything that every programmer may need, but here are some of the most important skills (besides coding) you should work on if you really want to be a developer.
Know how to interact with your colleagues.
While some media sources portray programming as a loner's craft, the truth is that it really involves a lot of communication and working with others. If you work for a company, you'll be part of a development team and be expected to communicate and work well with others.
However, Jeff Bargmann, developer of Lifehacker favorites Fences and Bins, stresses that knowing how to talk and write clearly and convincingly is even important for the independent developer:
Nothing in school prepared me for the amount of written communication I'd have ahead. (We just code, right?) In your professional career—if you'd like to move up one day—you'll spend a ton of time communicating clearly, concisely and convincingly—thinking from the perspective of the recipient—over email to coworkers, managers, clients/partners and hopefully one day executives. And since you're used to doing things twice as fast as others (we're crafty, right?) it's going to be frustrating, because it's going to take you twice as long to get this right. And as an independent, this skill is a make-it-or-break-it—but by necessity you'll learn the hard way as you go.
Jeff also has some tips for developing your communication skills:
To clear this hurdle in stride vs learning on the go, you'll want real world practice (Just like how you got good at coding!). Publish some short articles, read emails aloud, face criticisms, and moreover just create for yourself experience; just like you did with that pet coding project.
If you don't have the opportunity to develop with a team right now, consider some college communication, speech, and writing classes to learn to do it the right way. Lynda offers a wealth of awesome communication courses if you're learning outside of the classroom.
Brush Up Your Problem-Solving Skills
Many developers say that understanding a programming language is only a minor part of coding. Problem-solving is another important skill that rookie developers often lack. Compare software development to putting a puzzle together: you need to figure out how to connect one piece of your program to another, and it's not always easy. Reader Jsimon explains:
I've met people who have complete command of an entire programming language, but couldn't solve their way out of a paper bag. Best example was in college when working a team project. I was asked to take a look at part of the code someone else was responsible for because they couldn't get it to connect to the server socket. He never set a port. He'd been troubleshooting for a week. Then there are people who can solve problems and just have no grasp of the language.
However, problem-solving is a difficult skill to learn. Practice is key here. Take on small projects like developing note taking applications, calculators, or anything you find interest in. When you do this, focus on the logic behind the code, and learning to think like a computer, rather than just understanding the language.
Learning how a computer works beforehand also helps. This tip comes from reader Jacobm001:
Problem solving is the biggest part of what we do. Computers are weird, and you usually need to relearn how you think about problems. To be effective, you need to truly learn how a computer operates and understand how the CPU processes information. I hate assembly personally, but I'm incredibly thankful that I took a course that focused on it. Programmers who have at least a little assembly under their belt have a much better idea on how to properly implement things.
Like Jsimon said, knowing how to both code and solve problems to connect the pieces is key. As you start to develop real programs, focus on developing a systematic approach to solving the problems you'll face.
What Messages From Your Boss Really Mean
If in college, you'll soon start working with teams in your programming clwe've already broken down the steps for using GitHub, and even showed you a cheat sheet to help you master
asses to develop projects. WindowsSVN and GitHub are two examples of tools development teams use to work together to create and update open source applications. These are available to everyone, but companies use Subversion and Apache SVN, among others. You should go into a new job understanding the basics of how these systems work so you can hit the ground running with your new teammates. It takes some time and practice to learn, so you'll feel behind if you land a job without knowing how to use at least one of them. Luckily
Comments
Post a Comment