飞一般的体验
版本管理 git : 程序员的后悔药
感觉星形表和直接扔到 influxdb 差不多... 还没 influxdb 的实时性好
学习使用上不需要
研究会涉及: 指称语义 -> domain theory, 格,模型论 monad -> 范畴论 类型 -> typed lambda calculus
ML 可能会涉及到更多
还是觉得实时推送帖子修改的通知更好
你的 modify
方法中,var_a = a
是个局部变量赋值,self.var_a = a
或者 var_a=(a)
才对
这样就可以了,还解决看贴吧翻不了页的问题...
counts = 1000.times.map{ rand 10 }.group_by{|d| d }.map{|k, v| v.size }.sort_by &:-@
res = counts.each_with_index.flat_map {|c, i| Array.new c, i+1 }
干得好!早该管管了!
好,支持,威武,有希望了!
多个 heredoc 和别的东西放一行
foo_bar_baz = <<-FOO, <<-BAR, "baz"
foo
FOO
bar
BAR
#6 楼 @crayon 遇到并解决多次,可能原因有:网络不通,本地或服务器证书没更新,证书被劫持,服务器太忙,本地防火墙设置,需要客户端证书,操作系统 bug, OpenSSL 安装不完整/链接错误,OpenSSL 的 Ruby 绑定安装不完整,rubygems 太老以致于 rubygems/ssl_certs 里的证书过期,人品不好等等....
首先你得定位出是哪个 url 出的问题,最笨的是人肉二分查找肯定能找出来。然后 curl -I 地址
看看报错信息是什么,如果 curl 没问题而 Ruby 有问题,大致可以知道是 Ruby 的安装问题了。
如果不想解决问题,只想盖住问题,可以尝试换台 VPS 上的机器重做,一般都会好...
homebrew 带的 openssl 根证书是从 keychain 生成的:
security find-certificate -a -p -Z /Library/Keychains/System.keychain /System/Library/Keychains/SystemRootCertificates.keychain > cert.pem
chown :staff cert.pem
但是 keychain 中设置了不信任的证书例如 CN 某 NIC 也会包含进去,所以得打开找到这两个 SHA 删掉紧接着的证书: 8BAF4C9B1DF02A92F7DA128EB91BACF498604B6F 4F99AA93FB2BD13726A1994ACE7FF005F2935D1E
验证
Net::HTTP.get_response URI('https://www.cn' + 'nic.net.cn/')
Net::HTTP.get_response URI('https://evdemo.cn' + 'nic.cn/')
都出错就对了。参考 http://goo.gl/0OG7R8
Person.each.with_object(Hash.new 0) {|p, h| h[p.name[0]] += 1}
#9 楼 @haoshanshan 呃,改现有 class 例如 Fixnum, Integer 不用找那个文件的,直接在你的代码中写就行 (虽然大一点工程不推荐,但小脚本随便用没关系).
另外你早点说 big endian, 只用搞 1, 2, 4 字节就好了嘛,很简单:
[num].pack 'C' # 1 字节
[num].pack 'S>' # 2 字节
[num].pack 'L>' # 4 字节
这些参数怎么来的?命令行 ri pack
可以看到
编辑器加个保存 hook 检查语法很简单的...
固定长度的整数 (1, 2, 4, 8 字节) 用 pack
可以。
适合网络传输的任意长整数,用 der 格式最适合了,我推荐这个:
[70244200243420].pack 'w' #=> "\x8F\xFC\xB0\x84\xE9\xC1\\"
"\x8F\xFC\xB0\x84\xE9\xC1\\".unpack 'w' #=> [70244200243420]
如果是要生翻译 python 的 to_bytes
, 就没内建的方法,得自己写了,只支持 unsigned 的例子如下:
class Integer
def to_bytes size, byteorder: 'big'
i = self
rs = size.times.map do
i, r = i.divmod 256
r
end
rs.reverse! if byteorder == 'big'
rs.pack 'C*'
end
end
等 core M 的性能测评
#32 楼 @lithium4010 场景就是楼主说的场景。你这样写短是短了,但多起了两个名字 -_-
你得这么写:
def foo(name: name, value: value)
{name => value} # 注意 => 和 : 的区别
end
因为 value:
的写法会声明局部变量 value
, 所以你才能用 value
横向能拆独立 service 更好 纵向拆分 gem 就可以,搞一堆 microservice 是自杀
#10 楼 @xixiwelcome 那,file = nil
然后 GC 哩?