Skip to content

Latest commit

 

History

History
702 lines (674 loc) · 33.7 KB

codetimecn.md

File metadata and controls

702 lines (674 loc) · 33.7 KB

讨论的话题

内容整理来自codetimecn.com演讲结束后整理的 sharenotes 推荐到网站上听音频

全栈话题

  • 能否准确定义全栈工程师
  • 最近关于全栈火热的话题
  • 是否应该以成为全栈工程师为目标
  • 嘉宾对从初中开始对编程的痴迷
  • 什么是爆栈 Overflow Stack
  • 讨论爆栈包括的几个技能树
  • 爆栈项目对程序员的帮助
  • 拥有爆栈技能和单独一个栈技能的程序员的区别
  • 嘉宾做的开源项目SQL Monitor
  • 嘉宾的两个千万下载量的免费软件:全能优化和杀马
  • 如何成为一个优秀的程序员
  • 在国内和澳洲做程序员的区别
  • 大龄码农职业生涯的规划
  • 30岁才开始学习编程做码农,有机会吗
  • 什么时候应该考虑跳槽
  • 在国内和澳洲工作谈待遇的区别
  • 嘉宾在澳洲的几份工作对嘉宾技术提升的帮助
  • 嘉宾对移民澳洲想法的一些个人建议
  • 嘉宾当初移民澳洲的原因
  • 嘉宾将来的计划

前端话题

  • 什么是JavaScript, 它和Java的关系
  • 为什么JavaScript现在如此火热
  • ECMAScript 5 和 ECMAScript 6 (ECMAScript 2015)
  • Babel 工具
  • 用ECMAScript 5还是6来写代码
  • Javascript模块化
  • webpack, gulp, grunt 工具
  • NodeJS 和 NPM
  • ThinkJS框架
  • 微软开发的TypeScript 和它的作用
  • 热门的开发框架AngularJS 和 ReactJS的特点,如何选择
  • 如何学习JavaScript
  • 对JavaScript3-5年的展望
  • SegmentFault上的经历
  • 什么是web前端开发
  • 前端开发人员的IT核心技能和对HTTP协议理解的重要
  • 如何培养独自学习前端技术
  • 招聘前端工程师在大小公司的不同
  • 国内和国外前端开发大环境的区别
  • 开源社区对前端开发的影响以及对开源社区的感受
  • 举例经常用到的开发工具(工具链接在下面的shownotes里)
  • 嘉宾个人经验 如何从零开始学习编程和前端开发
  • 英语对程序员的重要性,如何学习英语
  • 经常浏览的程序员网站
  • 推荐关于前端开发的书籍
  • 嘉宾总结前端开发最重要的一点: 眼界
  • 为什么要学习React
  • React是如何火热起来的
  • React单向数据流特点
  • Virtual DOM
  • JSX文件
  • Isomorphic React的后端优化
  • React的components
  • Flux
  • Webpack热替换对前端工作效率的提高
  • Redux
  • Nodejs做后端支持isomorphic
  • 新手学React的难点
  • React的工作机会
  • 嘉宾对React将来的展望
  • 嘉宾最初是如何接触到React的
  • 嘉宾写前端代码用的工具
  • React Native
  • 嘉宾对从事前端开发的感受
  • JS程序员是否都应该开始使用ES2015
  • 浏览器对ES2015的支持
  • ES2015标准是如何制定的
  • Arrow Function
  • Let, const
  • Class关键字
  • Iterator和Generator Promise
  • Module
  • 嘉宾对TypeScript, CoffeeScript 和 Dart的观点
  • 嘉宾对将来前端的构建部署的预言
  • 嘉宾将来工作的规划和自己专注的开源项目Jedi

UX/UI话题

  • 嘉宾来参加代码时间的原因
  • UX/UI的定义
  • UX/UI设计师需要具备的知识
  • 前端工程师需要具备多少前端UX/UI设计的知识
  • 嘉宾学习前端工程师的技术对她的帮助
  • 嘉宾介绍视频 2016 design tech report by John Maeda ,KPCB
  • 以苹果手机支付宝用户体验中的不足解释用户体验设计
  • 嘉宾推荐的工具和书籍
  • 嘉宾通过各种项目的实现对前端的兴趣培养和新方向的尝试

编程语言

Clojure

  • 嘉宾现在的工作情况
  • 嘉宾用的的编程工具以及为什么推荐IntelliJ写Clojure
  • 为什么没有使用LightTable写Clojure
  • 关于Clojure作者Rich Hichey的理念和为什么Clojure没有很多讲技术的视频
  • Clojure不擅长的场景
  • Clojure的交互性 REPL
  • Clojure的动态语言和需要编译的特性
  • Clojure启动慢的原因
  • Clojure基于JVM的语言的特性
  • 函数式编程的特性 以及 如何学习函数式编程的推荐
  • 关于 SICP 计算机程序的构造和解释 一书
  • Clojure重写SICP里的代码
  • Clojure良好支持多线程的特性
  • Clojure程序员找工作的环境
  • Clojure一直是小众的特点
  • Clojure作者Rich Hichey 演讲: “simple made easy”
  • 嘉宾广泛的兴趣的讨论
  • 干货湿讲 如何把枯燥难懂的知识用简单容易的语言解释
  • 嘉宾关于Clojure学习资料的推荐
  • 嘉宾剑桥大学的面试以及在那学习数学和计算机的经历

Haskell

  • 什么是函数式编程
  • 什么是纯函数以及使用它的好处
  • 为什么入门Haskell这么难
  • 嘉宾是如何开始接触Haskell的以及为什么开始喜欢Haskell
  • 递归和迭代的区别
  • Haskell惰性求值的特点以及为什么会有这个特点
  • Haskell 数据类型的重要性和举例
  • Haskell 用多态来减少重复代码
  • Haskell里 IO Monad 的作用
  • Haskell 包管理
  • 嘉宾推荐学习Haskell应该掌握的理论
  • 学Haskell应该具有的能力
  • Haskell在工业上的应用
  • Haskell对其它语言的影响
  • Haskell 生态系统和社区
  • 关于GHC 主要作者Simon Peyton Jones
  • 嘉宾自己写的Haskell中文书, 第2版正在在编写中
  • 嘉宾在诺丁汉和牛津读书的感受
  • 学Haskell后能获得的好处已经学语言应该有的动力

OCaml

  • 什么是OCaml
  • OCaml在工业和学术上的应用
  • OCaml和F#的关系
  • OCaml的数据类型系统 type system
  • OCaml的库和相关的工具
  • 为什么很多语言都要编译到JavaScript?
  • WebAssembly对JavaScript的影响
  • OCaml允许副作用
  • Unikernal
  • OCaml的编译速度
  • OCaml官方支持的两种编译器
  • OCaml的GC延迟特性
  • OCaml新手入门以及生态环境
  • OCaml的缺点
  • BuckleScript和F#的Fable的区别
  • OCaml编译器和Haskell编译器GHC的比较
  • OCaml4之后的特性
  • 为什么OCaml要支持OO
  • OCaml的byte code和LLVM的bitcode的区别
  • 嘉宾学习函数式编程的过程
  • 嘉宾做语言研究,写编译器是怎样一种体验
  • 宾夕法尼亚大学读书的经历

Scala

  • Scala是否难学
  • 为什么嘉宾推荐先学习一些Haskell再学Scala
  • 尾递归调用
  • Pattern Match
  • Higher-order Function
  • Closure
  • Var v.s. Val
  • Type Inference
  • Trait 和 Case Class
  • Scala.js
  • 嘉宾的Scala编程环境
  • Scala编译时间长
  • Scala的”goodpart”和”badpart”
  • 是否容易招聘到Scala编程人员
  • Scala对交叉编译支持的改进
  • Martin Odersky 创造Scala的原因
  • 讨论Java缓慢发展对Scala将来的影响
  • IntelliJ 和 Eclipse 的Scala插件比较
  • 嘉宾对Scala将来发展的期望
  • 嘉宾使用Scala之后不需要再用到Java
  • 嘉宾接触Haskell以及函数式编程的原因
  • 嘉宾对自己将来的规划以及对Scala社区的回馈
  • 嘉宾Scala视频教学系列的内容

Binding.scala

  • 响应式编程(RP)和函数式响应式编程(FRP)的概念
  • 介绍Scala.js
  • FRP的一个Demo的讲解
  • 使用RP和FRP的好处
  • 设计框架需要注意的初衷
  • 嘉宾设计框架是如何考虑的
  • 嘉宾的Binding.scala框架以及设计它的原因
  • Binding.scala精确数据绑定和简洁设计的特点
  • Binding.scala实现TodoMVC的代码量
  • Binding.scala和React.js功能的比较
  • Binding.scala依附于Scala
  • 猜测Spark使用Scala的原因
  • 嘉宾使用Scala的原因
  • 嘉宾9年的游戏编程经历以及如何进入ThoughtWorks工作
  • 嘉宾3-5年的规划

Prolog

  • 我们聊一期Prolog的原因
  • Prolog能解决什么数学问题
  • Prolog的逻辑性
  • Prolog里的Fact, Rule 和 Query
  • 学习Prolog的难点 - 理解程序执行的过程
  • 学习Prolog可以先了解WAM
  • 学习Prolog应该理解程序是如何优化的
  • 嘉宾自己的例子说明学习Prolog困难的地方
  • Prolog的生态圈
  • Prolog在工业上擅长的地方
  • 日本第五代计算机系统的故事
  • 嘉宾现在的工作经历
  • 学好Prolog对学其他语言的帮助
  • 嘉宾在南安普敦大学读计算机科学博士的经历
  • 嘉宾谈JAVA
  • 嘉宾写段子的故事
  • 嘉宾将来的规划

Rust和Go

  • rust 和 go 的诞生背景
  • rust 和 go 的应用场景
  • rust 和 go 的包管理和发布策略
  • rust 和 go 的并发模型区别
  • rust 和 go 的就业前景
  • rust 所谓的无运行时开销是什么意思
  • 编程新手是否还有必要学 C
  • go 语言是否是最适合实现微服务的语言
  • codis 为什么不支持 multi set

Lisp

  • LISP 语言的历史
  • LISP 的 S 表达式
  • 新手如何选择 LISP 方言
  • 入门书籍推荐
  • LISP 主流方言介绍
  • 用 LISP 编写的应用有哪些
  • LISP 能用于 web 开发吗
  • 成为职业 LISP 程序员的方法
  • 抽象语法树 AST
  • 使用 LISP 进行开始是怎样的一种体验
  • 年长程序员对年轻人的寄语

Erlang

  • What’s App 使用Erlang支持大量用户
  • Erlang和Elixir的简单介绍以及语言的特点
  • Erlang可以用来吹嘘的9个9的可用性
  • Erlang对分布式的支持
  • Erlang的OTP对容错性的帮助
  • Erlang以进程为单位的语言特点
  • Elixir基于Erlang的语法改进
  • Elixir建立的单元测试 包管理器 文档工具
  • Elixir 宏
  • Elixir 编译时
  • Elixir “卫生宏”特性
  • Elixir 语法 解释 模式匹配(pattern match)
  • Elixir 周边库
  • Elixir pheonix actor 建立网站三件套
  • 嘉宾推荐学习Elixir的资料

开发技术

IoT

  • 什么是IoT物联网
  • 为什么会出现物联网
  • 物联网产品还没出现井喷的现状以及原因
  • 嘉宾认为软硬件程序员之间的鸿沟会如何缩小
  • 嘉宾公司的产品Ruff介绍
  • Ruff和其他市场上在硬件上可以编程的产品(Arduino, Espruino, Tessel, JonnyFive)的分类
  • Ruff团队专注的任务
  • Ruff上开发能使用的JS版本以及选择JS做为开发语言的原因
  • IoT市场上的各种开发套件
  • 开发套件如何延展人类想象力边界
  • IoT领域专注的焦点以及嘉宾对IoT硬件安全是否重要的分析
  • IoT云平台
  • 嘉宾读书,写代码,写文章的习惯
  • 嘉宾为什么开始做IoT创业项目

数据挖掘

  • 什么是数据挖掘?
  • 机器学习和数据挖掘的关系
  • 数据挖掘最近很火的原因
  • 数据挖掘在工业上的应用
  • 数据挖掘的几个基础算法的介绍
  • 优化算法对数学的要求
  • 数据挖掘的常用工具介绍
  • 个人程序员用数据挖掘能做什么
  • 数据挖掘工程师的日常工作
  • 嘉宾微博,我爱计算机网站,前辈之路的邮件采访
  • 嘉宾将来3-5年的规划

软件测试

  • 什么是软件测试?
  • 为什么需要软件测试以及测试的重要性?
  • 一般常用的软件测试方法都有哪些?
  • 秦五一现在的公司都是怎么做测试的(流程)。
  • 谁为质量负责?以及在快速迭代交付的模式下,如何保证好的质量?
  • 作为一名合格的测试工程师应该具备哪些能力?
  • 怎么入门测试的呢?
  • 软件测试和开发工程师的区别?

DevOps

  • 什么是 Devops
  • 嘉宾的日常工作
  • 小公司如何开始 Devops
  • Devops 给开发人员带来的好处
  • 嘉宾是如何 dogfooding 的
  • Devops 要用到哪些工具
  • Ops 如何做测试的
  • Devops 与微服务
  • Devops 会伤害开发者吗
  • 嘉宾对 Docker 的看法
  • 开发人员转职 Devops 的感想

工具话题

Emacs

  • 已经诞生40年的Emacs依然拥有非常活跃的用户和社区的原因
  • 什么人适合使用Emacs
  • 陈斌使用Emacs每天处理的事情: 写邮件, 写博客, 记录工作笔记, 听播客
  • Emacs和Sublime, Webstorm等其他编辑器的比较
  • lisp语言的陡峭学习曲线
  • Emacs的默认设键以及ergo设键的插件
  • 陈斌如何设置对他最优的快捷键 (keyfreq插件的作用)
  • Emacs的包管理器
  • 介绍一些常用的插件的优缺点
  • 对Emacs将来的展望
  • windows下如何使用Emacs
  • 陈斌如何开始学习Emacs (一个有趣的故事!)
  • 陈斌的”如何一年内成为emacs高手”文章
  • RichardStallman 自由软件的理念
  • 如何保持学习Emacs而不放弃
  • 什么是spacemacs
  • Spacemacs是如何用evil mode支持vim设键
  • Spacemacs 和 原生emacs的区别
  • Spacemacs优秀的设键和快捷键的提示功能
  • Spacemacs入门教程和内部强大的文档
  • 嘉宾工作中使用spacemacs的场景
  • Magit 一个emacs下一个好用的git插件
  • Org mode 管理日程安排和记笔记, 可以查看shownotes里嘉宾视频系列里关于org mode的视频
  • spacemacs的非常活跃的生态系统和社区
  • Helm v.s. Ivy插件
  • Vim 和 Emacs加载速度不同的讨论
  • Spacemacs的发展前景
  • 对于原生Emacs设键不习惯的讨论
  • 嘉宾录制的spacemacs视频系列的目的
  • 嘉宾学习Emacs, spacemacs的经历和心得
  • 最初如何接触到Emacs 以及学习的过程
  • 为什么喜欢折腾Emacs 和 把有用的结果做成Emacs包来分享
  • 为什么会制作Emacs-pyim这个包 和 制作这个包的过程
  • 开源理念对嘉宾的影响以及嘉宾对开源和商业软件的观点
  • 如何选择和正确使用Emacs的包
  • 嘉宾如何写包的文档
  • 写org-webpage转静态网页的包的原因和过程
  • 编程Emacs包对提升写Elisp代码的技能和理解的提升
  • 嘉宾对Lisp的理解
  • 提交官方包的补丁如何帮助自己写代码技能的提升
  • 嘉宾学习Emacs和Linux得到的收益
  • 为什么没有走上程序员的道路
  • 最后嘉宾的对中文Emacs用户们的一些话

Git

  • Git的特点
  • Git的基本操作
  • 个人项目为什么也需要用远程的Git服务, 比如Bitbucket或Github
  • 基于UI的Git工具 SourceTree
  • 多人合作项目用Git的工作流程(workflow)
  • 创建分支(branch)在Git项目中多人合作中的重要性
  • 创建分支的迅速和廉价
  • 用pull request来合并分支
  • Feature Branch 工作流
  • Atlassian内部项目如何选择不同的工作流
  • git merge 和 git rebase 命令
  • Git底层数据结构实现的简单探讨
  • 嘉宾推荐保存平时很少使用但是又很重要的git命令在一个cheatsheet里
  • 嘉宾推荐学习git的书籍和资料
  • Atlassian发布的和Git相关或和Git整合的产品
  • 在Atlassian工作的感受
  • 申请Atlassian工作的流程
  • 英语沟通的重要性
  • 开源社区学习编程

软技能

  • 嘉宾为什么要翻译软技能一书
  • 软技能一书第一章的重要观点
  • 嘉宾关于自我营销的认知
  • 嘉宾对书中“免费给予90%自己创造的价值”观点的分析
  • 理财
  • 嘉宾翻译健身一章的过程和感受
  • 精神
  • 关于约会和谈恋爱
  • 书中没有提到的重要的软技能:英语和口头表达能力
  • 翻译软技能一书对嘉宾个人正面的影响
  • 嘉宾个人3-5年的规划

公众号

  • 怎么开始写公众号的
  • 写公众号后有那些收获
  • 做创业长谈的初衷
  • 程序员是否应该多做一些分享
  • 如何突破自己的阻碍去学习
  • 给年轻人或者程序员的建议
  • 如何多看书打开自己的视野

技术出版

  • 为何会想到把自己 redis 相关的知识以书籍的形式发布
  • 编辑是如何联系作者出书的
  • 写书使用的工具
  • 出书和写博客的区别
  • 书籍出版之后的配套服务
  • 出书过程中的酸甜苦辣和帮助过的人
  • 如何自学成才

技术管理

  • 技术人才是不是一定要走向管理岗位?
  • 怎么判断自己是否适合?
  • 嘉宾刚走向管理时遇到的难题和他的解决方法
  • 讨论了不同规模的队伍的管理方法的差别
  • 庞大笨拙的队伍如何划分为小而高效的队伍
  • 怎么样从一开始慢慢组建一个高效而强大的团队
  • 怎么判断一家公司的价值观是不是适合自己
  • 怎么摆脱加班带给自己的困境
  • 嘉宾分享他自己学习的经验和技巧,并给职场的程序员一些切实的职业发展的建议

英语

  • 嘉宾自我介绍以及嘉宾中文学习过程
  • 嘉宾的中文和英文的口音
  • 嘉宾现在教美语发音的创业公司
  • 学了一辈子英语,为啥还是听不懂老外?地道发音,常用句型,俚语表达
  • 嘉宾针对中国学生发音的最强纠音
  • 嘉宾自创的三黄金法则:连读,略读,变音
  • 嘉宾为什么用美国热门电视剧比如《老友记》教美语
  • 嘉宾在大学上中文课的经验
  • 嘉宾推荐应该以句子为最小单位来训练发音
  • 音飞英语的教英文发音的课程服务
  • 网友提问:父母如何教孩子英文
  • 讨论是否需要通过音飞英语的课程来提高英文听说的能力
  • 嘉宾的分享:语言不是知识,而是一个技能

开源和写作

  • 写作有哪些方面?
  • 一个好的写作的作品是什么样的?体现在哪些方面?
  • 在技术圈里有没有你比较喜欢的,或者长期追踪的作者
  • 您自己最喜欢的俩篇作品
  • 好的写作工具的推荐
  • 现在很多人都开始意识到写作的重要性了。写的人也越来越多。您觉得未来这样的情况下还会有很大的影响力吗?
  • 如果不写做会有哪些损失?
  • 如果长期写作会有哪些影响?
  • 为什么很多牛人十分爱写,支持他们的动力是什么?支持您的动力是什么?
  • 怎么保证高产写作?
  • 什么样的参与开源的经历算是好的经历呢?
  • 有好的开源项目能多大程度上判定这是一个优秀的程序员呢?
  • 新手如何从零开始参与一个开源的项目?
  • 近几年的计划
  • 这期听众的建议

IT创业

  • 嘉宾在创业团队中的角色
  • 嘉宾在团队中的研究方向和技术栈
  • 嘉宾分享自己在创业过程中的5点收获
  • 对其他领域的认识
  • 和团队战友的情谊
  • 跳出自己长期熟悉的价值观来看待问题
  • 对产品如对孩子般的呵护
  • 不择手对地去解决一个问题
  • 嘉宾为什么要创业以及创业的团队的构成
  • 嘉宾公司制作的几个(游戏)创业项目
  • 创业的目的
  • 给IT创业者的几个忠告
  • 讨论嘉宾大学没有获得学位证以及现在继续求学的决定
  • 嘉宾为什么要从创业公司离开
  • 嘉宾刷各种MOOC课程的原因和心得

资源