为程序员量身定制的12个目标

http://justjavac.iteye.com/blog/1490462

 

对程序员们来说挑战自我非常重要,要么不断创新,要么技术停滞不前。新年伊始,我整理了 12 个月的目标,每个目标都是对技术或个人能力的挑战,而且可以年复一年循环使用。

  • 变得有耐心
  • 保持健康
  • 拥抱变化带来的不适应
  • 学习一门新的编程语言
  • 自动化
  • 学习更多数学知识
  • 关注安全
  • 备份你的数据
  • 学习更多理论知识
  • 接触艺术和人文
  • 向新的软件学习
  • 完成一个自己的项目

  接下来我会对这些建议逐个介绍。

  变得有耐心

  程序员们会担心锻炼耐心付出的努力得不到应有的回报。其实,培养耐心只要付出很小的投入就能够得到相对而言很大的收获。下面是开始锻炼耐心可以尝试的一个列表,只要全身心投入其中任意一项,都可以在一个月左右脱离门外汉(成为有经验的新手)的阶段:

  • 烹饪
  • 徒步
  • 滑雪
  • 天文
  • 慢跑
  • 木工
  • 武术
  • 舞蹈

  保持健康

  程序员通常久坐少动,因此在日常工作中会面临健康问题,但通常都被我们忽略了。一年中花整整一个月来调整你的生活习 惯、饮食和生活环境,这会促使你养成持久、健康的生活习惯。每年去一趟诊所检查血压、胆固醇和血糖,看看这些指标最近有什么变化。如果你的手腕开始疼痛或 者已经疼了很久,马上停掉手上的工作开始与“鼠标手”(重复性劳损)作战。注意你的坐姿,尤其是肩膀和脖子。我使用了矫姿器来帮助治疗。

  跟踪你的体重、摄入以及燃烧的卡路里。如果有必要,可以改变生活方式以养成健康的饮食习惯和减肥。

  拥抱变化带来的不适

  在我 20 刚出头的时候,通过观察身边年纪稍大一些的伙伴我发现有些人停滞不前而另一些则活力充沛,我试着寻找背后的原因。答案就是舒适感。舒适会让技术停滞不前。 当找到一个能够为我所用的系统时,我们会一直使用它。但技术是不断进步的,而那些停留在舒适区的人永远不会意识到这些进步能够为他们带来好处。不破不立, 要让自己适应不舒适的感觉。

  下面列出的事情一开始可能会让你感到不适应:

  • 使用德沃夏克键盘
  • 使用 vim 替代 emacs,反之亦然
  • 不使用鼠标
  • 使用不同的窗口管理器
  • 喝清咖啡不加奶油和糖,或者喝清茶
  • 尝试一个月“流行且无聊的新事物”
  • 一个星期中有一天不开手机
  • 学习使用一种可以单手输入的设备
  • 尝试一个不同的操作系统
  • 一个星期中有一天不上网
  • 试着对饮食加以限制:尝试吃素,成为纯素食主义者,不吃乳制品,等等
  • 每天吃一种你不喜欢的食物
  • 将你习惯使用的胳膊用绷带绑起来
  • 学习用你不习惯的那只手写字
  • 开一个博客
  • 参加公共演讲
  • 一个月听一种你不喜欢的音乐
  • 去医院或退休家庭护理做志愿者
  • 一个星期有一天快生活
  • 去一个与自己文化或语言不同的国家旅行
  • 读一篇广受好评但却不是你喜欢题材的小说
  • 看一场广受好评但却不是你喜欢风格的电影或演出
  • 学会用变速杆(手动)开车
  • 反对你相信的一些事情

  在一个月的尝试之后,你可以决定是否继续采用新方式,或者找到新方式中好的经验与原有方式的结合点。例如,在我从使用了 10 年的 emacs 转向 vim 时,我会为插入模式设置 emacs 风格快捷键从而继续使用 vim。

  学习一门新的编程语言

  编程语言起起落落。如果只了解一门语言,程序员的解决问题能力以及职业前景都会因此受到限制。花上整整一个月时间吸收一门新语言或者一个新的编程范式,并用它写一个小程序。

  下面是一些可以学习但不是非常主流的编程语言:

  如果你无所不知,那么你可以实现一门新的编程语言。

  自动化

  程序员拥有最强大的待开发技能就是将虚拟和现实自动化的能力。如果你从来没有造过一个机器人,那么去做一个吧。至少学会使用 Lego Mindstorms 或者玩一玩 Arduino board。

  检查一下你每天的任务,看看其中有哪些可以完全或者部分自动化。自动化在家庭生活里已经有了长足的进步,甚至可以像 Insteon 那样对系统进行 DIY。

  投资一个月的时间来进行自动化:

  • 调整你的邮箱过滤器或者设置 procmail
  • 为频繁进行的工作编写自动化 shell脚本
  • 编写 shell脚本帮助写作
  • 学会如何使用 cron 工具
  • 改造橱柜灯由感应控制
  • 尽可能地用无线替代有线
  • 停止手动同步:将信息存到云端
  • 安装一个远程控制音频系统
  • 通过你的服务器控制家里的空调
  • 安装数字监控摄像头
  • 安装数字内部通话系统,儿童监控系统
  • 让咖啡机自动打开
  • 为宠物安装自动给水槽
  • 为宠物安装自动感应门
  • 将 Roomba 改造成个人信使

  译注:

  procmail:procmail 软件包包含一个自动的邮件管理器,可以很好的过滤和排序邮件。

  cron:linux 下的定时执行工具。

  Roomba:Roomba 是 iRobo 公司生产的定时智能机器人。

  学习更多数学知识

  计算机科学本质上讲是数学的一个学科。好的数学家中间会产出优秀的程序员。不要让你的数学能力丧失殆尽。

  考虑每年花一个月时间复习列表中的一项:

  关注安全

  很少有程序员具备好的安全习惯。如果你对自己的数字安全很在意,你就会对你写的代码安全性更加关心。确保你在每个站点都使用了唯一的高安全系数密码。使用加密的密码管理器来管理你的密码,例如 PasswordSafe 或者KeePassX。如果你还没有对整个磁盘加密,留出时间完成它。(在 Mac 上可以轻松完成)

  每年都要研究过去 12 个月中前 10 位的安全漏洞。他们是如何发生的?在编程中需要怎么做能够避免在你的代码中出现这些漏洞?

  下面是另外一些你需要尝试的安全任务:

  • 在 Apache 中加入 SSL 验证
  • 使用RSA 或 AES 实现密码系统
  • 试着破译你的无线网络密码
  • 用 WireShark 侦听你的网络通讯
  • 设置基于密钥的无密码 ssh 登录
  • 自己运行 nmap;配置你的防火墙
  • 建立端口扫描
  • 为 USB 驱动器加密
  • 监控日志文件
  • 设置 cron 任务定期更新你的程序

  译注:

  nmap:linux 下的网络扫描和嗅探工具包

  备份你的数据

  每年花一些时间检查你的备份策略。

  花一个月时间将备份花费的时间减到最小。

  使用基于云的备份服务,比如 Mozy 和 Carbonite,很容易建立无缝自动备份。

  更全面地防御可以选择为每个人分发硬盘,对每台电脑使用像 Time Machine 这样的自动备份工具进行备份。

  对重要文件使用异地远程仓库进行版本控制。

  学习更多理论知识

  计算机科学有丰富的理论基础。

  了解最新进展的同时还要加强对经典开发理论的掌握。

  • 每年在下列主题上花一个月时间:
  • 形式语言
  • 自动机与可计算性理论
  • 计算复杂性理论
  • 形式化方法
  • 语义学
  • 算法与数据结构

  译注:

  形式语言:按一定规律构成的句子或符号串的有限或无限的集合。

  自动机:是有线状态机(FSM)的数学模型。

  可计算性理论:研究计算的可行性和函数算法的理论。又称算法理论。它是算法设计与分析的基础,也是计算机科学的理论基础。

  计算复杂性理论:计算复杂性理论是理论计算机科学的分支学科,使用数学方法对计算中所需的各种资源的耗费作定量的分析,并研究各类问题之间在计算复杂程度上的相互关系和基本性质,是算法分析的理论基础。

  形式化方法:在逻辑科学中是指分析、研究思维形式结构的方法。

  语义学:研究自然语言中词语意义的学科。也可以指对逻辑形式系统中符号解释的研究。

  对于刚起步的程序员,可以先看一看下列文章:

  译注:

  CEK:CEK 机器是由 Matthias Felleisen 和 Dan Friedman 开发的λ-演算的力学模型。

  Haskell:一种纯函数式编程语言,以美国数学家 Haskell Brooks Curry 命名。

  接触艺术和人文

  工程师往往轻视艺术。他们没有意识到艺术和人文是基础升华的重要因素。史蒂夫·乔布斯乐于指出将技术与人文结合的重要性,事实也却是如此。

  艺术和设计原则同样适用于人和计算机之间的交互。不要忽视这些原则。艺术和人文的训练让直觉更加敏锐,而这方面的练习是难以用数字来计量。工程师需要知道如何衡量那些他们不能计量的事物,而不是只是统计他们可以计量的内容。

  每年至少有一个月学习下面列出的主题:

  • 工业设计
  • 哲学
  • 摄影
  • 绘画
  • 素描
  • 音乐及音乐理论
  • 电影
  • 文学

  社会科学同样会对计算机科学家有很大帮助,尤其是经济学和哲学。

  向新的软件学习

  一个为自己的软件寻找灵感的好办法就是向新的或新型应用程序学习。例如,如果你从来没有尝试过 3D 建模软件,可以尝试Blender。抑或是,如果你从来没有接触过 LaTeX,请真诚地试着去了解它。

  在学习过程中,请注意你喜欢什么和讨厌什么。真诚地问自己,这些观察到的内容是否在你的软件中存在。在工作中很难看到自己的缺点,但发现别人的不足却很容易。天下没有哪个父母认为自己的孩子长得难看。请学习看到自己作品的不足。

  完成一个自己的项目

  如果你整天为别人写代码,那么为自己写程序能让你记得当初为什么会成为程序员。每年为自己选择的项目分配一个月的时间,完成核心功能,将其开源发布。

DLMS-Blue-Book蓝皮书—曲线类 attribute_index 1 指的是第 1 个属性(即 logical_name),attribute_index 2 指的是第 2 个属性,等等;如果其他“曲线通用类”对象捕获了这个缓冲区,它们的缓冲区也将被清空,以保证它们的缓冲区条目是同质的。如果捕获对象是曲线通用类的缓冲区,则 data_index 标识缓冲区(即列)中的捕获对象(即内部曲线通用类中的列);如果曲线通用类已排序,则调用捕获方法将把新条目存储在缓冲区中的适当位置,移动所有后续条目,并可能丢失最不相关的条目。 阅读详情

相关推荐

费斯托SPAN压力传感器的调试

本体为压力传感器,检测气压大小,通过设置参数,在上电上气时对气压进行判断,进而通过自身逻辑的判断,控制传感器的通断,进而控制机械部位的工作与运行;通电之后为如下图所示的样子有三个按键ABEdit键(编辑键、确认键)两步即可轻松连接。

大小曲奇的博客 1万+

图腾柱电路工作原理

图腾柱就是上下各一个晶体管,上管为NPN,c极接正电源,下管为PNP,e极接负电源,注意,是负电源,是地。两个b极接到一起,接输入,上管的e和下管的c接到一起,接输出。用来匹配电压,或者提高IO口的驱动能力。有几种图腾柱电路的变种,一种是两管全用NPN,但是下管通过一个反相器接到输入,也起到同样作用;还有一种是下管的e接到地,两管之间靠一个稳压管代替负电源。   图腾柱电路工作原理分析  ...

weixin_30951231的博客 1万+

DCN交换机通过boot模式升级

LIC导入成功后,输入enable进入特权模式,把网线接到通讯网口上,配置好对应interface vlan地址,在enable模式用 copy tftp://x.x.x.x/xxxxxx_nos.img nos.img待提示write ok时,reload设备完成升级。交换机启动后,在显示以下信息时输入“Ctrl+B”,一定得是手动按“Ctrl+B”进入的boot模式才能正常升级。升级交换机成功,在BootROM模式下,执行命令run或reboot,回到CLI配置界面。# 交换机通过boot模式升级。

m0_72501865的博客 947

推挽电路(图腾柱)

若驱动小于供电,例如是MCU的电平的话,一般MCU输出的幅值是3.3V,供电电压12V,会出现 1 由于三极管的PN压降,那么给到MOS驱动的只有2.7V左右,不能使得MOS管完全的导通。这是一个错误的用法,如果单独输入是0V或12V,那么该电路看似没有毛病,但是输入信号是变化的,电压信号高低电平的跳变有过渡的过程,所以在某个中间电压时会出现两个管子同时导通的情况,这是要。原因是芯片内部的工作电压为5V(VCC经过芯片内部的线性电源得到5V),由前面对互补推挽的分析得知该结构并不适用于小电压驱动。

m0_59329334的博客 1万+

Unity雷达图效果实现

unity雷达图源码

a604263644的博客 1026

Python+gensim【中文LDA】简洁模型

文章目录完整代码过程详解words_lsdictionarydictionary.doc2bow函数corpuslda 完整代码 from gensim import corpora, models import jieba.posseg as jp # 待分析文本集 text1 = '美国教练坦言,没输给中国女排,是输给了郎平' text2 = '中国女排世界排名第一?真实水平如何,听听巴西和美...

ArYe 2万+

图腾柱驱动电路-MOS和三极管

图腾柱驱动电路-MOS和三极管 最近对MOS管的驱动设计进行相关思考和仿真,这里将一些感悟写出来,仅供记录。 使用分立器件搭建MOS驱动的话,一般会使用互补的三极管搭建图腾柱电路,但是为什么会是图腾柱的结构不是半桥的结构呢?又为什么是要用三极管呢?用MOS管不可以吗?因为这些思考,便开始了一些仿真和实验。 首先,下图是经典的图腾柱结构,这个电路是可以正常驱动MOS的。 但是,这个电路存在一些不足...

suiji2442的博客 3万+

T-Box功能详解及应用

T - BOX,其全称为 Telematics Box,作为远程 / 车载通信模块,是一款集车身网络与无线通讯功能于一体的智能终端设备。它充当了多媒体车机与 TSP(汽车远程服务提供商)以及互联网之间的无线路由器角色,为用户创造了远程访问的可能。用户借助T - BOX能够对车辆配备的各个 ECU(电子控制单元)进行远程操控,包括远程启动或停止发动机开启或关闭空调天窗后备箱门车门,以及实现闪灯鸣笛等功能。

wgl110110的博客 5640

推挽电路驱动与图腾柱驱动的区别

有时候考虑到驱动芯片的成本问题的时候,我们会考虑用三极管搭驱动电路,毕竟一个mos driver多数都要几块钱,两个三极管才一两毛钱,所以我们要清楚推挽的驱动电路用法。推挽的输入信号的幅度和供电电压的幅度应该是一样的,比如推挽供电是12v,那么你输入的驱动信号的高电平也要是12v,所以Driver信号得先做个电平转换。这电路如果单纯的考虑输入端为0v,12v是没有问题的,输入0v上管导通,输入12v下管导通,但是从0v到12v之间时,比如上升沿很缓的时候输入为6v时,上管导通,下管也导通,

吉孟雷的博客 2万+

YOLOv5 自定义模型 Android 部署完整指南

本文详细介绍了将YOLOv5模型部署到Android设备的完整流程,包含三个核心部分:首先验证官方模型测试,确保基础环境配置正确;随后进行模型转换,从PyTorch导出ONNX格式并优化,再转换为NCNN格式;最后在Android项目中集成自定义模型,包括文件替换、参数修改和代码适配。教程基于YOLOv5 6.1版本,使用NCNN框架进行移动端推理,涵盖了常见问题解决方案和关键配置要点,为开发者提供了从训练到部署的完整技术路线。

FJN110的博客 592

【ROS2实体机械臂驱动】封装珞石ROS2驱动库ros2_rokae_driver_lib

这一篇文章将封装为,和之前一篇文章《ROS2 编译、打包、封装三方库(Knet为例)_ros插件编译成静态库-优快云博客》写的封装,区别在于优化了cmake dependencies和include等属性和宏定义,同时对于多库内部依赖的情况做了特定处理,更加方便外部调用。其中珞石的编译参考博主之前的文章rokae xCoreSDK C++测试使用,这里不再做赘述。通过这篇文章对于如何打包机械臂厂家提供的三方库做了进一步说明,方便用于不同机械臂厂家的三方库封装调用。!!

机器人梦想家 Bing Lee 1398

图腾柱Totem-Pole和互补推挽Push-Pull有什么区别?为什么PWM驱动芯片用图腾柱?,推挽控制电压和驱动电压相等,图腾柱可以小电压控制输出大电压驱动电路

https://blog.youkuaiyun.com/weixin_38345163/article/details/119489257

二进制模----细微行动改变影响世界 8997

ESP32-S3驱动OV3660摄像头原理图设计,已量产

本文重点拆四条主线:多来源输入电源如何收敛到 3V3,摄像头三路供电如何拆分,ESP32-S3 如何接住 DVP 数据流与外部存储,以及音频/补光/传感外围怎样挂到主控边上。至于最终图像帧率、算法策略和软件时序,当前原理图未体现。

不脱发的程序猿 982

【半年回顾】为程序员量身定制的12个目标

另一份野心勃勃的目标清单,最后统统都输给了加班。 对程序员们来说挑战自我非常重要,要么不断创新,要么技术停滞不前。新年伊始,我整理了12个月的目标,每个目标都是对技术或个人能力的挑战,而且可以年复一年循环使用。 01. 变得有耐心 02. 保持健康 03. 拥抱变化带来的不适应 04. 学习一门新的编程语言 05. 自动化 06. 学习更多数学

做一个优雅的程序员 1500

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

为IT程序员量身定制的12个目标——很经典

对程序员们来说挑战自我非常重要,要么不断创新,要么技术停滞不前。新年伊始,我整理了12个月的目标,每个目标都是对技术或个人能力的挑战,而且可以年复一年循环使用。 01. 变得有耐心 02. 保持健康 03. 拥抱变化带来的不适应 04. 学习一门新的编程语言 05. 自动化 06. 学习更多数学知识 07. 关注安全 08. 备份你的数据 09. 学习更多理论知识 1...

daru9708的博客 276

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

上一篇: Java资源同步的方式
下一篇: 13条职场新人最需要的建议
gufengjava
博客等级 码龄16年 1粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值