• 提问的智慧:

  • 你主动yarn add 下就好了

  • Let's clone a Leancloud at 2019年02月01日

    人家当年的判断是不是特别前瞻嘛...

  • 屌!

  • 如何学好Ruby这门编程语言?下面总结了七点经验与大家分享。

    1、学会使用官方文档

    当你安装完Ruby,在安装目录中已经自带了与安装版本相对应的官方文档,以Windows系统为例,它在“Ruby26\doc\”目录下,或者在【开始】-【Ruby 2.6】的选项中也能看到。

    这份官方文档,是需要常备的学习参考资料。

    在学习中遇到的一些问题,都可以到这份文档中通过搜索寻找答案。

    2、借助翻译工具

    编程语言对大多数开发人员来说,英文是一个障碍。

    如果英文不好,大多数最新的技术文档无法读懂。

    但是,即便无法读懂,也要去读,借助翻译工具,养成阅读英文文档的的习惯。

    随着阅读次数的积累,慢慢的我们就能够提升英文的阅读能力。

    这就好像小孩子学说话,不停的努力与重复才能够达成目标。

    3、善用搜索引擎

    在学习过程中,我们会经常遇到一些问题,需要解决。

    你的第一个解决途径不是到处去问,到处去问只会养成你的惰性和依赖性。

    而编程人员解决问题需要培养的是独立性。

    实际上,网上有海量资源能够帮助我们解决问题。

    但你不一定会搜索。

    因为很多人喜欢搜热门关键词,例如查询Ruby资料,就喜欢输入Ruby视频教程或Ruby入门这些关键词。

    看看搜索结果吧!

    都是一些老旧的Ruby资料。

    为什么搜索引擎不会将最新的资料显示出来呢?

    因为新的资料本身有一个被收录和提升搜索权重的过程。

    就好像Ruby2萌新入门笔记,虽然是很新的学习资料,也被搜索引擎收录了,但是你查询“Ruby2 笔记”这样的关键词,依然很难查到。

    而查询资料的全名则会有非常好的效果。

    所以,当你在搜索引擎查询资料的时候,不要用非常简洁的关键词去查询,而是用长尾关键词(也就是描述更详细的关键词)去查询,因为一般新的资料都会对长尾关键词进行优化(因为热词实在很难排名靠前),达到能够被用户搜索到的目的。

    4、理解概念

    编程中有很多概念,变量、函数、对象、方法、类、进程、线程……

    这些基本的概念,必须要理解。

    实际上这些概念,也只是名称的字面难以理解,如果加以解释(当然要解释的通俗易懂)都很容易理解。

    理解这些概念,是我们提升编程思想的最佳途径。

    如果不理解概念,即便能够跟随着资料将代码编写出来,等到自己真正进行开发时仍然是一头雾水。

    所以,在学习中真正的理解一个知识点是非常重要的。

    5、慢下来

    不要贪图快,快会容易错过细节。

    在学习当中,一定要仔细全面的追求质量而不是速度。

    因为在初学时期追求速度而忽略质量,到学习后期就会暴露出各种各样的问题。

    所以扎实的、有条不紊的把每一个基础知识 点掌握之后,在进行下一个知识点的学习,才是最有效率的学习途径。

    6、穷其理

    穷其理的意思就是追究细节。

    任何一份资料的作者,视角都是不同的。

    所以,不同的资料作者所给出的学习资料也会各有侧重,或者带有作者个人的喜好。

    并不是作者不负责任,不能够把资料作的完整详细,而是扩展开来往往会变成非常复杂的资料结构。例如,web开发内容中会涉及HTML、JS等知识,如果把这些知识也详细的展现在资料中,那么这份资料就没有办法再去学习。

    所以,当我们在学习过程中,发现资料中一些模糊或者生僻的内容,不要放过,而是至少做一下了解。

    虽然,不可能太过深入,但是基本内容要做一个大概的了解。

    这样是有好处的,它会让我们变得更博学。

    如果将来遇到相关的问题,我们就能够快速的找出解决方案。

    7、养成习惯

    学习编程是一个持续的过程。

    每天编写代码是一个程序开发人员应该养成的习惯。

    编程能力有不进则退的特点。

    如果中断时间过长,就会导致能力的退化,甚至遗忘学过的知识。

    所以,即便没有编写代码的环境,也要尽量通过网络学习一些相关的技术资料,保持持续的学习状态。

  • 贿选了 (光速逃

  • 你这么说倒是也有可能,我并没有直接测原贴的那个,但是 uuid 里确实有可能塞时间的

  • 因为 UUID type 1 里包含时间戳信息了,于是乎就可以从中提取时间信息。

    比如刚随便找了个网上的 demo

    刚搜了下,其实也有人问的 https://stackoverflow.com/questions/43751943/how-to-convert-timeuuid-to-timestamp-in-ruby

    另外 Ruby 的 SecureRandom.uuid 是 type 4,是不包含时间信息的

  • 去年尝试过防弹咖啡,声称可以代餐了,不过后来没坚持下去

  • 那些都没有 ESS 自带的完备,另外首先需不需要那么高的技术指标本身就要商榷,我想不到什么场景需要这么大的数字要求,一般数据库能支持的无符号 bigint 才大概 20 位,另外 msgpack 的 integer 最大也是 8 bytes,就算 mruby 支持,不再搞点 trick 还是不行。

    沙箱一定要支持 Decimal 是为了算钱用的。

    另外做映射并不是不能做,mruby 端的序列化、反序列化要在 C++ 的部分实现,ESS 的沙箱一部分测试不开源的(用了 Shopify 系统的源码做用例),改出来了也不好测试

  • 大 Integer 变浮点数,这个没研究过,mruby 一些行为跟 MRI 不同,主要是面向性能和内存消耗考虑的,毕竟 mruby 可以跑在单片机上

  • mruby 没有 BigDecimal 类型,mruby Number 和 Float 的长度限制定义在 mruby 源码的常量里,Shopify 实现的 mruby-mpdecimal 的最大长度应该受 mpdecimal 这个 c 库的限制

  • gatsby 开一个博客很容易 at 2019年01月19日

    离后端失业还远,起码先推波助澜一下呀

  • Shopify 已经基于 mpdecimal 给 mruby 做了一个了, ESS 还有我的 ScriptCore 都内置,但是因为无法直接映射,所以使用的时候得做手动处理一下

  • mruby 没有内建 BigDecimal 类型(MRI 这个是标准库的一部分),当然可以实现一套,但是缺点是无法跟 MRI 的 BigDecimal 做直接映射

  • MRI 不好裁剪,mruby 的标准库的粒度细多了,比如元编程在 mruby 里都是一个 gem

  • gatsby 开一个博客很容易 at 2019年01月18日

    看好那个,当然能让这套成立感觉最重要的还是 GraphQL,目前也有类似的后台服务了,比如 https://graphcms.com/

  • 这些都跟 JIT 没啥关系,都是不同的 Ruby 实现,JRuby 也不能说失败,至少 ELK 套装的 L 就是 JRuby 实现的。

    IronRuby 坑了很可惜,本来这个是作者赌气的产物(根据一些资料的八卦,当时有人提出 .Net 上不可能实现高效的动态语言的虚拟机,作者不服不仅要试试而且要用大家公认不快的 Ruby 来,这个计划的最终产物并不是 IronRuby 而是 .Net 平台上非常重要的组件 动态语言运行时 DLR)

    这次 mjit 能成还是因为路子太野,传统的 JIT 的设计需要投入很多精力,对实现者的知识要求也很高,MRI 没有 Google 这样大厂的资源支持(毕竟 JS 的 JIT 可以直接用在浏览器中,这样他的价值无比的高),所以很多人尝试过,结果都坑掉了...

  • 我软牛逼!

  • 你可以直接删了 assets 目录吧,这个应该无伤大雅的,要是原理的话可以看一眼 rails new 那部分的源码,没准这个可以算是 bug

  • 支持!已入手!

  • Gitlab 给 Devise 加二步验证搞得还是很 tricky 的,不过 Gitlab 的那部分代码还是挺值得借鉴的,OTP 和 U2F 都实现了而且被检验这么久

  • Ruby 2.6.0 已发布 at 2018年12月26日

    可以升级,但一些情况下会报 warning,2.6 的兼容性改进的提交已经合并进 5-2-stable 分支了,估计老外过完节回来就会发新版