LSP修复
管理员身份运行cmd
输入netsh winsock reset
Misplaced Lens Cap
Today's Document
noise dept.
Peter Solarz
Stranger Things
Monterey Bay Aquarium
official daine visual archive

Love Begins
2025 on Tumblr: Trends That Defined the Year
$LAYYYTER
Keni

if i look back, i am lost

JVL
hello vonnie
🩵 avery cochrane 🩵

Andulka
Aqua Utopia|海の底で記憶を紡ぐ
NASA

⁂
KIROKAZE
seen from Bangladesh

seen from Colombia

seen from United States

seen from United States
seen from Bangladesh
seen from United States

seen from United States
seen from United States
seen from United States
seen from United States
seen from United States
seen from Peru
seen from United States
seen from United States
seen from United States
seen from Philippines
seen from United States
seen from Argentina
seen from Philippines

seen from Türkiye
@xjy
LSP修复
管理员身份运行cmd
输入netsh winsock reset
LSP修复
管理员身份运行cmd
输入netsh winsock reset
那些年我们读过的Python的书
Python是一个强大、快速、易学、友好、开源的脚本语言。Hacker必备的语言之一。
Python - 历史由来
Python 是一种开源的面向对象的脚本语言,它起源于1989年末,当时,CWI(阿姆斯特丹国家数学和计算机科学研究所)的研究员Guido van Rossum需要一种高级脚本编程语言,为其研究小组的Amoeba分布式操作系统执行管理任务。为创建新语言,他从高级数学语言ABC(ALL BASIC CODE)汲取了大量语法,并从系统编程语言Modula-3借鉴了错语处理机制。Van Rossum把这种新的语言命名为Python(大蟒蛇)---来源于BBC当时正在热播的喜剧连续剧“Monty Python”。
Python 于1991年初公开发行,由于功能强大和采用开源方式发行,Python的发展得很快,用户越来越多,形成了一个强大的社区力量。2001年, Python的核心开发团队移师Digital Creations公司,该公司是Zope(一个用Python编写的web应用服务器)的创始者。大家可到http://www.python.org /上了解最新的Python动态和资料 。
Python的应用范围
系统编程,提lass=innerlink>API,能方便进行系统维护和管理。
图形处理,有PIL、Tkinter等图形库支持,能方便进行图形处理。
数学处理,NumPy扩展提供大量与许多标准数学库的接口,
文本处理,python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多程序员利用python进行XML程序的开发。
数据库编程,程序员可通过遵循Python DB-API(数据库应用程序编程接口)规范的模块与Microsoft SQL Server,Oracle,Sybase,DB2,Mysql等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。
网络编程,提供丰富的模块支持sockets编程,能方便快速地开发分布式应用程序。
作为Web应用的开发语言,支持最新的XML技术。
多媒体应用,Python的PyOpenGL模块封装了“OpenGL应用程序编程接口”,能进行二维和三维图像处理。PyGame模块可用于编写游戏软件。
以上内容摘自:http://www.tuicool.com/articles/VJziU3
那些年我们读过的Python的书
1、Python核心编程
Core.Python.Programming,2nd.Edition
初学Python这是一本有关Python开发的权威指南
《Python核心编程(第2版)》是经典的Python指导书,在第一版的基础上进行了全面升级。全书分为两个部分:第1部分占据了大约三分之二的篇幅,阐释这门语言的“核心”内容,包括基本的概念和语句、语法和风格、Python对象、数字类型、序列类型、映射和集合类型、条件和循环、文件和输入/输出、错误和异常、函数和函数式编程、模块、面向对象编程、执行环境等内容:第2部分则提供了各种高级主题来展示可以使用Python做些什么,包括正则表达式、网络编程、网络客户端编程、多线程编程、图形用户界面编程、Web编程、数据库编程、扩展Python和一些其他材料。《Python核心编程(第2版)》适合Python初学者,以及已经入门但想继续学习和提高自身Python技巧的程序员。
2、 趣学Python编程
Python for Kids: A Playful Introduction to Programming
《趣 学Python编程》是一本轻松、快速掌握Python编程的入门读物。全书分为3部分,共18章。第1部分是第1章到第12章,介绍Python编程基 础知识,包括Python的安装和配置、变量、字符串、列表、元组和字典、条件语句、循环语句函数和模块、类、内建函数和绘图,等等。第2部分是第13章 和第14章,介绍如何用Python开发实例游戏弹球。第3部分包括第15章到第18章,介绍了火柴人实例游戏的开发过程。
3、 像计算机科学家一样思考Python
Think Python:How to Think Like aComputer Scientist
《像 计算机科学家一样思考Python》按照培养读者像计算机科学家一样的思维方式的思路来教授Python语言编程。全书贯穿的主体是如何思考、设计、开发 的方法,而具体的编程语言,只是提供一个具体场景方便介绍的媒介。《像计算机科学家一样思考Python》并不是一本介绍语言的书,而是一本介绍编程思想 的书。和其他编程设计语言书籍不同,它不拘泥于语言细节,而是尝试从初学者的角度出发,用生动的示例和丰富的练习来引导读者渐入佳境。
4、PythonCookbook(第2版)中文版
《Python Cookbook(第 2版)中文版》是在Python程序员圈子中备受推崇的一部著作。在《Python Cookbook(第2版)中文版》中,你会发现很多常见 Python编程问题的实用解决方案,而这些方案来自Python社区。几年来,Python程序员在 ActiveState建立的在线 Python Cookbook贡献的代码和文章构成了《Python Cookbook(第2版)中文版》的主体。这些代码和解决方案都经历过实践的检 验,被反复地审查、精练和加强,并最终汇集到《Python Cookbook(第2版)中文版》中。
5、 易学Python
Quick & EasyPython
《易 学Python》总共分为3部分,共12章,第1部分介绍了为何使用Python来编程。从第2部分起,通过编写Hunt the Wumpus游戏带领读者认识并解决编程中的一些实际问题。例如,如何管理复杂的程序,确保其清晰易懂;如何在程序中使用Python标准库,以节省编程 时间,同时让程序更容易理解;如何对编写好的程序进行测试;如何进行面向对象的程序设计。第3部分则使用框架对书中的程序进行完善,让读者对Python 的强大功能有一个更深入的认识。本书最后还提供了一些Python资源,供读者深入学习Python时参考。
不被理解的猫
邓小平的保护伞之周恩来 周恩来和处于领袖地位的毛泽东不同,无法站在最高点帮助邓小平,只能在执行者角度上给予悄悄的关怀,同时也是很实际的关怀。那种关怀,从欧洲就开始了,在邓小平成为毛派代表之后依然没停止,文化大革命中,发展到巅峰。 文革反派中,一号刘少奇和三号陶铸都没能挺过去,邓小平存活下来,除毛泽东有意保护之外,就是周恩来的暗中呵护。翻开文革那浩如烟海的材料,会发现邓小平遭受的批判要小很多。尽管他的日子不好过,比起同时期那些老干部要好多了。对邓小平的批判,基本上全部来自林彪。 九大之后,完全处于林彪掌控之下的军委办事组搞了一个惹毛泽东不快的“林副主席第一号令”,全军紧急备战,各位老干部被疏散到外地。在毛泽东的亲自要求下,邓小平被下放到江西。江西是程世清的地盘。程世清是林彪的人。按照一般情况,头顶二号走资派大帽子的邓小平到江西日子不会好过。然而邓小平的日子虽然不好,却还算平静。 周恩来亲自给程世清打电话,要照顾好邓小平。为了增加分量,周恩来还把毛泽东搬出来:毛主席在九大不是说过吗,邓小平的问题和别人不同,他下去是到农村锻炼。当然,这些中央领导同志年纪都大了,六十几岁的人了,身体也不好,不能当劳动力,要照顾一下。 从日后毛泽东南巡时看得出,程世清是个聪明人,很懂得站位。周恩来亲自打电话安排,自然非同小可。程世清马上表态:安排邓小平夫妇去赣州,房间装暖气,出行配一部小车,绝对保证安全。 这些条件在当时已经算优待了。周恩来依然不同意,他指出赣州离南昌较远,交通不便,且是山区,生活条件很差,将邓小平一家安排在那里不妥。周恩来指出:应该把邓小平安排在南昌附近。生活待遇上,周恩来提出:房子应当是一栋两层的楼房,楼上为邓小平夫妇居住,楼下为工作人员住。最好是独门独院,这样既能在院里活动,又能保证安全。 ——如此具体的指示,非常罕见。
青色电影tour:
http://www.celebritymoviearchive.com/tour/
李张
张子强非常自信地说:“这,你就不懂了,你没有研究透这些富人的心,人穷的时候,钱比命重要。人一旦有了钱,命就比钱精贵了。你看李家是世界华人首富,钱 多得恐怕数不清呢?可是他又有几个儿子呢?而多少钱才可能买到儿子的一条命。我研究过以前那些绑票案,很多不成功就在于,花费了很多心思在如何要赎金的方 法上,结果时间拖得很长,就夜长梦多误了事。像李超人这样在商海里翻腾起来的人,也一定会胆识过人,他不会把钱看得比儿子重要。今天,我亲自登门去和李超 人谈判,就是让他看看我张子强的胆量,也表示我一份诚意。我相信事情会很快解决的。你们等我的好消息吧。”
初心 出离心
初心与出离心的关系。
君子善假于物。
新年好习惯
①战胜拖延:把让你不适的任务分解成众多小事,制成表格记录进度。②健身:有意识让自己过得不那么安逸。③阅读:建立表格,细化计划,养成阅读习惯。④早起:用自我奖励作为早起的吸引力,如提前备好早点。⑤日记:学会专注和组织语言表达想法和思考。
Daily Bible
格局
格局是个根本的大问题。
见识
见识的重要性。
要多走多看,多到大地方,多接触各种人和场合。
思路感悟
1、Google与百度的“分别心”。google无分别心,故能长远。
2、共党与传销的相似之处。
“拿人钱财,与人消灾”这才是员工含义的本质
自己做行政人事经理有大半年的时间了,这半年基本没闲着,制度、流程、薪酬、招聘、会议、培训,天天加班,晚上7点之前没有回家过。现在颈椎病也有了,膝 盖每天也疼的要命。有时候晚上下班坐在公交车上也会自问:值不值?但看到在自己努力下,公司正一步步的扎实的往前发展,员工的工作面貌逐步的改善,这一切 都值了。发发牢骚,各位见笑了。 前几日在知乎上看到了一篇好文,文章没有用华丽的辞藻,字字真实,句句见血,搬到这里和大家一起分享,希望能惊醒一部分人,要认清你和领导,你和公司是一种什么样的关系,才能摆正自己的位置。 原问题是:“领导到底喜欢哪类员工,是敢于坚持自己的观点还是默默无闻、逆来顺受的员工?”,各位可以去知乎搜索一下,下面是ID为“唐僧同志”的回答: 1,领导(上级)是个什么东西。 一个基本概念是,公司业务无民主。总经理由董事会授权管理公司,在法律允许的范围内,在不违反职业道德的前提下,总经理对公司的业务和管理有绝对的权利。管理层由总经理授权分管相关业务端口,有绝对的权利。部门经理由管理层授权管理相关业务部门,有绝对的管理权力。 这区别于社会的组织方式,国家的首领是民选的,是全体公民赋予其权利以管理国家,但公司不是。 而你的总经理,以及你的领导,不是民选的,是任命的,是由层层授权来获得权利管理公司的。 因此,在最底层的理论上讲,领导对你的管理行为,包括工作安排和工作结果的评价,在不涉及人格侮辱、不违反职业道德、不违反法律、不超越授权的前提下,是绝对的,甚至可以是主观的。 2,下级是个什么东西。 八个字:拿人钱财,与人消灾。 在多数情况下,你的领导也是某人的下级。大家都应秉持这个原则。既是我们叫打工仔也好,职业经理人也好,工作这件事,就是因为你拿了或者要拿别人的钱,然后你要把别人安排的事情做好。 今天你来上班了,没有人安排给你工作,但是你的时间被占了,对方也应该付给你钱(工资)。明天给你安排工作,你有可能做好,也有可能没做好(好与不好可能是个上级主观评价),那么这会决定你奖金的多少。 所以,拿人钱财,与人消灾(还有下半句,以后别的题再说)。这是最基本的职业精神和职业道德。 3,什么叫“与人消灾”。 结合第一点和第二点,与人消灾的定义即是“做好领导交代的工作”。 那么,做好领导交代的工作有哪些前提? A,理解领导的意图。方式有如下,复述一下领导的要求,并确认时间、质量、甚至是工作开展的节奏。 B,过程中保持反馈。不管是进展顺利与否,都应该即是沟通进度,并确认方向无误。有困难更应该第一时间知会,同时有解决方案或备选方案。 C,完成后汇报。很多人经常忽略这一点,所以经常会有“那个case我前两天就发给您了啊”这样的反馈。请注意一点:工作的完成不是以完成本身为衡量标准,而是以完成工作汇报并得到评价为衡量标准。 4,上级永远没有错,是你错了。 这句话太危言耸听了,我们严谨的说一遍:在业务方面,不涉及人格侮辱(如上级骂你是sb)、不涉及职业道德(如领导让你做假账)、不涉及越权,领导永远不会错。 你的报表做完了,你发给他了,然后他没看。错过了提交的时间。 不是他错了,是你错了,因为你没催他。 你催他了,他还是没看。 不是他错了,是你错了,因为你没催他第二遍。 你催他第二遍了,他还是没看。 不是他错了,是你错了,因为你没有在他不忙的时候,站在他电脑旁边告诉他,今天不看就来不及了,您现在抽空看看吧,然后哪有问题我再去改。 这才叫职业化的态度。 所以,题主,职场根本不存在你说的“明明是别人的错误,却怪在我头上”这种情况,而是你还没有足够成熟到持有一个最职业化的态度。 5,你永远没有错,是上级错了。 只有一种情况是这样,那就是当你们共同面对更大的领导的时候。 ok,最终,这个报表他还是没有看。这时更上一级的领导怪罪下来,在面对更上级领导的时候,你没错,是你领导的错。因为所有的下级责任在更上级领导的面前,都是你直接上级的责任。 但是回到他办公室,只有你两个人的时候,还是你的错。 -===以上是专业回答,以下是鸡汤===- 6,不要要求上级完美。 作为一个新人,上级不是你控制圈和影响圈的事物。你改变不了上级,只能改变自己。即使你换一个上级,你还是要学着改变自己才能成长。 同时上级有七情六欲,有8小时之外的工作影响心情,有个人好恶,有情绪起伏。 请你好好体会上级的要求,而不是自顾自的觉得自己很正确。 所以你现在要做的,不是据理力争,也不是逆来顺受。 而是,把上级当做你在追的一个女孩子一样,去好好体会他对你什么感受,什么评价,尽量的去改正,尽量的去完善自己,尽量的去和他保持步调一致,这才是你最重要的事情。 -===以下是高阶回答,题主可以选择1年之后再看,-_-# ===- 7,管理你的上级。 之前提到,上级对你的评级可能是主观的。同时,上级通常扮演两个角色,一个是裁判员,一个是教练员。你要让他成为你的教练员,而不是裁判员,因为前者是自己人,后者是外人。 怎么办? a,天下武功,唯快不破。领导交代的任务要迅速完成,迅速汇报,迅速检验质量。交给你一个报告,告诉你思路了,你两天出结果,他就是教练员,因为那有他的思路;你一周出结果了,他就是裁判员,因为他早忘了这件事。 b,拿出80%的精力去应对20%最重要的事情。我没办法教你什么重要,给个小提示吧:如果某项工作上级问了你第二次,那多半是重要的事情,请最快速度完成。 c,和他一起面对他的上级,帮助他完成上级领导给的任务。这个说得太高阶了,不具体谈方法了,还需要自己体会。 8,多余的话。 90后开始洪水一样的涌入职场,我们也开始关注90后的情绪,并尽量在这个过程中不要贴标签。但是孩子们,总是“既要薪情,又要心情”。从小又成长在相对自由、开放的的环境下,处处要求“公平”和“尊敬”。在归因方法上,经常归咎为“明明是别人工作上的问题”,而很少反思和思考自己。总觉得“我有能力有想法但是就是发挥不出来”,甚至觉得“怀才不遇”。 退一万步想,若是每个问题都是别人的问题,可能你的业绩评判方面会有好的影响。但是你会有进步吗?或者说,未来你的进步全部来自于成功经验的积累?没有“日省吾身”的精神,你自己能进步吗? 所以还请各位职场新人,首先要秉持一个“最职业的心态”,然后我们再来谈,什么叫“有思考的执行”,什么叫“实现自己的想法”。 祝题主能在改变自己的路上,一路平安。
曾国藩平生最具大智慧的一个决定
曾国藩怎么回答呢?他说,人共患难的时候大多是朋友,同富贵的时候往往成了敌人。左宗棠一代枭雄,做师爷时便不甘居人下,如今同我平起平坐,他能俯首称臣?我敢肯定,如若起事,第一个起兵讨伐的人就是左宗棠;我若一帆风顺,李鸿章永远是我的学生,如若不顺,李鸿章必然反戈一击。现今,湘军已呈老态,谈不上什么精锐!再说李秀成,他不投降可以振臂一呼,从者云集,他投降了,就是一只走狗,谁还听他的?曾国藩还说,当兵吃粮,升官发财,就比如养了一群狗,你扔一块骨头,它就跟你走,别人扔一块更大的骨头,它就可能出卖你。就算是帝王之人,又有多少骨头可扔呢? 一番话,说得曾国荃哑口无言。
林彪战无不胜的九条秘笈
第一条要勤快,他说不勤快的人办不好事,更不能当指挥员,凡是自己能亲手干的事,一定要亲自过目,亲自动手,他说指挥员切忌懒。因为懒会带来危险,会带来失败。 第二条要摸清上级意图,,他说你只有真正摸清上级意图才能充分发挥自己的主观能动性,才能打破框框,才能有大用,才能决心强,决心狠,敢于彻底胜利。 第三条要调查研究,对敌情、地形、部队要做到心中有数,他讲要天天琢磨不能间断。 第四条,他说要有一个活地图。指挥员和参谋人员必须熟记地图,要经常的读地图,最好的办法把地图挂起来,搬个凳子坐下来对着地图看,从大的方向到活动地区,从地形全貌到某一个地段地形特点,从粗读到细读,最后用经蓝铅笔把主要山脉、河流、城镇、村庄全部标下来,边标边画,边画边记。他说把战场的情景和地形的情况和敌我双方的兵力部署都装到脑子里去,离开地图也能指挥作战。 第五条:要把各方面的问题都想够想透,就是每一次战役战斗组织要让大家提出各种可能出现的情况,要让大家来找答案,这样打起仗来才不会犯大错。 第六条:要及时下达决心,他讲什么样的情况下可以下决心打呢?林彪讲不打无准备之仗,但是任何一次战斗都不可能有完全具备各种条件,有百分之百的把握。林彪讲,一旦有70%左右的把握就是很不错了,就要坚决的打,放手的打,主观努力来创造条件,化冒险性为创造性,取得胜利。 第七条,要有一个很好的很团结的班子。领导班子思想一致,行动才能协调合拍,如果领导班子不好,人多不但无用,反而有害。 第九点,他说要重视政治,要亲自做政治工作。林彪说部队战斗力的提高要靠平时坚强的党的领导,坚强的政治工作,有了坚强的政治工作就会做到一呼百应,争先恐后,不怕牺牲。
林彪的战术总结起来有以下几点:三猛原则(猛打、猛冲、猛追),一点两面,四组一队,三种情况三种打法,四快一慢。 战争就是流血的政治,哪里有战争哪里就有牺牲。尽管林彪极其看重部队伤亡,但是面对残酷的战争就不得不拿出超人的胆量与毅力对待之。塔山阻击战时程子华向林报告伤亡数字,林彪打断其讲话讲了一句话:我不要伤亡数字,我只要塔山。这一句话看似不近人情,但是这就是战争。希特勒说:“只要还有一个德国人,我们就要战斗到底。”军人是以服从命令为天职的,他要的只是最后的胜利。敌死一千我伤八百,红旗之所以那样艳丽,是因为它是用士兵的鲜血染红的。刘伯承说:“狭路相逢勇者胜”,中国还有一句俗语叫:舍得一身剐,敢把皇帝拉下马。三猛打法,要求士兵犹如猛虎下山,不惜一切代价打击敌人。用士气压倒敌人,用武力征服敌人,用大无畏的精神震慑敌人。唯有牺牲多壮志,敢叫日月换新天。他做到了,以至于后来所有的对手听到林彪两个字就犯憷,以至于他的对手听到四野两个字就军心大乱。三猛从某种程度上讲恰恰减少了牺牲。 众所周知,林彪是个围点打援的高手。郑洞国被围长春,东北剿总司令卫立煌眼睁睁的看着郑部被困而不敢发一兵一卒。他怕什么?他林彪的围点打援。一点两面就是围点打援的精华,将十分之八九的兵力放在一点上,集中力量在一个拳头上。毛说:伤其十指不如断其一指正是这个道理。用十分之一二的兵力牵制被困之敌,集中优势敌人歼灭解围之敌。布上口袋让敌来钻。一旦上当,死死咬住,集中优势兵力像楔子一样穿插、分割、打入敌内部,打乱其建制使其顾头不能顾尾;迂回包围歼灭之。围点为虚,打援为实。布网以待,求得全歼。 四组一队即:火力组、突击组、爆破组、支援组组成一个突击队。三个人组成一个组,四个组组成一个班。这种科学分工的打法为人民军队战斗的正规化提供了样板。战争不是逞匹夫之勇,它是一门技术更是艺术,林彪四组一队的战法突破了过去传统意义上一拥而上的混乱局面。更有效更有利的打击了敌人。这也是以极小的代价换取东北全面解放的要领之所在。 三种情况三种打法,主要是针对敌人防御、退却、要退不退三种情况的打法。对症下药方见效果。敌人防御就要待准备充分后再进攻,林彪战术根本一点在于集中于敌5—7倍的兵力打击之,按照不打则已,打则必胜的精神行事。面对死防硬守的敌人就不能硬拼。围困长春就是很好的战例,围而不打直至敌人不战自降;面对陈明仁死守四平,林彪是不主张硬拼的,但是毛提出化四平为马德里,搅乱了战局。面对要退不退的敌人,下级不需要请示可猛追,与廖耀湘一战正是如此,林彪说:“部队的建制乱不乱我不管,抓着廖耀湘就行!”廖耀湘本有时间退回沈阳或者从葫芦岛撤兵,但是蒋介石与卫立煌两份不同的命令使得其措手不及,进退两难。林彪的不按常规出牌命令四野:哪里有廖耀湘你们就在哪里作战。一举歼灭廖耀湘部,生俘廖。这种见缝插针的战列堪称经典战法。面对退却的敌人亦是如此,痛打落水狗,在“三猛”中消耗敌人的有生力量。 四快一慢是指:准备要快,前进要快,扩张战果要快,追击要快,发动总攻要慢。林彪有一句名言叫:思考、判断、定决心、下命令。思考、判断要慢,林能在地图前坐上几天几夜,这叫运筹誉为握之中。多考虑战斗中可能出现的状况,将一切问题解决于战斗之前。排除障碍以致战斗伊始就掌握主动权。稳、准、狠,战斗谋划期讲究的是稳,战斗打响了,就要直扑敌人,以最短的时间发动最猛烈的攻势,快速、准确的打击敌人,不给敌人喘息的机会,一鼓作气拿下,迅速打扫战场撤离阵地。它的精髓在于:敌明我暗,迅速出击,打完就走。始终处于不败一地。
Linux 学习路线指南
Linux 学习路线指南
2013-12-18 14:11| 发布者: 红黑魂| 查看: 35| 评论: 0
摘要: 结合自己的几年的个人开发经验,及对 Linux,更是类UNIX系统,及开源软件文化,谈谈Linux的学习方法与学习中应该注意的一些事。
很 多同学接触Linux不多,对Linux平台的开发更是一无所知。而现在的趋势越来越表明,作为一 个优秀的软件开发人员,或计算机IT行业从业人员,掌握Linux是一种很重要的谋生资源与手段。下来我将会结合自己的几年的个人开发经验,及对 Linux,更是类UNIX系统,及开源软件文化,谈谈Linux的学习方法与学习中应该注意的一些事。
就如同刚才说的,很多同学以前可能连Linux是什么都不知道,对UNIX更是一无所知。所以我们从最基础的讲起,对于Linux及UNIX的历史我们不做多谈,直接进入入门的学习。
Linux入门是很简单的,问题是你是否有耐心,是否爱折腾,是否不排斥重装一类的大修。没折腾可以说是学不好Linux的,鸟哥说过,要真正了解Linux的分区机制,对LVM使用相当熟练,没有20次以上的Linux装机经验是积累不起来的,所以一定不要怕折腾。
由 于大家之前都使用Windows,所以我也尽可能照顾这些“菜鸟”。我的推荐,如果你第一次接触Linux,那么首先在虚拟机中尝试它。虚拟机我推荐 Virtual Box,我并不主张使用VM,原因是VM是闭源的,并且是收费的,我不希望推动盗版。当然如果你的Money足够多,可以尝试VM,但我要说的是即使是 VM,不一定就一定好。付费的软件不一定好。首先,Virtual Box很小巧,Windows平台下安装包在80MB左右,而VM动辄600MB,虽然功能强大,但资源消耗也多,何况你的需求Virtual Box完全能够满足。所以,还是自己选。如何使用虚拟机,是你的事,这个我不教你,因为很简单,不会的话Google或Baidu都可以,英文好的可以直 接看官方文档。
现在介绍Linux发行版的知识。正如你所见,Linux发行版并非Linux,Linux仅是指操作系统的内核,作为科班出生的你不要让我解释,我也没时间。我推荐的发行版如下:
UBUNTU适合纯菜鸟,追求稳定的官方支持,对系统稳定性要求较弱,喜欢最新应用,相对来说不太喜欢折腾的开发者。
Debian,相对UBUNTU难很多的发行版,突出特点是稳定与容易使用的包管理系统,缺点是企业支持不足,为社区开发驱动。
Arch,追逐时尚的开发者的首选,优点是包更新相当快,无缝升级,一次安装基本可以一直运作下去,没有如UBUNTU那样的版本概念,说的专业点叫滚动升级,保持你的系统一定是最新的。缺点显然易见,不稳定。同时安装配置相对Debian再麻烦点。
Gentoo,相对Arch再难点,考验使用者的综合水平,从系统安装到微调,内核编译都亲历亲为,是高手及黑客显示自己技术手段,按需配置符合自己要求的系统的首选。
Slackware与Gentoo类似。
CentOS,社区维护的RedHat的复刻版本,完全使用RedHat的源码重新编译生成,与RedHat的兼容性在理论上来说是最好的。如果你专注于Linux服务器,如网络管理,架站,那么CentOS是你的选择。
LFS, 终极黑客显摆工具,完全从源代码安装,编译系统。安装前你得到的只有一份文档,你要做的就是照文档你的说明,一步步,一条条命令,一个个软件包的去构建你 的Linux,完全由你自己控制,想要什么就是什么。如果你做出了LFS,证明你的Linux功底已经相当不错,如果你能拿LFS文档活学活用,再将 Linux从源代码开始移植到嵌入式系统,我敢说中国的企业你可以混的很好。
你 得挑一个适合你的系统,然后在虚拟机安装它,开始使用它。如果你想快速学会Linux,我有一个建议就是忘记图形界面,不要想图形界面能不能提供你问题的 答案,而是满世界的去找,去问,如何用命令行解决你的问题。在这个过程中,你最好能将Linux的命令掌握的不错,起码常用的命令得知道,同时建立了自己 的知识库,里面是你积累的各项知识。
再 下个阶段,你需要学习的是Linux平台的C/C++开发,同时还有Bash脚本编程,如果你对Java兴趣很深还有Java。同样,建议你抛弃掉图形界 面的IDE,从VIM开始,为什么是VIM,而不是Emacs,我无意挑起编辑器大战,但我觉得VIM适合初学者,适合手比较笨,脑袋比较慢的开发者。 Emacs的键位太多,太复杂,我很畏惧。然后是GCC,Make,Eclipse(Java,C++或者)。虽然将C++列在了Eclipse中,但我 并不推荐用IDE开发C++,因为这不是Linux的文化,容易让你忽略一些你应该注意的问题。IDE让你变懒,懒得跟猪一样。如果你对程序调试,测试工 作很感兴趣,GDB也得学的很好,如果不是GDB也是必修课。这是开发的第一步,注意我并没有提过一句Linux系统API的内容,这个阶段也不要关心这 个。你要做的就是积累经验,在Linux平台的开发经验。我推荐的书如下:C语言程序设计,谭浩强的也可以。C语言,白皮书当然更好。C++推荐C++ Primer Plus,Java我不喜欢,就不推荐了。工具方面推荐VIM的官方手册,GCC中文文档,GDB中文文档,GNU开源软件开发指导(电子书),汇编语言 程序设计(让你对库,链接,内嵌汇编,编译器优化选项有初步了解,不必深度)。
如果你这个阶段过不了就不必往下做了,这是底线,最基础的基础,否则离开,不要霍霍Linux开发。不专业的Linux开发者作出的程序是与Linux文化或UNIX文化相背的,程序是走不远的,不可能像Bash,VIM这些神品一样。所以做不好干脆离开。
接下来进入Linux系统编程,不二选择,APUE,UNIX 环境高级编程,一遍一遍的看,看10遍都嫌少,如果你可以在大学将这本书翻烂,里面的内容都实践过,有作品,你口头表达能力够强,你可以在面试时说服所有 的考官。(可能有点夸张,但APUE绝对是圣经一般的读物,即使是Windows程序员也从其中汲取养分,Google创始人的案头书籍,扎尔伯克的床头 读物。)
这 本书看完后你会对Linux系统编程有相当的了解,知道Linux与Windows平台间开发的差异在哪?它们的优缺点在哪?我的总结如下:做 Windows平台开发,很苦,微软的系统API总在扩容,想使用最新潮,最高效的功能,最适合当前流行系统的功能你必须时刻学习。Linux不 是,Linux系统的核心API就100来个,记忆力好完全可以背下来。而且经久不变,为什么不变,因为要同UNIX兼容,符合POSIX标准。所以 Linux平台的开发大多是专注于底层的或服务器编程。这是其优点,当然图形是Linux的软肋,但我站在一个开发者的角度,我无所谓,因为命令行我也可 以适应,如果有更好的图形界面我就当作恩赐吧。另外,Windows闭源,系统做了什么你更本不知道,永远被微软牵着鼻子跑,想想如果微软说Win8不支 持QQ,那腾讯不得哭死。而Linux完全开源,你不喜欢,可以自己改,只要你技术够。另外,Windows虽然使用的人多,但使用场合单一,专注与桌 面。而Linux在各个方面都有发展,尤其在云计算,服务器软件,嵌入式领域,企业级应用上有广大前景,而且兼容性一流,由于支持POSIX可以无缝的运 行在UNIX系统之上,不管是苹果的Mac还是IBM的AS400系列,都是完全支持的。另外,Linux的开发环境支持也绝对是一流的,不管是 C/C++,Java,Bash,Python,PHP,Javascript,。。。。。。就连C#也支持。而微软除Visual Stdio套件以外,都不怎么友好,不是吗?
如果你看完APUE的感触有很多,希望验证你的某些想法或经验,推荐UNIX程序设计艺术,世界顶级黑客将同你分享他的看法。
现在是时候做分流了。 大体上我分为四个方向:网络,图形,嵌入式,设备驱动。
如果选择网络,再细分,我对其他的不是他熟悉,只说服务器软件编写及高性能的并发程序编写吧。相对来说这是网络编程中技术含量最高的,也是底层的。需要很多的经验,看很多的书,做很多的项目。
我的看法是以下面的顺序来看书:
APUE再深读 – 尤其是进程,线程,IPC,套接字
多核程序设计 - Pthread一定得吃透了,你很NB
UNIX网络编程 – 卷一,卷二
TCP/IP网络详解 – 卷一 再看上面两本书时就该看了
5.TCP/IP 网络详解 – 卷二 我觉得看到卷二就差不多了,当然卷三看了更好,努力,争取看了
6.Lighttpd源代码 - 这个服务器也很有名了
7.Nginx源代码 – 相较于Apache,Nginx的源码较少,如果能看个大致,很NB。看源代码主要是要学习里面的套接字编程及并发控制,想想都激动。如果你有这些本事,可以试着往暴雪投简历,为他们写服务器后台,想一想全球的魔兽都运行在你的服务器软件上。
Linux内核 TCP/IP协议栈 – 深入了解TCP/IP的实现
如果你还喜欢驱动程序设计,可以看看更底层的协议,如链路层的,写什么路由器,网卡,网络设备的驱动及嵌入式系统软件应该也不成问题了。
当然一般的网络公司,就算百度级别的也该毫不犹豫的雇用你。只是看后面这些书需要时间与经验,所以35岁以前办到吧!跳槽到给你未来的地方!
图形方向,我觉得图形方向也是很有前途的,以下几个方面。
Opengl的工业及游戏开发,国外较成熟。
影视动画特效,如皮克斯,也是国外较成熟。
GPU计算技术,可以应用在浏览器网页渲染上,GPU计算资源利用上,由于开源的原因,有很多的文档程序可以参考。如果能进火狐开发,或google做浏览器开发,应该会很好 。
嵌入式方向:嵌入式方向没说的,Linux很重要。
掌 握多个架构,不仅X86的,ARM的,单片机什么的也必须得懂。硬件不懂我预见你会死在半路上,我也想走嵌入式方向,但我觉得就学校教授嵌入式的方法,我 连学电子的那帮学生都竞争不过。奉劝大家,一定得懂硬件再去做,如果走到嵌入式应用开发,只能祝你好运,不要碰上像Nokia,Hp这样的公司,否则你会 很惨的。
驱 动程序设计:软件开发周期是很长的,硬件不同,很快。每个月诞生那么多的新硬件,如何让他们在Linux上工作起来,这是你的工作。由于Linux的兼容 性很好,如果不是太低层的驱动,基本C语言就可以搞定,系统架构的影响不大,因为有系统支持,你可能做些许更改就可以在ARM上使用PC的硬件了,所以做 硬件驱动开发不像嵌入式,对硬件知识的要求很高。可以从事的方向也很多,如家电啊,特别是如索尼,日立,希捷,富士康这样的厂子,很稀缺的。
LDD – Linux驱动程序设计与内核编程的基础读物
深入理解Linux内核 – 进阶的
Linux源代码 – 永无止境的
当然你还的看个方面的书,如网络啊什么的。
原文链接:http://www.nowamagic.net/librarys/veda/detail/2266
忍心独享,赞一个开源库:720全景显示
展示的效果跟香港720一样,感谢老外的开源精神。 google代码首页: http://code.google.com/p/panoramagl/ 库使用详细介绍: http://www.codeproject.com/KB/iPhone/panoramagl.aspx 功能介绍: 1、支持720全景展示 2、支持重力加速度感应控制
Linux下安装3G上网卡
ZTE中兴MF637U 3G 联通 linux
前提:安装wvdial和usb_modeswitch软件
一、配置文件:/etc/wvdial.conf
[Dialer Defaults] Modem = /dev/ttyUSB2 Init1 = ATZ Init3 = ATE0V1 Init5 = ATS0=0 Init6 = AT+CGDCONT=1,"IP","uninet" Init7 = AT+CFUN=1 Modem Type = Analog Modem Baud = 460800 New PPPD = yes ISDN = 0 Phone = *99***1# Password = any Username = any Stupid Mode = 1 Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 二、配置文件:/etc/usb_modeswitch.conf
# Configuration for the usb_modeswitch package, a mode switching tool for # USB devices providing multiple states or modes # # Evaluated by the wrapper script /usr/sbin/usb_modeswitch_dispatcher # # To enable an option, set it to "1", "yes" or "true" (case doesn't matter) # Everything else counts as "disable" # Disable automatic mode switching globally (e.g. to access the original # install storage) DisableSwitching=0 # Enable logging (results in a extensive report file in /var/log, named # "usb_modeswitch_<interface-name>" and probably others EnableLogging=0 ######################################################## # ZTE MF622 (aka "Onda MDC502HS") # ZTE MF626 # ZTE MF628+ (tested version from Telia / Sweden) # ZTE MF633 # ZTE MF636 (aka "Telstra / BigPond 7.2 Mobile Card") # ZTE MF637 # and probably others not listed here # # Contributor: Joakim Wennergren and others DefaultVendor= 0x19d2 DefaultProduct= 0x2000 TargetVendor= 0x19d2 TargetProduct= 0x0031 MessageContent="5553424312345678000000000000061e000000000000000000000000000000" MessageContent2="5553424312345679000000000000061b000000020000000000000000000000" NeedResponse=1 三、拨号命令:
usb_modeswitch -W -c /etc/usb_modeswitch.conf modprobe usbserial vendor=0x19d2 product=0x0031
wvdial &