Snapman设计中的思考
Snapman主页:http://www.snapman.xyz
原文链接地址:http://www.snapman.xyz/newsitem/277785310
feiren工作室主要研究人类意识原理、智能提高以及减少团队合作中资源、意识损耗的方法和工具。意识研究表明:
1、人的意识在物质层面构造上不存在差异性,人在表层表现出来的天资差异只是由于物质中嘎嘎效态下组合的意因子的不同
2、意因子的构造决定了人的意模型,意模型决定了人对内(表层意识、内层生理循环)、对外(人、环境)的一切改造能力的特性(需要做实验得到量化数据);
3、研究表明——改变意因子的方法有2种:一种是内部方法取名叫意形改变法、一种是外部方法取名叫意念改变法;
A、意形改变法是通过药物、手术等一切技术手段改变别人的意因子构造的方法,比如:意识存储、批量复制知识、给别人造梦、批量构造科学家等,意识构造是依附在物质构造上的二次特性,由于物质构造研究还没有取得突破性进展,这是我们未来科学研究的主要方向;
B、意念改变法是通过重复的行为动作去改造人的意因子构造的方法(这是基因给物种进化所留下的后门,研究表明所有物种进化都跟此方法大有关系而绝对不是由于基因突变),此方法使用最普遍的就是教育,也蕴含在我们平时工作、生活、意识思考的每个角落。为了提高智能每一个伟大的公司、每一个伟大的学校、每一个伟大的帝国肯定都有它一套重复动作直接参与集体的意因子改造;现实中大家最看不起的宗教它集合起来的信念能力确比其他团体的更加强大。意念改变法研究成果可以直接实施是我们现在科学研究的主要研究方向。
4、特定意因子决定人某方面的能力,人的能力究竟能有多高又能有多低?
研究表明:最低为0就是没有这个能力,如果将一种通用能力——能动力进行科学划分:1份为1个意力,100份为全部意力(不要搞错了愿意到100%乐意到希望到120%渴望,最大都达不到15份的意力;人最大的特点就是我们只是用常用的一部分功能占比不到15%,自己的潜力怎么都使用不完);15%是我们的能力常量,如果按照通用的分数来衡量0分到100分,完全具备一种能力只需要15份意力。
综合罗列出一条初级能力公式:我们意因子大概30000多个,我们的总能力大概为:30000/15%*100/35=57万份意力;从某一能力上看一个人的能力是否可以为负:能力是构造在意因子基础上的,某些能力需要很多意因子支撑比如15个,假设他有7个意因子为0,那么需要具备此能力的60分,那么此人的能力份数为:-(7*15+60%*15)=-114份意力;比如学习能力,很多被导师批评为资质愚笨的人可能并不笨,他只是缺少了105份特定的意力,如果补齐也许是这方面的天才也说不定。
5、一种能力的培养,大家现在都是以时间为评估因子,比如某个小孩学习高等数学只需要3个月是个天才,某个人24岁了1个学期还学不会是个笨蛋,我觉得这样的评价方法是不科学的;能力代表着表层的时间刻度体现,意愿力代办着内部的能动驱动力,以意愿力的培养替代能力培养产生的效果肯定强悍很多。意愿力的培养以重复度为衡量标准,比如某个人某个知识在无偏无欲下需要重复多少次才能产生1份意力,包括三个标准:熟悉:9份、掌握15份、专业35份。意力很特别:它的底层基础是意分子,一份能力控制在9份内的时候基本对其他能力不影响,当超过15份就开始抢夺其他能力意分子,导致其他能力的降低。
6、种族进化:从重复度->意力->意因子->生理激素->基因数据,每一级都是100,那要改变基因数据至少需要1亿次的重复度,并且生物体的复杂性功能间相互影响从来不是单点可以直线修改的,要修改一组基因数据估计至少要万亿次重复度,这已经不是一个人或者一个单独生命体可以完成的事情;这是一个种族并且在一段很长的时间范围内才能完成的事情。
假设某一个特性已经融入某个族群的生活,每个人1天重复500次,族群总共有1000人,以三代为一个基本单元,代间遗传的加成系数为n假设为1,那么500*365*20*1000*3*1=109.5亿,已经足够书写好多条基因数据了;实际上1000人行为不会标准如一估计至少10倍损耗,并且有性繁殖的基因数据组合,很多情况下都是被平均的,只有特定条件下才会加强;这种特性注定了基因向弱者偏移,假设100人30年辛苦锻炼出来的5475万重复度,他们的后代有人忍不住诱惑跟一个此能力的弱者(假设此能力重复度为0)通婚,后代重复度一下子减少1半或更多,假设后代继续重复一次这样的繁殖那么结果一下子回到解放前。所以种族进化是一个极其漫长的过程,只有特定的社会环境因素下才会一下子提速。
下面介绍一下Snapman,到www.snapman.xyz下载Snapman安装包安装,直接双击SnapmanServer.exe即可启动服务,这就是Snapman服务端:
Snapman服务端是所有人行为的管理、协调、分发和组合的服务,如果正式版第一次启动还需要软件注册参考教学视频,客户端只需要填入它的IP就可以直接登录,默认账号:admin,密码:123456。
服务软件将用户需要做的事情设计到最少,必要做的事情只有:
1、用户管理,在Snapman安装目录下,有UserConfig.json的配置文件,用记事本打开可以添加删除修改用户的账号和密码(注意最后一个用户的密码后面是不能有逗号','的),格式遵循json格式账号密码用双引号'"'括起来,如下图:
用户账号密码是动态加载的,我们配置人员只需要修改保存就可以即可生效,不需要重启服务端。
2、在安装目录下有ServerConfig.json文件,这里面配置的事情都是非必要做的:
A、服务端监听IP配置,如果为空那就是监听服务端拥有的所有IP
B、服务端端口配置,默认为45566,不能为空
C、客户端上传的附件、图片存放目录,如果为空那就是在程序目录下的AttachmentRoot目录下,系统已经存储的所有附件文件和图片都可以在此目录中找到
D、是否允许客户端执行:文件上传、文件下载、dos命令
E、日志级别,-1是不记录日志,5是记录所有日志;默认是2,此配置一般不变更
F、创建的表格数据存放的路径,如果为空那就是在程序目录下的Root目录下,系统所有表格都在此目录下;其他系统如果需要在Snapman服务端集合可以监控此目录文件变化
总结一下Snapman服务端设计:对于用户来说只有跟我工作相关的事情才是我需要的,比如很多其他软件服务端都有数据库配置、worker配置、docker配置、集群配置等等一大堆事情,看起来很高大上其实对用户毫无意义,不但添加了用户工作量,并且可能还需要一两个技术人员专门维护机房硬件、软件稳定性那成本就更大了;所以Snapman服务端设计的非常轻巧,不需要人维护,基本所有PC机都能满足性能要求;简单的启动一下就可以服务整个团队。Snapman的强大性并不只是在配置简单机器要求低,而是将客户端和服务器整体性能进行一个统一的设计,很多运算都是放到客户端中去分担从而形成一个非常强大的运算网络。
下面介绍一下,Snapman的客户端,如下图:
1、首先输入服务端IP、端口、账号、密码登录SnapmanServer服务器,成功登录后左边树会列表出服务端所有文件,双击打开需要的文件就可以开始工作了
2、客户端是一个电子表格编辑器,具有电子表格的基本功能:
3、现在介绍一下一些高级功能的用法:
A、表格完整的多人同时编辑功能,如果多人编辑不同单元格,可以自动合并并实时同步到所有客户端,如果多人同时编辑同一个单元格那么最后保存的会覆盖前面保存人的数据;为了减少同时编辑同一个单元格的危险,在一个用户编辑单元格的时候,其他人会得到单元格被某某人编辑的提示并且此些单元格不能被编辑。为了减少编辑冲突最好方法是:由领导先设计好模板,其他人员在指定单元格填入内容就好了。
B、插入附件/图片,在windows的explore中复制文件/图片,然后到表格中粘贴可以插入附件/图片,文件的列数以我们选择的列数为准,然后向下扩展行;插入图片还有一种方法就是在浏览器或截屏复制的图片到表格中去粘贴,可以插入图片。Snapman客户端提供屏幕截屏工具,使用快捷键:ctrl + p可以截屏,或者ctrl + o可以先隐藏Snapman客户端再截屏;附件双击可以打开。
C、选择框,选择需要变成选择框的单元格,然后点击选择框按钮,此些单元格就变成了选择框;要改变选择框状态的方法:选中要改变状态的选择框单元格,按住ctrl然后鼠标左键点击单元格就可以改变选择状态了。
D、进度条,选择需要变成进度条的单元格,然后点击进度条按钮,此些单元格就变成了进度条;要改变进度条进度的方法:a.选中要改变进度的进度条单元格,按住ctrl然后鼠标左键点击单元格位置就可以改变进度状态了;b.还可以拖动改变状态方法是:按住ctrl然后鼠标左键点击单元格不松开进行拖动,到自己需要的数值进行松开;c.到其他地方复制一个或多个0到100的值(多个值可以用tab键或回车分开,tab键分割代表多列,回车代表多行),然后粘贴到此些单元格上。
E、分布式运行模板,这是此系统设计上最强大的功能,此功能的最大用途就是分配不同的机器去做不同的事情,现有的功能包括:cmd命令、upload文件、download文件、其他应用程序,夏季版将会扩展一个非常重要的功能lua脚本。
需要在表格内填写的有:操作、执行者、次序、执行程序、运行参数
需要程序或命令上报的有:执行进度、运行时消息、日志文件、结果文件
由Snapman自动生成的有:启动者、开始时间、结束时间
具体功能说明:
操作:为启动或停止命令执行,具体:选择需要操作的行的按钮,按住ctrl键并鼠标左键点击此单元格改变状态,然后保存文件就可以启动命令了
执行者:此命令由谁来执行,系统会自动下发到指定人员的客户端去执行命令
次序:多条命令的执行顺序,按从小到大来启动,如果多条命令的次序相同则此些命令并发执行;如果非数值或为空,则系统内部理解为0
执行程序:需要执行的程序,需要首先保证每一台执行机器在指定路径下有此程序,或者可以是下面的命令:
a、cmd,运行参数中可以写上需要执行的dos命令
b、upload,将文件上传到服务器,运行参数写上:本地文件路径 服务器存放路径;本地文件路径是一个绝对路径,服务器存放路径是一个相对路径,如果路径中有空格请用双引号'"'将路径包含起来,如:"C:\Program Files\Snapman\SnapmanServer.Log" "\07.项目文件\分布式运行模板\SnapmanServer.Log"
c、download,将文件从服务器中下载到本地,运行参数写上:服务器文件路径 本地文件路径;
d、lua(命令功能待实现),运行lua脚本,运行参数写lua脚本
运行参数:程序运行所需要的参数
启动者:命令是由谁启动的
执行进度:由执行程序上报
开始时间:系统自动记录的程序启动时间
结束时间:系统自动记录的程序结束时间
运行时消息:执行程序或命令上报的中间消息
日志文件:执行程序上报的日志文件,只能是一个如果上报多次会被最后一个覆盖,如果有多个请压缩成一个压缩包上报
结果文件:执行程序上报的结果文件,只能是一个如果上报多次会被最后一个覆盖,如果有多个请压缩成一个压缩包上报
这是应用程序的开发接口代码(C++):应用程序开发接口代码
Snapman的功能就介绍到这,总结一下客户端的设计理念:
1、时间就是生命客户端一定要轻巧,启动时每多用1秒钟就每次杀掉别人1S的生命,特别是用eclipse生成的java应用程序,每次都恨不得将它砸了(虽然还需要靠它混饭吃)
2、工程树和工作表格间没有可以拖动的分隔栏,意识研究表明这种随意拖动大小的分隔栏对大家的智能并没有好处,它会破坏意识的严谨性,很多时候固定的键盘比动态键盘高效
3、表格设计的功能都是必须使用的常用功能,所以几个迭代版本后将会停止功能更新,但是会留下很多扩展接口供大家自己扩展使用场景
4、表格功能设计为多人使用场景,所以我们使用的时候一定要考虑数据功能在其他机器是否适用,并且需要考虑到别人是否同时使用,要做好团队间交流协调
5、表格设计初衷是用来减少重复工作的,比如公司中的多人工作行为最好设计为一些固定的流程,可以大大提高工作效率
6、很多重复工作可以用自动化流程去完成,表格未来将会不断完善自动化功能,使每个人的工作都是可以自动完成工作的数据