为何XiamiThief v0.6如此难产?

本来我预计在五一假期就可以发布的XiamiThief v0.6这次要无情的跳票了, 真是抱歉.

这个东西真是搞得我身心疲惫, 每看一眼TODOLIST我就想把电脑盖关上一次.

现在XiamiThief v0.6采用了AngularJS, Jade, Less, Async Module, CoffeeScript, Request Module, Cheerio Module, Localforage, jQuery, Underscore等多种神秘力量降低我的工作量, 即便这样, 现在的XiamiThief v0.6的源文件代码量也已经达到了1373行, 而且整个软件的开发进度似乎才刚到预期的50%.

知道吗? XiamiThief v0.5的总代码量是1517行, 有哪些功能用过的各位都是知道的, 可以说是几乎没有无用的功能. 照这个理念开发的话, 恐怕XIamiThief v0.6的代码量是要突破2000行了. 而对于一个程序员来说, 一天有80行有效代码就已经算是超水平发挥了, 而我每天都要写将近100行的代码, 然后删删改改, 第二天发现昨天写的不好, 再删删改改, 这个效率真心是高不起来的, 平均下来每天的有效代码最多也就50来行.

当然, 用代码量来衡量项目开发的效率是不完全合理的, 下面我把v0.6的TODOLIST列一下, 如果有什么漏的, 欢迎评论补充.

【完成】 【暂缓】 【放弃】

  1. 修复 未发布和未审核专辑在新建下载任务时会报错.
  2. 优化 Linux环境下, 下载列表占用CPU过多.
  3. 新增 精选集ID3信息支持内嵌封面图片.
  4. 新增 ID3信息支持内嵌歌词.
  5. 新增 文件保存命名格式支持%TRACK%.
  6. 修复 Windows环境下的socket hang up问题.
  7. 新增 正在下载时退出XiamiThief给予提醒.
  8. 新增 新建下载时将下载任务以集合显示.
  9. 新增 新建下载任务时让用户能够选择要下载的音乐.
  10. 新增 支持一次添加多条下载链接.
  11. 修复 封面图片在一些情况下下载失败的问题.
  12. 新增 自动开启VIP用户的高音质.
  13. 新增 歌曲名字过长时自动进行缩短, 防止在Windows环境下无法打开.
  14. 优化 艺术家/专辑/音乐 命名格式, 与虾米客户端的命名格式一致.
  15. 新增 下载时显示音乐的真实下载地址.
  16. 新增 多账号登录.
  17. 新增 用户介入的ID3封面图片大小设置.
  18. 新增 用户介入的ID3写入内容设置.
  19. 修复 新版登录验证码不会更新.
  20. 新增 淘宝账号登录(这个还不知道能不能实现).
  21. 新增 签到功能,
  22. 新增 ID3信息中的流派和音轨N/M标签.
  23. 修复 带点文件夹文件名中的.自动转换为_, 防止在Windows环境下无法打开.
  24. 修复 歌名带’时文件名和标签乱码的问题.
  25. 修复 下载队列在某些情况下的同时任务数错误.
  26. 新增 代理服务器功能.
  27. 修复 写入Tag时卡住下载任务的问题.
  28. 修复 高音质音乐下载.
  29. 新增 艺人页面的10首热门歌曲下载.
  30. 新增 用户可定制的软件界面.
  31. 新增 软件内的反馈功能.
  32. 新增 检查是否有新版本.
  33. 新增 版本更新功能.
  34. 新增 下载速度限制.

我已经无法预计什么时候能做完XiamiThief v0.6了, 大家不用等我这个懒人慢慢把软件做完.

大家可以试试:

Peter的虾米Python下载脚本 https://github.com/PeterDing/iScript/blob/master/xiami.py

Jacy的虾米紫菜汤 http://5istar.net/xiami/

对了, 等XiamiThief v0.6发布, 我要建一个XiamiThief的主页, 空间应该会选香港, 日本或者北京的免备机房, 到时你们也不用访问这个要绕半个地球才能打开的博客了, 也顺便改掉我老是拿XiamiThief凑文章的恶习.