- 浏览: 294351 次
- 性别:
- 来自: 天津
-
文章分类
最新评论
-
狼子六:
已经开始用了
Java 枚举7常见种用法 -
相约的旋律:
方法一下面的"public static fianl ...
Java 枚举7常见种用法 -
kiddy2012:
...
[转载]程序员装B指南 -
fancy105:
写得很好,简单明了双全面!
Java 枚举7常见种用法 -
he_wen:
请问一下 G1算法是否在线上使用了?
Garbage First(G1) 日志分析工具
对程序员 们来说挑战自我非常重要,要么不断创新,要么技术停滞不前。新年伊始,我整理了12个月的目标,每个目标都是对技术或个人能力的挑战,而且可以年复一年循环使用。
01. 变得有耐心
02. 保持健康
03. 拥抱变化带来的不适应
04. 学习一门新的编程语言
05. 自动化
06. 学习更多数学知识
07. 关注安全
08. 备份你的数据
09. 学习更多理论知识
10. 接触艺术和人文
11. 向新的软件学习
12. 完成一个自己的项目
接下来我会对这些建议逐个介绍。
变得有耐心
程序员们会担心锻炼耐心付出的努力得不到应有的回报。其实,培养耐心只要付出很小的投入就能够得到相对而言很大的收获。下面是开始锻炼耐心可以尝试的一个列表,只要全身心投入其中任意一项,都可以在一个月左右脱离门外汉(成为有经验的新手)的阶段:
烹饪、徒步、滑雪、天文、慢跑、木工、武术、舞蹈
保持健康
程序员通常久坐少动,因此在日常工作中会面临健康问题,但通常都被我们忽略了。一年中花整整一个月来调整你的生活习惯、饮食和生活环境,这会促使你养成持久、健康的生活习惯。每年去一趟诊所检查血压、胆固醇和血糖,看看这些指标最近有什么变化。如果你的手腕开始疼痛或者已经疼了很久,马上停掉手上的工作开始与“鼠标手”(重复性劳损)作战。注意你的坐姿,尤其是肩膀和脖子。我使用了矫姿器来帮助治疗。
跟踪你的体重、摄入以及燃烧的卡路里。如果有必要,可以改变生活方式以养成健康的饮食习惯和减肥。(《Zed Shaw:程序员的常见健康问题 》)
拥抱变化带来的不适
在我20刚出头的时候,通过观察身边年纪稍大一些的伙伴我发现有些人停滞不前而另一些则活力充沛,我试着寻找背后的原因。答案就是舒适感。舒适会让技术停滞不前。当找到一个能够为我所用的系统时,我们会一直使用它。但技术是不断进步的,而那些停留在舒适区的人永远不会意识到这些进步能够为他们带来好处。不破不立,要让自己适应不舒适的感觉。
下面列出的事情一开始 可能会让你感到不适应:
-
- 使用德沃夏克键盘
- 使用vim替代emacs,反之亦然
- 不使用鼠标
- 使用不同的窗口管理器
- 喝清咖啡不加奶油和糖,或者喝清茶
- 尝试一个月“流行且无聊的新事物”
- 一个星期中有一天不开手机
- 学习使用一种可以单手输入的设备
- 尝试一个不同的操作系统
- 一个星期中有一天不上网
- 试着对饮食加以限制:尝试吃素,成为纯素食主义者,不吃乳制品,等等
- 每天吃一种你不喜欢的食物
- 将你习惯使用的胳膊用绷带绑起来
- 学习用你不习惯的那只手写字
- 开一个博客
- 参加公共演讲
- 一个月听一种你不喜欢的音乐
- 去医院或退休家庭护理做志愿者
- 一个星期有一天快生活
- 去一个与自己文化或语言不同的国家旅行
- 读一篇广受好评但却不是你喜欢题材的小说
- 看一场广受好评但却不是你喜欢风格的电影或演出
- 学会用变速杆(手动)开车
- 反对你相信的一些事情
在一个月的尝试之后,你可以决定是否继续采用新方式,或者找到新方式中好的经验与原有方式的结合点。例如,在我从使用了10年的emacs转向vim时,我会为插入模式设置emacs风格快捷键从而继续使用vim。(《25个Vim教程、视频和资源 》)
学习一门新的编程语言
编程语言起起落落。如果只了解一门语言,程序员的解决问题能力以及职业前景都会因此受到限制。花上整整一个月时间吸收一门新语言或者一个新的编程范式,并用它写一个小程序。
下面是一些可以学习但不是非常主流的编程语言:
Racket 、 Haskell 、Scala 、Erlang 、Clojure 、SML/NJ OCaml 、Squeak 、Prolog 、Datalog .
如果你无所不知,那么你可以实现一门新的编程语言。
自动化
程序员拥有最强大的待开发技能就是将虚拟和现实 自动化的能力。如果你从来没有造过一个机器人,那么去做一个吧 。至少学会使用Lego Mindstorms 或者玩一玩 Arduino board 。
检查一下你每天的任务,看看其中有哪些可以完全或者部分自动化。自动化在家庭生活里已经有了长足的进步,甚至可以像Insteon 那样对系统进行DIY。
投资一个月的时间来进行自动化:
-
- 调整你的邮箱过滤器或者设置procmail
- 为频繁进行的工作编写自动化shell 脚本
- 编写shell 脚本帮助写作
- 学会如何使用cron工具
- 改造橱柜灯由感应控制
- 尽可能地用无线替代有线
- 停止手动同步:将信息存到云端
- 安装一个远程控制音频系统
- 通过你的服务器控制家里的空调
- 安装数字监控摄像头
- 安装数字内部通话系统,儿童监控系统
- 让咖啡机自动打开
- 为宠物安装自动给水槽
- 为宠物安装自动感应门
- 将Roomba改造成个人信使
译注:
procmail:procmail软件包包含一个自动的邮件管理器,可以很好的过滤和排序邮件。
cron:linux下的定时执行工具。
Roomba:Roomba是iRobo公司生产的定时智能机器人。
学习更多数学知识
计算机科学本质上讲是数学的一个学科。好的数学家中间会产出优秀的程序员。不要让你的数学能力丧失殆尽。
考虑每年花一个月时间复习列表中的一项:
逻辑学、离散数学、微积分、概率论、统计学、抽象代数、数论、范畴论、偏序理论 (《数学是成就卓越开发人员的必备技能 》)
关注安全
很少有程序员具备好的安全习惯。如果你对自己的数字安全很在意,你就会对你写的代码安全性更加关心。确保你在每个站点都使用了唯一的高安全系数密码。使用加密的密码管理器来管理你的密码,例如PasswordSafe 或者KeePassX 。如果你还没有对整个磁盘加密,留出时间完成它。(在Mac上可以轻松完成)
每年都要研究过去12个月中前10位的安全漏洞。他们是如何发生的?在编程中需要怎么做能够避免在你的代码中出现这些漏洞?
下面是另外一些你需要尝试的安全任务:
译注:
nmap:linux下的网络扫描和嗅探工具包
备份你的数据
每年花一些时间检查你的备份策略。
花一个月时间将备份花费的时间减到最小。
使用基于云的备份服务,比如Mozy 和Carbonite ,很容易建立无缝自动备份。
更全面地防御可以选择为每个人分发硬盘,对每台电脑使用像Time Machine这样的自动备份工具进行备份。
对重要文件使用异地远程仓库进行版本控制。
学习更多理论知识
计算机科学有丰富的理论基础。
了解最新进展的同时还要加强对经典开发理论的掌握。
- 每年在下列主题上花一个月时间:
- 形式语言
- 自动机与可计算性理论
- 计算复杂性理论
- 形式化方法
- 语义学
- 算法与数据结构
译注:
形式语言:按一定规律构成的句子或符号串的有限或无限的集合。
自动机:是有线状态机(FSM)的数学模型。
可计算性理论:研究计算的可行性和函数算法的理论。又称算法理论。它是算法设计与分析的基础,也是计算机科学的理论基础。
计算复杂性理论:计算复杂性理论是理论计算机科学的分支学科,使用数学方法对计算中所需的各种资源的耗费作定量的分析,并研究各类问题之间在计算复杂程度上的相互关系和基本性质,是算法分析的理论基础。
形式化方法:在逻辑科学中是指分析、研究思维形式结构的方法。
语义学:研究自然语言中词语意义的学科。也可以指对逻辑形式系统中符号解释的研究。
对于刚起步的程序员,可以先看一看下列文章:
译注:
CEK:CEK机器是由Matthias Felleisen和Dan Friedman开发的λ-演算的力学模型。
Haskell:一种纯函数式编程语言,以美国数学家Haskell Brooks Curry命名。
接触艺术和人文
工程师往往轻视艺术。他们没有意识到艺术和人文是基础升华的重要因素。史蒂夫·乔布斯 乐于指出将技术与人文结合的重要性,事实也却是如此。
艺术和设计原则同样适用于人和计算机之间的交互。不要忽视这些原则。艺术和人文的训练让直觉更加敏锐,而这方面的练习是难以用数字来计量。工程师需要知道如何衡量那些他们不能计量的事物,而不是只是统计他们可以计量的内容。
每年至少有一个月学习下面列出的主题:
-
- 工业设计
- 哲学
- 摄影
- 绘画
- 素描
- 音乐及音乐理论
- 电影
- 文学
社会科学同样会对计算机科学家有很大帮助,尤其是经济学和哲学。
向新的软件学习
一个为自己的软件寻找灵感的好办法就是向新的或新型应用程序学习。例如,如果你从来没有尝试过3D建模软件,可以尝试 Blender 。抑或是,如果你从来没有接触过LaTeX,请真诚地试着去了解它。
在学习过程中,请注意你喜欢什么和讨厌什么。真诚地问自己,这些观察到的内容是否在你的软件中存在。在工作中很难看到自己的缺点,但发现别人的不足却很容易。天下没有哪个父母认为自己的孩子长得难看。请学习看到自己作品的不足。
完成一个自己的项目
如果你整天为别人写代码,那么为自己写程序能让你记得当初为什么会成为程序员。每年为自己选择的项目分配一个月的时间,完成核心功能,将其开源发布。
发表评论
-
[转载]理解 CMS GC 日志
2011-11-22 14:52 1606CMS GC with -XX:+PrintGCDetai ... -
晒晒我的IT路,送给在路上的人(一)——谈谈学习
2010-05-07 22:11 868五一在家休息了一个星 ... -
事情一个接着一个的来,感觉越来越没意思了
2010-05-22 10:08 833本想结束了实训,过了51可以轻松一下,去上上自习,看看英语,没 ... -
我是一个没有身份的人,没有身份证的人。
2010-05-31 21:31 746自上次回家到现在,一个月的时间很快就过去了。 这个回家很悲剧 ... -
晒晒我的IT路,送给在路上的人(二)——谈谈休息。
2010-06-26 20:48 821这个话题让我想起了最 ... -
[转载]80后们的十个人生底线
2010-07-14 14:55 709文章写的真好,不经意间出动了我的心灵,看完了有点内牛满面的感觉 ... -
又一次回家……
2010-07-30 21:08 733这篇文章很早以前就 ... -
[转载]堆和栈的区别
2010-09-07 00:19 872一、预备知识—程序的内存分配 一个由C/C++编译的程序 ... -
[转载]IT项目管理之沟通方法
2010-11-20 16:33 891很多有经验的程序员都 ... -
[转载]程序员的八种级别
2010-11-24 08:44 809你有没有遇到过那个经典的面试问题,"你预见过自 ... -
hibernate属性配置
2011-06-16 23:25 3137这些属性有的时候很需要,但是记不住,所以做个备忘。 ... -
开始忙了,毕业了,上班了...
2011-07-09 18:55 732从实习到毕业到入职,很快。 这段时间由于工作等原因,基本上没 ... -
[转载]毕业奋斗八年成功后有感,给年轻人的10个忠告
2009-07-29 16:06 6751、努力 工作要努 ... -
[转载]年轻人应该知道的71个做饭技巧
2009-09-28 00:04 8391、煮水饺时,在水里放 ... -
[转载]Java开源软件六大帮派
2009-09-28 12:40 751Java 开源软件千千万,就好像一个江湖,有势力的有 ... -
[转载]团队交流技巧,看你在团队中如何?
2009-09-28 19:22 1012团队建设,简单讲就是 ... -
无题。。。。
2009-10-19 10:27 743刚买的M11,这几天听音乐了! -
[转载]我的十年总结——送给刚毕业的年轻朋友们
2009-10-19 17:21 689昨天在csdn上看到一篇“十年总结”的文章,颇受感动!不为作者 ... -
瞎忙了
2009-11-04 14:38 853最近没事可做,学学asp.net! -
最近...
2010-02-12 12:34 801最近做了两个项目,一个B/S的,一个C/S的。 我以前是做 ...
相关推荐
内容概要:本文详细介绍了基于MATLAB GUI界面和卷积神经网络(CNN)的模糊车牌识别系统。该系统旨在解决现实中车牌因模糊不清导致识别困难的问题。文中阐述了整个流程的关键步骤,包括图像的模糊还原、灰度化、阈值化、边缘检测、孔洞填充、形态学操作、滤波操作、车牌定位、字符分割以及最终的字符识别。通过使用维纳滤波或最小二乘法约束滤波进行模糊还原,再利用CNN的强大特征提取能力完成字符分类。此外,还特别强调了MATLAB GUI界面的设计,使得用户能直观便捷地操作整个系统。 适合人群:对图像处理和深度学习感兴趣的科研人员、高校学生及从事相关领域的工程师。 使用场景及目标:适用于交通管理、智能停车场等领域,用于提升车牌识别的准确性和效率,特别是在面对模糊车牌时的表现。 其他说明:文中提供了部分关键代码片段作为参考,并对实验结果进行了详细的分析,展示了系统在不同环境下的表现情况及其潜在的应用前景。
嵌入式八股文面试题库资料知识宝典-计算机专业试题.zip
嵌入式八股文面试题库资料知识宝典-C and C++ normal interview_3.zip
内容概要:本文深入探讨了一款额定功率为4kW的开关磁阻电机,详细介绍了其性能参数如额定功率、转速、效率、输出转矩和脉动率等。同时,文章还展示了利用RMxprt、Maxwell 2D和3D模型对该电机进行仿真的方法和技术,通过外电路分析进一步研究其电气性能和动态响应特性。最后,文章提供了基于RMxprt模型的MATLAB仿真代码示例,帮助读者理解电机的工作原理及其性能特点。 适合人群:从事电机设计、工业自动化领域的工程师和技术人员,尤其是对开关磁阻电机感兴趣的科研工作者。 使用场景及目标:适用于希望深入了解开关磁阻电机特性和建模技术的研究人员,在新产品开发或现有产品改进时作为参考资料。 其他说明:文中提供的代码示例仅用于演示目的,实际操作时需根据所用软件的具体情况进行适当修改。
少儿编程scratch项目源代码文件案例素材-剑客冲刺.zip
少儿编程scratch项目源代码文件案例素材-几何冲刺 转瞬即逝.zip
内容概要:本文详细介绍了基于PID控制器的四象限直流电机速度驱动控制系统仿真模型及其永磁直流电机(PMDC)转速控制模型。首先阐述了PID控制器的工作原理,即通过对系统误差的比例、积分和微分运算来调整电机的驱动信号,从而实现转速的精确控制。接着讨论了如何利用PID控制器使有刷PMDC电机在四个象限中精确跟踪参考速度,并展示了仿真模型在应对快速负载扰动时的有效性和稳定性。最后,提供了Simulink仿真模型和详细的Word模型说明文档,帮助读者理解和调整PID控制器参数,以达到最佳控制效果。 适合人群:从事电力电子与电机控制领域的研究人员和技术人员,尤其是对四象限直流电机速度驱动控制系统感兴趣的读者。 使用场景及目标:适用于需要深入了解和掌握四象限直流电机速度驱动控制系统设计与实现的研究人员和技术人员。目标是在实际项目中能够运用PID控制器实现电机转速的精确控制,并提高系统的稳定性和抗干扰能力。 其他说明:文中引用了多篇相关领域的权威文献,确保了理论依据的可靠性和实用性。此外,提供的Simulink模型和Word文档有助于读者更好地理解和实践所介绍的内容。
嵌入式八股文面试题库资料知识宝典-2013年海康威视校园招聘嵌入式开发笔试题.zip
少儿编程scratch项目源代码文件案例素材-驾驶通关.zip
小区开放对周边道路通行能力影响的研究.pdf
内容概要:本文探讨了冷链物流车辆路径优化问题,特别是如何通过NSGA-2遗传算法和软硬时间窗策略来实现高效、环保和高客户满意度的路径规划。文中介绍了冷链物流的特点及其重要性,提出了软时间窗概念,允许一定的配送时间弹性,同时考虑碳排放成本,以达到绿色物流的目的。此外,还讨论了如何将客户满意度作为路径优化的重要评价标准之一。最后,通过一段简化的Python代码展示了遗传算法的应用。 适合人群:从事物流管理、冷链物流运营的专业人士,以及对遗传算法和路径优化感兴趣的科研人员和技术开发者。 使用场景及目标:适用于冷链物流企业,旨在优化配送路线,降低运营成本,减少碳排放,提升客户满意度。目标是帮助企业实现绿色、高效的物流配送系统。 其他说明:文中提供的代码仅为示意,实际应用需根据具体情况调整参数设置和模型构建。
少儿编程scratch项目源代码文件案例素材-恐怖矿井.zip
内容概要:本文详细介绍了基于STM32F030的无刷电机控制方案,重点在于高压FOC(磁场定向控制)技术和滑膜无感FOC的应用。该方案实现了过载、过欠压、堵转等多种保护机制,并提供了完整的源码、原理图和PCB设计。文中展示了关键代码片段,如滑膜观测器和电流环处理,以及保护机制的具体实现方法。此外,还提到了方案的移植要点和实际测试效果,确保系统的稳定性和高效性。 适合人群:嵌入式系统开发者、电机控制系统工程师、硬件工程师。 使用场景及目标:适用于需要高性能无刷电机控制的应用场景,如工业自动化设备、无人机、电动工具等。目标是提供一种成熟的、经过验证的无刷电机控制方案,帮助开发者快速实现并优化电机控制性能。 其他说明:提供的资料包括详细的原理图、PCB设计文件、源码及测试视频,方便开发者进行学习和应用。
基于有限体积法Godunov格式的管道泄漏检测模型研究.pdf
嵌入式八股文面试题库资料知识宝典-CC++笔试题-深圳有为(2019.2.28)1.zip
少儿编程scratch项目源代码文件案例素材-几何冲刺 V1.5.zip
Android系统开发_Linux内核配置_USB-HID设备模拟_通过root权限将Android设备转换为全功能USB键盘的项目实现_该项目需要内核支持configFS文件系统
C# WPF - LiveCharts Project
少儿编程scratch项目源代码文件案例素材-恐怖叉子 动画.zip
嵌入式八股文面试题库资料知识宝典-嵌⼊式⼯程师⾯试⾼频问题.zip