Whether you’re a beginner who’s finally comfortable developing projects in a particular language, or an experienced developer looking to expand their skillset, there is no shortage of new things to learn. From new techniques to new technologies, most will help you immensely in your web development career. The good thing about many of these skills is that they can each be grasped in a weekend. Here’s a basic list for you to tackle next time you have a couple of days free.

无论您是最终愿意使用特定语言开发项目的初学者,还是想要扩展技能的经验丰富的开发人员,都不乏需要学习的新知识。 从新技术到新技术,大多数都将在您的Web开发职业中极大地帮助您。 这些技能很多的好处是,每个技能都可以在周末掌握。 这是一个基本列表,供您下次有几天免费使用时解决。

1.版本控制的魔力 (1. The magic of version control)

Source: Version Control Tutorial

来源: 版本控制教程

If you haven’t used version control in the past, you’ve probably been in a situation where your code isn’t working and you’d give anything to get back to its earlier, functioning state. Or perhaps if you maintain backups yourself by adding a suffix to the file name, you have files such as index_17.html.

如果您过去从未使用过版本控制,则可能是因为您的代码无法正常工作,并且您想尽一切办法恢复到其较早的运行状态。 或者,如果您通过在文件名后添加后缀来自己维护备份,那么您将拥有诸如index_17.html文件。

Version control means you can go back to any version of your code — from hours to months in the past. If you’ve used Google Drive, you’ve probably have used the feature of going back to an old version of a file — that’s rudimentary revision control.

版本控制意味着您可以返回到任何版本的代码-从过去的数小时到数月。 如果您使用过Google云端硬盘,则可能已经使用了返回文件的旧版本的功能-这是基本的修订控制。

If you are which software you should learn, here’s an article outlining the status of version control software in 2014 — personally, I’d prefer a distributed VCS like Git or Mercurial , as I contribute to open source software. Here’s a guide to getting started with Git, and a guide to using Git in open-source projects.

如果您是应该学习的软件,这是一篇概述2014年版本控制软件状态的文章-就我个人而言,我更喜欢像Git或Mercurial这样的分布式VCS,因为我致力于开源软件。 这是Git 入门指南 ,以及在开源项目中使用Git的指南 。

2.文本编辑器的秘密 (2. The secrets of a text editor)

A big chunk of a developer’s day is spent in front of the computer staring at a text editor. Depending on your needs and your development environment, you should master one text editor and thoroughly learn its tips and tricks to get certain stuff done quickly.

开发人员一天的大部分时间都花在电脑前,盯着文本编辑器。 根据您的需求和开发环境,您应该掌握一个文本编辑器,并彻底学习其提示和技巧,以快速完成某些工作。

Source: Manuel’s Web Page

来源: Manuel的网页

If you prefer working on the terminal, you could try VIM or Emacs. If you like working with a native text editor, you could give Sublime Text a try. If you work on a Mac, you could try something like TextMate.

如果您更喜欢在终端上工作,可以尝试VIM或Emacs 。 如果您喜欢使用本机文本编辑器,则可以尝试Sublime Text 。 如果您使用Mac,可以尝试使用TextMate之类的工具 。

Just working on a text editor is not enough — you should try and explore its fringes by installing plugins and extensions. Here’s a list of plugins for Sublime Text, aimed at a full stack developer.

仅使用文本编辑器是不够的–您应该尝试通过安装插件和扩展来探索其边缘。 这是Sublime Text的插件列表 ,针对的是全栈开发人员。

3. SQL的力量 (3. The power of SQL…)

Source: XKCD

资料来源: XKCD

An application needs files or databases to store user data. As databases are faster to use, and provide an option to query data, web applications prefer using databases.

应用程序需要文件或数据库来存储用户数据。 由于数据库的使用速度更快,并且提供了查询数据的选项,因此Web应用程序更喜欢使用数据库。

SQL (Structured Query Language) is a language that helps us query data from databases. However, learning just the basics of SQL won’t be enough when you are making complex web applications that use multiple tables (if not multiple databases over different servers).

SQL(结构化查询语言)是一种可以帮助我们从数据库查询数据的语言。 但是,当您制作使用多个表的复杂Web应用程序(如果不在不同服务器上使用多个数据库)时,仅学习SQL的基础知识是不够的。

For learning SQL, I would suggest you go through the book Simply SQL by Rudy Limeback. If you are still stuck with some SQL query, post in the SitePoint forums and someone will be quick to get back to you!

为了学习SQL,建议您阅读Rudy Limeback的《 Simply SQL 》一书。 如果您仍然遇到一些SQL查询问题,请在SitePoint论坛中发帖,然后有人会很快与您联系!

4.…以及NoSQL的奥秘 (4. …and the mysteries of NoSQL)

NoSQL, or Not Only SQL are databases that structure data in forms other than the traditional tabular form in SQL databases. NoSQL databases are built with high availability and horizontal scaling in mind. They may also have a SQL like language to query data.

NoSQL或不只是SQL是数据库,其结构形式不同于SQL数据库中传统的表格形式。 NoSQL数据库的构建考虑了高可用性和水平扩展。 他们也可能有类似SQL的语言来查询数据。

NoSQL databases have different classifications depending on how they structure their data. Although big companies like Quora do not use NoSQL, NoSQL is the favorite for startups — especially if they handle large quantities of data. That makes NoSQL a must-have skill!

NoSQL数据库具有不同的分类,这取决于它们如何构造数据。 尽管像Quora 这样的大公司不使用NoSQL ,但NoSQL是创业公司的最爱-特别是在处理大量数据的情况下。 这使得NoSQL成为必备技能!

At an even higher level, when you have very high traffic, you might need to scale your databases by replication and sharding.

在更高的级别上,当流量很高时,可能需要通过复制和分片来扩展数据库 。

5.熟悉终端 (5. Get comfortable with the terminal)

There are certain tasks, which are faster when you work on the terminal as compared to using a GUI. For instance, you want to search thousands of files for the occurence of a string and replace it with something else — imagine doing it in only a few seconds (I will give a few hints on how to do that shortly). For a list of reasons why terminals are so powerful in unix based systems, I suggest you go through this thread.

有某些任务,与使用GUI相比,在终端上进行操作时速度更快。 例如,您要搜索成千上万的文件以查找字符串的出现并将其替换为其他内容-想象一下仅用几秒钟即可完成操作(我将很快给出一些提示)。 考虑到为什么终端在基于Unix的系统中如此强大的原因,我建议您使用此线程 。

If you work on remote servers, you would need expertise with the terminal. True you can use the GUI to login and work on a remote server, it’s always faster to use the terminal. What’s more? It uses up very little amount of bandwidth — after all, working on the terminal is just some exchange of text through the network!

如果您在远程服务器上工作,则需要终端方面的专业知识。 确实,您可以使用GUI登录并在远程服务器上工作,使用终端总是更快。 更重要的是? 它占用的带宽非常少-毕竟,在终端上进行的工作只是通过网络进行一些文本交换!

To start your journey, try navigating and performing regular tasks like copying files through the terminal. Over time, you would notice that certain things can be done faster through the terminal rather than a series of clicks in the GUI.

要开始您的旅程,请尝试浏览并执行常规任务,例如通过终端复制文件。 随着时间的流逝,您会注意到某些操作可以通过终端更快地完成,而不是在GUI中进行一系列的单击。

To use the full power of the terminal, you’ll need to learn about the different terminal commands and understand their usage. To name a few obvious ones, you should know that sed is used to replace texts in files, grep to search in files and awk takes you one step further in manipulation of structured files. Here are 25 commands for system administrators. You should also have a look at 15 little known unix commands.

要使用终端的全部功能,您需要了解各种终端命令并了解其用法。 仅举几个明显的例子,您应该知道sed用于替换文件中的文本, grep用于搜索文件,而awk使您在结构化文件的处理上更进一步。 这是系统管理员的25条命令 。 您还应该看看15个鲜为人知的unix命令 。

6.控制远程服务器 (6. Take control of a remote server)

As a developer, you are probably not going to keep your code locally. If you have developed a product, you need to showcase it to the world. That’s when you need to log in to a remote server and configure it.

作为开发人员,您可能不会将代码保留在本地。 如果您开发了产品,则需要向世界展示。 那时,您需要登录到远程服务器并对其进行配置。

Now that you have been playing around with the terminal commands, you should test your skills on a remote server. If you have access to a Local Area Network, you could try remotely logging into one PC using the ssh command.

现在您已经在使用终端命令,现在应该在远程服务器上测试您的技能。 如果可以访问局域网,则可以尝试使用ssh命令远程登录到一台PC。

Otherwise, you could fire off an instance on the cloud. Amazon Web Services (AWS) provides a micro instance for a period of one year for free (you just need a valid credit card). Similar services are provided by Microsoft Azure too. Here is a detailed tutorial by Amazon on how to launch an instance, connect to it and manage volumes on your instance. Once you log into a server, you can use the terminal just like you use it in your local machine.

否则,您可以在云上启动实例。 Amazon Web Services(AWS)免费提供一个为期一年的微型实例(您只需要一张有效的信用卡即可)。 Microsoft Azure也提供类似的服务。 这是Amazon提供的有关如何启动实例,连接到实例以及管理实例上的卷的详细教程 。 登录服务器后,就可以像在本地计算机中使用终端一样使用终端了。

A word of caution though — Amazon saves your credit card information, so it can automatically deduct money if you cross the free tier benefits. Therefore, monitor your usage continuously and shut down unnecessary instances if you don’t want to lose money.

不过请注意-亚马逊会保存您的信用卡信息,因此如果您越过免费套餐,它会自动扣款。 因此,如果您不想亏本,请连续监视您的使用情况并关闭不必要的实例。

Once you log into a remote server, check if you can install a development environment. Also set up your web application on the server and run it your local machine with the help of the IP address of the server.

登录到远程服务器后,请检查是否可以安装开发环境。 还要在服务器上设置Web应用程序,并借助服务器的IP地址在本地计算机上运行它。

7.通过单元测试完善您的代码 (7. Perfect your code with Unit Testing)

Another important aspect of programming is unit testing. When you are working on a huge project, it’s not feasible to write all of the code at once and then check if it works. It’s advisable to split your code into parts and then write tests for those parts.

编程的另一个重要方面是单元测试。 当您在进行大型项目时,一次编写所有代码然后检查其是否可行是不可行的。 建议将代码分成多个部分,然后为这些部分编写测试。

The method depends on the programming language, but the basic idea is the same — write parts of the code and test them. Here’s a guide to getting started with Unit Testing, and a recent guide to Unit Testing with Guzzle

该方法取决于编程语言,但是基本思想是相同的–编写部分代码并进行测试。 这是单元测试 入门指南 ,以及最近的Guzzle单元测试指南

Unit testing may seem like a tedious task, but it’s very useful while solving bugs.

单元测试可能看起来很繁琐,但是在解决错误时非常有用。

8.了解如何使用Markdown进行书写 (8. Learn how to write using Markdown)

I mention Markdown last as it does not affect the way you code. However, it’s a good skill to learn for anyone who works with and publishes on the web. One use case is writing README files, which get displayed on project pages on GitHub and BitBucket. Also, if you maintain a blog explaining your work, chances are that you will want to shift to writing your posts in the Markdown format sooner or later.

我最后提到Markdown,因为它不会影响您的编码方式。 但是,这是一项很好的技能,可供与之合作并在网络上发布的任何人学习。 一种用例是编写README文件,这些文件将显示在GitHub和BitBucket的项目页面上。 另外,如果您维护一个博客来解释您的工作,那么您很可能迟早会转向以Markdown格式撰写帖子。

Markdown is a text-to-HTML conversion tool, that is used by those who write for the web. It is a plain text formatting system that lets you concentrate on writing rather than the syntax.

Markdown是一种文本到HTML的转换工具,供那些为Web写作的人使用。 它是纯文本格式设置系统,可让您专注于编写而不是语法。

There are many online Markdown editors like Markable, or StackEdit, which has integration with Google Drive and Dropbox.

有许多在线Markdown编辑器,例如Markable或StackEdit ,它们与Google Drive和Dropbox集成在一起。

What are you waiting for? Head over to this link to learn the basics. You can get started within minutes!

你在等什么? 转至此链接以学习基础知识。 您可以在几分钟之内上手!

去吧 (Get to it)

Those are my picks for things that you can learn over a weekend. Did I miss something? Let me know in the comments below!

这些是我一个周末可以学到的东西的精选。 我错过了什么? 在下面的评论中让我知道!

翻译自: https://www.sitepoint.com/8-essential-skills-developers-can-learn-in-a-weekend/

周末可以学习的8种基本技能相关推荐

  1. 【转】孩子们应该学习的9种基本技能

    英文标题:9 Essential Skills Kids Should Learn 英文地址:http://zenhabits.net/kid-skills/ Post written by Leo ...

  2. 高效学习的 36 种思维

    这是林骥公众号的第 57 篇原创文章 引言 前面我已经陆续写了 6 篇关于高效学习的文章,本文把高效学习的 36 种思维合并成为一篇长文. 如果你已经看过前面的文章,那么可以直接跳到下面的第 27 种 ...

  3. 阿里六年团队Leader实战秘诀|程序员最重要的八种软技能(找工作/就业生必读)

    前言 此笔者在带团队的六年中发现,程序员们在职场都有一个共同的困扰:"好像写代码都没什么问题了,日常工作基本上都是应付业务需求的开发,好像找不到其他的更大的附加价值了,我应该找一些什么样的发 ...

  4. 六年团队Leader实战秘诀|程序员最重要的八种软技能

    前言 笔者在带团队的六年中发现,程序员们在职场都有一个共同的困扰:"好像写代码都没什么问题了,日常工作基本上都是应付业务需求的开发,好像找不到其他的更大的附加价值了,我应该找一些什么样的发力 ...

  5. AI时代人类需要具备的九种软技能,你get了几个?

    在当今这样一个人工智能.大数据和自动化的时代,技术技能和数据素养显然非常重要.但是这并不意味着我们应该忽略工作中的人的因素--机器无法很好实现的各种技能.我相信,随着工作本质的发展变化,机器承担了更多 ...

  6. java程序设置jvm_Java程序员应在2018年学习的3种JVM语言

    java程序设置jvm 如果您是Java程序员,并且想学习更多的编程语言以扩展您的知识和技能,但是不确定选择哪种编程语言,那么您来对地方了. 在本文中,我将分享Java程序员可以在2018年学习的3种 ...

  7. Java程序员应在2018年学习的3种JVM语言

    如果您是Java程序员,并且想学习更多的编程语言以扩展您的知识和技能,但是不确定选择哪种编程语言,那么您来对地方了. 在本文中,我将分享Java程序员可以在2018年学习的3种JVM语言以及为什么要学 ...

  8. scala语言的底层是java实现的_2020了,每个程序员都该学习的 5 种开发语言

    我曾在某处读到过(可能在<代码大全>,但我不敢确定),程序员应该每年学习一门新的编程语言.但如果做不到,我建议,你至少学习以下 5 种开发语言,以便你在职业生涯有很好的表现. 每个公司都喜 ...

  9. 每个程序员都该学习的5种开发语言,不可错过!

    每个公司都喜爱精通多种编程语言并且多才多艺的程序员.一个既能很麻利地写脚本,也能编写复杂的Java程序的程序员,确实相当有价值.所以实际上,对于高级开发者来说,学习不止一种编程语言,几乎就是必然的要求 ...

最新文章

  1. 苹果笔记本怎么找文件夹_求解答mac怎么找文件路径
  2. 系统编程(ISP)与应用编程(IAP)的区别!
  3. css长图如何展示局部,css可以设置图片以最短边为依据展示在父级中吗?
  4. Laravel框架与ThinkPHP一些不同点
  5. Redis 管道(Pipelining)
  6. 漫游kafka实战篇之搭建Kafka开发环境
  7. windows与linux网络设置(host-only)
  8. 12亿行代码,阿里巴巴这一年的技术报告和梦想报告
  9. 用VC创建程序启动画面
  10. git - 基础 - 01 - git reset --hard 回滚以后,看不到之前的分支版本怎么解决:
  11. Verizon部署美国最大小型基站系统
  12. 实现Windows访问Linux文件系统
  13. 占空比输出程序c语言,怎样利用c语言来实现占空比的设置?(单片机:SPCE061A)
  14. SPSS16 视频教程 共17章全
  15. hbase官方文档中文版0.97
  16. java微信服务通知
  17. 《Python安全攻防:渗透测试实战指南》学习一
  18. 安卓手机卡顿怎么解决_苹果七系统内存满了手机卡顿解决方法
  19. ios屏幕尺寸和分辨率
  20. win10 ubuntu16.04 双系统 时间不一致问题解决办法

热门文章

  1. 如何直接在博客或前端html网页上添加L2Dwidget.js L2D网页二次元动画人物
  2. matlab用saveas保存图片
  3. 软件工程毕业设计课题(38)基于JAVA毕业设计JAVA座位预约餐厅网站系统毕设作品项目
  4. 贯穿整个产品生命周期的用户研究[用户研究]
  5. 【C语言初学必看】之多组输入的玄机
  6. 如何联系心仪的导师(保研、考研)
  7. DHCP 报文抓取观察
  8. 华为云下载加速解决方案了解一下
  9. Java习题-找到休息日
  10. 跨境电商现在还好做吗?跨境电商需要注意什么?