• 最后来个成品图

  • #19 楼 @kfihihc 我一开始想做的就是 GH60。

    可是后来觉得还是直接 ErgoDox 吧。材料好弄一些。

  • #14 楼 @wcp1231 这个我之前也关注,拇指键区更合理。不过不好换键冒。 最主要的,不知道他们什么时候才能正式推出,也不知道他们卖多少钱。

  • #4 楼 @heliang7 没多钱,淘宝印的电路板,淘宝激光刻的亚克力外壳。最贵的就是键轴了

  • 不会吧,分体式随便安放

  • ruby 布尔类型判断迷惑中 at 2014年08月21日

    var.blank? 可以用来判断是不是空值,可惜这是一个 rails 的方法。

  • 什么应用服务器?

    不好意思刚看到 thin.

  • 全新的 Ruby Web 框架:Lotus at 2014年07月30日

    #35 楼 @Rei 其实你发的 dhh 的讨论到后来也很精彩,虽然很多人不喜欢 dhh 说他爱放炮,但如果仔细看他的讨论其实他说的好多东西都有道理的。

  • exif 是个有限集合,可以不用 method_missing.

    把需要的属性定义到一个 array 里面,然后 define_method 就好了,这样有一个好处就是想要显示什么属性什么是可控的。

  • 如何查询离我 1km 的用户 at 2014年07月21日

    #25 楼 @badboy 另外楼主的需求可能精度要求不高,稍微马虎点无所谓。

    我现在的公司做的项目是房地产搜索引擎,需要吧房产放到地图上,如果放的位置差出去 50 米,就差出去好几栋房子了。其实我们这个按说也无所谓,用户到了周围自己找去吧,可是产品又要加 Google 街景地图,这个误差就麻烦了。照片跟街景看的房子就不一样了。

  • 如何查询离我 1km 的用户 at 2014年07月21日

    #25 楼 @badboy 1000 米球不球的误差可能不大,但是不同坐标系误差就大了。

  • 如何查询离我 1km 的用户 at 2014年07月17日

    TL;DR: 这个东西还是不要自己计算。 如果是玩玩的话就算了。 如果认真的话还是换 Postgres 上 PostGIS, 这个东西是开源 GIS 数据处理最好的东东,没有之一。

    如果先计算用户跟我的距离,再找出小于 1km 的,如果总用户有 100 万,你需要 100 万用户都算一遍,即便是算完了,还需要排序。 如果用坐标的盒子查询,第一不精密,角上的用户已经超过 1km, 第二排序还是要计算距离,第三不够灵活,如果明天需求改了,需要找条距离一条曲线马路一公里以内的用户的时候,又该怎么办呢。 而且,上面的计算极有很大的可能是错误的。

    原因如下:

    简单来说,如果要画地图,首先要找准一个平面,地球根本不是圆的,也不是椭圆的,是个橡皮泥砸的有点像圆球的这么一坨。最早地图用的水平面,后来发现海拔因为潮汐关系也靠不住,后来用重力加速度,重力加速度为同一常量的作为一个平面。得出的结果是这个

    搞清楚形状了,找到地球表面的高度了,但是做成地图还需要一个投影模式。 我们平常看的世界地图是椭圆投影。这个对于形状表示比较好,距离计算跟面积误差很大。赤道周围跟极低周围误差极大。 当然还有别的投影模式,比如把世界地图剥成橘子皮那样的。

    除了投影模式,还需要一个 Datum,就是地理坐标系统。说白了就是经纬度。 这个标准就更多了,北美有 NAD 83, WGS 84, 每个系统定义了地球的椭圆投影的椭圆的具体规格。长半径短半径有多长。这个差一点,两点的距离就会差很多。

    上面所有的因素加在一起,组成了 Spatial Reference System(SRS 空间参照系统).

    你可能会问我说这么多跟计算距离有毛关系。

    关系就是,在不同的 SRS 参考坐标系下,相同的经纬度根本不在一个地方。更不要说两个点的距离了。 算出来的距离可能差很远。

    所以当你拿到一个坐标,首先要了解是什么 SRS, 楼上说的各种不同地图提供商和用户位置提供商提供的经纬度误差,就是因为用了不同的参考坐标系。国内肯定有自己的 SRS 这些我就不太了解了。 知道了是什么坐标系,才能计算距离或者做其他查询,然后也需要考虑到地球的弧面因素。

    PostGIS 提供了以下功能:

    1. 当参照系统不一样的时候,可以帮你转化。然后计算
    2. Geometry 类型用来平面的数据,Geography 类型用来储存地球弧面的数据跟计算
    3. 各种基于地理信息的 SQL 扩展查询,你现在的需求,用 PostGIS 就是一个 SQL 指令的事儿。而且你现在需求还简单,如果需求改了需要计算距离长安街 1km 的用户,通知他们来看国庆游行。上面的计算距离方式就做不到了,PostGIS 还是一个 SQL 指令的事儿。 4.性能,PostGIS 做这种查询,就是一刹那的事儿。
  • 如何查询离我 1km 的用户 at 2014年07月12日

    如果能换成 PostgresSQL 的话可以用 PostGIS 这个 extension.

  • If - is used as file, documents will be printed to standard output, disabling link conversion. (Use ./- to print to a file literally named -.)

  • man wget

    -O file
     --output-document=file
         The documents will not be written to the appropriate files, but all will be concatenated together and written to file.  If - is used
         as file, documents will be printed to standard output, disabling link conversion.  (Use ./- to print to a file literally named -.)
    
         Use of -O is not intended to mean simply "use the name file instead of the one in the URL;" rather, it is analogous to shell
         redirection: wget -O file http://foo is intended to work like wget -O - http://foo > file; file will be truncated immediately, and
         all downloaded content will be written there.
    
         For this reason, -N (for timestamp-checking) is not supported in combination with -O: since file is always newly created, it will
         always have a very new timestamp. A warning will be issued if this combination is used.
    
         Similarly, using -r or -p with -O may not work as you expect: Wget won't just download the first file to file and then download the
         rest to their normal names: all downloaded content will be placed in file. This was disabled in version 1.11, but has been reinstated
         (with a warning) in 1.11.2, as there are some cases where this behavior can actually have some use.
    
         Note that a combination with -k is only permitted when downloading a single document, as in that case it will just convert all
         relative URIs to external ones; -k makes no sense for multiple URIs when they're all being downloaded to a single file; -k can be
         used only when the output is a regular file.
    
  • <在 tag 前面加个空格,>在 tag 后面加个空格,也能单用,也能<>,

    就是 ><看着搞笑点

  • - if post.deleted?
          span.label.label-default>< = post.comment_count.value
    

    试试这样

  • Install Ruby The "Postmodern" Way at 2014年07月09日

    喜欢服务器上面用 rbenv 的另一个原因是 rbenv 的一个 plugin 叫做 rbenv-vars.

  • #25 楼 @zw963 我是别字大王。。

  • #19 楼 @mojacc 其实国内适合搞 VPS, 硬件价钱跟人力资源都有竞争优势,完全可以成为亚洲的数据中心。可惜 ZF 对网络态度一直很保守。。。

  • #12 楼 @pynix DO 的性能不差啊,上面比较 CPU 更内存跟 Linode 相差不大,只是 SSD 部分落后 Linode。如果跟其他的 VPS 比 DO 不一定落后。

  • #8 楼 @benzhang 这个跟系统负载也有关系。我测试的时候两个都是崭新创建的 VPS。如果这个运营中的 web server 上面运行就有快有慢了。

    我是参照这里拿来测试的: https://romanrm.net/dd-benchmark

  • #2 楼 @kgen 现在 SSD 表现依然甩 DO 好几条街。

    我本来是两个都建的在纽约,然后用 speedtest-cli 链接相同的 speedtest 服务器,结果有的服务器 Linode 好,有的 DO 好,没办法做确切的结论,所以作罢。。

  • #4 楼 @chinacheng 嗯,如果你之前生成 private key 的时候没有设置密码,就不需要这一步。

    一般他们的文档都是很不专业的。Google 还是王道。

  • #2 楼 @chinacheng 服务器多了的话可以将 ssl 终结在 Load Balancer. 客户端到 load balancer 加密传输,load balancer 到服务器明文传输。

  • 稍大一点的程序不一定就复杂,复杂度也有不同,例如广度与深度的不同。 比如同一个数据 model 需要显示成 50 种格式,这种复杂可以用 view 的 decorator 解决。硬要加一个 service layer 并不是特别有意义。

    DDD 适用于复杂的业务逻辑,进销存,工作流,生产线自动化,等等,Rails 一开始就是针对另外一种开发的。小型创业项目,而且大部分项目是面向消费者的。所以在这方面有欠缺是正常的。而且如果业务逻辑复杂度到不了那个程度,也没有必要非要硬套 DDD。

  • homebrew master branch 问题已经解决了

  • Apple 发明新语言了 Swift at 2014年06月03日

    Objective-C 学不进去的人表示非常兴奋。