Название | Getting a Coding Job For Dummies |
---|---|
Автор произведения | Nikhil Abraham |
Жанр | Зарубежная образовательная литература |
Серия | For Dummies |
Издательство | Зарубежная образовательная литература |
Год выпуска | 0 |
isbn | 9781119121022 |
Beyond the Book
Online resources are available in addition to the ones in this book:
✔ Cheat sheet: Visit www.dummies.com/cheatsheet/gettingacodingjob for tips while job searching and during your interviews.
✔ Extras: Additional articles with extra content are posted for roughly each section of the book. You can access this additional material by visiting www.dummies.com/extras/gettingacodingjob.
✔ Updates: You can find any updates or corrections by visiting www.dummies.com/extras/gettingacodingjob.
Where to Go from Here
With all the administrative stuff out of the way, it’s time to get started. Remember, you can start at the beginning or jump to whatever section interests you the most. Congratulations on taking your first step to getting a coding job!
Part I
Getting a Job in Coding
Check out www.dummies.com/extras/gettingacodingjob for more great content online.
In this part …
✔ Understand why coding matters
✔ Explore coding career paths
✔ Follow a coder on the job
✔ Learn key coding concepts
Chapter 1
Seeing the Big Picture
In This Chapter
▶ Seeing the history of coding and where it’s headed
▶ Understanding different types of coding jobs and salaries
▶ Learning about companies that hire coders
If you just focus on the smallest details, you never get the big picture right.
Today, many moments in your daily life are affected by code. Code runs the mobile phone alarm that wakes you up in the morning, the word processing and spreadsheet software you use at work or in school to create letters or projections, the games you play on a phone or console, and the web browser you run to check your email and read the news. Many tasks in our lives have remained the same – there will always be people who need help waking up in the morning – but technology is increasingly influencing the way we complete these tasks.
Because you’re reading this book, you understand coding’s pervasiveness, but you may wonder about the industry’s size and future. Is getting a coding job like becoming a horse and buggy driver just as Ford was starting to sell the Model T?
In this chapter, you learn where coding came from, how fast it has grown, and what the future might hold for those who can code. Additionally, you’ll see the types of companies that hire coders and find out what recruiting professionals look for when hiring coders.
What Is Coding?
Computer code consists of a set of statements (like sentences in English); each statement directs the computer to perform a single step or instruction. Each step is precise and followed to the letter. For example, if you’re in a restaurant and ask a waiter to direct you to the restroom, he might say, “head to the back, and try the middle door.” To a computer, these directions are vague and therefore unusable. Instead, if the waiter gave instructions to you as if you were a computer program, he might say, “From this table, walk northeast for 40 paces. Then turn right 90 degrees, walk 5 paces, turn left 90 degrees, and walk 5 paces. Open the door directly in front of you, and enter the restroom.”
One rough way to measure a program’s complexity is to count its statements or lines of code. Basic applications such as Pong have 5,000 lines of code, while more complex applications such as Facebook currently have over 10 million lines of code. Whether few or many lines of code, the computer follows each instruction exactly and effortlessly, never tiring like the waiter might when asked for the 100th time for the location of the restroom.
Figure 1-1 shows lines of code from the popular game Pong. Don’t worry about trying to understand what every single line does.
Figure 1-1: Computer code from the game Pong.
Be careful when using the number of lines of code as a measure of a program’s complexity. Just like when writing in English, 100 well-written lines of code can perform the same functionality as 1,000 poorly written lines of code.
This book describes the ins and outs of careers in coding but will not teach you a programming language. In Part III, you can read about the different ways you can learn to code: by yourself, in a coding boot camp, in college, and on the job.
Why Coding Matters: Past, Present, Future
Today, programs written with code power so many different activities, and the work they do can almost seem like magic. With a few mouse clicks or finger taps, you can see your current location on a map, have groceries delivered to your door, or video chat with someone in another country. Although the research and development to make these advancements possible has been massive – billions of dollars invested and millions of hours worked – it has been worthwhile. In this section, I briefly describe a history of code and possibilities for the future.
Unveiled in 1946 at the University of Pennsylvania, ENIAC was the first general-purpose computer. See Figure 1-2. It was the size of a large room, and programmers punched holes in paper cards to code programs that could take hours to complete. Sometimes bugs would crawl inside these large computers, causing the circuits to malfunction and resulting in errors. Removing these bugs from the computer was called debugging, which is the name used even today.
Figure 1-2: ENIAC was the size of a large room.
Gradually, with advances in hardware, computers became smaller and more powerful. Whereas the ENIAC’s tens of thousands of resistors and capacitors took up almost 2,000 square feet, later microprocessors could fit all these electronics onto a chip the size of a postage stamp. Eventually, these microprocessors would be built using silicon, which is both cheap and plentiful.
Increased computing power from powerful microprocessors allowed programmers to write more complicated and resource-intensive programs. For example, computer games became faster, used more complex graphics, and displayed on-screen smoothly and realistically. Writing code, or software programming, depends on and is constrained by the underlying hardware on which the code runs. As computing power increases, code is written to provide more features at a faster speed to users.
Programming languages were also invented to take advantage of this new computing power. You may remember languages such as Basic, Fortran, Pascal, C++, and Java. Like spoken languages, programming languages were created to fill a need. If other programmers coded using the language, the programming language would survive and thrive; otherwise, it would die.