web开发指南_成为专业Web开发人员的实用指南

web开发指南

This article is meant to serve as a practical guide to becoming a professional web developer. I’ve spent over 20 years writing code for the web. I work with and help developers daily. In this article, I will tell you what you should learn, when you should learn it, and where you can learn it from (usually for free). I’ll then give you advice on how to get real world experience and, most importantly, how to get paid for writing code.

本文旨在作为成为专业Web开发人员的实用指南。 我花了20多年的时间为网络编写代码。 我每天与开发人员合作并提供帮助。 在本文中,我将告诉您应该学习什么,何时学习以及可以从哪里学习(通常是免费的 )。 然后,我将为您提供有关如何获得实际经验的建议,最重要的是,如何通过编写代码获得报酬

Author’s Note: Due to popular demand, this article is now available as an expanded eBook that includes a special appendix that puts all the links from this article in one easy to follow list. You can get the eBook version here.

作者注意:由于需求旺盛,本文现在可以作为扩展电子书提供,其中包括特殊附录,该附录将本文中的所有链接放在一个易于遵循的列表中。 您可以在此处获取电子书版本。

I get no direct compensation for mentioning any of the sites listed here. I just want to provide you with the best resources possible to help you get where you’re going.

提及此处列出的任何网站,我都不会获得直接补偿。 我只想为您提供最好的资源,以帮助您到达目的地。

Two things to keep in mind…

请记住两件事...

1.可以跳过。 (1. It’s okay to skip ahead.)

This guide will help you no matter where you are on your journey toward becoming a professional developer. After reading this introduction, just scroll to the heading that best describes your situation and begin reading from there. If you’re just getting started, or just thinking about getting started, then follow the King’s advice from Alice in Wonderland…

无论您在成为专业开发人员的过程中处于何处,本指南都将为您提供帮助。 阅读完此介绍后,只需滚动至最能描述您的情况的标题,然后从那里开始阅读。 如果您只是入门,或者只是在考虑入门,那么请遵循爱丽丝梦游仙境》中国王的建议……

“Begin at the beginning and go on until you come to the end; then stop.”
“从头开始,一直到结束为止。 然后停下来。”
2.快速搞定一切的味道然后再专注。 (2. Quickly get a taste of everything first and then specialize.)

Money is not the most important thing. You need to ❤ LOVE ❤ what you do! But you won’t know what you love until you try it.

金钱不是最重要的。 你需要❤ ❤你做什么! 但是,除非您尝试一下,否则您将不知道自己喜欢什么。

This guide is all about helping you get familiar with as many areas of web development as possible, as quickly as possible, and then helping you specialize in the one you love. At first, you won’t master anything, you’ll just learn the basics and move to the next thing. Once you find your passion, I’ll show you how to dig deeper.

本指南旨在帮助您尽快地熟悉Web开发的尽可能多的领域,然后帮助您专注于自己喜欢的领域。 首先,您将不会精通任何内容,只会学习基础知识,然后再进行下一步。 一旦您发现自己的热情,我将向您展示如何深入研究。

我决定学习编码。 我喜欢网络。 我不确定从哪里开始。 (I’ve decided to learn to code. I like the web. I’m not sure where to start.)

Congratulations! This is a big first step and the start of something very exciting. It can also be totally overwhelming. Don’t worry, I’m here to help.

恭喜你! 这是重要的第一步,也是令人兴奋的起点。 它也可能是完全压倒性的。 不用担心,我在这里为您提供帮助。

Your first goal should be to get up to speed very quickly with the basics of all areas of web development (often called “the full stack”). You’ll go very wide in your learning, but not very deep. This is just about helping you find the area you like the best and building up some general skills across the board so that you can appreciate and handle a wide array of challenges regardless of where you end up specializing.

您的首要目标应该是非常快速地掌握Web开发所有领域的基础知识(通常称为“完整堆栈”)。 您的学习范围会很广,但不会很深。 这仅仅是为了帮助您找到自己最喜欢的领域,并全面掌握一些综合技能,这样无论您最终专注于何处,您都可以体会和应对各种挑战。

学习基本HTML (Learn Basic HTML)

Hypertext Markup Language (HTML) is what controls the content and layout of what you see in your web browser. By starting there, you will give yourself a User Interface that you can use to interact with, and see the results of, your code. As you tackle more advanced languages, this will become increasingly important. You don’t want to be coding in the dark.

超文本标记语言(HTML)是控制您在Web浏览器中看到的内容和布局的工具。 从那里开始,您将为自己提供一个用户界面 ,可用于与之交互并查看代码结果。 随着您使用更高级的语言,这将变得越来越重要。 您不想在黑暗中编码。

Here’s the HTML you need to learn about first (click the links to get a free tutorial):

这是您首先需要学习HTML(单击链接可获得免费的教程):

我知道一些基本HTML (I know some basic HTML)

Awesome! That’s an important first step. Now you need some basic JavaScript.

太棒了! 这是重要的第一步。 现在,您需要一些基本JavaScript。

学习基本JavaScript (Learn Basic JavaScript)

JavaScript is the language of the web, all major web browsers (Chrome, Firefox, Safari, IE, and many more) have JavaScript support built in. Every web site or web application you’ve ever used probably has lots and lots of JavaScript code behind it. Not to mention, JavaScript is now becoming popular on other platforms as well, including servers, desktops, and devices.

JavaScript是Web的语言,所有主要的Web浏览器(Chrome,Firefox,Safari,IE等)都内置了JavaScript支持。您曾经使用过的每个网站或Web应用程序都可能包含很多JavaScript代码。在它后面。 更不用说,JavaScript现在也正在其他平台上流行,包括服务器台式机设备

For now, you just need the basics, these links will help:

目前,您只需要基本知识,这些链接将帮助您:

我知道一些基本JavaScript和HTML (I know some basic JavaScript and HTML)

Fantastic! Let’s get some CSS under your belt.

太棒了! 让我们带些CSS。

学习CSS (Learn CSS)

CSS stands for Cascading Style Sheets. It’s used to customize the look and feel of the HTML elements on your page. Follow this free tutorial from Mozilla, to get the basics, and then frequently consult CSS-Tricks to solve the most difficult CSS problems (use the search feature on the top right).

CSS代表级联样式表。 它用于自定义页面上HTML元素的外观。 请遵循Mozilla的这个免费教程 ,以获取基础知识,然后经常查阅CSS-Tricks以解决最困难CSS问题(使用右上方的搜索功能)。

移至“后端” (Move to the “Back End”)

At this point, you’ve been exposed to what is called “front-end web development”. That is to say, you know the major languages that run in a web browser. It’s time to move to the “back end”. Which is code that runs on a server. Don’t worry you don’t need a server to learn this, your own computer will do just fine.

此时,您已经接触到所谓的“前端Web开发”。 也就是说,您知道Web浏览器中运行的主要语言。 现在该转向“后端”了。 这是在服务器上运行的代码。 不用担心,您不需要服务器就可以学习,您自己的计算机就可以了。

There are lots of backend languages, but since you’re already familiar with JavaScript, I’m going to recommend you learn to use Node JS. Node JS allows you to execute JavaScript code on a server (instead of in a browser).

有许多后端语言,但是由于您已经熟悉JavaScript,因此我建议您学习使用Node JS。 Node JS允许您在服务器上(而不是在浏览器中)执行JavaScript代码。

In addition to Node JS, you should learn about Express and Mongo DB.

除了Node JS,您还应该了解Express和Mongo DB。

ExpressExpress is a library that makes it easier for Node JS to act as a web server (i.e. listen for “requests” from your web pages, and send “responses” back to your web pages).

Express Express是一个库,它使Node JS可以更轻松地充当Web服务器(即,侦听您网页中的“请求”,并将“响应”发送回您的网页)。

Mongo DBMongo DB is a database. It allows you to store and retrieve information.

Mongo DB Mongo DB是一个数据库。 它允许您存储和检索信息。

You can learn about Node JS, Express, and Mongo DB, from this excellent, free, tutorial and its sequel.

您可以通过其出色的免费教程及其续篇了解Node JS,Express和Mongo DB。

我需要在“前端”,“后端”或“全栈”开发人员之间进行选择。 (I need to choose between being a “Front End”, “Back End” or “Full Stack” Developer.)

If you’ve been exposed to both ends, it’s time to make a choice. If not, please follow the advice in the previous section to fill any gaps in your knowledge.

如果您遇到了两端问题,那么该做出选择了。 如果不是这样,请按照上一节中的建议来填补您所学的空白。

By now, you’ve written two kinds of code. One kind has to do with user interaction. The other kind has to do with data interaction. Which kind do you prefer?

到目前为止,您已经编写了两种代码。 一种与用户交互有关。 另一种与数据交互有关。 你喜欢哪一种?

User Interaction? Congratulations, you’re a front end developer!

用户互动? 恭喜,您是前端开发人员!

Data Interaction? Congratulations, you’re a back-end developer!

数据交互? 恭喜,您是后端开发人员!

Both? Congratulations, you’re a full stack developer!

都? 恭喜,您是一名全栈开发人员!

Hated everything? Congratulations, becoming a web developer is not for you, be glad you figured this out now instead of wasting more time and money. Not ready to give up yet? Maybe you haven’t found a language you love yet? Try some of the other languages covered in “I want to be a backend developer”.

讨厌一切吗? 恭喜,成为Web开发人员不适合您,很高兴您现在就明白了这一点,而不是浪费更多的时间和金钱。 还没准备放弃吗? 也许您还没有找到自己喜欢的语言? 尝试“我想成为后端开发人员”中介绍的其他一些语言。

我想成为一名全栈开发人员 (I want to be a Full Stack Developer)

Cool. You need to read and do everything under I want to be a Front End Developer and I want to be a Back End Developer below.

凉。 您需要阅读并做下面的所有事情, 我想成为一名前端开发人员,我想成为一名后端开发人员

我想成为一名前端开发人员,并且了解一些基本JavaScript,HTML和CSS (I want to be a Front-End Developer and I know some basic JavaScript, HTML, and CSS)

To be effective as a front-end developer, you need to master HTML, CSS, and client-side JavaScript. You’ll also need to become proficient in some important frameworks. This will give you the skills that employers and clients expect from front-end developers.

为了成为一名前端开发人员,您需要掌握HTML,CSS和客户端JavaScript。 您还需要精通一些重要的框架。 这将为您提供雇主和客户对前端开发人员所期望的技能。

By now, you should know some basic HTML. If not, go back to Learn Basic HTML.

现在,您应该已经了解一些基本HTML。 如果没有,请返回学习基本HTML。

学习中级和高级HTML (Learn Intermediate and Advanced HTML)

Follow this intermediate HTML tutorial and then this advanced HTML tutorial to get you skilled up.

遵循此中级HTML教程 ,然后再阅读此高级HTML教程,以使您熟练掌握。

了解高级客户端JavaScript (Learn Advanced Client-side JavaScript)

To level-up your JavaScript, I highly recommend the book series, You Don’t Know JS by Kyle Simpson. The author has made the entire series available online for free at these links:

为了提升您JavaScript水平,我强烈推荐Kyle Simpson撰写的系列书籍《 You't Know JS》 。 作者通过以下链接免费在线提供了整个系列:

  1. “Up & Going”

    “往上走”

  2. “Scope & Closures”

    “范围和关闭”

  3. “this & Object Prototypes”,

    “此和对象原型”

  4. “Types & Grammar”

    “类型和语法”

  5. “Async & Performance”

    “异步与性能”

  6. “ES6 & Beyond”

    “ ES6及更高版本”

Along with those books, the MDN JavaScript Reference should become your best friend.

与这些书一起,《 MDN JavaScript参考》应该成为您最好的朋友。

Knowing the “front-end trifecta” HTML, CSS, and JavaScript is great. But to start earning money, you’ll need to get familiar with some frameworks.

知道“前端三重奏” HTML,CSS和JavaScript很棒。 但是要开始赚钱,您需要熟悉一些框架。

学习jQuery (Learn jQuery)

jQuery is the most popular JavaScript library of all time. Although some newer frameworks make jQuery less relevant, if you’re looking for employment, chances are jQuery will be part of the job description (and interview) for many years to come.

jQuery有史以来最受欢迎JavaScript库。 尽管某些较新的框架使jQuery的相关性降低,但如果您正在寻找工作,那么很可能在未来很多年中jQuery都会成为工作描述(和面试)的一部分。

I recommend following the jQuery path at FreeCodeCamp to begin learning jQuery quickly and effectively. After that, go to jQuery’s official learning site to get more instruction.

我建议遵循FreeCodeCamp上的jQuery路径来开始快速有效地学习jQuery。 之后,请访问jQuery的官方学习网站以获取更多说明。

You’ll also want to keep the jQuery API docs handy.

您还将希望方便地使用jQuery API文档

Frameworks make working with a particular language or technology easier by addressing and solving some of the biggest problems with that technology. JavaScript has seen a huge boon in the development and popularization of frameworks.

通过解决和解决该技术的一些最大问题,框架使使用特定语言或技术的工作变得更加容易。 JavaScript在框架的开发和普及中受益匪浅。

It seems like every week there’s a new JavaScript framework that is touted as the next defacto standard. You’ll have to check the job boards or do some Googling to figure out which one is the most popular for your market. A good place to check is the Hacker News hiring trends tool.

似乎每个星期都有一个新JavaScript框架被吹捧为下一个事实上的标准。 您必须检查工作板或使用Google搜索来找出最适合您的市场的工作板。 黑客新闻招聘趋势工具是一个不错的选择。

Here’s what seems to be in demand at the time of this writing:

在撰写本文时,这似乎是需要的:

React JS (React JS)

React was created by Facebook to work with their Flux architecture. It is a JavaScript library for building interfaces. It has surged to first place recently, overtaking Angular. So start with React. There’s a good free course introducing React here.

React是由Facebook创建的,用于其Flux架构 。 它是用于构建接口JavaScript库。 最近,它已超过Angular升至第一名。 所以从React开始 。 有一个很好的免费课程引入阵营在这里

角度12 (Angular 1 and 2)

Angular JS was created by Google and really took off as soon as it was introduced. Many companies invested heavily in the framework and, as you can see from the graph above, it is still very popular. Unfortunately, Google felt the need to completely re-write Angular when they built version 2. So Angular 1 and Angular 2 are almost like two completely different frameworks. If you want to call yourself an expert in Angular, as of right now, you need to learn both to be really marketable. There’s probably still a window of time, where only knowing Angular 1 is enough. But that window is closing. The majority of Angular work will be in transitioning Angular 1 code bases to Angular 2. Code School has a fun free course for Angular 1. For Angular 2, check out this free video series to learn the basics.

Angular JS是由Google创建的,一经引入便真正起飞。 许多公司在该框架上投入了大量资金,从上图可以看出,该框架仍然很受欢迎。 不幸的是,Google感到在构建版本2时需要完全重新编写Angular。因此Angular 1和Angular 2几乎就像两个完全不同的框架。 从现在开始,如果您想称自己是Angular的专家,则需要学习两者,以使其真正具有市场价值。 也许还有一段时间,只知道Angular 1就足够了。 但是那个窗口正在关闭。 Angular的大部分工作将是将Angular 1代码库转换为Angular2。CodeSchoolAngular 1提供了一个有趣的免费课程。 对于Angular 2,请查看免费视频系列以学习基础知识。

灰烬JS (Ember JS)

There are still quite a few jobs for people with Ember JS experience, but as you can see from the graph, it’s starting to flatline. It doesn’t have the support of a juggernaut like Google or Facebook behind it, and you’ll have your hands full with React and Angular. Still, if you’re curious, you can follow along with the official Ember JS guide.

对于拥有Ember JS经验的人来说,仍然有很多工作,但是从图中可以看出,它开始趋于稳定。 它背后没有像Google或Facebook这样的巨头的支持,而React和Angular会让您一臂之力。 不过,如果您感到好奇,可以继续阅读Ember JS官方指南

Once you’ve chosen the framework you like best, and are reasonably familiar with it, it may be worth exploring an accompanying CSS framework. The two dominant players in CSS right now are Bootstrap and Material Design.

一旦选择了最喜欢的框架并相当熟悉它,就值得探索一个附带CSS框架。 目前,CSS中的两个主要角色是Bootstrap和Material Design。

引导程序 (Bootstrap)

Bootstrap was made by Twitter and is quite mature and popular. There are versions of Bootstrap for Angular, Angular 2, and React.

Bootstrap是由Twitter制作的,非常成熟且受欢迎。 有适用于Angular,Angular 2和React的Bootstrap版本。

材料 (Material)

Material is a design guideline put out by Google that is gaining traction. There are Angular and React versions of it as well. Since Angular is also put out by Google, you’ll find there’s a natural fit there.

材料是Google越来越受欢迎的设计指南。 它也有Angular和React版本。 由于Angular也由Google发布,因此您会发现这里很自然。

Here are some links to get you going.

以下是一些链接,可助您一臂之力。

Congratulations! You now have the key skills needed to be a Front End Developer!

恭喜你! 您现在已经拥有成为前端开发人员所需的关键技能!

我想成为一名后端开发人员 (I want to be a back-end developer)

Excellent! The first step, is choosing a language. On the back-end, there are many languages that work, all have their strengths and weaknesses. Take a look at the following graphic, it ranks programming languages in terms of popularity. These have all been in the top 10 for a decade. The ones in green are web languages that have been getting more popular over the years.

优秀的! 第一步是选择一种语言。 在后端,有许多有效的语言,各有优缺点。 看一下下面的图形,它按照受欢迎程度对编程语言进行了排名。 这些都已经进入十年前十名。 绿色的是多年来逐渐流行的网络语言。

The languages in green are where you should focus. If you don’t already know any of these, start at the top and work your way down. Stop when you find one you like, and go deep!

绿色是您应重点关注的语言。 如果您还不了解这些,请从顶部开始,然后逐步进行。 当找到喜欢的人时停下来,然后深入吧!

If you’re already familiar with a particular green language, and you like it, then focus on that one.

如果您已经熟悉一种特定的绿色语言,并且喜欢它,那么请专注于该绿色语言。

Java (Java)

Java is an extremely popular language and can run (almost) anywhere. It was developed by Sun Microsystems (now owned by Oracle). Java is the language used to build Android apps. It can also be used to build desktop applications and, of course, it can be used to build web applications (either as a stand-alone backend, or coupled with JSP). It’s mature, stable, and there are a ton of resources to learn Java. It’s also one of the mostly widely taught Object Oriented Programming languages in colleges and universities around the world. Here’s a free Java course for beginners, that’s quite good.

Java是一种非常流行的语言,可以(几乎)在任何地方运行。 它由Sun Microsystems(现在归Oracle拥有)开发。 Java是用于构建Android应用程序的语言。 它也可以用于构建桌面应用程序,当然,也可以用于构建Web应用程序(作为独立后端或与JSP耦合)。 它是成熟,稳定的,并且有大量的资源来学习Java。 它也是世界上大学中广泛教授的面向对象编程语言之一。 这是面向初学者的免费Java课程,非常不错。

C# (C#)

C# is a language created by Microsoft to directly compete with Java. Until recently, it was not well supported on non-Microsoft systems, but that is quickly changing. Like Java, it is object oriented, and can be used to build not only Web Applications (either as a standalone backend or coupled with ASP.Net) but also for desktop apps as well. If you’re a Windows user and want a slightly more contained eco-system to program within, C# might be the way to go. Check out this free course from Microsoft Virtual Academy.

C#是Microsoft创建的直接与Java竞争的语言。 直到最近,它在非Microsoft系统上还没有得到很好的支持,但是这种情况正在Swift改变。 与Java一样,它也是面向对象的,不仅可以用于构建Web应用程序(作为独立的后端或与ASP.Net耦合),而且还可以用于桌面应用程序。 如果您是Windows用户,并且希望在其中编写一个稍微更封闭的生态系统,那么C#可能是可行的方法。 从Microsoft Virtual Academy上免费学习此课程

Python (Python)

Although it doesn’t have a big name company behind it like Java or C#, Python is a great language for getting things done quickly. It’s relatively easy to learn and it’s getting more and more popular each year. If you don’t love the others, this is a good language to sink your teeth in. The best place to get started is right here.

尽管它没有像Java或C#这样的知名公司,但Python是一种出色的语言,可让您快速完成工作。 它相对容易学习,并且每年都越来越受欢迎。 如果您不爱其他人,这是一种让您深信不疑的好语言。最佳的入门场所就在这里

JavaScript (JavaScript)

If you’ve been following along since the beginning, we’ve already covered JavaScript. With the advent of Node JS and the popularity of npm (the Node Package Manager), JavaScript on the server is only going to get more popular in the years to come. Well worth learning.

如果您从一开始就一直关注,我们已经介绍了JavaScript。 随着Node JS的出现和npm (Node Package Manager)的普及,服务器上JavaScript只会在未来几年变得越来越流行。 非常值得学习。

If you didn’t do it earlier, now is good time to learn about Node JS, Express, and Mongo DB, from this excellent, free, tutorial and its sequel.

如果您没有早做,那么现在是学习Node JS,Express和Mongo DB的好时机,它是他出色的免费教程及其续篇

Ruby (Ruby)

Ruby is an odd bird. People who love it, really, really, love it. It’s in the top 10, but it appears to be slowing in growth. The language itself is a blend between functional programming and imperative programming. I recommend trying it out, maybe you’ll become one of it’s die-hard fans. There will be lots of Ruby work for years to come. But you may want to double check the listings in your particular area to ensure that at least a few companies have been bitten by the Ruby bug.

Ruby是一只奇怪的鸟。 真的,真的,很喜欢它的人。 它在前十名中,但增长似乎正在放缓。 语言本身是功能编程和命令式编程之间的混合体。 我建议您尝试一下,也许您会成为顽固的粉丝之一。 未来几年将有很多Ruby工作。 但是您可能需要仔细检查您特定区域中的清单,以确保至少有几家公司被Ruby错误咬住了。

The best place to learn Ruby is RubyMonk

学习Ruby的最佳地方是RubyMonk

PHP呢? (What about PHP?)

There’s a lot of PHP in the marketplace but, at least according to this dataset, it seems to be getting less popular. I made it yellow because I think, right now, it’s still a viable choice to build a career on. Also, in the interest of full disclosure, I am not a fan of PHP, so maybe some personal bias has crept in here as well, but I can’t imagine that in the next 5–10 years PHP will be more valuable than JavaScript, even though it ranks higher at the moment and there will probably still be jobs out there for PHP developers.

市场上有很多PHP,但至少根据此数据集看来,它似乎不太流行。 我把它染成黄色是因为我认为现在这仍然是继续发展事业的可行选择。 另外,出于全面披露的目的,我也不喜欢PHP,所以也许有些个人偏见也在这里蔓延,但是我无法想象在未来的5-10年中,PHP会比JavaScript更有价值。 ,尽管它目前排名较高,并且可能仍会为PHP开发人员提供工作。

我学到了很多东西,但是我没有现实世界的经验。 (I’ve learned a lot, but I have no real world experience.)

It’s extremely difficult to get a job without any experience.

没有任何经验,很难找到一份工作。

The first step is to complete one or two personal projects, to get comfortable building things from end to end.

第一步是完成一个或两个个人项目,从头到尾轻松构建东西。

When you start building personal projects, it’s useful to have a way to manage and publish your code. For that, you need GitHub.

当您开始构建个人项目时,拥有一种管理和发布代码的方法很有用。 为此,您需要GitHub。

的GitHub (GitHub)

GitHub is an online source code repository built on the Git platform. It allows you to store, manage, and publish your code. If you are a developer today, you MUST have a GitHub account. You can learn more about GitHub and how to use GitHub from this “Hello World” guide and also, from this interactive tutorial about using the Git platform.

GitHub是建立在Git平台上的在线源代码存储库。 它允许您存储,管理和发布代码。 如果您今天是开发人员,则必须拥有一个GitHub帐户。 您可以从此“ Hello World”指南以及有关使用Git平台的交互式教程中了解有关GitHub以及如何使用GitHub的更多信息。

个人项目 (Personal Projects)

Now that you’re set up with GitHub, here are a couple of personal project ideas.

现在您已经使用GitHub进行了设置,这里有一些个人项目构想。

Free Code Camp also has a variety of projects to try, including some front-end only ones. Here are two of my faves:

Free Code Camp也有很多项目可以尝试,包括一些仅前端的项目。 这是我的两个最爱:

真实经验 (Real Experience)

Next, you need real experience. Real experience means doing work for someone else. Personal projects are useful, but they’re not enough to make you competitive in the job market. There are a few avenues for gaining real experience.

接下来,您需要真正的经验 真正的经验意味着要为别人工作。 个人项目很有用,但不足以使您在就业市场上具有竞争力。 有一些获取真实经验的途径。

1.为开源项目做贡献 (1. Contribute to an Open Source Project)

Thanks to the popularity of GitHub there are millions of open source projects out there with open issues (bugs) just waiting to be fixed by someone like you. Putting on your resume that you’ve contributed to some popular and well known open source projects, is a great way to establish and boost your credibility. The best resource for figuring out what projects to contribute to is Code Triage. Code Triage lets you pick your favorite project and will send you a different open issue right to your inbox every day.

由于GitHub的流行,有数百万个带有开放问题(错误)的开源项目正在等待被您这样的人修复。 将您为一些流行和知名的开源项目做出过贡献的简历放到简历上,是树立和提高信誉的好方法。 找出要贡献哪些项目的最佳资源是Code Triage 。 使用Code Triage,您可以选择自己喜欢的项目,并每天将不同的未解决问题直接发送到收件箱。

2.为朋友或家人工作 (2. Do Work for a Friend or Family Member)

Find a friend, or a family member, who has a business and build them a web app or web site, or improve their existing one. Just make sure that you choose very carefully, you need to pick the right-sized project and the right family member so that you avoid any uncomfortable situations down the road. Ideally, it should be a project you can complete in under 90 days and a person with whom you have a very honest relationship. You shouldn’t be afraid to admit if/when things aren’t going as planned and you shouldn’t be afraid or worried about having to say “no” or telling them to “back off” on certain requests or expectations. Also, you should be sure that if either of you end up bailing for any reason, it won’t permanently damage your relationship.

查找有生意的朋友或家人,并为他们建立一个Web应用程序或网站,或改善现有的网站。 只需确保选择非常仔细,就需要选择合适大小的项目和合适的家庭成员,以免在旅途中遇到任何不舒服的情况。 理想情况下,它应该是一个可以在90天内完成的项目,并且与您有非常诚实的关系。 您不应该害怕是否/当事情没有按计划进行时,也不必担心或担心不得不说“不”或告诉他们根据某些要求或期望“退缩”。 另外,您应该确保如果由于任何原因最终导致保释,这不会永久损害您的关系。

3.为慈善/非牟利工作 (3. Work for Charity/Non-Profits)

A very rewarding way to gain real experience is to do some work for non-profits and/or charities. You can approach a local charity or non-profit that you feel strongly about and offer to help. You can also use the site Catch a Fire to find a project that you can help with. Finally, if you follow the program at Free Code Camp and earn all their certificates, you will gain access to non-profit projects where you can put your skills to good use.

获得真实经验的一种非常有益的方法是为非营利组织和/或慈善机构做一些工作。 您可以与自己有强烈想法并愿意提供帮助的当地慈善机构或非营利组织接触。 您还可以使用“ 着火 ”网站找到可以帮助的项目。 最后,如果您在Free Code Camp参加了该计划并获得了所有证书,您将可以访问非营利项目,在这里您可以充分利用自己的技能。

4.生计劳动 (4. Subsistence Labour)

In my experience, if you take this route, and then subsequently get a job or go freelance, you will look back on it as subsistence labour, for sure. Sites like Upwork, Fiverr, and PeoplePerHour give you an opportunity to win business, but you’ll have to keep your rates very low and accept that you are only doing this for the experience.

以我的经验,如果您选择这条路线,然后又找到一份工作或成为自由职业者,您肯定会把它视作维持生计的劳动。 诸如UpworkFiverrPeoplePerHour之类的网站为您提供了赢得业务的机会,但是您必须保持极低的价格并接受您只是为了体验而已。

我有一些实际经验,请帮助我找到工作。 (I have some real experience, please help me find employment.)

规则1-不要称自己为“ Web开发人员” (Rule 1 — Don’t call yourself a “Web Developer”)

Check this out…

看一下这个…

What the heck is the difference between a “web developer” and a “front end” developer!? Well, about 7000$/year apparently. Seriously, when the time comes, a simple change in what you call yourself can make a big difference.

“ Web开发人员”和“前端”开发人员之间有什么区别!? 好吧,大约每年7000美元。 认真地讲,当时间到来时,简单地改变自己的称呼会产生很大的变化。

简历不错 (Have a strong resume)

Despite all the stories you read about people doing wild and crazy things to get an employer’s attention, you still need to have a good resume. This article from Tech Republic will help you with that.

尽管您读到了许多有关人们在疯狂地做疯狂事情以引起雇主注意的故事,但您仍然需要一份良好的履历表。 Tech Republic的这篇文章将为您提供帮助。

建立投资组合网站 (Build a portfolio website)

More important than having a good resume is having a strong portfolio website. Take all the real projects you’ve done and put them on a personal home page that shows them off. This SitePoint article gives some good advice on building a portfolio site. The one other thing I would emphasize is that you should make sure to highlight how each of your projects solved a business problem for your client (or employer). Do that, and your portfolio site will stand head and shoulders above the rest.

比拥有好的简历更重要的是拥有一个强大的投资组合网站。 拿走您已经完成的所有真实项目,并将它们放在显示它们的个人主页上。 此SitePoint文章为构建投资组合网站提供了一些很好的建议。 我要强调的另一件事是,您应确保突出显示每个项目如何为客户(或雇主) 解决 业务 问题 。 这样做,您的投资组合网站将比其他网站站得起。

准备面试编码 (Prepare for coding interviews)

My previous article, How to Win the Coding Interview will help you with that.

我之前的文章“ 如何赢得编码面试”将为您提供帮助。

增强您的一般面试技巧 (Beef up your general interview skills)

You should be prepared for more than just the coding part. This Life Hacker piece is a good roadmap to lots of valuable and important information.

您应该准备的不仅仅是编码部分。 Life Hacker的这一部分是通往许多有价值和重要信息的良好路线图。

刚踏进门 (Just get your foot in the door)

Don’t worry about getting a job with your dream employer at your dream salary right away. Just worry about getting paid to write code for a while. Once you have some more experience under your belt, you can start to consider your next move.

不必担心立即以理想的薪水与理想的雇主合作。 只是担心会花一些时间写代码。 一旦有了更多的经验,就可以开始考虑下一步。

我想成为一名自由职业者。 (I want to become a freelancer.)

Being your own boss is an amazing thing, but it also comes with a ton of added pressure and complexity. The best source of information on freelancing that I have ever seen is DoubleYourFreelancing.com by Brennan Dunn. He has a series of articles that will walk you through becoming a freelancer better than anything I could ever write here. So, check them out.

成为自己的老板是一件了不起的事情,但同时也带来了巨大的压力和复杂性。 我所见过的关于自由职业的最佳信息来源是Brennan Dunn 撰写的DoubleYourFreelancing.com 。 他提供了一系列文章 ,这些文章将带您比我在此写的任何文章都更能成为一名自由职业者。 因此, 请检查一下

Another option for freelancing, if you believe you are really good, is to join Toptal. They only accept 3% of applicants and their process is notoriously difficult, but if you get in, you’ll have access to many well paying freelance opportunities where you can work remotely.

如果您认为自己真的很不错,那么自由职业的另一种选择是加入Toptal 。 他们只接受3%的申请人,而他们的程序众所周知非常困难,但是如果您加入,您将可以使用许多薪水丰厚的自由职业者机会,可以远程工作。

我开始走这条路,但是现在我感到被困住了。 (I started down this path, but now I feel stuck.)

I hear you. It’s not easy and anybody who told you it was going to be easy has either never done it, or is trying to get money out of you. If you feel stuck, here is what you can do:

我听到你了 这并不容易,任何告诉你这将变得容易的人要么从未做到过,要么正试图从你身上赚钱。 如果您感到卡住,可以执行以下操作:

重新发现您的初衷 (Rediscover your original intent)

Ask yourself, and write down why you started down this path in the first place. Is your answer still true? If yes, then why stop now? Let’s go!

问问自己,并写下为什么首先要走这条路。 您的答案仍然正确吗? 如果是,那为什么现在停下来? 我们走吧!

变得真实 (Get Real)

Now that you know more about what is really involved and what is really possible, you have a better idea of the best case scenario, the worst case scenario, and the most likely scenario of continuing. Write it all down, look at it, and realize that the “most likely scenario” is the one that will probably happen and that it’s likely closer to the “best case” than the “worst case”. You do not have to be afraid. Move forward. You can do it!

既然您对实际涉及的内容和实际可能的情况有了更多的了解,那么您将更好地了解最佳情况,最坏情况以及最有可能继续的情况。 写下所有内容,仔细研究,然后意识到“最可能发生的情况”是可能发生的情况,并且它比“最坏情况”更接近“最佳情况”。 你不必害怕。 向前走。 你能行的!

读这个! (Read This!)

Please don’t quit — every expert was once a beginnerIf you’re like me, you have at some point in your efforts to learn programming, thrown up your hands and said: “I need…medium.freecodecamp.com

请不要退出-每个专家都曾经是初学者。 如果您像我一样,则有时会努力学习编程,举起手说:“我需要…… medium.freecodecamp.com

Happy coding!

祝您编码愉快!

请❤分享 (Please ❤ and Share)

I want to help as many people as possible. You can help me by hitting the little green ❤ and also by sharing this article on social media.

我想帮助尽可能多的人。 您可以点击绿色的❤来帮助我,也可以在社交媒体上分享此文章。

Finally, don’t forget to get to grab the expanded eBook version of this article with all the links in one easy-to-follow appendix. Click below to get it.

最后,不要忘记获取本文的扩展电子书版本,所有链接都包含在一个易于遵循的附录中。 点击下面获取它。

Free Guide to Becoming a Web DeveloperThis amazing free guide walks you, step-by-step, through the learning process of becoming a professional web developerfreebies.devmastery.com

成为Web开发人员的 免费指南这个惊人的免费指南逐步引导您完成学习成为专业Web开发人员的学习过程 。freebies.devmastery.com

翻译自: https://www.freecodecamp.org/news/the-practical-guide-to-becoming-a-professional-web-developer-2f255bc25c90/

web开发指南

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值