Links信息 - 黑暗即不可知

黑暗即不可知,人潜意识是惧怕黑暗,因为不可知导致无掌控感(需要有掌控感就需要懂得更多,因此要不断学习,不断挑战和尝试)

能够建立起系统性学科的人当然非常牛(我们没有这个机会,但是可以系统性的学习和借鉴)

建立学科体系,首要的任务是要定义清楚各种基本的概念(构建一个软件系统也是如此)

1. 计算机科学

1.1. 基础理论

1.1.1. 操作系统

  • 操作系统视频(清华大学): http://os.cs.tsinghua.edu.cn/oscourse/OS2018spring/
  • 配套理解《Linux鸟哥私房菜》《Linux程序设计》《Unix网络编程》
  • 在线UNP(英文版本),包含TCP、套接字、IO多路复用:https://notes.shichao.io/unp/ch2/

1.1.2. 计算机组成

  • 计算机组成(哈工大):http://www.xuetangx.com/dashboard/course/

1.1.3. 计算机网络

1.2. DSA成长之路

  • 图示算法:https://visualgo.net/zh/sorting?slide=1-2
  • OI Wiki: https://oi-wiki.org/intro/resources/
  • MIT麻省理工学院算法导论摘要:https://catonmat.net/summary-of-mit-introduction-to-algorithms
  • geeksforgeeks:https://www.geeksforgeeks.org/binary-tree-data-structure/
  • 收藏的书籍:https://github.com/tkstorm/awesome-data/book/dsa
  • YouTube5Min一节视频: https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ
  • 书籍:
    • 《数据结构与算法分析》
    • 《算法导论》
    • 《算法图解》
    • 《算法设计》
    • 《计算机程序设计艺术》
    • 《编程珠玑》

1.3. 开发人员最佳实践

  • 抛弃自我,渴望学习:https://www.tutorialspoint.com/developers_best_practices
  • 计算机科学专业TopN:https://www.tutorialspoint.com/computer_whoiswho.htm
  • 简历编写:https://www.tutorialspoint.com/effective_resume_writing.htm
  • 面试问题:https://www.tutorialspoint.com/questions_and_answers.htm

2. 软件设计开发与应用

经验法则

  • 特征蔓延:业务发展,软件功能特性是不断膨胀和增长的
  • KISS: Keep it simple and stupid奥卡姆剃刀原则
  • YAGNI: You aren't gonna need it - 你不是真的需要它
  • Rule Of Three: 三次原则(一次写、二次Copy、三次抽象),三次原则"是DRY原则和YAGNI原则的折衷,是代码冗余和开发成本的平衡点
  • DRY: Don't repeat yourself
  • RERO: Release_early,_release_often,客户、测试、迭代,小步快跑,同义词:最小可行性产品
  • Pareto principle(80/20法则): 帕雷特原则

设计模式

  • 图解设计模式:http://w3sdesign.com/index0100.php
  • 《敏捷软件开发——原则、模式与实践》,设计SOLID、常见设计模式
    • SRP(Signal Repository), 单一功能原则: 认为对象应该仅具有一种单一功能的概念,可以理解为高内聚
    • Open-Closed(Open-Closed), 开闭原则: 认为“软件应该是对于扩展开放,但是对于修改封闭的”的概念。
    • LISP(Liskov), 里氏替换原则:认为“程序中的对象应该是可以在不改变程序正确性的前提下被它的子类所替换的”的概念,可以理解为面向接口契约编程低耦合+1,岗位要求就是Lisp原则
    • ISP(Interface Segregation), 接口隔离原则:认为“多个特定客户端接口要好于一个宽泛用途的接口”的概念,可以理解为接口细分和专精低耦合+1
    • DIP(Dependency Inversion), 依赖反转原则:认为一个方法应该遵从“依赖于抽象而不是一个实例“的概念,即高层<层略层>和底层<组件/服务层>,依赖于同一个接口抽象

2.1. 性能优化

  • 高性能浏览器网络:https://hpbn.co/

2.2. 编程语言

2.2.1. Golang

2.2.2. Python

2.3. 数据库

  • 数据库如何工作:http://coding-geek.com/how-databases-work/#
  • Mysql手册:https://dev.mysql.com/doc/

2.4. 编程图书/视频资料

  • 程序员阅读资料清单(github):https://github.com/EbookFoundation/free-programming-books/blob/master/free-programming-books-zh.md
  • 半动画短片关于编程:https://www.youtube.com/channel/UC8KxkYgafaJnzyWz1pq_glg
  • 哈佛大学公开课:计算机科学cs50:http://open.163.com/special/opencourse/cs50.html

2.5. Web开发

2.6. 面试指导

3. 软件工程

3.1. 工具集

3.1.1. 大型企业的技术栈

  • 技术栈对比:https://stackshare.io/stacks/trending
  • 获得合适的软件和服务:https://www.g2.com

3.1.2. Linux

  • vim配置:https://vimconfig.com/
  • 鸟哥私房菜:http://cn.linux.vbird.org
  • Linux命令:http://man.linuxde.net
  • Linux常用命令:https://tkstorm.com/linux-doc/

3.1.3. SRE

3.1.4. UML统一建模

  • 在线画图工具:https://www.draw.io
  • UML:https://www.youtube.com/watch?v=3cmzqZzwNDM&list=PLGLfVvz_LVvQ5G-LdJ8RLqe-ndo7QITYc&index=3

3.1.5. Git

Git工作原则:最新、完整而独立:

  • 基于远程库的最新代码工作,尽量每一步操作(特别是add/commit/push)都通过git pull --rebase获取一下当前最新版本;
  • 尽可能保证每一个Change的完整性以及独立性,且越小越好;

3.1.6. Docker&K8S

3.2. 架构设计方法论

3.3. 微服务架构实战

  1. https://programmaticponderings.com/2019/04/17/istio-observability-with-go-grpc-and-protocol-buffers-based-microservices/

3.4. 待整理

4. 信息检索

4.1. 编程语言排行

  • 编程语言排行PYPL、TIOBE:http://statisticstimes.com/tech/top-computer-languages.php
  • PYPL:http://pypl.github.io/PYPL.html
  • TIOBE: https://www.tiobe.com/tiobe-index/

4.2. 大会

4.3. 优质博客资源

4.4. 资讯网站

4.5. 组织信息

  • 中国互联网络发展状况统计报告
  • 中国计算机学会(CCF)大数据专家委员会年度报告
  • 全国信息技术标准化技术委员会

4.6. 企业信息

  • 国家企业信息公示系统:http://www.gsxt.gov.cn/index.html

4.7. 图片搜索

4.8. 网页分析

5. 安全

  1. The Cross-Site Scripting (XSS) FAQ

6. 软件/库/工具收藏

6.1. 杂项

6.1.1. 数据存储

6.1.2. http

6.1.3. Markdown

6.1.4. 其他杂项

  • https://asciinema.org/
  • ansible-semaphore
  • centos中尚未升级的yum包升级:https://ius.io
  • zplug:https://github.com/zplug/zplug
  • postman竞品:https://support.insomnia.rest
  • http执行相关操作:https://httpbin.org
  • 如何扩展开发团队:https://adam.herokuapp.com/past/2011/4/28/scaling_a_development_team/
  • 阿里巴巴开源镜像站:https://opsx.alibaba.com
  • 工具推荐:https://geekflare.com/
  • nlp相关工作:http://www.nlpjob.com/about/
  • aliyun镜像:https://mirrors.aliyun.com
  • Gogole: https://developers.google.com/web/tools/chrome-devtools/network/reference

前端

运营、产品相关

新媒体运营

临时