Category: 程序员

Github 开通了个人主页介绍和高光功能

被号称全球最大的同志社交网站 Gayhub 开通了一个在主页显示介绍的功能, 意味着GayHub正式进军”社交” 领域. 效果图如下, 在我的主页图像右边 (Overview) 下, 显示了帐号的介绍. 设置方法很简单, 只需要创建一个代码库, 名称就是你的帐号名称, 然后在代码库的根目录下创建一个 README.md 文件即可. 这个文件可以由模板创建, 支持 Markdown 和 HTML 语法. 这个功能给帐号提供了自定义的功能,相信不久的将来,就很有可能像V站一样提供自定义主页CSS了吧(比如改个背景啥的) Github 另一更新则是在头像下面加了一个 “高光” (Highlights) 显示了你的贡献. 这个高光功能其实是GITHUB在2020年搞的一个事情, …

时间碎片用来刷题是再好不过的了

今天, 成功的在 leetcode 上打卡一年, 一共707题 (我的 leetcode 主页). 这一年大概刷了400多道题, 基本上都是碎片时间刷的: 上班午休的时候边吃饭边看题刷题 周末带孩子去 soft play 喝咖啡刷一题. 不成文的规定: 一杯Latte来一题 把媳妇的车开到洗车的地方 然后等待的时候到旁边的 Costa 来一题 周末早上吃早餐的时候来一题 这些都是比较连续的时间, 当然很多情况下刚打开题目看了几分钟就有事被叫走了, 不过这也不是坏事, 有时候等公交的时候也可以想想刚刚那题的思路, 等有时间了再打开 iPad 写代码的时候就很快了. …

说说软件工程师的职位头衔(Title)和级别

我现在在GE做软件工程师, 职位头衔是 Staff Software Engineer 翻译过来是 资深软件工程师. 我见过的软件工程师的职位(Software Engineer) 有以下几种: Software Engineer Intern: 软件工程师实习生. GE剑桥每年都会有十几个从大学过来的实习生, 会被分到不同的组, 然后由不同的大牛带, 一般是12个月, 每年都会有迎新和欢送实习生的会, 很是温馨. 有了在大厂的实习工作经验对于以后再找工作(转正)很有帮助. (Junior) Software Engineer: 初级软件工程师, 一般头衔不会加 Junior, 就是 Software …

力扣 Leetcode 的刷题利器: 在线调试器和自动代码提示完成

力扣代码调试器 Debugger 最近 leetcode 刷题网站出了一个在线调试器. 个人感觉非常好用. 因为我平时是用 IPAD+蓝牙键盘来刷题, 而在 ipad 上是没有集成的IDE的, 对于调试来说, 只能很原始的让函数退出一个值, 然后尝试不同的输入来发现问题. leetcode在线调试器的好处 理论上来说, 你可以直接在浏览器里解决任何一道 leetcode 的算法题了. 这样很轻巧, 在 ipad + 蓝牙键盘就可以随时随地有空的刷题. 甚至是大屏的手机也可以. leetcode 调试器可以添加 关心的变量到 watch …

程序员能刷题的网站和资源(我的刷题经验之谈)

程序员提高技能的最好的方法就是刷题, 俗话说得好: 刷刷更健康. 这几年我刷了不少题, 比直接看枯燥的算法书效率高得很多. 刷题也有方法. 我的方法是先独立思考, 先自己解题, 即使解出来了, 也要再看一下题解和别人的思路. 最好还要看一下牛人的代码, 看看他们是怎么实现的. 当然, 最重要的是要总结, 写下来就是一个不错的再思考再学习的过程, 我就很喜欢解题后用英文写成博文, 这样有几个好处: 一是解了多少题可以方便统计, 二是可以分享, 三是可以挣广告费. 不一定通过了就马上总结, 可以有时间的时候再回顾写一下, 方便于记忆学习. 有些题你过了几个月, 你解题思路就可能忘记了, 甚至你都不记得你做过这题了, 那么这种情况下就是没有学习彻底. 刷题刷多了, 一定会学到思路, …

从SO上抄了一个只有三行的函数引起的风波

这周有一个小任务, 需要修改一个在IE 11浏览器下 字符串不支持startsWith的问题. 这问题很好改啊, 立马 Google一搜第一条 StackOverflow的最高票答案: https://stackoverflow.com/questions/36213455/add-startswith-in-ie-11?answertab=votes#tab-top 抄完后就立马提交 Pull Requests (也不需要单元测试, 因为很难也不太需要专门测试IE 11). 谁知很快审核就不通过了, 组里的 Senior Staff SE 要求更改: 不能直接抄代码, 要么改, 自己重新写(也许可以换个函数名), 要么需要找出代码的版权, 并且内部提交Open Source开源的审批. 前端的码农肯定知道, 我抄的这个代码是 …

git 小技巧: 通过pre-commit hook 来防止程序员把其它测试用例给禁用了

公司今天例会上说, 有一个PR几天前合进去, 结果导致CI上的测试用例都没有执行. 仔细一看, 原来是PR中不小心把 .only 提交了. 在 NodeJS的测试框架中, 我们开发的时候本地代码加上 describe.only 或者 it.only 来只运行我们关心的几个测试用例: describe.only("我只关心这些测试用例, 其它的不要跑", function() { it("就这个", function() { expect(1).to.equal(1); }); }); 很有可能, 在提交的时候忘记把这些代码回退了, 更糟糕的是, 很有可能在代码审核的时候也顺利通过了, 那么CI持续集成测试的时候就只跑这些测试用例, …