n****t 发帖数: 53 | 1 三天前发的帖子,不过想到工作生活要分开,就注册了个小号来重发这个帖子,具体本
号是啥大家就不要追究了。
好久没上mitbbs,看到还有一堆人在吵Python和R的问题。以前我也说过,我喜欢
Python,但搞bioinformatics不用R基本不可能,所以经常被R搞一搞。大部分人可能就
认了,认真学习R,认真填坑,老夫是行动派,就搞了这个 http://vatlab.github.io/sos/ 。
这个 SoS是啥呢,名字叫做Script of Scripts ,就是包含其它语言的语言。具体
来说你可以用Python收集数据,搞个Pandas DataFrame,然后用%put, %get啥把数据
转到R(或者SAS,或者Matlab等等)去分析,画图,分析完了如果需要用别的语言干啥
事,再接着转就行了,所有的东西都在一个Notebook里,比搞一堆scripts方便。就是
说你喜欢Python就用Python,喜欢R就用R,喜欢一起用就一起用,再也不用抱怨了。
SoS还在beta,但基本使用应该没问题,包含的东西比我以上说的东西多很多,特别是
在远程执行上有些特色。有兴趣的,或者说和我一样用多语言分析数据的不妨一试。有
啥意见建议直接上Github上说一声,多谢了。 |
d******c 发帖数: 2407 | 2 争程序语言是很无聊的,该用什么用什么就是了,ploygot是对的。以前看到过你这个
,不过我现在还没有太多用python的需求。每个语言都有很多内容,能精通一个还是精
通一个比较好。当然需要的时候就上最合适的。
从另一方面来说,我现在比较倾向于能functional的就functional,python支持还是差
一点。
之前的争论是低级错误太多实在看不下去。 |
d******c 发帖数: 2407 | 3 另外rstudio的rmarkdown里也可以有python chunk,可能有点类似你这个的意思,将来
也许也会这么发展。
rmarkdown比jupyter nobtebook有很多优势,最主要的是能进version control。用惯
了rstudio,去用jupyter觉得各种土。 |
n****t 发帖数: 53 | 4 RStudio 现在在搞RStudio Notebook,但对其它语言支持还很差,基本只能执行完整的
小段的程序,语言间的数据交流和协同也基本没有。SoS的各个Kernel是同时运行的,
就是说一个语言执行过程中可以用其它语言完成某项工作,得到结果然后继续运行。而
被调用的因为是一个live session,所以不需要是完整独立的程序。 |
n****t 发帖数: 53 | 5 和SoS比较相像的是Beaker Notebook,但Beaker一直在alpha,以前试用的时候一堆问
题,不知现在好些没有。除了RStudio Notebook,还有个高大上的Apache Zeppelin不
知有人用过没有。SoS其实有两部分,SoS Notebook和Beaker Notebook接近,另外一部
分SoS Workflow Engine则是和Galaxy, CWL,Snakemake, Nextflow之类比较的。SoS的
长处在于把两者有机的结合在一起,打破了Interactive和batch运行之间的界限。 |
g****t 发帖数: 31659 | 6 Org mode
或者excel 写写vba,想调用什么都可以
: 和SoS比较相像的是Beaker Notebook,但Beaker一直在alpha,以前试用的时候
一堆问
: 题,不知现在好些没有。除了RStudio Notebook,还有个高大上的Apache
Zeppelin不
: 知有人用过没有。SoS其实有两部分,SoS Notebook和Beaker Notebook接近,另
外一部
: 分SoS Workflow Engine则是和Galaxy, CWL,Snakemake, Nextflow之类比较的
。SoS的
: 长处在于把两者有机的结合在一起,打破了Interactive和batch运行之间的界限。
【在 n****t 的大作中提到】 : 和SoS比较相像的是Beaker Notebook,但Beaker一直在alpha,以前试用的时候一堆问 : 题,不知现在好些没有。除了RStudio Notebook,还有个高大上的Apache Zeppelin不 : 知有人用过没有。SoS其实有两部分,SoS Notebook和Beaker Notebook接近,另外一部 : 分SoS Workflow Engine则是和Galaxy, CWL,Snakemake, Nextflow之类比较的。SoS的 : 长处在于把两者有机的结合在一起,打破了Interactive和batch运行之间的界限。
|
n****t 发帖数: 53 | 7 问题在于稍微复杂点的分析,就可能要用到别的语言的程序和库之类的。而且尽管
RStudio提供了一个基本什么都能做的环境,但很多方面实现的并不好(界面,交互,
并行运算等等),强行用R做所有的事情很多时候只是这个平台下无奈的选择而已。SoS
设计的目的就是用合适的语言和工具做合适的事情,不要去折腾什么Python版本的
ggplot,R版本的flot等等。
关于你另一个帖子的版本管理问题, SoS script (.sos) 很自然的可以用git,
subversion啥的来管理,SoS Notebook (.ipynb)可以选择commit整个notebook(价值
不大),或者转成一个纯文本格式,不包含程序输出的格式来管理(%sossave)。
【在 d******c 的大作中提到】 : 另外rstudio的rmarkdown里也可以有python chunk,可能有点类似你这个的意思,将来 : 也许也会这么发展。 : rmarkdown比jupyter nobtebook有很多优势,最主要的是能进version control。用惯 : 了rstudio,去用jupyter觉得各种土。
|
d******c 发帖数: 2407 | 8 是的,我说的就是rstudio notebook
我想主要问题是同时用多种语言的人并不多,大部分情况下也是分隔比较清晰的任务,
阶段性地用而不是需要更灵活的交替运行。
频繁切换语言大概对程序员的脑子是一种挑战。
【在 n****t 的大作中提到】 : RStudio 现在在搞RStudio Notebook,但对其它语言支持还很差,基本只能执行完整的 : 小段的程序,语言间的数据交流和协同也基本没有。SoS的各个Kernel是同时运行的, : 就是说一个语言执行过程中可以用其它语言完成某项工作,得到结果然后继续运行。而 : 被调用的因为是一个live session,所以不需要是完整独立的程序。
|
n****t 发帖数: 53 | 9 你这个还是局限在调用什么东西的阶段,和 R的system差不多。SoS首先在于解决了语
言间数据交换的问题,节省了把数据转出转入的麻烦;再一个是SoS的各个subkernel是
live的,你可以交互使用任何一个语言,方便调试运行;最后各个subkernel都可以自
己返回markdown或者HTML结果,产生一个完整的报告,方便使用。
【在 g****t 的大作中提到】 : Org mode : 或者excel 写写vba,想调用什么都可以 : : : 和SoS比较相像的是Beaker Notebook,但Beaker一直在alpha,以前试用的时候 : 一堆问 : : 题,不知现在好些没有。除了RStudio Notebook,还有个高大上的Apache : Zeppelin不 : : 知有人用过没有。SoS其实有两部分,SoS Notebook和Beaker Notebook接近,另 : 外一部 : : 分SoS Workflow Engine则是和Galaxy, CWL,Snakemake, Nextflow之类比较的
|
n****t 发帖数: 53 | 10 我觉得同时用多种语言的人不多的原因就在于同时使用各种语言太麻烦。用一个最简
单的例子,如果我在Python中需要产生随机数,虽然Python有自己的module可以做这个
事情,但我脑子里最方便的还是rnorm,在SoS中就是
%with R -i n -o rn
rn = rnorm(n)
就是把Python中n传到R,在R中调用rnorm,然后把结果传回来。和Rstdio不一样的地方
还在于R是persistent的,下次我想知道rn的median,直接转到R,在R里面执行median(
rn);如
果想传结果到Python,用
%with R -o med
med = median(rn)
就可以了;如果在R那边已经算过了,在Python这边
%get med --from R
也行。
【在 d******c 的大作中提到】 : 是的,我说的就是rstudio notebook : 我想主要问题是同时用多种语言的人并不多,大部分情况下也是分隔比较清晰的任务, : 阶段性地用而不是需要更灵活的交替运行。 : 频繁切换语言大概对程序员的脑子是一种挑战。
|
|
|
g****t 发帖数: 31659 | 11 你查查我过去写的literate programming和多语言的一些帖子。
我只说一句:
多语言之间数据交换,在强壮性和坑少毛病少上,不管你什么办法,
很难赢clipboard+emacs/vim。
【在 n****t 的大作中提到】 : 你这个还是局限在调用什么东西的阶段,和 R的system差不多。SoS首先在于解决了语 : 言间数据交换的问题,节省了把数据转出转入的麻烦;再一个是SoS的各个subkernel是 : live的,你可以交互使用任何一个语言,方便调试运行;最后各个subkernel都可以自 : 己返回markdown或者HTML结果,产生一个完整的报告,方便使用。
|
g****t 发帖数: 31659 | 12 org mode有啊
2http://orgmode.org/worg/org-contrib/babel/intro.html
R写的函数python的org mode段也可以调用
1http://orgmode.org/worg/org-contrib/babel/library-of-babel.html
median(
【在 n****t 的大作中提到】 : 我觉得同时用多种语言的人不多的原因就在于同时使用各种语言太麻烦。用一个最简 : 单的例子,如果我在Python中需要产生随机数,虽然Python有自己的module可以做这个 : 事情,但我脑子里最方便的还是rnorm,在SoS中就是 : %with R -i n -o rn : rn = rnorm(n) : 就是把Python中n传到R,在R中调用rnorm,然后把结果传回来。和Rstdio不一样的地方 : 还在于R是persistent的,下次我想知道rn的median,直接转到R,在R里面执行median( : rn);如 : 果想传结果到Python,用 : %with R -o med
|
n****t 发帖数: 53 | 13 SoS 多语言支持相关的文档在 https://vatlab.github.io/SoS/doc/documentation/
Supported_Languages.html
大概看了一下org mode,抛开emacs和web interface 哪个方便不谈,我觉得这个数据
转换还是蛮有局限性的,主要是数据转换是capture result,只能传一个没有名字的结
果,而且以emacs/org为中介,可能没法转复杂(嵌套)类型或者大量数据。SoS概念上
不是传结果,是一个语言中的任何变量都可以随时传到任何其它语言。就拿返回table
的类型来说,SoS下R data.frame转到Python 成为DataFrame,转到Matlab成为table,
转到Octave成为dataframe,转到SAS成为dataset,转到JavaScript是nested
dictionary,都是native datatype,大量数据的传递会用disk file (诸如feather),
而且语言接口允许任何两个语言之间直接转数据,尽量不丢失信息。
【在 g****t 的大作中提到】 : org mode有啊 : 2http://orgmode.org/worg/org-contrib/babel/intro.html : R写的函数python的org mode段也可以调用 : 1http://orgmode.org/worg/org-contrib/babel/library-of-babel.html : : median(
|
d******c 发帖数: 2407 | 14 我只说一句
我不用emacs/vim,很多人也不用。
【在 g****t 的大作中提到】 : 你查查我过去写的literate programming和多语言的一些帖子。 : 我只说一句: : 多语言之间数据交换,在强壮性和坑少毛病少上,不管你什么办法, : 很难赢clipboard+emacs/vim。
|
d******c 发帖数: 2407 | 15 bioinfo用你这个还是很有意义,太多太杂的工具,需要混合起来用。
其他人如果都自己写code,大部分人不会同时用几种语言。
你没有多做一点宣传?至少在hacker news上贴几次吧,github上star才17个,
marketing做的太不够了。
table
【在 n****t 的大作中提到】 : SoS 多语言支持相关的文档在 https://vatlab.github.io/SoS/doc/documentation/ : Supported_Languages.html : 大概看了一下org mode,抛开emacs和web interface 哪个方便不谈,我觉得这个数据 : 转换还是蛮有局限性的,主要是数据转换是capture result,只能传一个没有名字的结 : 果,而且以emacs/org为中介,可能没法转复杂(嵌套)类型或者大量数据。SoS概念上 : 不是传结果,是一个语言中的任何变量都可以随时传到任何其它语言。就拿返回table : 的类型来说,SoS下R data.frame转到Python 成为DataFrame,转到Matlab成为table, : 转到Octave成为dataframe,转到SAS成为dataset,转到JavaScript是nested : dictionary,都是native datatype,大量数据的传递会用disk file (诸如feather), : 而且语言接口允许任何两个语言之间直接转数据,尽量不丢失信息。
|
n****t 发帖数: 53 | 16 怎么说呢,自家的孩子,再怎么喜欢,出门前还是要清理打扮一番,不要满身虫子。年
初好不容易出了个稳定版本,内部讲了一下,结果下面说我们干活要在cluster上运行
各种程序,你这个局限在本地机没啥意思。我想想也对,花了老大力气完善了远程执行
功能,年中在扩大化会议上又讲了一次。结果隔壁biostat的哥们说咱们干活就用R和
SAS,你这玩意不支持SAS我们不买账。我只有哼呦哼呦的加上SAS和Matlab,让他们闭
嘴。然后一号称搞Data Science的说咱那疙瘩用Julia,你行行好加上 Julia?我听了
只想哭。
不管怎么说,现在SoS算是基本完整了,但没被版上大牛批一批总觉得不踏实。所以大
家有什么意见尽管提,我一定虚心接受。如果你喜欢ruby啥的,可以直接要求,但我个
人实在是精力有限,如果你能搞个PR就再好不过了。
【在 d******c 的大作中提到】 : bioinfo用你这个还是很有意义,太多太杂的工具,需要混合起来用。 : 其他人如果都自己写code,大部分人不会同时用几种语言。 : 你没有多做一点宣传?至少在hacker news上贴几次吧,github上star才17个, : marketing做的太不够了。 : : table
|
g****t 发帖数: 31659 | 17 我是生产环境用多语言编程。给客户,以及往外面卖的代码。
你底下这段话牵涉的东西太多。代码维护难度太高。就算你现在没有坑。
MSFT改改net库未来可能就废了。我不可能考虑的。
我踩了无数坑之后的经验:
如果真的是生产环境需要多语言编程的话。工具只能是自己造,而且还要尽
量用简单强壮的结构设计。我主要就是用剪贴板。不用别的各程序之间共享
或者传递数据的复杂技术。
table
【在 n****t 的大作中提到】 : SoS 多语言支持相关的文档在 https://vatlab.github.io/SoS/doc/documentation/ : Supported_Languages.html : 大概看了一下org mode,抛开emacs和web interface 哪个方便不谈,我觉得这个数据 : 转换还是蛮有局限性的,主要是数据转换是capture result,只能传一个没有名字的结 : 果,而且以emacs/org为中介,可能没法转复杂(嵌套)类型或者大量数据。SoS概念上 : 不是传结果,是一个语言中的任何变量都可以随时传到任何其它语言。就拿返回table : 的类型来说,SoS下R data.frame转到Python 成为DataFrame,转到Matlab成为table, : 转到Octave成为dataframe,转到SAS成为dataset,转到JavaScript是nested : dictionary,都是native datatype,大量数据的传递会用disk file (诸如feather), : 而且语言接口允许任何两个语言之间直接转数据,尽量不丢失信息。
|
g****t 发帖数: 31659 | 18 excel + 剪贴板, even better
【在 d******c 的大作中提到】 : 我只说一句 : 我不用emacs/vim,很多人也不用。
|
g****t 发帖数: 31659 | 19 不同强壮性要求的软件实际上是非常不一样的。
我觉得你可能要先弄清楚自己的潜在客户是什麽,对软件强壮性要求多高。
光是julia,pandas,R,SAS,excel。。。的dataframe格式
的互相转换,你要弄出来没bug的一个互相转换的工具,就已经足够牛X了。
关键是质量高,不一定要大而全的。
【在 n****t 的大作中提到】 : 怎么说呢,自家的孩子,再怎么喜欢,出门前还是要清理打扮一番,不要满身虫子。年 : 初好不容易出了个稳定版本,内部讲了一下,结果下面说我们干活要在cluster上运行 : 各种程序,你这个局限在本地机没啥意思。我想想也对,花了老大力气完善了远程执行 : 功能,年中在扩大化会议上又讲了一次。结果隔壁biostat的哥们说咱们干活就用R和 : SAS,你这玩意不支持SAS我们不买账。我只有哼呦哼呦的加上SAS和Matlab,让他们闭 : 嘴。然后一号称搞Data Science的说咱那疙瘩用Julia,你行行好加上 Julia?我听了 : 只想哭。 : 不管怎么说,现在SoS算是基本完整了,但没被版上大牛批一批总觉得不踏实。所以大 : 家有什么意见尽管提,我一定虚心接受。如果你喜欢ruby啥的,可以直接要求,但我个 : 人实在是精力有限,如果你能搞个PR就再好不过了。
|
n****t 发帖数: 53 | 20 这个意见我虚心接受,但我们搞bioinformatics的和你们不一样。各种工具层出不穷,
还天天升级,你用一个语言写得再好的workflow,过两天人家一升级就废了。被长期虐
待之下,我们习惯于写各种script,fix各种问题,而这个时候workflow的清晰性,可
重复性,易修改性就特别重要了。SoS的workflow基本原封不动的包括各种script,在
可维护性这个方面比起“正规”的workflow系统还是有优势的。
【在 g****t 的大作中提到】 : 我是生产环境用多语言编程。给客户,以及往外面卖的代码。 : 你底下这段话牵涉的东西太多。代码维护难度太高。就算你现在没有坑。 : MSFT改改net库未来可能就废了。我不可能考虑的。 : 我踩了无数坑之后的经验: : 如果真的是生产环境需要多语言编程的话。工具只能是自己造,而且还要尽 : 量用简单强壮的结构设计。我主要就是用剪贴板。不用别的各程序之间共享 : 或者传递数据的复杂技术。 : : table
|
|
|
n****t 发帖数: 53 | 21 在这个方面我和你的看法不完全一致。强壮性很重要,但只要不是crash啥的,功能上
数据转换的一些缺陷在交互使用时是可以容忍的。各种语言有各种奇葩的数据类型,没
法完美转换,所以SoS只能是尽量转换到相似的类型。再有些bug,诸如说数据传了一圈
,row label给丢了,bug report是要发,但使用上专门传一下row label也不是太麻烦
的事情,至少比起手工传数据要方便。从实用的角度上讲,大而全(在SOS中就是任何
变量到任何语言的转换)比高质量但有限的转换要有用。
简单的说SoS可以极大的简化multi-language workflow的使用和维护,现在的主要潜在
客户就是那些写了无穷多各种各样script的bioinformaticists。
【在 g****t 的大作中提到】 : 不同强壮性要求的软件实际上是非常不一样的。 : 我觉得你可能要先弄清楚自己的潜在客户是什麽,对软件强壮性要求多高。 : 光是julia,pandas,R,SAS,excel。。。的dataframe格式 : 的互相转换,你要弄出来没bug的一个互相转换的工具,就已经足够牛X了。 : 关键是质量高,不一定要大而全的。
|
g****t 发帖数: 31659 | 22 你的bioinformatics软件是产品还是研究用的?
产品卖多少量?客户什么要求?
这些东西我觉得是对软件的关键约束。
最终还是强壮度和可维护性决定了一个软件能走
多远,多久。
: 这个意见我虚心接受,但我们搞bioinformatics的和你们不一样。各种工具层出
不穷,
: 还天天升级,你用一个语言写得再好的workflow,过两天人家一升级就废了。被
长期虐
: 待之下,我们习惯于写各种script,fix各种问题,而这个时候workflow的清晰
性,可
: 重复性,易修改性就特别重要了。SoS的workflow基本原封不动的包括各种
script,在
: 可维护性这个方面比起“正规”的workflow系统还是有优势的。
【在 n****t 的大作中提到】 : 在这个方面我和你的看法不完全一致。强壮性很重要,但只要不是crash啥的,功能上 : 数据转换的一些缺陷在交互使用时是可以容忍的。各种语言有各种奇葩的数据类型,没 : 法完美转换,所以SoS只能是尽量转换到相似的类型。再有些bug,诸如说数据传了一圈 : ,row label给丢了,bug report是要发,但使用上专门传一下row label也不是太麻烦 : 的事情,至少比起手工传数据要方便。从实用的角度上讲,大而全(在SOS中就是任何 : 变量到任何语言的转换)比高质量但有限的转换要有用。 : 简单的说SoS可以极大的简化multi-language workflow的使用和维护,现在的主要潜在 : 客户就是那些写了无穷多各种各样script的bioinformaticists。
|
g****t 发帖数: 31659 | 23 Workflow难点之一是牵涉的软件乱更新。很多更新是无法预测的。
: 看了一下,做的挺好的,赞。
: workflow不好做,像我以前用的airflow,进了Apache,做的很复杂,但也差不
多要黄
: 了。
: 因为需求实在是太多样了,没法抽象。还不如每次自己写。
: 我觉得,能用jupyter notebook的人大部分对python还比较熟。
: 他们可能不愿意用julia, SAS或者Excel。jupyter notebook做完prototype后
,可以
: 往app的方向走,celery加django。所以这方面的需求应该不强。
: 你们不妨集中到R的画图方面,很多人还是愿意用ggplot的。
|
d******c 发帖数: 2407 | 24 我觉得没必要等成熟,先发出来收集点数据是有好处的,多些人给你测试。有了更多用
户可以跟上级表功,不要想着等到成熟,没有彻底成熟的时候。
另外这种系统必然得设计一个中间格式,将来扩展才容易一些。好比LLVM要搞个虚拟机
,pandoc要有个中间格式,都是一样。你多半也做了,不过长期考虑最好能让对新语言
或者新feature的支持尽量是声明性的,而不是靠过程程序(可能你已经这么做了,我
只是随便说说)。
从数据交换上,你要是定义好一些格式和接口,比如json,protocol buffer,将来争
取做到新的bioinfo工具会考虑对你这个的支持,那就轻松了。
【在 n****t 的大作中提到】 : 怎么说呢,自家的孩子,再怎么喜欢,出门前还是要清理打扮一番,不要满身虫子。年 : 初好不容易出了个稳定版本,内部讲了一下,结果下面说我们干活要在cluster上运行 : 各种程序,你这个局限在本地机没啥意思。我想想也对,花了老大力气完善了远程执行 : 功能,年中在扩大化会议上又讲了一次。结果隔壁biostat的哥们说咱们干活就用R和 : SAS,你这玩意不支持SAS我们不买账。我只有哼呦哼呦的加上SAS和Matlab,让他们闭 : 嘴。然后一号称搞Data Science的说咱那疙瘩用Julia,你行行好加上 Julia?我听了 : 只想哭。 : 不管怎么说,现在SoS算是基本完整了,但没被版上大牛批一批总觉得不踏实。所以大 : 家有什么意见尽管提,我一定虚心接受。如果你喜欢ruby啥的,可以直接要求,但我个 : 人实在是精力有限,如果你能搞个PR就再好不过了。
|
m*****n 发帖数: 3575 | 25 我有点看不懂你这个
你这个的意思是你的平台上可以任意的在不同的语言之间切换,只需声明用哪个语言? |
n****t 发帖数: 53 | 26 是的,不过虽然所有的Jupyter Kernel都能用,但变量交换现在仅限于Python, R,
Bash, SAS, Matlab, JavaScript等语言。https://vatlab.github.io/SoS/#
documentation上相关的部分有“SoS Jupyter kernel and interface” (界面),
“Supported languages”(多语言支持),和下面的一些例子。
【在 m*****n 的大作中提到】 : 我有点看不懂你这个 : 你这个的意思是你的平台上可以任意的在不同的语言之间切换,只需声明用哪个语言?
|
g****t 发帖数: 31659 | 27 变量交换你怎么实现的?
: 是的,不过虽然所有的Jupyter Kernel都能用,但变量交换现在仅限于Python,
R,
: Bash, SAS, Matlab, JavaScript等语言。https://vatlab.github.io/SoS/#
: documentation上相关的部分有“SoS Jupyter kernel and interface” (界面
),
: “Supported languages”(多语言支持),和下面的一些例子。
【在 n****t 的大作中提到】 : 是的,不过虽然所有的Jupyter Kernel都能用,但变量交换现在仅限于Python, R, : Bash, SAS, Matlab, JavaScript等语言。https://vatlab.github.io/SoS/# : documentation上相关的部分有“SoS Jupyter kernel and interface” (界面), : “Supported languages”(多语言支持),和下面的一些例子。
|
n****t 发帖数: 53 | 28 具体实现上并没有真正意义上的变量交换,是在另一个语言中建立了一个独立的同名的
相似类型的变量。诸如说R里有
A = c(1, 2)
B = 3
在Python 中
%get A B --from R
最后就是在Python中执行了
A = [1, 2]
B = 3
举两个变量的例子是想说明A和B在R中是一个类型,但转到Python中是两个不同的类型
。如果通过文件转数据(诸如json),那就是一方存文件,传文件名,另一方读文件。
,
【在 g****t 的大作中提到】 : 变量交换你怎么实现的? : : : 是的,不过虽然所有的Jupyter Kernel都能用,但变量交换现在仅限于Python, : R, : : Bash, SAS, Matlab, JavaScript等语言。https://vatlab.github.io/SoS/# : : documentation上相关的部分有“SoS Jupyter kernel and interface” (界面 : ), : : “Supported languages”(多语言支持),和下面的一些例子。 :
|
G****e 发帖数: 293 | |
m*****n 发帖数: 3575 | 30 你知道如何把Python脚本打包成Linux可以运行的程序么? |
|
|
n****t 发帖数: 53 | 31 这个问题确实很难,特别这么复杂的数据交换,要保证代码可靠性可维护性非常难。我
琢磨了很久,最后使用了一种和Beaker等不一样的没有中间层的点对点的函数(不是你
推荐的界面声明)设计。简单而言,在language module A里面,get从SoS传Python数
据到A,put函数直接知道自己要传的变量V的类型和传出的语言B,根据变量类型等信息
,可以选择直接在B中产生V,也可以在SoS(Python)中产生V。前者是A->B的直接传数据
,后者是A->SoS->B的间接传数据。因为没有中间层,数据交换变成了 很多A(V)->B/
SoS的分支。这样的好处是
1. 没有中间层,所以也不会因为中间层的问题造成全面的数据交换问题
2. 独立的点对点的数据交换,可以实现语言间特殊类型的交换,而不限于中间层的固
定几种数据类型
3. 即使某些语言某些类型出问题,不会影响到其它语言和类型,而单独的情况相对容
易分割处理
3. language module刚开始可以只实现A(V)->SoS,如果有特殊需要再实现某些A(V)->B
,而且可以选择只传少数几种常用类型,有需要了再支持更多的类型,降低了写
language module的门槛
我觉得这个设计还是比较可靠的,靠的不是完善可靠的中间层,而是把任务完全打散,
把出的问题局限在很小的范围以内。
【在 g****t 的大作中提到】 : 我是生产环境用多语言编程。给客户,以及往外面卖的代码。 : 你底下这段话牵涉的东西太多。代码维护难度太高。就算你现在没有坑。 : MSFT改改net库未来可能就废了。我不可能考虑的。 : 我踩了无数坑之后的经验: : 如果真的是生产环境需要多语言编程的话。工具只能是自己造,而且还要尽 : 量用简单强壮的结构设计。我主要就是用剪贴板。不用别的各程序之间共享 : 或者传递数据的复杂技术。 : : table
|
n****t 发帖数: 53 | 32 老来聊发少年狂,不顾自己浓重的口音,录了几个youtube video介绍SoS和SoS
Notebook。有兴趣的可以看看,给我添点点击量。呵呵。
https://vatlab.github.io/sos-docs/#documentation |
d*******r 发帖数: 3299 | 33 配音sexy,哈哈,支持一个
【在 n****t 的大作中提到】 : 老来聊发少年狂,不顾自己浓重的口音,录了几个youtube video介绍SoS和SoS : Notebook。有兴趣的可以看看,给我添点点击量。呵呵。 : https://vatlab.github.io/sos-docs/#documentation
|
w***g 发帖数: 5958 | 34 这东西很不错! 资瓷下.
【在 n****t 的大作中提到】 : 老来聊发少年狂,不顾自己浓重的口音,录了几个youtube video介绍SoS和SoS : Notebook。有兴趣的可以看看,给我添点点击量。呵呵。 : https://vatlab.github.io/sos-docs/#documentation
|
n****t 发帖数: 53 | 35 平常交流做报告都没问题,也从来没有人抱怨我的口音说听不懂啥的,但录下来然后自
己听觉得简直没法入耳,语气,语调,语法,发音一堆的问题。当然学生们纷纷表示您
老说的好,没问题,发上去吧。:-)
【在 d*******r 的大作中提到】 : 配音sexy,哈哈,支持一个
|
w***g 发帖数: 5958 | 36 专门找耳机听了一下. 说的很溜, 声音也不错. 没有问题.
你说的那些问题都不是问题.
【在 n****t 的大作中提到】 : 平常交流做报告都没问题,也从来没有人抱怨我的口音说听不懂啥的,但录下来然后自 : 己听觉得简直没法入耳,语气,语调,语法,发音一堆的问题。当然学生们纷纷表示您 : 老说的好,没问题,发上去吧。:-)
|
n****t 发帖数: 53 | 37 多谢表扬,那就是自己要求高,或者听自己的声音总觉得奇怪。
【在 w***g 的大作中提到】 : 专门找耳机听了一下. 说的很溜, 声音也不错. 没有问题. : 你说的那些问题都不是问题.
|
g****t 发帖数: 31659 | 38 赞行动派!
丁肇中当年说过:做理论物理的一不小心可能价值为0。
实验物理就不一样,失败了多多少少都有价值。
百闻不如一做!楼主加油!
: 多谢表扬,那就是自己要求高,或者听自己的声音总觉得奇怪。
【在 n****t 的大作中提到】 : 多谢表扬,那就是自己要求高,或者听自己的声音总觉得奇怪。
|
p**h 发帖数: 124 | 39 哥们不知道你做啥的,但你最不向做Bioinfo的。Bioinfomatics, Biostat, 重点是Bio
。乱七八遭的各种工具能用啥用啥,出结果就行了,script起来不难,scripting也不
是一个课题。 PI们不在乎工具多漂亮。你的编程水平远远超过需要了,建议多刷刷题
转行吧。 |
n****t 发帖数: 53 | 40 这哥们说话好扎心啊。我学数值计算的,没有一点生物背景,在休斯顿因为紧靠医疗中
心,跟风转了生统,但一直以来的兴趣都是计算机。现在也算faculty,有funding,有
学生,但就像你说的,在Bioinformatics系里不做生物,没有前途,也没有钱途,挣得
还没有系里的programmer多。
我的编程水平有多高还真不好说。这么多年,需要啥学啥,从早期的C++, perl啥的到
现在主要用Python,R,加上杂七杂八的mpi, js, bootstrap, docker啥都会,勉强也
算full stack。靠着努力和耐心,做过的几个程序都很大,在相关领域也算名列前茅。
说起编程语言,C++和Python能拿得出手,但因为没有科班训练过,讲讲写过的软件的
设计和实现还行,你要问我啥叫 closure我就直接歇菜了。各种系统都用的转,但你让
我谈谈系统设计啥的也基本没戏。现在一把年纪,再学数据结构刷题,好像也力不从心
,而且就算转行,拿什么和一帮科班小年轻去竞争啊?要不板上大牛们给我分析分析,
哪种公司需要我这种人,值不值得刷题转行?
至于scripting是不是课题,我需要经常处理各种生物数据,用各种工具,PI当然只看
结果,但干活的人还是需要有好工具的。Script不难,但当你有几十个project,各种
版本的各种script,别说给别人看,就是有时候自己需要回头看看自己以前的project
,也难搞清楚咋回事。况且生物计算数据量大,需要在各种系统下跑程序,一个好用的
workflow system也很重要。这个SoS就是在这个背景下搞出来的,我个人觉得还是蛮好
用的,应该也是有意义的。
Bio
【在 p**h 的大作中提到】 : 哥们不知道你做啥的,但你最不向做Bioinfo的。Bioinfomatics, Biostat, 重点是Bio : 。乱七八遭的各种工具能用啥用啥,出结果就行了,script起来不难,scripting也不 : 是一个课题。 PI们不在乎工具多漂亮。你的编程水平远远超过需要了,建议多刷刷题 : 转行吧。
|
|
|
w***g 发帖数: 5958 | 41 你还学啥数据结构系统设计. 这都是学生干的事情.
赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧.
【在 n****t 的大作中提到】 : 这哥们说话好扎心啊。我学数值计算的,没有一点生物背景,在休斯顿因为紧靠医疗中 : 心,跟风转了生统,但一直以来的兴趣都是计算机。现在也算faculty,有funding,有 : 学生,但就像你说的,在Bioinformatics系里不做生物,没有前途,也没有钱途,挣得 : 还没有系里的programmer多。 : 我的编程水平有多高还真不好说。这么多年,需要啥学啥,从早期的C++, perl啥的到 : 现在主要用Python,R,加上杂七杂八的mpi, js, bootstrap, docker啥都会,勉强也 : 算full stack。靠着努力和耐心,做过的几个程序都很大,在相关领域也算名列前茅。 : 说起编程语言,C++和Python能拿得出手,但因为没有科班训练过,讲讲写过的软件的 : 设计和实现还行,你要问我啥叫 closure我就直接歇菜了。各种系统都用的转,但你让 : 我谈谈系统设计啥的也基本没戏。现在一把年纪,再学数据结构刷题,好像也力不从心
|
g****t 发帖数: 31659 | 42 转医学数值计算吧。
生物统计太多老中了,很难搞。
那么多人喜欢让孩子读医学,
临到自己,其实也有机会转的。找个医生合作。
不过本科生level的课,也不是不可以学。
其实没有想象中那么花时间。
20年前我一个月可以学一门。
现在两礼拜差不多了。
【在 w***g 的大作中提到】 : 你还学啥数据结构系统设计. 这都是学生干的事情. : 赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧.
|
n****t 发帖数: 53 | 43 Faculty有两种,咱是那种苦命的,从来不敢去faculty版混的那种。
【在 w***g 的大作中提到】 : 你还学啥数据结构系统设计. 这都是学生干的事情. : 赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧.
|
O*O 发帖数: 2284 | 44 严重同意
像wdong大牛学习
开公司
刷题的以后都得给你打工
:你还学啥数据结构系统设计. 这都是学生干的事情.
:赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧. |
n******g 发帖数: 2201 | 45 你多给点建议 吧 挣钱才是王道 说那么多知识
你也真是书呆:) 褒义
[在 guvest (我爱你老婆Anna) 的大作中提到:]
:转医学数值计算吧。
:生物统计太多老中了,很难搞。
:那么多人喜欢让孩子读医学,
:临到自己,其实也有机会转的。找个医生合作。
:不过本科生level的课,也不是不可以学。
:其实没有想象中那么花时间。
:现在两礼拜差不多了。 |
w***g 发帖数: 5958 | 46 还是刷题去FLG吧, 工资那么高我都想去.
我也是四处打零工, 他们交的税比我赚的都多.
【在 O*O 的大作中提到】 : 严重同意 : 像wdong大牛学习 : 开公司 : 刷题的以后都得给你打工 : : :你还学啥数据结构系统设计. 这都是学生干的事情. : :赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧.
|
d******c 发帖数: 2407 | 47 找活,做contractor比较现实。关键是找到客户
【在 n****t 的大作中提到】 : 这哥们说话好扎心啊。我学数值计算的,没有一点生物背景,在休斯顿因为紧靠医疗中 : 心,跟风转了生统,但一直以来的兴趣都是计算机。现在也算faculty,有funding,有 : 学生,但就像你说的,在Bioinformatics系里不做生物,没有前途,也没有钱途,挣得 : 还没有系里的programmer多。 : 我的编程水平有多高还真不好说。这么多年,需要啥学啥,从早期的C++, perl啥的到 : 现在主要用Python,R,加上杂七杂八的mpi, js, bootstrap, docker啥都会,勉强也 : 算full stack。靠着努力和耐心,做过的几个程序都很大,在相关领域也算名列前茅。 : 说起编程语言,C++和Python能拿得出手,但因为没有科班训练过,讲讲写过的软件的 : 设计和实现还行,你要问我啥叫 closure我就直接歇菜了。各种系统都用的转,但你让 : 我谈谈系统设计啥的也基本没戏。现在一把年纪,再学数据结构刷题,好像也力不从心
|
n****t 发帖数: 53 | 48 这种freelancer 要拿到稳定的中高收入很难吧?我现在的工作虽然工资偏低,但非常
灵活,除了帮人分析一下数据,有点发文章的压力,剩下时间完全自己想干啥干啥,全
呆家里也行。SoS与其说是项目需要,不如说是兴趣使然。当然我这一辈子也就亏在“
随性”上,没有多花时间考虑怎么跳槽,升职,挣钱。
【在 d******c 的大作中提到】 : 找活,做contractor比较现实。关键是找到客户
|
n***p 发帖数: 110 | 49 你这种随性心态很好啊。想干啥干啥几乎半退休状态。
现在忙着挣钱的,到最后不就图个你现在这种自由自在的生活。
【在 n****t 的大作中提到】 : 这种freelancer 要拿到稳定的中高收入很难吧?我现在的工作虽然工资偏低,但非常 : 灵活,除了帮人分析一下数据,有点发文章的压力,剩下时间完全自己想干啥干啥,全 : 呆家里也行。SoS与其说是项目需要,不如说是兴趣使然。当然我这一辈子也就亏在“ : 随性”上,没有多花时间考虑怎么跳槽,升职,挣钱。
|
n****t 发帖数: 53 | 50 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋,没法
比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是辛苦二
字,还大部分是为了老婆孩子辛苦。
算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow engine的两
个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news啥的。
【在 n***p 的大作中提到】 : 你这种随性心态很好啊。想干啥干啥几乎半退休状态。 : 现在忙着挣钱的,到最后不就图个你现在这种自由自在的生活。
|
|
|
g****t 发帖数: 31659 | 51 弄懂自己部门的现金流如何产生,如何维持的
: 你多给点建议 吧 挣钱才是王道 说那么多知识
: 你也真是书呆:) 褒义
: [在 guvest (我爱你老婆Anna) 的大作中提到:]
: :转医学数值计算吧。
: :生物统计太多老中了,很难搞。
: :那么多人喜欢让孩子读医学,
: :临到自己,其实也有机会转的。找个医生合作。
: :不过本科生level的课,也不是不可以学。
: :其实没有想象中那么花时间。
: :现在两礼拜差不多了。
【在 n******g 的大作中提到】 : 你多给点建议 吧 挣钱才是王道 说那么多知识 : 你也真是书呆:) 褒义 : [在 guvest (我爱你老婆Anna) 的大作中提到:] : :转医学数值计算吧。 : :生物统计太多老中了,很难搞。 : :那么多人喜欢让孩子读医学, : :临到自己,其实也有机会转的。找个医生合作。 : :不过本科生level的课,也不是不可以学。 : :其实没有想象中那么花时间。 : :现在两礼拜差不多了。
|
d******c 发帖数: 2407 | 52 不是作为全职,而是业余时间。你有时间,能不去坐班,已经完全可以了。
如果发展的好,再考虑弄个公司省点税。一开始尝试直接接活就是了。
这个全看经验,最重要的是对方的需求是你做过的,经验越多越可以多收钱。
【在 n****t 的大作中提到】 : 这种freelancer 要拿到稳定的中高收入很难吧?我现在的工作虽然工资偏低,但非常 : 灵活,除了帮人分析一下数据,有点发文章的压力,剩下时间完全自己想干啥干啥,全 : 呆家里也行。SoS与其说是项目需要,不如说是兴趣使然。当然我这一辈子也就亏在“ : 随性”上,没有多花时间考虑怎么跳槽,升职,挣钱。
|
d******c 发帖数: 2407 | 53 你想想,你这个主要面对的是bioinfo的人,那些人能完成任务就行,谁会来
programming版。
常来的人大部分又不搞bioinfo,一般总是用一种语言,或者挑自己喜欢的语言,不会
要同时用这么多的。
【在 n****t 的大作中提到】 : 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋,没法 : 比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是辛苦二 : 字,还大部分是为了老婆孩子辛苦。 : 算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow engine的两 : 个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news啥的。
|
w**********1 发帖数: 130 | |
g****t 发帖数: 31659 | 55 你要挣钱那就专心promotion啊
: 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋
,没法
: 比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是
辛苦二
: 字,还大部分是为了老婆孩子辛苦。
: 算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow
engine的两
: 个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news
啥的。
【在 n****t 的大作中提到】 : 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋,没法 : 比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是辛苦二 : 字,还大部分是为了老婆孩子辛苦。 : 算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow engine的两 : 个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news啥的。
|
d*******r 发帖数: 3299 | 56 最近话痨ID都不出现了,所以冷清了点
【在 n****t 的大作中提到】 : 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋,没法 : 比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是辛苦二 : 字,还大部分是为了老婆孩子辛苦。 : 算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow engine的两 : 个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news啥的。
|
p**h 发帖数: 124 | 57 哥们,咱们背景差不多,区别是你比我动手能力强好多,也混到faculty了。实在点说
,小于二十万对你来说太屈才。
: 最近话痨ID都不出现了,所以冷清了点
【在 d*******r 的大作中提到】 : 最近话痨ID都不出现了,所以冷清了点
|
n****t 发帖数: 53 | 58 三天前发的帖子,不过想到工作生活要分开,就注册了个小号来重发这个帖子,具体本
号是啥大家就不要追究了。
好久没上mitbbs,看到还有一堆人在吵Python和R的问题。以前我也说过,我喜欢
Python,但搞bioinformatics不用R基本不可能,所以经常被R搞一搞。大部分人可能就
认了,认真学习R,认真填坑,老夫是行动派,就搞了这个 http://vatlab.github.io/sos/ 。
这个 SoS是啥呢,名字叫做Script of Scripts ,就是包含其它语言的语言。具体
来说你可以用Python收集数据,搞个Pandas DataFrame,然后用%put, %get啥把数据
转到R(或者SAS,或者Matlab等等)去分析,画图,分析完了如果需要用别的语言干啥
事,再接着转就行了,所有的东西都在一个Notebook里,比搞一堆scripts方便。就是
说你喜欢Python就用Python,喜欢R就用R,喜欢一起用就一起用,再也不用抱怨了。
SoS还在beta,但基本使用应该没问题,包含的东西比我以上说的东西多很多,特别是
在远程执行上有些特色。有兴趣的,或者说和我一样用多语言分析数据的不妨一试。有
啥意见建议直接上Github上说一声,多谢了。 |
d******c 发帖数: 2407 | 59 争程序语言是很无聊的,该用什么用什么就是了,ploygot是对的。以前看到过你这个
,不过我现在还没有太多用python的需求。每个语言都有很多内容,能精通一个还是精
通一个比较好。当然需要的时候就上最合适的。
从另一方面来说,我现在比较倾向于能functional的就functional,python支持还是差
一点。
之前的争论是低级错误太多实在看不下去。 |
d******c 发帖数: 2407 | 60 另外rstudio的rmarkdown里也可以有python chunk,可能有点类似你这个的意思,将来
也许也会这么发展。
rmarkdown比jupyter nobtebook有很多优势,最主要的是能进version control。用惯
了rstudio,去用jupyter觉得各种土。 |
|
|
n****t 发帖数: 53 | 61 RStudio 现在在搞RStudio Notebook,但对其它语言支持还很差,基本只能执行完整的
小段的程序,语言间的数据交流和协同也基本没有。SoS的各个Kernel是同时运行的,
就是说一个语言执行过程中可以用其它语言完成某项工作,得到结果然后继续运行。而
被调用的因为是一个live session,所以不需要是完整独立的程序。 |
n****t 发帖数: 53 | 62 和SoS比较相像的是Beaker Notebook,但Beaker一直在alpha,以前试用的时候一堆问
题,不知现在好些没有。除了RStudio Notebook,还有个高大上的Apache Zeppelin不
知有人用过没有。SoS其实有两部分,SoS Notebook和Beaker Notebook接近,另外一部
分SoS Workflow Engine则是和Galaxy, CWL,Snakemake, Nextflow之类比较的。SoS的
长处在于把两者有机的结合在一起,打破了Interactive和batch运行之间的界限。 |
g****t 发帖数: 31659 | 63 Org mode
或者excel 写写vba,想调用什么都可以
: 和SoS比较相像的是Beaker Notebook,但Beaker一直在alpha,以前试用的时候
一堆问
: 题,不知现在好些没有。除了RStudio Notebook,还有个高大上的Apache
Zeppelin不
: 知有人用过没有。SoS其实有两部分,SoS Notebook和Beaker Notebook接近,另
外一部
: 分SoS Workflow Engine则是和Galaxy, CWL,Snakemake, Nextflow之类比较的
。SoS的
: 长处在于把两者有机的结合在一起,打破了Interactive和batch运行之间的界限。
【在 n****t 的大作中提到】 : 和SoS比较相像的是Beaker Notebook,但Beaker一直在alpha,以前试用的时候一堆问 : 题,不知现在好些没有。除了RStudio Notebook,还有个高大上的Apache Zeppelin不 : 知有人用过没有。SoS其实有两部分,SoS Notebook和Beaker Notebook接近,另外一部 : 分SoS Workflow Engine则是和Galaxy, CWL,Snakemake, Nextflow之类比较的。SoS的 : 长处在于把两者有机的结合在一起,打破了Interactive和batch运行之间的界限。
|
n****t 发帖数: 53 | 64 问题在于稍微复杂点的分析,就可能要用到别的语言的程序和库之类的。而且尽管
RStudio提供了一个基本什么都能做的环境,但很多方面实现的并不好(界面,交互,
并行运算等等),强行用R做所有的事情很多时候只是这个平台下无奈的选择而已。SoS
设计的目的就是用合适的语言和工具做合适的事情,不要去折腾什么Python版本的
ggplot,R版本的flot等等。
关于你另一个帖子的版本管理问题, SoS script (.sos) 很自然的可以用git,
subversion啥的来管理,SoS Notebook (.ipynb)可以选择commit整个notebook(价值
不大),或者转成一个纯文本格式,不包含程序输出的格式来管理(%sossave)。
【在 d******c 的大作中提到】 : 另外rstudio的rmarkdown里也可以有python chunk,可能有点类似你这个的意思,将来 : 也许也会这么发展。 : rmarkdown比jupyter nobtebook有很多优势,最主要的是能进version control。用惯 : 了rstudio,去用jupyter觉得各种土。
|
d******c 发帖数: 2407 | 65 是的,我说的就是rstudio notebook
我想主要问题是同时用多种语言的人并不多,大部分情况下也是分隔比较清晰的任务,
阶段性地用而不是需要更灵活的交替运行。
频繁切换语言大概对程序员的脑子是一种挑战。
【在 n****t 的大作中提到】 : RStudio 现在在搞RStudio Notebook,但对其它语言支持还很差,基本只能执行完整的 : 小段的程序,语言间的数据交流和协同也基本没有。SoS的各个Kernel是同时运行的, : 就是说一个语言执行过程中可以用其它语言完成某项工作,得到结果然后继续运行。而 : 被调用的因为是一个live session,所以不需要是完整独立的程序。
|
n****t 发帖数: 53 | 66 你这个还是局限在调用什么东西的阶段,和 R的system差不多。SoS首先在于解决了语
言间数据交换的问题,节省了把数据转出转入的麻烦;再一个是SoS的各个subkernel是
live的,你可以交互使用任何一个语言,方便调试运行;最后各个subkernel都可以自
己返回markdown或者HTML结果,产生一个完整的报告,方便使用。
【在 g****t 的大作中提到】 : Org mode : 或者excel 写写vba,想调用什么都可以 : : : 和SoS比较相像的是Beaker Notebook,但Beaker一直在alpha,以前试用的时候 : 一堆问 : : 题,不知现在好些没有。除了RStudio Notebook,还有个高大上的Apache : Zeppelin不 : : 知有人用过没有。SoS其实有两部分,SoS Notebook和Beaker Notebook接近,另 : 外一部 : : 分SoS Workflow Engine则是和Galaxy, CWL,Snakemake, Nextflow之类比较的
|
n****t 发帖数: 53 | 67 我觉得同时用多种语言的人不多的原因就在于同时使用各种语言太麻烦。用一个最简
单的例子,如果我在Python中需要产生随机数,虽然Python有自己的module可以做这个
事情,但我脑子里最方便的还是rnorm,在SoS中就是
%with R -i n -o rn
rn = rnorm(n)
就是把Python中n传到R,在R中调用rnorm,然后把结果传回来。和Rstdio不一样的地方
还在于R是persistent的,下次我想知道rn的median,直接转到R,在R里面执行median(
rn);如
果想传结果到Python,用
%with R -o med
med = median(rn)
就可以了;如果在R那边已经算过了,在Python这边
%get med --from R
也行。
【在 d******c 的大作中提到】 : 是的,我说的就是rstudio notebook : 我想主要问题是同时用多种语言的人并不多,大部分情况下也是分隔比较清晰的任务, : 阶段性地用而不是需要更灵活的交替运行。 : 频繁切换语言大概对程序员的脑子是一种挑战。
|
g****t 发帖数: 31659 | 68 你查查我过去写的literate programming和多语言的一些帖子。
我只说一句:
多语言之间数据交换,在强壮性和坑少毛病少上,不管你什么办法,
很难赢clipboard+emacs/vim。
【在 n****t 的大作中提到】 : 你这个还是局限在调用什么东西的阶段,和 R的system差不多。SoS首先在于解决了语 : 言间数据交换的问题,节省了把数据转出转入的麻烦;再一个是SoS的各个subkernel是 : live的,你可以交互使用任何一个语言,方便调试运行;最后各个subkernel都可以自 : 己返回markdown或者HTML结果,产生一个完整的报告,方便使用。
|
g****t 发帖数: 31659 | 69 org mode有啊
2http://orgmode.org/worg/org-contrib/babel/intro.html
R写的函数python的org mode段也可以调用
1http://orgmode.org/worg/org-contrib/babel/library-of-babel.html
median(
【在 n****t 的大作中提到】 : 我觉得同时用多种语言的人不多的原因就在于同时使用各种语言太麻烦。用一个最简 : 单的例子,如果我在Python中需要产生随机数,虽然Python有自己的module可以做这个 : 事情,但我脑子里最方便的还是rnorm,在SoS中就是 : %with R -i n -o rn : rn = rnorm(n) : 就是把Python中n传到R,在R中调用rnorm,然后把结果传回来。和Rstdio不一样的地方 : 还在于R是persistent的,下次我想知道rn的median,直接转到R,在R里面执行median( : rn);如 : 果想传结果到Python,用 : %with R -o med
|
n****t 发帖数: 53 | 70 SoS 多语言支持相关的文档在 https://vatlab.github.io/SoS/doc/documentation/
Supported_Languages.html
大概看了一下org mode,抛开emacs和web interface 哪个方便不谈,我觉得这个数据
转换还是蛮有局限性的,主要是数据转换是capture result,只能传一个没有名字的结
果,而且以emacs/org为中介,可能没法转复杂(嵌套)类型或者大量数据。SoS概念上
不是传结果,是一个语言中的任何变量都可以随时传到任何其它语言。就拿返回table
的类型来说,SoS下R data.frame转到Python 成为DataFrame,转到Matlab成为table,
转到Octave成为dataframe,转到SAS成为dataset,转到JavaScript是nested
dictionary,都是native datatype,大量数据的传递会用disk file (诸如feather),
而且语言接口允许任何两个语言之间直接转数据,尽量不丢失信息。
【在 g****t 的大作中提到】 : org mode有啊 : 2http://orgmode.org/worg/org-contrib/babel/intro.html : R写的函数python的org mode段也可以调用 : 1http://orgmode.org/worg/org-contrib/babel/library-of-babel.html : : median(
|
|
|
d******c 发帖数: 2407 | 71 我只说一句
我不用emacs/vim,很多人也不用。
【在 g****t 的大作中提到】 : 你查查我过去写的literate programming和多语言的一些帖子。 : 我只说一句: : 多语言之间数据交换,在强壮性和坑少毛病少上,不管你什么办法, : 很难赢clipboard+emacs/vim。
|
d******c 发帖数: 2407 | 72 bioinfo用你这个还是很有意义,太多太杂的工具,需要混合起来用。
其他人如果都自己写code,大部分人不会同时用几种语言。
你没有多做一点宣传?至少在hacker news上贴几次吧,github上star才17个,
marketing做的太不够了。
table
【在 n****t 的大作中提到】 : SoS 多语言支持相关的文档在 https://vatlab.github.io/SoS/doc/documentation/ : Supported_Languages.html : 大概看了一下org mode,抛开emacs和web interface 哪个方便不谈,我觉得这个数据 : 转换还是蛮有局限性的,主要是数据转换是capture result,只能传一个没有名字的结 : 果,而且以emacs/org为中介,可能没法转复杂(嵌套)类型或者大量数据。SoS概念上 : 不是传结果,是一个语言中的任何变量都可以随时传到任何其它语言。就拿返回table : 的类型来说,SoS下R data.frame转到Python 成为DataFrame,转到Matlab成为table, : 转到Octave成为dataframe,转到SAS成为dataset,转到JavaScript是nested : dictionary,都是native datatype,大量数据的传递会用disk file (诸如feather), : 而且语言接口允许任何两个语言之间直接转数据,尽量不丢失信息。
|
n****t 发帖数: 53 | 73 怎么说呢,自家的孩子,再怎么喜欢,出门前还是要清理打扮一番,不要满身虫子。年
初好不容易出了个稳定版本,内部讲了一下,结果下面说我们干活要在cluster上运行
各种程序,你这个局限在本地机没啥意思。我想想也对,花了老大力气完善了远程执行
功能,年中在扩大化会议上又讲了一次。结果隔壁biostat的哥们说咱们干活就用R和
SAS,你这玩意不支持SAS我们不买账。我只有哼呦哼呦的加上SAS和Matlab,让他们闭
嘴。然后一号称搞Data Science的说咱那疙瘩用Julia,你行行好加上 Julia?我听了
只想哭。
不管怎么说,现在SoS算是基本完整了,但没被版上大牛批一批总觉得不踏实。所以大
家有什么意见尽管提,我一定虚心接受。如果你喜欢ruby啥的,可以直接要求,但我个
人实在是精力有限,如果你能搞个PR就再好不过了。
【在 d******c 的大作中提到】 : bioinfo用你这个还是很有意义,太多太杂的工具,需要混合起来用。 : 其他人如果都自己写code,大部分人不会同时用几种语言。 : 你没有多做一点宣传?至少在hacker news上贴几次吧,github上star才17个, : marketing做的太不够了。 : : table
|
g****t 发帖数: 31659 | 74 我是生产环境用多语言编程。给客户,以及往外面卖的代码。
你底下这段话牵涉的东西太多。代码维护难度太高。就算你现在没有坑。
MSFT改改net库未来可能就废了。我不可能考虑的。
我踩了无数坑之后的经验:
如果真的是生产环境需要多语言编程的话。工具只能是自己造,而且还要尽
量用简单强壮的结构设计。我主要就是用剪贴板。不用别的各程序之间共享
或者传递数据的复杂技术。
table
【在 n****t 的大作中提到】 : SoS 多语言支持相关的文档在 https://vatlab.github.io/SoS/doc/documentation/ : Supported_Languages.html : 大概看了一下org mode,抛开emacs和web interface 哪个方便不谈,我觉得这个数据 : 转换还是蛮有局限性的,主要是数据转换是capture result,只能传一个没有名字的结 : 果,而且以emacs/org为中介,可能没法转复杂(嵌套)类型或者大量数据。SoS概念上 : 不是传结果,是一个语言中的任何变量都可以随时传到任何其它语言。就拿返回table : 的类型来说,SoS下R data.frame转到Python 成为DataFrame,转到Matlab成为table, : 转到Octave成为dataframe,转到SAS成为dataset,转到JavaScript是nested : dictionary,都是native datatype,大量数据的传递会用disk file (诸如feather), : 而且语言接口允许任何两个语言之间直接转数据,尽量不丢失信息。
|
g****t 发帖数: 31659 | 75 excel + 剪贴板, even better
【在 d******c 的大作中提到】 : 我只说一句 : 我不用emacs/vim,很多人也不用。
|
g****t 发帖数: 31659 | 76 不同强壮性要求的软件实际上是非常不一样的。
我觉得你可能要先弄清楚自己的潜在客户是什麽,对软件强壮性要求多高。
光是julia,pandas,R,SAS,excel。。。的dataframe格式
的互相转换,你要弄出来没bug的一个互相转换的工具,就已经足够牛X了。
关键是质量高,不一定要大而全的。
【在 n****t 的大作中提到】 : 怎么说呢,自家的孩子,再怎么喜欢,出门前还是要清理打扮一番,不要满身虫子。年 : 初好不容易出了个稳定版本,内部讲了一下,结果下面说我们干活要在cluster上运行 : 各种程序,你这个局限在本地机没啥意思。我想想也对,花了老大力气完善了远程执行 : 功能,年中在扩大化会议上又讲了一次。结果隔壁biostat的哥们说咱们干活就用R和 : SAS,你这玩意不支持SAS我们不买账。我只有哼呦哼呦的加上SAS和Matlab,让他们闭 : 嘴。然后一号称搞Data Science的说咱那疙瘩用Julia,你行行好加上 Julia?我听了 : 只想哭。 : 不管怎么说,现在SoS算是基本完整了,但没被版上大牛批一批总觉得不踏实。所以大 : 家有什么意见尽管提,我一定虚心接受。如果你喜欢ruby啥的,可以直接要求,但我个 : 人实在是精力有限,如果你能搞个PR就再好不过了。
|
n****t 发帖数: 53 | 77 这个意见我虚心接受,但我们搞bioinformatics的和你们不一样。各种工具层出不穷,
还天天升级,你用一个语言写得再好的workflow,过两天人家一升级就废了。被长期虐
待之下,我们习惯于写各种script,fix各种问题,而这个时候workflow的清晰性,可
重复性,易修改性就特别重要了。SoS的workflow基本原封不动的包括各种script,在
可维护性这个方面比起“正规”的workflow系统还是有优势的。
【在 g****t 的大作中提到】 : 我是生产环境用多语言编程。给客户,以及往外面卖的代码。 : 你底下这段话牵涉的东西太多。代码维护难度太高。就算你现在没有坑。 : MSFT改改net库未来可能就废了。我不可能考虑的。 : 我踩了无数坑之后的经验: : 如果真的是生产环境需要多语言编程的话。工具只能是自己造,而且还要尽 : 量用简单强壮的结构设计。我主要就是用剪贴板。不用别的各程序之间共享 : 或者传递数据的复杂技术。 : : table
|
n****t 发帖数: 53 | 78 在这个方面我和你的看法不完全一致。强壮性很重要,但只要不是crash啥的,功能上
数据转换的一些缺陷在交互使用时是可以容忍的。各种语言有各种奇葩的数据类型,没
法完美转换,所以SoS只能是尽量转换到相似的类型。再有些bug,诸如说数据传了一圈
,row label给丢了,bug report是要发,但使用上专门传一下row label也不是太麻烦
的事情,至少比起手工传数据要方便。从实用的角度上讲,大而全(在SOS中就是任何
变量到任何语言的转换)比高质量但有限的转换要有用。
简单的说SoS可以极大的简化multi-language workflow的使用和维护,现在的主要潜在
客户就是那些写了无穷多各种各样script的bioinformaticists。
【在 g****t 的大作中提到】 : 不同强壮性要求的软件实际上是非常不一样的。 : 我觉得你可能要先弄清楚自己的潜在客户是什麽,对软件强壮性要求多高。 : 光是julia,pandas,R,SAS,excel。。。的dataframe格式 : 的互相转换,你要弄出来没bug的一个互相转换的工具,就已经足够牛X了。 : 关键是质量高,不一定要大而全的。
|
g****t 发帖数: 31659 | 79 你的bioinformatics软件是产品还是研究用的?
产品卖多少量?客户什么要求?
这些东西我觉得是对软件的关键约束。
最终还是强壮度和可维护性决定了一个软件能走
多远,多久。
: 这个意见我虚心接受,但我们搞bioinformatics的和你们不一样。各种工具层出
不穷,
: 还天天升级,你用一个语言写得再好的workflow,过两天人家一升级就废了。被
长期虐
: 待之下,我们习惯于写各种script,fix各种问题,而这个时候workflow的清晰
性,可
: 重复性,易修改性就特别重要了。SoS的workflow基本原封不动的包括各种
script,在
: 可维护性这个方面比起“正规”的workflow系统还是有优势的。
【在 n****t 的大作中提到】 : 在这个方面我和你的看法不完全一致。强壮性很重要,但只要不是crash啥的,功能上 : 数据转换的一些缺陷在交互使用时是可以容忍的。各种语言有各种奇葩的数据类型,没 : 法完美转换,所以SoS只能是尽量转换到相似的类型。再有些bug,诸如说数据传了一圈 : ,row label给丢了,bug report是要发,但使用上专门传一下row label也不是太麻烦 : 的事情,至少比起手工传数据要方便。从实用的角度上讲,大而全(在SOS中就是任何 : 变量到任何语言的转换)比高质量但有限的转换要有用。 : 简单的说SoS可以极大的简化multi-language workflow的使用和维护,现在的主要潜在 : 客户就是那些写了无穷多各种各样script的bioinformaticists。
|
g****t 发帖数: 31659 | 80 Workflow难点之一是牵涉的软件乱更新。很多更新是无法预测的。
: 看了一下,做的挺好的,赞。
: workflow不好做,像我以前用的airflow,进了Apache,做的很复杂,但也差不
多要黄
: 了。
: 因为需求实在是太多样了,没法抽象。还不如每次自己写。
: 我觉得,能用jupyter notebook的人大部分对python还比较熟。
: 他们可能不愿意用julia, SAS或者Excel。jupyter notebook做完prototype后
,可以
: 往app的方向走,celery加django。所以这方面的需求应该不强。
: 你们不妨集中到R的画图方面,很多人还是愿意用ggplot的。
|
|
|
d******c 发帖数: 2407 | 81 我觉得没必要等成熟,先发出来收集点数据是有好处的,多些人给你测试。有了更多用
户可以跟上级表功,不要想着等到成熟,没有彻底成熟的时候。
另外这种系统必然得设计一个中间格式,将来扩展才容易一些。好比LLVM要搞个虚拟机
,pandoc要有个中间格式,都是一样。你多半也做了,不过长期考虑最好能让对新语言
或者新feature的支持尽量是声明性的,而不是靠过程程序(可能你已经这么做了,我
只是随便说说)。
从数据交换上,你要是定义好一些格式和接口,比如json,protocol buffer,将来争
取做到新的bioinfo工具会考虑对你这个的支持,那就轻松了。
【在 n****t 的大作中提到】 : 怎么说呢,自家的孩子,再怎么喜欢,出门前还是要清理打扮一番,不要满身虫子。年 : 初好不容易出了个稳定版本,内部讲了一下,结果下面说我们干活要在cluster上运行 : 各种程序,你这个局限在本地机没啥意思。我想想也对,花了老大力气完善了远程执行 : 功能,年中在扩大化会议上又讲了一次。结果隔壁biostat的哥们说咱们干活就用R和 : SAS,你这玩意不支持SAS我们不买账。我只有哼呦哼呦的加上SAS和Matlab,让他们闭 : 嘴。然后一号称搞Data Science的说咱那疙瘩用Julia,你行行好加上 Julia?我听了 : 只想哭。 : 不管怎么说,现在SoS算是基本完整了,但没被版上大牛批一批总觉得不踏实。所以大 : 家有什么意见尽管提,我一定虚心接受。如果你喜欢ruby啥的,可以直接要求,但我个 : 人实在是精力有限,如果你能搞个PR就再好不过了。
|
m*****n 发帖数: 3575 | 82 我有点看不懂你这个
你这个的意思是你的平台上可以任意的在不同的语言之间切换,只需声明用哪个语言? |
n****t 发帖数: 53 | 83 是的,不过虽然所有的Jupyter Kernel都能用,但变量交换现在仅限于Python, R,
Bash, SAS, Matlab, JavaScript等语言。https://vatlab.github.io/SoS/#
documentation上相关的部分有“SoS Jupyter kernel and interface” (界面),
“Supported languages”(多语言支持),和下面的一些例子。
【在 m*****n 的大作中提到】 : 我有点看不懂你这个 : 你这个的意思是你的平台上可以任意的在不同的语言之间切换,只需声明用哪个语言?
|
g****t 发帖数: 31659 | 84 变量交换你怎么实现的?
: 是的,不过虽然所有的Jupyter Kernel都能用,但变量交换现在仅限于Python,
R,
: Bash, SAS, Matlab, JavaScript等语言。https://vatlab.github.io/SoS/#
: documentation上相关的部分有“SoS Jupyter kernel and interface” (界面
),
: “Supported languages”(多语言支持),和下面的一些例子。
【在 n****t 的大作中提到】 : 是的,不过虽然所有的Jupyter Kernel都能用,但变量交换现在仅限于Python, R, : Bash, SAS, Matlab, JavaScript等语言。https://vatlab.github.io/SoS/# : documentation上相关的部分有“SoS Jupyter kernel and interface” (界面), : “Supported languages”(多语言支持),和下面的一些例子。
|
n****t 发帖数: 53 | 85 具体实现上并没有真正意义上的变量交换,是在另一个语言中建立了一个独立的同名的
相似类型的变量。诸如说R里有
A = c(1, 2)
B = 3
在Python 中
%get A B --from R
最后就是在Python中执行了
A = [1, 2]
B = 3
举两个变量的例子是想说明A和B在R中是一个类型,但转到Python中是两个不同的类型
。如果通过文件转数据(诸如json),那就是一方存文件,传文件名,另一方读文件。
,
【在 g****t 的大作中提到】 : 变量交换你怎么实现的? : : : 是的,不过虽然所有的Jupyter Kernel都能用,但变量交换现在仅限于Python, : R, : : Bash, SAS, Matlab, JavaScript等语言。https://vatlab.github.io/SoS/# : : documentation上相关的部分有“SoS Jupyter kernel and interface” (界面 : ), : : “Supported languages”(多语言支持),和下面的一些例子。 :
|
G****e 发帖数: 293 | |
m*****n 发帖数: 3575 | 87 你知道如何把Python脚本打包成Linux可以运行的程序么? |
n****t 发帖数: 53 | 88 这个问题确实很难,特别这么复杂的数据交换,要保证代码可靠性可维护性非常难。我
琢磨了很久,最后使用了一种和Beaker等不一样的没有中间层的点对点的函数(不是你
推荐的界面声明)设计。简单而言,在language module A里面,get从SoS传Python数
据到A,put函数直接知道自己要传的变量V的类型和传出的语言B,根据变量类型等信息
,可以选择直接在B中产生V,也可以在SoS(Python)中产生V。前者是A->B的直接传数据
,后者是A->SoS->B的间接传数据。因为没有中间层,数据交换变成了 很多A(V)->B/
SoS的分支。这样的好处是
1. 没有中间层,所以也不会因为中间层的问题造成全面的数据交换问题
2. 独立的点对点的数据交换,可以实现语言间特殊类型的交换,而不限于中间层的固
定几种数据类型
3. 即使某些语言某些类型出问题,不会影响到其它语言和类型,而单独的情况相对容
易分割处理
3. language module刚开始可以只实现A(V)->SoS,如果有特殊需要再实现某些A(V)->B
,而且可以选择只传少数几种常用类型,有需要了再支持更多的类型,降低了写
language module的门槛
我觉得这个设计还是比较可靠的,靠的不是完善可靠的中间层,而是把任务完全打散,
把出的问题局限在很小的范围以内。
【在 g****t 的大作中提到】 : 我是生产环境用多语言编程。给客户,以及往外面卖的代码。 : 你底下这段话牵涉的东西太多。代码维护难度太高。就算你现在没有坑。 : MSFT改改net库未来可能就废了。我不可能考虑的。 : 我踩了无数坑之后的经验: : 如果真的是生产环境需要多语言编程的话。工具只能是自己造,而且还要尽 : 量用简单强壮的结构设计。我主要就是用剪贴板。不用别的各程序之间共享 : 或者传递数据的复杂技术。 : : table
|
n****t 发帖数: 53 | 89 老来聊发少年狂,不顾自己浓重的口音,录了几个youtube video介绍SoS和SoS
Notebook。有兴趣的可以看看,给我添点点击量。呵呵。
https://vatlab.github.io/sos-docs/#documentation |
d*******r 发帖数: 3299 | 90 配音sexy,哈哈,支持一个
【在 n****t 的大作中提到】 : 老来聊发少年狂,不顾自己浓重的口音,录了几个youtube video介绍SoS和SoS : Notebook。有兴趣的可以看看,给我添点点击量。呵呵。 : https://vatlab.github.io/sos-docs/#documentation
|
|
|
w***g 发帖数: 5958 | 91 这东西很不错! 资瓷下.
【在 n****t 的大作中提到】 : 老来聊发少年狂,不顾自己浓重的口音,录了几个youtube video介绍SoS和SoS : Notebook。有兴趣的可以看看,给我添点点击量。呵呵。 : https://vatlab.github.io/sos-docs/#documentation
|
n****t 发帖数: 53 | 92 平常交流做报告都没问题,也从来没有人抱怨我的口音说听不懂啥的,但录下来然后自
己听觉得简直没法入耳,语气,语调,语法,发音一堆的问题。当然学生们纷纷表示您
老说的好,没问题,发上去吧。:-)
【在 d*******r 的大作中提到】 : 配音sexy,哈哈,支持一个
|
w***g 发帖数: 5958 | 93 专门找耳机听了一下. 说的很溜, 声音也不错. 没有问题.
你说的那些问题都不是问题.
【在 n****t 的大作中提到】 : 平常交流做报告都没问题,也从来没有人抱怨我的口音说听不懂啥的,但录下来然后自 : 己听觉得简直没法入耳,语气,语调,语法,发音一堆的问题。当然学生们纷纷表示您 : 老说的好,没问题,发上去吧。:-)
|
n****t 发帖数: 53 | 94 多谢表扬,那就是自己要求高,或者听自己的声音总觉得奇怪。
【在 w***g 的大作中提到】 : 专门找耳机听了一下. 说的很溜, 声音也不错. 没有问题. : 你说的那些问题都不是问题.
|
g****t 发帖数: 31659 | 95 赞行动派!
丁肇中当年说过:做理论物理的一不小心可能价值为0。
实验物理就不一样,失败了多多少少都有价值。
百闻不如一做!楼主加油!
: 多谢表扬,那就是自己要求高,或者听自己的声音总觉得奇怪。
【在 n****t 的大作中提到】 : 多谢表扬,那就是自己要求高,或者听自己的声音总觉得奇怪。
|
p**h 发帖数: 124 | 96 哥们不知道你做啥的,但你最不向做Bioinfo的。Bioinfomatics, Biostat, 重点是Bio
。乱七八遭的各种工具能用啥用啥,出结果就行了,script起来不难,scripting也不
是一个课题。 PI们不在乎工具多漂亮。你的编程水平远远超过需要了,建议多刷刷题
转行吧。 |
n****t 发帖数: 53 | 97 这哥们说话好扎心啊。我学数值计算的,没有一点生物背景,在休斯顿因为紧靠医疗中
心,跟风转了生统,但一直以来的兴趣都是计算机。现在也算faculty,有funding,有
学生,但就像你说的,在Bioinformatics系里不做生物,没有前途,也没有钱途,挣得
还没有系里的programmer多。
我的编程水平有多高还真不好说。这么多年,需要啥学啥,从早期的C++, perl啥的到
现在主要用Python,R,加上杂七杂八的mpi, js, bootstrap, docker啥都会,勉强也
算full stack。靠着努力和耐心,做过的几个程序都很大,在相关领域也算名列前茅。
说起编程语言,C++和Python能拿得出手,但因为没有科班训练过,讲讲写过的软件的
设计和实现还行,你要问我啥叫 closure我就直接歇菜了。各种系统都用的转,但你让
我谈谈系统设计啥的也基本没戏。现在一把年纪,再学数据结构刷题,好像也力不从心
,而且就算转行,拿什么和一帮科班小年轻去竞争啊?要不板上大牛们给我分析分析,
哪种公司需要我这种人,值不值得刷题转行?
至于scripting是不是课题,我需要经常处理各种生物数据,用各种工具,PI当然只看
结果,但干活的人还是需要有好工具的。Script不难,但当你有几十个project,各种
版本的各种script,别说给别人看,就是有时候自己需要回头看看自己以前的project
,也难搞清楚咋回事。况且生物计算数据量大,需要在各种系统下跑程序,一个好用的
workflow system也很重要。这个SoS就是在这个背景下搞出来的,我个人觉得还是蛮好
用的,应该也是有意义的。
Bio
【在 p**h 的大作中提到】 : 哥们不知道你做啥的,但你最不向做Bioinfo的。Bioinfomatics, Biostat, 重点是Bio : 。乱七八遭的各种工具能用啥用啥,出结果就行了,script起来不难,scripting也不 : 是一个课题。 PI们不在乎工具多漂亮。你的编程水平远远超过需要了,建议多刷刷题 : 转行吧。
|
w***g 发帖数: 5958 | 98 你还学啥数据结构系统设计. 这都是学生干的事情.
赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧.
【在 n****t 的大作中提到】 : 这哥们说话好扎心啊。我学数值计算的,没有一点生物背景,在休斯顿因为紧靠医疗中 : 心,跟风转了生统,但一直以来的兴趣都是计算机。现在也算faculty,有funding,有 : 学生,但就像你说的,在Bioinformatics系里不做生物,没有前途,也没有钱途,挣得 : 还没有系里的programmer多。 : 我的编程水平有多高还真不好说。这么多年,需要啥学啥,从早期的C++, perl啥的到 : 现在主要用Python,R,加上杂七杂八的mpi, js, bootstrap, docker啥都会,勉强也 : 算full stack。靠着努力和耐心,做过的几个程序都很大,在相关领域也算名列前茅。 : 说起编程语言,C++和Python能拿得出手,但因为没有科班训练过,讲讲写过的软件的 : 设计和实现还行,你要问我啥叫 closure我就直接歇菜了。各种系统都用的转,但你让 : 我谈谈系统设计啥的也基本没戏。现在一把年纪,再学数据结构刷题,好像也力不从心
|
g****t 发帖数: 31659 | 99 转医学数值计算吧。
生物统计太多老中了,很难搞。
那么多人喜欢让孩子读医学,
临到自己,其实也有机会转的。找个医生合作。
不过本科生level的课,也不是不可以学。
其实没有想象中那么花时间。
20年前我一个月可以学一门。
现在两礼拜差不多了。
【在 w***g 的大作中提到】 : 你还学啥数据结构系统设计. 这都是学生干的事情. : 赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧.
|
n****t 发帖数: 53 | 100 Faculty有两种,咱是那种苦命的,从来不敢去faculty版混的那种。
【在 w***g 的大作中提到】 : 你还学啥数据结构系统设计. 这都是学生干的事情. : 赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧.
|
|
|
O*O 发帖数: 2284 | 101 严重同意
像wdong大牛学习
开公司
刷题的以后都得给你打工
:你还学啥数据结构系统设计. 这都是学生干的事情.
:赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧. |
n******g 发帖数: 2201 | 102 你多给点建议 吧 挣钱才是王道 说那么多知识
你也真是书呆:) 褒义
[在 guvest (我爱你老婆Anna) 的大作中提到:]
:转医学数值计算吧。
:生物统计太多老中了,很难搞。
:那么多人喜欢让孩子读医学,
:临到自己,其实也有机会转的。找个医生合作。
:不过本科生level的课,也不是不可以学。
:其实没有想象中那么花时间。
:现在两礼拜差不多了。 |
w***g 发帖数: 5958 | 103 还是刷题去FLG吧, 工资那么高我都想去.
我也是四处打零工, 他们交的税比我赚的都多.
【在 O*O 的大作中提到】 : 严重同意 : 像wdong大牛学习 : 开公司 : 刷题的以后都得给你打工 : : :你还学啥数据结构系统设计. 这都是学生干的事情. : :赶紧糙快猛出系统tenure了再回来鄙视我们这些打工的吧.
|
d******c 发帖数: 2407 | 104 找活,做contractor比较现实。关键是找到客户
【在 n****t 的大作中提到】 : 这哥们说话好扎心啊。我学数值计算的,没有一点生物背景,在休斯顿因为紧靠医疗中 : 心,跟风转了生统,但一直以来的兴趣都是计算机。现在也算faculty,有funding,有 : 学生,但就像你说的,在Bioinformatics系里不做生物,没有前途,也没有钱途,挣得 : 还没有系里的programmer多。 : 我的编程水平有多高还真不好说。这么多年,需要啥学啥,从早期的C++, perl啥的到 : 现在主要用Python,R,加上杂七杂八的mpi, js, bootstrap, docker啥都会,勉强也 : 算full stack。靠着努力和耐心,做过的几个程序都很大,在相关领域也算名列前茅。 : 说起编程语言,C++和Python能拿得出手,但因为没有科班训练过,讲讲写过的软件的 : 设计和实现还行,你要问我啥叫 closure我就直接歇菜了。各种系统都用的转,但你让 : 我谈谈系统设计啥的也基本没戏。现在一把年纪,再学数据结构刷题,好像也力不从心
|
n****t 发帖数: 53 | 105 这种freelancer 要拿到稳定的中高收入很难吧?我现在的工作虽然工资偏低,但非常
灵活,除了帮人分析一下数据,有点发文章的压力,剩下时间完全自己想干啥干啥,全
呆家里也行。SoS与其说是项目需要,不如说是兴趣使然。当然我这一辈子也就亏在“
随性”上,没有多花时间考虑怎么跳槽,升职,挣钱。
【在 d******c 的大作中提到】 : 找活,做contractor比较现实。关键是找到客户
|
n***p 发帖数: 110 | 106 你这种随性心态很好啊。想干啥干啥几乎半退休状态。
现在忙着挣钱的,到最后不就图个你现在这种自由自在的生活。
【在 n****t 的大作中提到】 : 这种freelancer 要拿到稳定的中高收入很难吧?我现在的工作虽然工资偏低,但非常 : 灵活,除了帮人分析一下数据,有点发文章的压力,剩下时间完全自己想干啥干啥,全 : 呆家里也行。SoS与其说是项目需要,不如说是兴趣使然。当然我这一辈子也就亏在“ : 随性”上,没有多花时间考虑怎么跳槽,升职,挣钱。
|
n****t 发帖数: 53 | 107 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋,没法
比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是辛苦二
字,还大部分是为了老婆孩子辛苦。
算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow engine的两
个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news啥的。
【在 n***p 的大作中提到】 : 你这种随性心态很好啊。想干啥干啥几乎半退休状态。 : 现在忙着挣钱的,到最后不就图个你现在这种自由自在的生活。
|
g****t 发帖数: 31659 | 108 弄懂自己部门的现金流如何产生,如何维持的
: 你多给点建议 吧 挣钱才是王道 说那么多知识
: 你也真是书呆:) 褒义
: [在 guvest (我爱你老婆Anna) 的大作中提到:]
: :转医学数值计算吧。
: :生物统计太多老中了,很难搞。
: :那么多人喜欢让孩子读医学,
: :临到自己,其实也有机会转的。找个医生合作。
: :不过本科生level的课,也不是不可以学。
: :其实没有想象中那么花时间。
: :现在两礼拜差不多了。
【在 n******g 的大作中提到】 : 你多给点建议 吧 挣钱才是王道 说那么多知识 : 你也真是书呆:) 褒义 : [在 guvest (我爱你老婆Anna) 的大作中提到:] : :转医学数值计算吧。 : :生物统计太多老中了,很难搞。 : :那么多人喜欢让孩子读医学, : :临到自己,其实也有机会转的。找个医生合作。 : :不过本科生level的课,也不是不可以学。 : :其实没有想象中那么花时间。 : :现在两礼拜差不多了。
|
d******c 发帖数: 2407 | 109 不是作为全职,而是业余时间。你有时间,能不去坐班,已经完全可以了。
如果发展的好,再考虑弄个公司省点税。一开始尝试直接接活就是了。
这个全看经验,最重要的是对方的需求是你做过的,经验越多越可以多收钱。
【在 n****t 的大作中提到】 : 这种freelancer 要拿到稳定的中高收入很难吧?我现在的工作虽然工资偏低,但非常 : 灵活,除了帮人分析一下数据,有点发文章的压力,剩下时间完全自己想干啥干啥,全 : 呆家里也行。SoS与其说是项目需要,不如说是兴趣使然。当然我这一辈子也就亏在“ : 随性”上,没有多花时间考虑怎么跳槽,升职,挣钱。
|
d******c 发帖数: 2407 | 110 你想想,你这个主要面对的是bioinfo的人,那些人能完成任务就行,谁会来
programming版。
常来的人大部分又不搞bioinfo,一般总是用一种语言,或者挑自己喜欢的语言,不会
要同时用这么多的。
【在 n****t 的大作中提到】 : 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋,没法 : 比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是辛苦二 : 字,还大部分是为了老婆孩子辛苦。 : 算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow engine的两 : 个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news啥的。
|
|
|
w**********1 发帖数: 130 | |
g****t 发帖数: 31659 | 112 你要挣钱那就专心promotion啊
: 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋
,没法
: 比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是
辛苦二
: 字,还大部分是为了老婆孩子辛苦。
: 算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow
engine的两
: 个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news
啥的。
【在 n****t 的大作中提到】 : 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋,没法 : 比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是辛苦二 : 字,还大部分是为了老婆孩子辛苦。 : 算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow engine的两 : 个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news啥的。
|
d*******r 发帖数: 3299 | 113 最近话痨ID都不出现了,所以冷清了点
【在 n****t 的大作中提到】 : 但人家退休时有豪宅游艇飞机,咱连娃的学费都付不出,真退休时就剩一小黑屋,没法 : 比呀。所以现在不是琢磨着乘着没有真老了再挣点钱吗?哎,这人生一趟,就是辛苦二 : 字,还大部分是为了老婆孩子辛苦。 : 算了,这楼歪得厉害,还是回到编程吧。这帖子挂了两天,哪个workflow engine的两 : 个view还都是自己的。看来这个版太冷清,这周末看看能不能写个hacker news啥的。
|
p**h 发帖数: 124 | 114 哥们,咱们背景差不多,区别是你比我动手能力强好多,也混到faculty了。实在点说
,小于二十万对你来说太屈才。
: 最近话痨ID都不出现了,所以冷清了点
【在 d*******r 的大作中提到】 : 最近话痨ID都不出现了,所以冷清了点
|
n****t 发帖数: 53 | 115 接受建议,搞了个 blog,写了个帖子,贴到reddit和hacker news上去了。
reddit 还好点,帖子在 https://www.reddit.com/user/bpeng2000/comments/7hjmq0/
sos_notebook_one_notebook_multiple_languages/ 但还需要过moderator那一关。
hackernews 发上去一会儿就到了20多名,而且我退出登陆后帖子就不见了,不知怎么
回事,过一会再看看会不会出来。
不管怎么说,总算走出marketing的第一步了,大家有啥建议尽管提。
【在 d******c 的大作中提到】 : bioinfo用你这个还是很有意义,太多太杂的工具,需要混合起来用。 : 其他人如果都自己写code,大部分人不会同时用几种语言。 : 你没有多做一点宣传?至少在hacker news上贴几次吧,github上star才17个, : marketing做的太不够了。 : : table
|
d******c 发帖数: 2407 | 116 在hackersnews没搜到,是不是被删了,不知道他们是不是有什么规矩
还有可以在twitter上加上几个相关的tag发一下。
别的不说,至少应该在bioinfo的领域扩大影响吧
7hjmq0/
【在 n****t 的大作中提到】 : 接受建议,搞了个 blog,写了个帖子,贴到reddit和hacker news上去了。 : reddit 还好点,帖子在 https://www.reddit.com/user/bpeng2000/comments/7hjmq0/ : sos_notebook_one_notebook_multiple_languages/ 但还需要过moderator那一关。 : hackernews 发上去一会儿就到了20多名,而且我退出登陆后帖子就不见了,不知怎么 : 回事,过一会再看看会不会出来。 : 不管怎么说,总算走出marketing的第一步了,大家有啥建议尽管提。
|
n****t 发帖数: 53 | 117 我也不知道怎么回事,如果帖子是删掉了好歹给个删掉的状态吗,但现在登陆后帖子在
自己的profile里面能看到,搜索不到但在newest下面可以找到,然后退出后就怎么都
找不到了。如果你有账号,或者你可以帮着post一个,然后我再upvote一下?
redit 下也很惨,几个版的moderator都没动静 (bioinformatics, Jupyter,
JupyterNotebook),大概是直接给删了?
总之是我这人太老套,tweeter, facebook, hackernews, redit一个账号都没有,现
在临时注册账户没有一点积分,活该没人理。
【在 d******c 的大作中提到】 : 在hackersnews没搜到,是不是被删了,不知道他们是不是有什么规矩 : 还有可以在twitter上加上几个相关的tag发一下。 : 别的不说,至少应该在bioinfo的领域扩大影响吧 : : 7hjmq0/
|
n****t 发帖数: 53 | 118 然后看到有人说hackernews发消息要有吸引人或者有争议的标题,我的标题大概太平淡
了,应该来一个"SoS Notebook - What Jupyter should have been". |
l******n 发帖数: 9344 | 119 这个名字不讨喜呀,很多人本来就不喜欢script,你还来script of script。
先搞个高大上的名字,我查了一下古希腊神话有Gordius knot,精髓就是用简单的方法
处理复杂的问题,叫Knot怎么样?
【在 n****t 的大作中提到】 : 然后看到有人说hackernews发消息要有吸引人或者有争议的标题,我的标题大概太平淡 : 了,应该来一个"SoS Notebook - What Jupyter should have been".
|
n****t 发帖数: 53 | 120 SoS 是 Script of Scripts,隐含multi-language的意思,具体有multi-language
Notebook (SoS Notebook)和multi-language workflow engine (SoS)。这名字和SOS冲
突,google起来肯定吃亏,但长在比较容易记住。而且现在用了这么久,也有些感情了
,特别是最常用的 sos run命令,换成knot run啥的真没感觉,还是算了吧。
【在 l******n 的大作中提到】 : 这个名字不讨喜呀,很多人本来就不喜欢script,你还来script of script。 : 先搞个高大上的名字,我查了一下古希腊神话有Gordius knot,精髓就是用简单的方法 : 处理复杂的问题,叫Knot怎么样?
|
|
|
b****b 发帖数: 656 | |
w***g 发帖数: 5958 | 122 我晚上回去帮你在微信群里宣传宣传。这年头做软件不容易。
【在 n****t 的大作中提到】 : 我也不知道怎么回事,如果帖子是删掉了好歹给个删掉的状态吗,但现在登陆后帖子在 : 自己的profile里面能看到,搜索不到但在newest下面可以找到,然后退出后就怎么都 : 找不到了。如果你有账号,或者你可以帮着post一个,然后我再upvote一下? : redit 下也很惨,几个版的moderator都没动静 (bioinformatics, Jupyter, : JupyterNotebook),大概是直接给删了? : 总之是我这人太老套,tweeter, facebook, hackernews, redit一个账号都没有,现 : 在临时注册账户没有一点积分,活该没人理。
|
n****t 发帖数: 53 | 123 多谢了!不过要祝贺一下我的 hackernews (https://news.ycombinator.com/item?id
=15852821)上了首页,现在31,最高到过24名。这其中编辑帮了我大忙,我写信抱怨
说帖子看不到,回复说因为是新用户,给spamfilter给删了,然后他upvote我,加了个
HN Show的关键词,然后就上首页了。Google analytics最高同时20人在线,不过现在
已经降到4了。
reddit的moderator也回信了,帖子刚刚出现
https://www.reddit.com/r/bioinformatics/
https://www.reddit.com/r/JupyterNotebooks/
【在 w***g 的大作中提到】 : 我晚上回去帮你在微信群里宣传宣传。这年头做软件不容易。
|
d******c 发帖数: 2407 | 124 恭喜,marketing不容易,但还是有必要的。
id
【在 n****t 的大作中提到】 : 多谢了!不过要祝贺一下我的 hackernews (https://news.ycombinator.com/item?id : =15852821)上了首页,现在31,最高到过24名。这其中编辑帮了我大忙,我写信抱怨 : 说帖子看不到,回复说因为是新用户,给spamfilter给删了,然后他upvote我,加了个 : HN Show的关键词,然后就上首页了。Google analytics最高同时20人在线,不过现在 : 已经降到4了。 : reddit的moderator也回信了,帖子刚刚出现 : https://www.reddit.com/r/bioinformatics/ : https://www.reddit.com/r/JupyterNotebooks/
|
n****t 发帖数: 53 | 125 接受建议,搞了个 blog,写了个帖子,贴到reddit和hacker news上去了。
reddit 还好点,帖子在 https://www.reddit.com/user/bpeng2000/comments/7hjmq0/
sos_notebook_one_notebook_multiple_languages/ 但还需要过moderator那一关。
hackernews 发上去一会儿就到了20多名,而且我退出登陆后帖子就不见了,不知怎么
回事,过一会再看看会不会出来。
不管怎么说,总算走出marketing的第一步了,大家有啥建议尽管提。
【在 d******c 的大作中提到】 : bioinfo用你这个还是很有意义,太多太杂的工具,需要混合起来用。 : 其他人如果都自己写code,大部分人不会同时用几种语言。 : 你没有多做一点宣传?至少在hacker news上贴几次吧,github上star才17个, : marketing做的太不够了。 : : table
|
d******c 发帖数: 2407 | 126 在hackersnews没搜到,是不是被删了,不知道他们是不是有什么规矩
还有可以在twitter上加上几个相关的tag发一下。
别的不说,至少应该在bioinfo的领域扩大影响吧
7hjmq0/
【在 n****t 的大作中提到】 : 接受建议,搞了个 blog,写了个帖子,贴到reddit和hacker news上去了。 : reddit 还好点,帖子在 https://www.reddit.com/user/bpeng2000/comments/7hjmq0/ : sos_notebook_one_notebook_multiple_languages/ 但还需要过moderator那一关。 : hackernews 发上去一会儿就到了20多名,而且我退出登陆后帖子就不见了,不知怎么 : 回事,过一会再看看会不会出来。 : 不管怎么说,总算走出marketing的第一步了,大家有啥建议尽管提。
|
n****t 发帖数: 53 | 127 我也不知道怎么回事,如果帖子是删掉了好歹给个删掉的状态吗,但现在登陆后帖子在
自己的profile里面能看到,搜索不到但在newest下面可以找到,然后退出后就怎么都
找不到了。如果你有账号,或者你可以帮着post一个,然后我再upvote一下?
redit 下也很惨,几个版的moderator都没动静 (bioinformatics, Jupyter,
JupyterNotebook),大概是直接给删了?
总之是我这人太老套,tweeter, facebook, hackernews, redit一个账号都没有,现
在临时注册账户没有一点积分,活该没人理。
【在 d******c 的大作中提到】 : 在hackersnews没搜到,是不是被删了,不知道他们是不是有什么规矩 : 还有可以在twitter上加上几个相关的tag发一下。 : 别的不说,至少应该在bioinfo的领域扩大影响吧 : : 7hjmq0/
|
n****t 发帖数: 53 | 128 然后看到有人说hackernews发消息要有吸引人或者有争议的标题,我的标题大概太平淡
了,应该来一个"SoS Notebook - What Jupyter should have been". |
l******n 发帖数: 9344 | 129 这个名字不讨喜呀,很多人本来就不喜欢script,你还来script of script。
先搞个高大上的名字,我查了一下古希腊神话有Gordius knot,精髓就是用简单的方法
处理复杂的问题,叫Knot怎么样?
【在 n****t 的大作中提到】 : 然后看到有人说hackernews发消息要有吸引人或者有争议的标题,我的标题大概太平淡 : 了,应该来一个"SoS Notebook - What Jupyter should have been".
|
n****t 发帖数: 53 | 130 SoS 是 Script of Scripts,隐含multi-language的意思,具体有multi-language
Notebook (SoS Notebook)和multi-language workflow engine (SoS)。这名字和SOS冲
突,google起来肯定吃亏,但长在比较容易记住。而且现在用了这么久,也有些感情了
,特别是最常用的 sos run命令,换成knot run啥的真没感觉,还是算了吧。
【在 l******n 的大作中提到】 : 这个名字不讨喜呀,很多人本来就不喜欢script,你还来script of script。 : 先搞个高大上的名字,我查了一下古希腊神话有Gordius knot,精髓就是用简单的方法 : 处理复杂的问题,叫Knot怎么样?
|
|
|
b****b 发帖数: 656 | |
w***g 发帖数: 5958 | 132 我晚上回去帮你在微信群里宣传宣传。这年头做软件不容易。
【在 n****t 的大作中提到】 : 我也不知道怎么回事,如果帖子是删掉了好歹给个删掉的状态吗,但现在登陆后帖子在 : 自己的profile里面能看到,搜索不到但在newest下面可以找到,然后退出后就怎么都 : 找不到了。如果你有账号,或者你可以帮着post一个,然后我再upvote一下? : redit 下也很惨,几个版的moderator都没动静 (bioinformatics, Jupyter, : JupyterNotebook),大概是直接给删了? : 总之是我这人太老套,tweeter, facebook, hackernews, redit一个账号都没有,现 : 在临时注册账户没有一点积分,活该没人理。
|
n****t 发帖数: 53 | 133 多谢了!不过要祝贺一下我的 hackernews (https://news.ycombinator.com/item?id
=15852821)上了首页,现在31,最高到过24名。这其中编辑帮了我大忙,我写信抱怨
说帖子看不到,回复说因为是新用户,给spamfilter给删了,然后他upvote我,加了个
HN Show的关键词,然后就上首页了。Google analytics最高同时20人在线,不过现在
已经降到4了。
reddit的moderator也回信了,帖子刚刚出现
https://www.reddit.com/r/bioinformatics/
https://www.reddit.com/r/JupyterNotebooks/
【在 w***g 的大作中提到】 : 我晚上回去帮你在微信群里宣传宣传。这年头做软件不容易。
|
d******c 发帖数: 2407 | 134 恭喜,marketing不容易,但还是有必要的。
id
【在 n****t 的大作中提到】 : 多谢了!不过要祝贺一下我的 hackernews (https://news.ycombinator.com/item?id : =15852821)上了首页,现在31,最高到过24名。这其中编辑帮了我大忙,我写信抱怨 : 说帖子看不到,回复说因为是新用户,给spamfilter给删了,然后他upvote我,加了个 : HN Show的关键词,然后就上首页了。Google analytics最高同时20人在线,不过现在 : 已经降到4了。 : reddit的moderator也回信了,帖子刚刚出现 : https://www.reddit.com/r/bioinformatics/ : https://www.reddit.com/r/JupyterNotebooks/
|
n****t 发帖数: 53 | 135 要去JupyterCon给个talk了,有去JupyterCon的可以捧个场碰个面啥的。
https://conferences.oreilly.com/jupyter/jup-ny/schedule/2018-08-23
【在 d******c 的大作中提到】 : 恭喜,marketing不容易,但还是有必要的。 : : id
|
m*****n 发帖数: 3575 | |
n******7 发帖数: 12463 | 137 赞一个
看来还是杀老鼠的同行
不过你得考虑你这东西的受众群体
bioinfo本来就是小众,里面又分三类
最低级的跑pipeline的工作用python 调用不同工具就够了,这类工作估计有一半吧。
做data analysis的最可能对你这个感兴趣
不过我个人倾向用文件交互,井水不犯河水,不然系统复杂度上去,有了问题不好
debug
做application的估计对你这个兴趣不大,光deployment, maintenance 都麻烦死了。
某个语言缺啥宁可自己实现。
所以我感觉你得target到DS那帮人才行 |
n****t 发帖数: 53 | 138 对,这玩意就是给data analysis用的,不过对第一类人也有用。因为notebook的最大
好处就是可读性,跑pipeline的可以拿到别人的notebook,修修改改然后直接执行。
【在 n******7 的大作中提到】 : 赞一个 : 看来还是杀老鼠的同行 : 不过你得考虑你这东西的受众群体 : bioinfo本来就是小众,里面又分三类 : 最低级的跑pipeline的工作用python 调用不同工具就够了,这类工作估计有一半吧。 : 做data analysis的最可能对你这个感兴趣 : 不过我个人倾向用文件交互,井水不犯河水,不然系统复杂度上去,有了问题不好 : debug : 做application的估计对你这个兴趣不大,光deployment, maintenance 都麻烦死了。 : 某个语言缺啥宁可自己实现。
|
h***n 发帖数: 1275 | 139 notebook除了demo到底有啥用处?
【在 n****t 的大作中提到】 : 对,这玩意就是给data analysis用的,不过对第一类人也有用。因为notebook的最大 : 好处就是可读性,跑pipeline的可以拿到别人的notebook,修修改改然后直接执行。
|
n****t 发帖数: 53 | 140 SoS 的notebook 可以嵌入workflow,可以读取命令行参数直接执行。
sos run mynotebook.ipynb -h
sos run mynotebook.ipynb process-data --filename whatever
在测试阶段 workflow也可以在notebook 中运行,
%run process-data --filename whatever
在更早的写程序调试阶段 sos notebook 可以运行各种kernel,用notebook -> run
all 执行整个notebook 其实也可以当作一种workflow。
SoS 的好处是这几个阶段是无缝连接的,一般情况下用 sos notebook就可以了,需要
远程执行之类的再用workflow.
【在 h***n 的大作中提到】 : notebook除了demo到底有啥用处?
|
|
|
x****u 发帖数: 44466 | 141 打草稿啊
【在 h***n 的大作中提到】 : notebook除了demo到底有啥用处?
|
n****t 发帖数: 53 | 142 打草稿是第一步(notebook),SoS 让你很容易的把写好的程序在notebook中(远程)
执行,或者写成workflow,批量执行。传统的方式的问题是打草稿(notebook)和批量
执行(workflow)分开,太麻烦,而且reproducibility太差。
【在 x****u 的大作中提到】 : 打草稿啊
|
e*******o 发帖数: 4654 | 143 workflow engine 你用的啥?
好像有个基于scons 的用了处理python notebook
【在 n****t 的大作中提到】 : SoS 的notebook 可以嵌入workflow,可以读取命令行参数直接执行。 : sos run mynotebook.ipynb -h : sos run mynotebook.ipynb process-data --filename whatever : 在测试阶段 workflow也可以在notebook 中运行, : %run process-data --filename whatever : 在更早的写程序调试阶段 sos notebook 可以运行各种kernel,用notebook -> run : all 执行整个notebook 其实也可以当作一种workflow。 : SoS 的好处是这几个阶段是无缝连接的,一般情况下用 sos notebook就可以了,需要 : 远程执行之类的再用workflow.
|
H**r 发帖数: 10015 | 144 其实不仅我不用,我认识的程序员几乎没人用,哈哈哈。
【在 d******c 的大作中提到】 : 我只说一句 : 我不用emacs/vim,很多人也不用。
|
H**r 发帖数: 10015 | 145 其实不仅我不用,我认识的程序员几乎没人用,哈哈哈。
【在 d******c 的大作中提到】 : 我只说一句 : 我不用emacs/vim,很多人也不用。
|
n****t 发帖数: 53 | 146 SoS Workflow Engine, 和 SoS Notebook配套,这是SoS 的核心设计,下面这个帖子介
绍了这么做的原因:
https://vatlab.github.io/blog/post/power-of-sos-plus-sos-notebook/
【在 e*******o 的大作中提到】 : workflow engine 你用的啥? : 好像有个基于scons 的用了处理python notebook
|
e*******o 发帖数: 4654 | 147 确实是这样,workflow engine 试过很多没发现一个好用的。
另外,lz 确实是我们杀老鼠的榜样。
【在 n****t 的大作中提到】 : SoS Workflow Engine, 和 SoS Notebook配套,这是SoS 的核心设计,下面这个帖子介 : 绍了这么做的原因: : https://vatlab.github.io/blog/post/power-of-sos-plus-sos-notebook/
|
b****b 发帖数: 656 | 148 同感,试过n个workflow engine,没一个可以简单用起来的,所以开发了SoS。SoS从设
计上就是用在平时的数据分析上,力求简单易用,但也可以很强大。SoS Notebook的文
章已经发了(bioinformatic),SoS Workflow System的还在审稿。等发表了我贴出来。
另外我是搞数学的,被老板忽悠着搞了生统,因为生物太差(没杀过老鼠),只好做生
物信息,但还是因为生物太差做不好,哎。
【在 e*******o 的大作中提到】 : 确实是这样,workflow engine 试过很多没发现一个好用的。 : 另外,lz 确实是我们杀老鼠的榜样。
|
w***g 发帖数: 5958 | 149 顺便炼成马工绝杀,不错!
【在 b****b 的大作中提到】 : 同感,试过n个workflow engine,没一个可以简单用起来的,所以开发了SoS。SoS从设 : 计上就是用在平时的数据分析上,力求简单易用,但也可以很强大。SoS Notebook的文 : 章已经发了(bioinformatic),SoS Workflow System的还在审稿。等发表了我贴出来。 : 另外我是搞数学的,被老板忽悠着搞了生统,因为生物太差(没杀过老鼠),只好做生 : 物信息,但还是因为生物太差做不好,哎。
|
s*******9 发帖数: 1 | 150 另外rstudio的rmarkdown里也可以有python chunk,可能有点类似你这个的意思,将来
也许也会这么发展。
rmarkdown比jupyter nobtebook有很多优势,最主要的是能进version control。用惯
了rstudio,去用jupyter觉得各种土。 |
|
|
n****t 发帖数: 53 | 151 rstudio的多语言支持现在还很差,但对rstudio的用户来说可能也够了。Jupyter
classic确实比较“土“,JupyterLab好多了,底层设计的好,现在就有很多extension
,1.0出来后会更多。当然在RStudio作为IDE很强,要把SoS 和RStudio比的话SoS
独特的地方是workflow engine 这一块。
version control是notebook的老问题,好像大家的做法是先清除输出然后在version
control https://github.com/kynan/nbstripout/blob/master/README.rst
【在 s*******9 的大作中提到】 : 另外rstudio的rmarkdown里也可以有python chunk,可能有点类似你这个的意思,将来 : 也许也会这么发展。 : rmarkdown比jupyter nobtebook有很多优势,最主要的是能进version control。用惯 : 了rstudio,去用jupyter觉得各种土。
|
c******y 发帖数: 29 | 152 不知道Graalvm是不是和你想做的有关:
https://medium.com/graalvm/graalvm-ten-things-12d9111f307d
【在 n****t 的大作中提到】 : 三天前发的帖子,不过想到工作生活要分开,就注册了个小号来重发这个帖子,具体本 : 号是啥大家就不要追究了。 : 好久没上mitbbs,看到还有一堆人在吵Python和R的问题。以前我也说过,我喜欢 : Python,但搞bioinformatics不用R基本不可能,所以经常被R搞一搞。大部分人可能就 : 认了,认真学习R,认真填坑,老夫是行动派,就搞了这个 http://vatlab.github.io/sos/ 。 : 这个 SoS是啥呢,名字叫做Script of Scripts ,就是包含其它语言的语言。具体 : 来说你可以用Python收集数据,搞个Pandas DataFrame,然后用%put, %get啥把数据 : 转到R(或者SAS,或者Matlab等等)去分析,画图,分析完了如果需要用别的语言干啥 : 事,再接着转就行了,所有的东西都在一个Notebook里,比搞一堆scripts方便。就是 : 说你喜欢Python就用Python,喜欢R就用R,喜欢一起用就一起用,再也不用抱怨了。
|
n****t 发帖数: 53 | 153 O'Reilly 刚把今年JupyterCon的所有talk放youtube了,https://www.youtube.com/
playlist?list=PL055Epbe6d5b572IRmYAHkUgcq3y6K3Ae , 我的talk在 34, 想了解
SoS 或者看看我的真容的可以去看看。第一代移民,大家对英语不要太挑剔...
https://youtu.be/U75eKosFbp8 |
n****u 发帖数: 229 | |
w********m 发帖数: 1137 | 155 现在jupyter和numpy就是python的两条腿 |
a******4 发帖数: 1 | |
a******4 发帖数: 1 | |
a******4 发帖数: 1 | |
t*******r 发帖数: 364 | |