您这帽子扣得也是有点大
工程师解决的难道不是真实世界的问题么,如果把“技术浪漫”理解成研究更高级的技术来解决问题,这不正是作为工程师的职业精神的体现么?
感觉你提到的技术浪漫是有负面的观点在里面,那么你是怎么定义的?
换个角度,如果一个环境能够让工程师去追求技术浪漫,这对工程师而言不应该是一个理想的工作环境么?而 Rei 的观点是,这和一家公司的技术品味(用什么样的技术),有正相关性(尽管没提出什么数据)
欢迎加入 RubyChina~
ok。。。有机会能请他们在 RubyChina 上分享下就好了
现代前端时代 Rails 怎么和 React 这种框架配合是我比较疑惑的地方,有点激动了哈哈
移动端和 React 前端是共用 Rails 提供的 API 么?另外后端 Rails 是完全提供 API 么?还是说也有做 React 的 SSR?或者说是也有传统的后端预渲染?这块你们的技术团队是否有相关的文章介绍呢?
看 Linkedin https://www.linkedin.com/jobs/search/?f_C=162479&keywords=Ruby%20on%20Rails&location=Worldwide&locationId=OTHERS.worldwide 苹果大量产品线是基于 Rails 的,我现在的同事(前美国苹果总部员工)也提到过
好奇 你们 React 和 Rails 是怎么协作的,系统架构和团队分工上(全栈两边都写?还是前后端两个团队?那么如何协作?)
但是可以开了嘛,就跟 jemalloc 一样
2.6 的性能提升会更加明显,JIT is coming...
需要关心本身实现么?
文档开篇说的什么?
The Comparable mixin is used by classes whose objects may be ordered. The class must define the <=> operator, which compares the receiver against another object, returning -1, 0, or +1 depending on whether the receiver is less than, equal to, or greater than the other object. If the other object is not comparable then the <=> operator should return nil. Comparable uses <=> to implement the conventional comparison operators (<, <=, ==, >=, and >) and the method between?.
讲得不够清楚?
我发的不是 module Comparable 那是什么?
跟 C 有什么关系? https://ruby-doc.org/core-2.4.0/Comparable.html 自己看
class SizeMatters
include Comparable
attr :str
def <=>(other)
str.size <=> other.str.size
end
def initialize(str)
@str = str
end
def inspect
@str
end
end
开头这不就是你的例子么
另外,你拿 Comparable
做例子,可文档里都写的很清楚了,你先看看文档就不会有这么多问题
我不是挑你刺,但我希望你先写好代码,再出来扯有的没的,何况你扯了大段虚的概念(我在这就不评论你说的对不对),懂的人用不到你教,不懂的人你说的那堆也没法让人懂
def <=>(param)
self.size <=> param.size
end
那么,这么改之后,跟你原始代码比,简化了多少?
你改了 >
,那这部分呢?
def <=>(param)
if self.size > param.size
return 1
elsif self.size == param.size
return 0
end
-1
end
看不出来要不要我教你怎么改成一行?
module Comparable
def >(param)
if self.<=>(param) == 1
return true
end
false
end
...
end
你改出来的代码就这德行? self.<=>(param) == 1
的结果已经是 Boolean 了,你还 return true
什么?
做 Web:Ruby、JavaScript、CSS(SCSS 图灵完备,可以拿出来说是一门编程语言了)
个人成长:功夫在诗外,多接触一些典型、有特色的编程语言(这里并不是为了追求新、奇、巧,主流的 Java、PHP 也是值得学习的)对更好的写出 Ruby 代码也有很大的帮助,也对扩展自己的戏路跳出某语言开发帮助更大
你生成代码也没少多少,但是你的结论来自于你写错了,那么好,我给你正确的代码,你告诉我这叫代码没少多少?
我又来了,一条条来吧
咱们单纯说技术,说实话,我觉得贵司技术管理的理念有点...过于过时
我上司给我发一篇 java sonar 啥的文章,他觉得很神奇,我就告诉我上司,2013 年左右 王垠 写了 RubySonar 和 PySonar,我还给上司发了 Rubocop。
他的第一反应是:卧槽这什么鬼玩意(一脸排斥),我跟他说,我的 amber-kit 是借助它辅助编码的。
RubySonar 和 PySonar 不谈,来说说 Rubocop,它是 Lint 工具,我不知道你还有你的领导有没有意识到 Lint 这一点,但是,Lint 工具在软件工程上(不仅仅是某些语言)有非常进步的意义,可以说是当下的必备工具了。
即使 Java 领域,具体的实践推荐参阅 使用 Lint 改进您的代码 | Android Studio
首先,这一节立意就是错的,Ruby 的面向对象基于 Smalltalk 的消息模型,这个模型下,对象的作用是处理传入的消息,(纯理论层面)接口、泛型、甚至类型都不是必要的。
其次,你的代码。。。include Comparable
之后,只需要实现 <=>(other)
方法,你的代码只需要写成
class Size
include Comparable
attr_accesor :size
def <=>(param)
sefl.size - param.size
end
end
开完会继续
用 Sprockets 4 beta
一个合格的程序员并不应该被语言绑死,特别职业生涯发展到一定阶段后,同时接触多种语言的工作是很正常的。
我在学校参与科研项目主要用 Java,但是我可以利用 Python 清洗原始数据,第一份工作是写 PHP,但是我用 Ruby 去分析日志更好得完成我的工作(那时候做一些涉及数据库调优的问题修复)。这两个例子里,我的兴趣语言是我解决工作的良好助力
试试刚发布的 2017.3
搞静态博客其实还是为了折腾。。。真要写文字 Medium 简书 Wordpress 已经很好用了
挖了坑就跑,真特么刺激...
要为了单纯写文章 Octopress Jekyll 都可以,Octopress 虽然不维护了,但本身也就是 Jekyll 的包装而已,理论上还是可以在底下用最新版 Jekyll 的。
要玩花样的话,就试试 Middleman,Jekyll 的模板引擎是 Liquid,使用限制太多,而 Middleman 默认 erb 可以 haml、slim,同时也很容易编写 helper(就像 Rails),而且前端资源管理集成了 Assets pipeline,感觉集成 webpacker 应该也不是难事。
可以看看我两年前搭的架子 https://github.com/jasl/haven
octopress 还是可以用的啊,有啥不能满足你的么?不过我个人更推荐 Middleman,但那个并不是开箱即用的,但是功能非常强大。
当年人人要踏踏实实搞校园...
支持~