【太阁x周刊】第十二期



  • 前言

    0_1469576790221_周1101.png

    太阁x是基于太阁实验室(Bittiger.io)的程序员学习社群。我们在太阁x中践行生长学习法。藏宝阁提供丰富的学习资源。我们根据目标,筛选藏宝阁内的知识及技能,形成以问题为导向的逻辑树。接着我们通过互相讲解决问题,查漏补缺,相互促进。最后我们通过总结悟,提纲挈领,并把优质的内容输出到藏宝阁里,以此循环。

    在太阁x里,生长学习法的闭环无处不在,指引着程序员进阶之路。

    太阁X直播预告
    【太阁×项目】一个全栈微项目的自我告白
    Elasticsearch作为基于Apache Lucene的一款开源搜索引擎,拥有这非常高的市场占有率,其客户包括了Dell, Facebook, Microsoft, Salseforce, Netflix, eBay, Docker等知名企业。本次讲座,作为”太阁微项目”第一个以大组形式完成的项目,BTSsearcher小组将为大家展示,如何基于Elasticsearch为核心,搭建一个全栈项目,做一个基于地理位置搜索的Twitter搜索引擎。

    讲座内容:
    ● 项目展示
    ● 项目逻辑以及组员介绍
    ● Elasticsearch及相关技术的使用
    ● 后端NodeJS介绍以及host
    ● 前端包括React的框架使用
    ● 如何进行项目管理

    讲座时间:
    ● 美国西部 7/8 周六 7:30pm
    ● 美国东部 7/8 周六 10:30pm
    ● 北京时间 7/8 周日 10:30am

    主讲人:
    罗欣然,毕业于University of Utah计算机硕士,就职于Dell | EMC Corporation,从事Web开发,现住Draper, Utah。
    方兴,毕业于 Pace University,现就职CIT Group Inc,主要从事 ASP.NET Web开发。
    徐一斌,英文名 Luke, 毕业于DePaul University,现就职于apartments.com,Front-end engineer,比较擅长angular, react和UIprototyping 。现居芝加格。
    吴同,毕业于UC Berkeley,就职于一家可穿戴初创公司做电商Web全栈开发,现居Mountain View, California。

    技术讨论群动态
    负责人: 凡齐
    总结: 阿昊 Jesse
    太阁Full Stack 群本周热点(总结by阿昊)
    http2:一个关于HTTP2的资料(https://imququ.com/post/http2-resource.html),暂时似乎只有google、Twitter支持http2,而http2只能用https。但是允许域名管理员不通过第三方CA自行发行证书;
    react redux 相关讨论:react思路相对简单,容易上手,redux对于复杂表的优化做得很好,和event sourcing的关系很直白,新项目react+redux已经够用,最好不要加入jquery,虽然jq多插件可以使用,但是jq会拖慢速度。和cqrs关系没有特别大;

    一段代码的问题:

    0_1469576863180_周1201.png

    es6中下面的循环中改为let,es5中改i=3为var i=3;

    文哲大神讲了如下js的相关知识:
    (1)JS的核心是Execution Context,每个function执行时候都会产生一个新的context,放到stack里面。Execution Context有一个Variable Object(VO),它有两个阶段,其中第一个阶段是creation stage,它会扫描function里面所有的args+var+function declaration,提到最前面(hoisting)。每当function正式执行时,interpreter会先从VO里面找变量,如果找不到会顺着scope chain往上找。所以,当你在bar里面用了var,interpreter就不会往上找了。这也是为什么function会产生scope的原理;

    (2)this的本质上是Execution Context里面的一个参数,谁调用function生成Execution Context就设为谁,而且this只能在该context里面使用,如果有个inner function,那么当inner function被调用的时候,会生成新的Context放入stack中,这个Context会有自己的this(不同于之前的this),所以如果要调用outer function的this,必须把它保存到outer function的context的variable object中(用Var self),然后在调用inner function的时候,interpreter会顺着scope chain找到outer function的Context的variable object 里面的self,也就是outer function 的this;
    开源的分词器:盘古分词;jieba;

    另一段代码引发的讨论:

    0_1469576876208_周1202.png

    第一段:按照timer – setTimeout – Global的lexical顺序来找i,结果找到Global的;第二段:按照timer – setTimeout – 无名函数 – Global 的顺序来找j,结果在无名函数里找到,而无名函数的j被设为正确的i值。所以吹毛求疵一下,不算Global的话都有Closure,第一是setTimeout,第二个是setTimeout+无名函数。很明显setTimeout这一层没有用,所以第一个就直接fall到Global。Closure的本质是从Execution Context Stack里面执行完了移除出来的Execution Context(比如无名函数),由于该Execution Context在heap上,而且被timer这个function object里面的一个内部变量[[scope]]指着,内存无法被回收,所以产生了一个函数执行完还能调用它变量的奇特效果。每次调用一个函数,都会在Execution Context Stack(虽然叫做stack,其实在heap上)最上面放入该函数对应的Execution Context。

    Object.create与function construtor的区别:大体没有区别,构造函数会把信件的object的constructor property指向自己的祖先,主要区别是prototype chain省空间,不会重复拷贝祖先的method,会指向他们。

    太阁Fintech群本周热点(总结by阿昊)
    本周大家讨论热点主要是blockchain, 分享了很多资料到群里。此外大家比较关注脱欧事件,由此产生的汇率波动历史罕见。 相信未来一段时间还会有很大波动。另外一些朋友参加了GMBP Capital及其相关讲座。归纳一下, 做多波动率,做空信用。

    另外和燎原以及麓山学社联谊,在WeWork赞助下举办了FinTech讲座。 邀请了纽约4个初创FinTech公司讲解各个公司的business以及如何将technology运用于Finance领域。期待以后更多精彩的活动。

    太阁vr/ar群本周热点(总结by小丸子)

    1. oculus、Meta 和hololens对比:有人试戴了Meta Headset的Demo,功能很全,关键显示原理特别简单,头盔主体底部有两个屏幕,面罩是碗形的透明玻璃罩,直接反射上面的屏幕。第一代原型机最大的问题是不够流畅,因为定位追踪系统是外置的。Meta 2是像Tango和hololens一样的SLAM内置定位。oculus的vive定位非常流畅,比Meta流畅多了。hololens视野狭窄。

    2. unity和unreal哪个好? 一般小团队先用unity release了以后有一些会换到unreal。unreal如果光是做visualization的话其实还好,4.13解决了完美镜面反射的问题 做visualization基本上没有大的缺陷了,之前只能用近似的screen space reflection碰到镜子 平静的湖面之类的就没法做了。

    Data Science群本周讨论热点(总结by steal):
    1、Data Science 爱好者分享Python性能优化干货以及大数据可视化的成功案例
    群里Python话题依然浓烈,有小伙伴分享Python性能优化20个经验总结干货,受到群里Python热爱者的点赞好评。另外有小伙伴在群里请教帮社科研究院做数据可视化的思路、模型以及前景问题,而神奇Data Science群里立即有小伙伴分享了一些大数据可视化的成功案例提供参考学习,真是有求必应啊。

    2、各行业成员继续涌入群成员,跨行业交流话题丰富多彩
    群里新增了来自国内上市公司电力行业大数据的高手、初学JAVA,主公Web方向的学生以及在美国医院集团data science的大数据分析专员。在卧虎藏龙的Data Science群里引起了不同的行业的data science应用讨论话题。有人关心技术讨论红黑树、映射、字典的问题;有人关注国内图像处理技术发展成熟度以及人员饱和话题;大部分小伙伴认为nlp是为了热点,也有人关注图像处理在视频方面的新应用方向如在影视剧视频播放中用户看到演员的服装,可以直接点击到电商购买,据说该技术大牛攻克了难题,开始进入市场实践了。短短的一周群里跨行业交流话题真是丰富多彩。

    3、国外首本TensorFlow电子资料分享,引起众多讨论
    Data Science群里分享了国外首本TensorFlow电子资料,140页的丰富资料立即引起热烈讨论。各方大牛讨论windows、Mac以及Linux的不同环境的TF安装体验情况。有小伙伴感叹windows在大数据 Data Science的折腾——其实可以采用caffe、maxnet或者docker方法,只不够没有linux的“兼容”来得方便;也有小伙伴使用了一个星期的caffe,最后感叹前沿技术基本是要靠读源码才能理解各个函数用户,也让众多小白期待该大牛给讲讲caffe用法;当然也有人表示未来是tfboys的,如果不是为了model zoo或者一些历史遗留原因,还是不用为好啊;甚至部分小伙伴仰天长啸到看来要入data science主要的坑还是要拼硬件啊,有人专门用Linux Box做Deep Learning ,有人觉得i7 4core都不够用了啊…革命尚未成功,同志们不要放弃啊!

    4、R的RCurl做网页抓取遇到的POST请求问题
    有小伙伴在使用R的RCurl做网页抓取遇到的POST请求问题——已经是使用了httr的Post函数,但是却一直爬虫遇到405错误。小编个人经验是一般情况下某个 URL 只允许用 GET 访问,然后你用 POST 就会 405,不过具体问题需要具体分析。群里也有小伙伴,建议R爬取网页有很多方式,可以试试xpath和jieba结合等。

    博客小组动态
    负责人: 小太阳 、风羽、DY

    Blog一周内新文章推送

    ●一款有情绪的输入法——Kika Keyboard
    ●【硅谷之路 72】理解数据结构和算法设计
    ●twisted的基本用法
    ●Scala中的Typeclass模式实例
    ●硅谷创业必读 Zero to One 到底说了什么?
    ●计算广告训练与平滑思想(上)

    公众号人气文章回顾
    ●【Daily Knowledge】硬盘、内存与闪存
    ●【Daily knowledge】TCP/IP Three-way Handshake
    ●【干货总结】深入浅出理解MongoDB的设计与实现
    ●【干货总结】如何设计Kafka?

    太阁x小组动态播报
    负责人:Jerry Yang、EK

    ●"热辣七月"
    项目小组已于7月1日周五报名截止,我们会在下周与参加的同学联系,并进行分组。

    ●"残酷六月"
    小组最新进展,请关注我们每周动态博客:http://www.bittiger.io/blog/post/yzgkTQJR8zdY23rmu

    ●"Kaggle(F7)"

    本周Haiyang Qi组目前排名200+,在调参方面遇到瓶颈,准备做一下别的尝试。Chengcen Sha组新建了github的repository,组织了几个testing script,目前正在run。

    太阁极客榜
    负责人:文哲

    本周太阁极客榜惊喜不断,sindres大神盘踞了一个多月的榜首地位终于被AnkaiLiang和z502185331一举超越了!

    0_1469576849470_周1203.png

    AnkaiLiang的超神之路靠的在GitHub Page上创立自己的个人博客,而z502185331则是靠刷题插件辅助下的勤奋刷题。两位挑战者这上一周在GitHub上的Push次数都勇猛地超过了100,奠定了他们排名前二的基础。

    对AnKaiLiang和z502185331项目感兴趣的童鞋,可以去GitHub去follow他们,或者给他们的项目点赞哦~

    AnKaiLiang的GitHub:https://github.com/AnkaiLiang
    z502185331的GitHub: https://github.com/z502185331
    太阁极客榜: https://bittiger-ranking.firebaseapp.com

    本期小编:mimi,大白柱

    更多信息,欢迎登陆BitTiger官网
    或添加官方微信公众号“论码农的自我修养”:bit_tiger
    0_1469577028460_bittiger qr code.jpg


登录后回复
 

与 BitTiger Community 的连接断开,我们正在尝试重连,请耐心等待