今天我们不得不去接受越来越多的概念,不同技能、不同职位的人都有不同的职称。到了今天,算得上是一个全栈程序员,渐渐地发现其实很多人在成为全栈程序员的路上。
全栈程序员需要什么
如果我们去追述Full Stack的起源,想必就是Facebook了,而Facebook对于全栈程序员的定义,想必就是它应该是一个”站长”——维护、开发一个网站。对于一个站长来说,一个必要的知识就是
从用户将URL敲入浏览器地址栏到用户看到这个界面发生了什么。
所以对于这个站长来说,他想了解用户干了什么,可以登陆服务器查看Nginx或者Apache,又或者是IIS的log。而从log的最前面的知识,于是GET出现了,而下面又是一些必要的知识。
- DNS、域名解析
- HTTP服务器、WEB服务器
而这些还不包括我们在开发应用的一些知识,最简单的就是用
- 网站前台,如JS、CSS
- 网站后台语言,如PHP、Java、Python
- 数据库
在开发的过程中更多地使用是框架,于是在我们布署应用之后,我们又面临一些问题(转载保留:成为全栈程序员的捷径)
- 搜索引擎优化(SEO)
- 用户来源、流量来源分析
- 性能优化
- 速度优化,如缓存优化,压缩CSS、JS
- 提升用户体验
而这些知识从某种程度上来说就是一些大的公司所需要的,如上文说到的Facebook。因而,这边所说的成为全栈程序员的捷径是
成为站长??
对于一个工作于网络公司的全栈程序员来说,开发、维护一个自己的博客是有意义的。
开发、维护自己的博客
成为全栈程序员
事实是对于那些想成为全栈程序员的人来说,很大一部分限制就是知识面,而这也是全栈程序员的缺陷所在。
广度够,深度不够
而所谓的深度也只是相对的,不同的学习目的及学习方向也决定了有些人一开始就容易成为全栈程序员。而一些人需要花费更多的时候,因为他们的主要时间都花费在某个技术栈上。而在某些时候对于有些人,更容易成为全栈程序员(不包含已经成为全栈程序员)
- 如初创者
- 小公司程序员
- 计算机爱好者
与精通某个技术栈的程序员相比,全栈程序员更容易创业,因为他们从头到尾都学习了一番。故而,很有意思的是事,当你从一家小公司跳槽的时候你可能已经有了创办一家同样公司的技术水平了。
全栈程序员的捷径
于是在废话一番之后,我们也回到了一个原点,这些都依赖于学习。
虽然一种更快的方法是如我一样去改进自己的网站——Geeks Life,而如果是在工作中,有些时候你可以更快地去了解那些知识。因为在一个项目、团队、公司里总有不同角色的人在履行不同的职责。
当我们的用户是一群程序员的时候,我们需要去吸引他们,有些方法可能是
- 一篇博文
- 一个项目
- 一个梦想
- 一句话
而我们也面临着真实的用户——程序员,相比于一般的网民,他们理加睿智、快速,更容易有选择地阅读内容。好比是一场智力与智力之间的对抗,然而有意思的是程序员相比一般人更容易保持耐心,因为他们知道此博客是一个全栈程序员写的。