欢迎交流,我的邮箱:mushanmail@126.com

JAVA后端工程师。目前的工作方向是存储相关。

目前在福州。

北漂码农一枚。

初二接触代码,至今未退烧。

因为从开始接触代码时,就是随着自己喜欢做啥而做啥,先是跟班里培训Pascal,后来退出后自己研究姐姐从学校带回来的一本C语言书,利用其中提及的Turbo C的图形库来尝试写游戏,几个假期陆陆续续写了些经典小游戏。后大学报计算机科学与技术专业。但是没有潜心底层,依然各个技术都了解一些,但是都不深入,最后混的蛮为失败。所以希望自己可以想精通进发,不求广和新,但求知晓原理。

“要么精通,要么死”

“人生是一个长跑,不要在意短期的得失,更重要的是自己是否在正确的方向上”

我的项目

我的目标

2018年

技术:

  • 提升博客中代码阅读的体验。
    同富大哥提出的,说如果文章中的代码阅读可以向在IDE中一样有高亮就好了。觉得有道理。
  • 开发笔记软件MMNote
    • 2018年01月20日 像js和jquery,我的感觉是我学了好几年了,但是每次用的时候都是从零开始。。为什么呢?因为每次的学习都是要用到啥了,就百度一下,然后OK可以用,然后就等着下次继续了。最近尝试读《jQuery实战》和《JavaScript高级程序设计》,并结合做简单的笔记,发现虽然70%的东西之前可能在网上的资料零星都看过了,但是通过完整的学习,通过知道一个系统的功能边界,有种醍醐灌顶的感觉。所以啊,宁可读完一本书,也别刷刷刷看一堆博文。
    • 2018年2月8日 基础打好后,并且不纠结与各种框架后,开发起来会更踏实一些。比如以前想实现SplitPane,不知道怎么做,网上找Split.js,然后可以用就完了,但是Split.js的拖动条是可见的,我想弄成类似vscode这种不可见但是有体积的拖动条就懵逼了。在学习了flex和position后,自己实现了一个,虽然简单,但是知道了是如何实现的。
    • 2018年2月26日 原本我对这个笔记软件的设想是基于本地文件的,类似Zim那样。不过在用Web方式开发的过程中,我发现依赖本地真是麻烦,要是如果能不依赖,那么就可以完全在网页中使用了。所以目前打算使用IndexedDB,笔记没有对应实体文件。这样一个是可以完全用HTML规范,一个是后面做云端同步时,也简单一些,不用考虑同步维护本地文件。
  • vscode插件
    • 2018年2月8日 收到了外国友人Paul Egbert的捐赠!!激动!!
    • 2018年5月31日 收到CallOnISS的捐赠。有捐赠就是不一样,花了半天多时间把积累了大半年的issue全清了,加了好几个future,搞了个新版本,哈哈
  • 分布式存储学习
    • 2018年2月8日 现在的工作内容和存储有关,虽然目前是停留在元数据。但是应该往底层发展,了解ceph,hdfs这些。
    • 2018年2月11日 学习ceph需要搭建集群,用Vagrant+虚拟机的方式太重量级了,打算学一下Docker
  • I/O原理研究
    • 2018年5月31日 起因是打算读Tomcat源码,买了本数看,发现Tomcat使用了NIO,发现NIO还一点不了解,就转学NIO,学NIO发现NIO很多是利用了系统比较新的一些优化I/O性能的特性,需要对系统IO比较熟才能懂原理,所以的看看系统的IO原理,那就以FileInputStream的打开,读写的源码来学,然后准备看看Java IO模块的源码,看到JDK的JNI源码级别,看了一点后,发现是系统调用,那还得学学UNIX系统调用和C标准库IO这一块,然后发现要了解系统调用,得读Linux源码了。。。

生活:

  • 坚持健身
  • 骑行
    • 2018年3月11日 美利达公爵500入手
    • 2018年3月17日 第一次骑行,金山,江滨大道,马尾,长乐,76公里
  • 加入群体组织?
  • 考证?

看到了一个对于阅读的理解:读书读三遍,第一遍快速浏览,第二遍精读,第三便的时候,就会有一种读书百遍,其义自见的感觉。

2017年:

技术:

  • 阅读Spring源码
  • 学习MongoDB调优
    • 2017年6月23日 现在接触的业务的数据量是亿级别的,希望可以学到一些大数据下的数据库调优技巧
  • 推广博客
    • 2017年6月28日 虽然现在博客还比较水,但是也想被更多的人看到用到。但是因为是在github上托管,基本没有流量,得想想办法导入点流量进来
    • 2017年12月19日 默默给我的博客加上打赏了
  • 坚持维护目前开源的两个vscode插件
    • 2017年7月4日 我的两个缺点 1. 做出功能了就不想再碰那个代码了 2. 拖延症。导致虽然有人提issue和mr我都懒得管,一拖就是半年了。。。趁这次全部更新一下。以小见大,这么简单的插件都有这么多事儿,一个大的开源项目维护起来是多么需要毅力。
    • 2017年9月7日 今天在paste image的issue中有人提到了markdown-paste-image,说什么功能类似,一看,妈的,就是fork我的项目的,而且下载量竟然也都2k了。。。他的修改点主要是在插入前会有一个输入框来修改路径。这的确降低了使用门槛。有空得吸纳过来(猴年马月)
    • 2017年12月16日 今天收到了人生第一笔打赏!是paste-image的打赏,是对我最好的激励了。
  • 完成MMNoote初版。
    • 2017年9月4日 大学就想做的一款笔记软件。考虑,折腾,最初想基于atom,vscode,idea社区版来二次开发,都中途放弃,后使用AngularJs2,React等技术栈,觉得过于复杂,尤其是Webppack+React+Redux+…,简直可怕,中途放弃。最后觉得自己太执着于使用这些时髦技术了,其实也没错,只是自己hold不住,而且这些大框架也不适合我这种小软件使用。于是返璞归真,使用js+jquery,哈哈,且看能否半途而废。
    • 2017年12月19日 目前进展的还是很慢,虽然原型应该是能出来的,但是进度慢,目前打算系统学一下CSS。。。
  • 编写groovy系列博客
    • 2017年9月6日 目前我在工作中编写的小工具都是使用groovy的,感觉还是非常顺手的。之前也在项目中引入Spock测试框架,那真的是方便得飞起。其实之前也尝试使用过最近因为谷歌Android官方支持而变得非常火的Kotlin,但是使用体验不是很好,1.语法和Java差别说大不大说小不小,导致写的时候经常犯浑,2. IDEA编写Kotlin,竟然不是很流畅。。代码提示,自动完成等有比较大的延迟。。这个就不能忍了。等他再优化优化吧。同时groovy作为一个动态类型的语言,结合Java我觉得是个很好的选择
    • 2017年12月19日 虽然平时还是有用groovy的(主要用于写测试运维用的客户端代码,比如调用cs的全套接口的代码,感觉比他们用postman之类的工具要强大方便多),但是没有时间写总结。。。

生活:

  • 坚持健身
    • 2017年6月23日 回福州后,从5月中旬开始健身,到现在已经有一个多月了,初有成效,希望能坚持下去
    • 2017年9月4日 健身3个月,虽然最近因为加班和一起健身的同学公司搬走了的原因去的少了些,但是依然坚持,给自己点个赞。目前体重在58/59间徘徊,只是肚子没减下去,当初这个可是我去健身的主要原因啊。。
    • 2017年12月19日 入冬后,加上最近一直加班,就没怎么去了。。。。
  • 学车
    • 2017年6月23日 大学没舍得向家里要钱学,现在慢慢学吧
    • 2017年12月19日 科目二90分过,还是有点紧张的

2016年:

  • 转型Java -> 成功
  • 实现自己的笔记软件并在MAS上架 -> 花了一个多月学习swift,放弃。随后研究electron+react,目前进度10% -> 2017年6月23日 放弃

总结

我总结我最大的一个毛病就是不喜欢总结。

  • 最喜欢的操作系统:macOS
  • 最喜欢的语言:Java
  • 最喜欢的IDE:JetBrains系列IDE
  • 最喜欢的小说:金庸,古龙的小说
  • 最喜欢的动漫:叛逆的鲁鲁修,全职猎人
  • 最喜欢的美剧:绝命毒师,权利的游戏
  • 最喜欢的电影:经典的太多,没法说出最了

待办

  • MMNote:笔记软件
  • MyLife:照片整理软件
  • 教师题目整理/出题软件

初高中时代作品

那个时候真的是有激情,然后上了大学后就一路下滑了,唉。。。

俄罗斯方块

贪吃蛇

推箱子

弹球

泡泡龙

彩色连珠

躲子弹
JavaME游戏,还没有截图

大学时代作品

微软编程之美挑战赛

无线画板(三星Span参赛项目)





天天向上课程表


谁动了我的蛋蛋(谷歌安卓大学生挑战赛西南赛区三等奖)