Chinaunix首页 | 论坛 | 博客
  • 博客访问: 533675
  • 博文数量: 526
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 3235
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-29 17:52
文章分类

全部博文(526)

文章存档

2011年(1)

2008年(525)

我的朋友

分类: LINUX

2008-08-29 18:07:53

 
转贴
--=当前社会对Linux人才的需求=--


大家好,我是ChinaUnix论他的Linux版的斑竹sakiulagi。首先感谢这么多朋友来参加CU的活动。我讲的这个题目太大。能谈出来的只是我个人看到的一些事情和自己学习Linux中的一些想法和大家共享一下,不太可能说能给大家指出一条赚钱的金光大道,那我就是在讲传销,而不是在讲Linux了。讲的过程中有什么错误希望大家指出。有什么问题我们都可以讨论。


【1】linux的发展方向和主要应用领域
企业级
不同类型服务器的细分,其实就是安装了不同的服务,然后针对这个服务对系统性能进行有针对性的调整。
集群/大规模的科学运算
Linux的优点:低成本,高可靠性;缺点:专业人才少。
桌面产品
发展方向:办公,政府,大公司采购
Microsoft的主要竞争对手,政府策略
嵌入式系统
消费领域
电子消费产品

【2】需要的技术型人才
设备驱动
Linux对各种设备的支持仍然落后于MS。这个很多因素造成的,不过也留下了一个很大的缺口。
网络安全
大量的网络服务器的应用对安全的要求,包括服务器本身和其他的网络设备如路由器,防火墙。
OA
办公产品的开发,设计
系统管理
Linux服务器的日常维护,性能调整,系统架设
嵌入式开发
各种嵌入式系统上的开发。


【3】关注的基础知识
-操作系统/Linux内核的基础知识
基本的概念是最重要的,比如很多网友问我的机器变慢怎么办?其实就是你的某些资源被消耗殆尽了,不外乎是首先检查瓶颈,比如那个应用把系统内存吃光了。如果操作系统好好学习一下,很容易理解Linux,甚至是一般的操作系统的很多看起来很深刻的东西。内核不是什么高深的东西。你在操作系统课上学的pv操作都可以看到,一些UNIX的基础知识也很重要,比如什么是文件系统,什么是mount,什么是设备文件,甚至什么是linux?分发版?还是内核?如果我说我的系统是Linux9.0的,这个说法确切么?
很多东西没有那么神秘的,关键是你的基础是不是够好。
-数据结构和算法
这个对开发人员尤其重要。不要管什么C/C ,java,等等……语言不是最重要的,工具也不是最重要的,关键是你的思想。如果你是一个开发人员,那么这个基础就更是你的必修课了。因为学习数据结构和算法的过程就是培养一个人逻辑思维的过程,我在这里不讲软件工程什么的,如果你的数据结构和算法都学不好,还怎么学习DesignPattern呢?
管理人员也是一样,比如一个管理员不懂数据结构,可能只能依靠benchmark来了解文件系统性能,否则根据reiser4的dancingtree算法,我们又可以多了一些根据来判断,这个设计到底好在哪里?我相信任何一个Administrator都不会拒绝对自己的系统有更深入的理解的。
-C/汇编编程
在编程的思想和算法都已经学好的前提下,由于历史上UNIX和Linux都是用C写的。大家也只好多学习一些C和汇编了。如果Linux是用另一个语言写的,并且这个语言很流行,那么我可能就推荐另一个语言了。这个是最基本的工具,能把你的思想变成现实的工具。是你和Linux系统的交流的共同语言。
即使是管理人员也要用,总不能所有的软件都用rpm装吧?再说对任何一件事物,多了解一些内部的运行机制可以更好的理解它,这一点大家可以同意吧?另外,如果没有一点编程知识的话,我觉得要维护一个安全的系统也是有一些难度的,如果了解了系统内部运作的机制,才能更好知道你的系统的漏洞在哪里,最简单的例子,一点编程不学,恐怕很难理解什么是bufferoverflow.而且在没有任何编程基础的情况下,要理解操作系统的很多知识也是会遇到困难的。
-图形界面开发(Java,GTK ,QT)
随着Linux向桌面应用的发展,图形界面编程的人才将会有更大的需求。无论是用java还是用C/C ,其实很多时候二者是结合的。
-网络
现在的社会,单独的一台计算机是没有多少用处的,所有的计算机都在网络上。现在这么多作网络安全的机会,如果要是把网络,比如tcpip的基础知识好,不但有利于自己的进一步的学习,同时对自己的职业前途也不能不说是一个很好的推动。
-日常使用和维护
至少会用vi吧?至少会一点简单的shell编程吧?无论你是用命令行,还是用图行界面,只要用的熟练,能解决问题,就可以了。否则日常的工作怎么开展?
-HA/HP集群
如果有条件可以看一下,这个是Linux的另一个很好的应用方向。
-个人能力
分析问题,解决问题。(这个在下面还会谈)。
-语言能力
总要看英文资料的,能看多少看多少,不能逃避啊。很多人讲英文我不行,谁帮我翻译成中文的。这样一个比去新东方上课便宜的多的,对你的英文阅读能力很有帮助的机会被浪费了……

(上面讲的这些不只是针对还在读书的同学们说的,即使是已经工作了的网友,如果有志于开始学习Linux的话,那么我觉得很多的基础知识都有必要好好读一下。在这里之所以强调基础知识的重要性,是因为现在的令人眼花缭乱的新技术太多,其实万变不离其宗,最终还是要依靠这些最经典的知识基础。我前两天又看了一下UNIX第三版的白皮书,是70年代发表的。里面定义了什么是一个目录,这个定义和我们通常的定义有些区别,但是对理解文件系统的结构却有着很好的帮助。我不是搞学术研究的,和很多朋友一样,我也只能业余时间看看这些基础的东西,但是仍然觉得很有帮助。)


【4】简单谈一下linux的学习方法
-看书
了解基础知识以后才有交流的基础。大家可以先到网上找些电子书。不过我个人更推荐买一本便宜的纸板书看看,对保护视力有好处。越是开始的时候,越要多看一些书,千万不要看到超过一页的文章就放弃了,很多厚书反复读过和实践过之后,就会成为你能力飞跃的第一动力。
-善用网络资源,学会搜索。
遇到问题先google一下,通常都会有收获。另外,网络上的手册很多。大家只要好好看一看,就方便的多。经常有朋友问很多操作上的问题,以我用的最多的Redhat为例,官方网站上有全套的安装,使用,定制,各种指南。如果通读一次,至少是日常的使用不会有什么太大的问题。同时还能对redhatlinux有一个很好的理解。
-Linux版和CU的资源介绍(一句话,精华索引)
经常有网友很不满:你不直接告诉我,装什么蒜?虽然没有给你一块钱,可是指出的道路是通向一个金库的!如果不是真的到了生死攸关的时候,能深入学习一些还是深入一些,不要只是看着一个答案,就可以了。当然如果真的是急事,那另当别论。
这里,我再次郑重向大家再推荐我们版的几个置顶帖子。一个是“Linux一句话精彩问答”。这个是我们的斑竹bjchenxu来整理的,里面包含了我们班上大量网友的智慧。里面可以找到很多很多的常见问题和疑难杂症的回答。如果你看过了linux的入门书籍,了解了最最基本的知识,那么这个帖子是继续学习的最好的途径。另一个帖子是以前的斑竹lnx300和现任斑竹好好先生整理的精华帖子索引,很多比较复杂的问题在这里也可以找到答案。这两个都不是大百科全书,可是他是Linux版的所有网友和几位斑竹的劳动的成果,希望对大家的学习能有所帮助。
-讲究论坛上的交流的方式方法。
多学习别人解决问题的方法。而不止是知道一个答案而已。
交流的技巧。(热心互助,不要抱怨。老手不要看不起新手,大家都是新手过来的,如果能帮助就帮助一下,不要冷嘲热讽;新手不要不耐烦,大家都是义工,并没有什么义务一定要回答谁的问题。互相指责不解决任何问题,真正的更好利用CU这个大平台才是最终的解决方法。)
-多多动手,多多实践
我在开始学习的时候,把系统里所有的可执行文件的manualpage都看一遍,然后把每个能试验的命令都运行一次。我觉得只有试验才能得到第一手的资料。
-认真学习英文
中英文的资料各有各的有缺点,但有一点是肯定的。多看懂一些资料总是好的。而且很多时候还是英文的资料更全面,更丰富一些。比如关于多系统引导,GNU的网站上grub的手册是还是比较全面而细致的,语言也简练的很。GNU网站上的其他资料也很丰富。国内也由一些中文手册的翻译计划。

社会对Linux人才需求 谈linux学习方法社会对Linux人才需求 谈linux学习方法社会对Linux人才需求 谈linux学习方法社会对Linux人才需求 谈linux学习方法社会对Linux人才需求 谈linux学习方法社会对Linux人才需求 谈linux学习方法社会对Linux人才需求 谈linux学习方法社会对Linux人才需求 谈linux学习方法社会对Linux人才需求 谈linux学习方法社会对Linux人才需求 谈linux学习方法
阅读(304) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~