eSteem桌面版:Surfer 先试为快

昨晚临睡前看到 @good-karma 的帖子,eSteem团队推出了steem桌面版应用:Surfer 1.0.0,支持Windows、Mac OS 以及Linux操作系统,填补了steem在桌面应用上的空白。


(图源 :pixabay)

安装 / Install

因为昨晚睡的太晚,纵然激动也不能爬起来测试一下,今早一起床,就赶快试试这个steem桌面版,是否好用。尽管Surfer可以从源码自己build,但是奈何我不会,只好下载现成的程序了。下载地址为:https://github.com/eSteemApp/esteem-surfer/releases。我用的Windows 10,就下载eSteem.Surfer.Setup.1.0.0.exe好了。


点击下载的应用进行安装,程序并没有任何提示我选择路径之类的操作,直接安装到了如下路径:

C:\Users\xxxxx\AppData\Local\Programs\esteem-surfer


安装后自动启动程序,上边有一个图片显示错误😰


连续点几次Next,看了一些介绍之后,到了如上界面。


提示设置四位的密码,这个密码用来给你的私钥之类的加密,增加额外的安全性。


设置成功后加载首页

设置 / Settings


来看一下设置

设置货币

在这里有两项设置,设置货币这个很有意思,可以让你的帖子收益以你偏好的货币来显示,如果觉得自己帖子收益低的,不妨将这个设置成人民币(CNY)或者日元(JPY)(不知道有没有津巴布韦币),保证帖子收益数字增大到让你兴奋得尖叫的地步!

设置API节点

STEEMIT网站常被人诟病的就是偶尔访问不了,这不是STEEM区块链坏了,而是https://steemit.com使用的api节点坏掉了,可是steemit.com并没有提供切换节点的选项。Surfer这里解决了这个问题,我们可以选择任意节点或者添加自定义节点,再也不怕节点坏掉了。

Discover / 发现

看到这个标签名,我以为是个啥超级先进超级有用的东西,试了一下,应该是根据最近的帖子以及Reputation等生成的一个用户名单。个人认为很鸡肋。

Token Exchange

在这里可以看STEEM\SBD在Bittrex\Binance交易所的行情。(我没研究出来咋看Binance的)

Login / 登陆

是时候登陆一下看看啦。登陆支持用密码或者私钥登陆,也支持用steemconnect登陆,我选择直接用测试账户的posting key登陆吧。

登陆后发现界面上增加了Feed\Wallet以及个人头像啥的。(收益改成BTC试试,不过貌似明显算得不对)

Wallet /钱包

钱包里steemit存在的问题依然还在,比如记录多了,同样只能显示一部分,过滤筛选功能也不存在。

钱包里多出来个Escrow/中介功能倒是挺有意思。STEEM这个功能一直就在,但是因为https://steemit.com 界面上不支持,几乎没人用,甚至没人知道。

Post / 发帖

测试了一下发帖功能,预览改到右侧,这个是不错的改进。似乎不支持上传和拖拽图片,只能插入URL的方式插图?另外标签之类的都没填写,POST按钮就一直是可用状态,略微遗憾了点。(不过点发帖的时候会提示并未填写完整)

除了常规的发帖以外,还有一个Schedule(定时发帖)功能,不过我没搞懂它为啥要Active权限,就不测试了。

Bookmarks / 书签

Surfer 另外一个亮点就是提供了Bookmarks 书签功能

进入到对应的文章,点击就可以将文章加入书签。


令人遗憾的是,书签管理功能竟然只放了个permlink上来,最起码放个标题啊。还有就是没法在文章列表页面将文章加入书签。

Search / 搜索

搜索功能是我比较看重的功能,用来搜人或者哪个文章中提到了某某还是不错的,比如搜了一下刘美女,

然而用来搜索关键字,比如我想找steem api node 相关的文章,就无能为力了。

总结

应该还有很多功能没测试到,不过暂时就写这么多吧,写不动了。

作为steem第一款桌面应用,Surfer的功能和实用性还是很不错的,尽管我一些小小的不足,但是瑕不掩瑜。另外作为1.0.0,做到这种程度,已经可以足够骄傲了,相信在后续版本迭代中一定会越来完善,越来越好用的。唯一担忧的还是安全性,技术好的朋友可以自己review一下代码,然后从代码build应用来玩吧。

感谢 @good-karma 提供了这样一款应用。


This page is synchronized from the post: eSteem桌面版:Surfer 先试为快

很久很久以前的一个梦

2015年8月12日天津滨海新区的一家公司危险品仓库发生了火灾爆炸事故,导致了165人遇难,当时电视、网络以及朋友圈铺天盖地都是和爆炸有关的新闻和信息。

然后8月15日我去北京办事,高铁🚝途径天津,当时很多朋友吓唬我说因为爆炸事故天津那污染严重,从那经过可能会因空气污染而生病云云。我特意备了3M的口罩,颇有些风萧萧兮易水寒壮士一去兮不复还的意味。

途径天津的时候,我发现不光我自己很紧张,大家都盯着窗外,很多人表示车厢内有异味并且带上了口罩。说实话我是没闻到什么味道,况且戴口罩真的很闷的。不过高铁从车站开出去不远后,我看到一个工厂的场地中的大楼正燃着熊熊大火。当然了,这并不是滨海新区,所以肯定和化工厂爆炸无关了。

但是这场火也是我见过规模较大的火灾了,奇异的是,并没有看到周围有人员救火,也没有看到消防车。高铁速度还是蛮快了,一两分钟后,就看不到火场的,大家对此议论纷纷,又讨论到8·12爆炸事故以及死亡的人等等。

当天夜里,我到酒店入住后,因为过于疲倦,早早就入睡了,然后做了一堆乱七八糟的梦。醒来以后,梦里很多情节都忘得一干二净,但是有些情节却历历在目,仿若亲身经历的一样。

因为梦境太过于离奇和曲折,我发到QQ说说上:

应该是昨天路过天津看到火车站附近大火的缘故,梦见住的地方附近着火,火不大,只有篮球那样大一团,然而无论如何也无法熄灭。我和好多人都打119报警,但是死活打不通。

我正担心一会火势蔓延会烧到我的居所,结果眼见火苗缩成烧红的铁水一样的一团,然后吞噬了我的吸尘器我的旅行包,然后竟然滚动起来,跑到我一朋友汽车那里,眼见汽车一点点融化,我打开车门想帮他抢救出贵重物品,这时车子突然发动,我蹦了下来跟车子后边跑,然后车子开出小区,一个女司机正在门口倒车,我大喊快躲开,然后女司机开车跑掉了。

这时候朋友的车幻化出一只手臂模样,拉住路上开过来的另一辆车,一起坠入小区对面的湖中,湖水沸腾起来,惹无数路人围观。我直觉感觉事情不会完,和他们说这不是普通的事故,湖里有一个恶魔,大家都嗤之以鼻。这时路上开过一些奇异的车辆,横着开的,扭曲开的,还有载着僵尸一样的怪物的,然后我计划赶紧回小区,可是入门就被两个丧尸追咬,我用铁棍抵挡,然而对方力气太大铁棍都给我打飞了,我只好往小区外跑,结果发现满城都是丧尸,只有少量的人类在艰难的抵抗。

我在想不如我也做一只快乐的丧尸吧,瞬间这个想法就被否决,然后开始了艰难的逃跑与反抗中这TM的是什么乱七八糟的梦啊。

今天偶然看到这条QQ说说中的信息,想起了这段往事,突然觉得这个梦也许不是梦呢?如果当时我在梦中决定做一只快乐的丧尸,而不是艰难的逃跑与反抗,没准我现在就是一只快乐的丧尸呢?做一只快乐的丧尸有什么不好呢?当时为啥醒来呢?😔

那么如果真的有一天满城都是丧尸,只有少量的人类在艰难的抵抗,那么你是选择艰难的逃跑与反抗,还是做一只快乐的丧尸呢?我现在已经不确定我会如何选择了。

注:配图来自百度百科8·12天津滨海新区爆炸事故现场图


This page is synchronized from the post: 很久很久以前的一个梦

但愿世间人无病,不惜架上药生尘 & @anti-spam

从昨天早上开启 @anti-spam 机器人,收获了一些叫喊声和一些骂声,甚至QQ群里有人扬言要捅死我。非常好奇为了损失的多说不到1.0个SBD花费巨额路费过来捅我值不值当呢?

对了,微信群有朋友建议我住在澳洲,那以后我就住澳洲好了,据说这样更安全。其实 @anti-spam 针对的完全是行为,而不是某个人,我根本不认识这些ID背后都是谁,当然不可能和现实中的你较劲。所以被踩的朋友也没必要和我较劲。当然了,真要出招我也接着。


(图源 :pixabay)

其实清理CN区的想法由来已久。我最早关于清理CN区的帖子可以追溯到两年以前:《还CN区一片净土,大神们已经行动起来了》,当时CN区一堆类似这样的内容:

China Holidays. Qing Ming (Ming Chin) - day of the dead memory./中国假期。清明节(铭展) - 死者内存天

许多鉴赏家和中国文化的崇拜者,尤其是艺术爱好者,著名绘画昌谢-段“沿清假期分钟的河”。这幅画描绘充斥开封市的人群 - 北宋的首都 - 清明节,这通常是在四月初庆祝期间。这个节日被称为“阵亡将士纪念日”。这幅画是在12世纪完成的,并保存在故宫的国家博物馆。这个故事是在任何时候都非常受欢迎。国家博物馆独自保持七个不同的版本。这是什么节日,为什么他在中国是如此受欢迎?

人读不懂,鬼也读不懂。@abit 大神当时首先行动起来,对这类帖子说不,否则CN区能否走到今天也不好说。

再后来HF19来临,因为规则的变化,以及大户们的支持,帖子可以轻易获取很高的收益,于是各种垃圾贴纷纷冒了出来。于是我发了个帖子提醒大家:《[Decline Paypout/拒绝收益] 公告/提示: 不是你在中文区发帖就可以得到奖励, 还可能被踩》,并表示将踩下列情况的帖子:

SPAM、 抄袭、毫无意义的机器翻译贴、以及毫不相关的贴加CN tag

之后我又发起了净化CN区行动 《聊聊垃圾贴 & 净化CN区行动》 在这篇文章中我仔细的定义了垃圾贴,比如说:抄袭/盗用、身份伪冒、骗子/钓鱼等。


(图源 :pixabay)

但是最近几个月,CN区垃圾贴泛滥成灾,很多朋友和我反映过,我也和一些朋友聊过 @anti-spam 的机器人构想,但是有些朋友一盆冷水浇下来:“CN区又不是你的CN区干嘛浪费点赞能量和精力去做得罪人的事情呢?” 于是 @anti-spam 机器人搁浅数月。

但是直到最近搬砖机器人疯狂到一定程度了,打开CN区的新帖子列表,已经根本到了根本没法看的地步了,我才惊觉各人自扫门前雪的想法是多么自私,是的,CN区不是我的、STEEM也不是我的,但是我是CN区的一员是STEEM的一员啊。

每个人都期望从STEEM赚好多钱,期望发帖得钱、期望币价涨,但是如果每个人都一味地索取不知回报,一味的涸泽而渔,那么币价如何能涨起来?尽管STEEMIT打起了STEEM这个舞台,但是本质上STEEM还是一个自治的区块链(社区),我们每个人的行为共同决定了STEEM的未来,所以一个是做好自己,另外一个是阻止一些不适当的行为

大家都会唱路见不平一声吼,但实际上我们遇到不平事的时候往往做的是路见不平绕道走,这几个月以来,我一直绕道走,被朋友打击后总觉得自己没资格管别人的事情。但是当我实在是忍无可忍的时候,想了一下,我是CN区的一员,这不就是最好的资格嘛。

好消息是,13小时以前,我的 @anti-spam 开始踩不到任何人了,而在这之前的几个小时内,机器人踩到 43个帖子。,之所以之后我的机器人踩不到帖子,不是机器人坏了,而是搬砖的SPAM机器人已经停掉了。我由衷地感谢停掉搬砖机器人的朋友,你有号技术,好好发帖一样会赚钱的。


(图源 :pixabay)

想起药店常用来标榜自己的一句话但愿世间人无病,不惜架上药生尘,@anti-spam 机器人也一样,目的从来就不是踩人,而是还CN区一片净土,我们在这片净土上一起玩耍交朋友,该有多好!

另外 @maiyude 、@bobdos 等朋友对 @anti-spam给与了大力支持,他们或是给 @anti-spam 代理了SP,或是授权给 @anti-spam,还有其它朋友跟了 @anti-spam 的踩人操作。我很纠结要不要在文章中感谢你们,感谢的话,容易给你们带来一些额外的风险(比如被捅?)不感谢的话,又说过不去。我继续纠结去了(好像已经把你们曝光出来了啊,没事我们都在澳洲,不怕不怕)😀

相关链接


This page is synchronized from the post: 但愿世间人无病,不惜架上药生尘 & @anti-spam

读书:寒山问拾得 & 弥勒菩萨偈

在之前的文章中,写到过神秀禅师以及六祖慧能的两个偈子。详情可以参考:《身是菩提树》。尽管文章最后一个转发的段子破坏了这两个偈子的意境,但是笑笑之后,把那段子忽略即可。之后即便我们达不到本来无一物的境界,也要争取做到时时勤拂拭,勿使惹尘埃


(图源 :bing.com)

说到神秀慧能,我又想起佛教故事中另外一对著名的人物,那就是寒山与拾得。说到寒山和拾得,大家可能有些陌生,但是提到寒山寺,想必小学生都听过。当然了,寒山寺之所以出名,很大程度上得益于唐代诗人张继的一首诗:

枫桥夜泊
月落乌啼霜满天,江枫渔火对愁眠。
姑苏城外寒山寺,夜半钟声到客船。

没错,寒山寺就是因为寒山和拾得曾在此担任过主持,才由妙利普明塔院更名为寒山寺,寒山寺中供奉的佛像也是寒山与拾得。

关于寒山和拾得的出身,有很多不同的说法,比如寒山有说是官宦人家出身,也有说隋朝逃亡贵族,还有故事说就是普通人家的孩子。至于拾得,有的说是普通人家的孩子,有的说是丰干禅师道边捡到的小孩所以叫“拾得”,还有的说是火头僧。还有的更夸张,说寒山拾得是文殊菩萨和普贤菩萨的化身。

传说中他们两个人同时爱上一个姑娘,然后寒山为了好友拾得幸福主动退出出家,而拾得发现好友失踪好久最后终于发现寒山留下的书信,深感对不起寒山,于是也决定出家,结果到了出家的寺院发现了寒山,两人一起出家了。(囧,好心疼那个姑娘)

总之各种传说好多好多,不过流传较广影响力较大的当属《寒山问拾得》这段对话了。

寒山问拾得曰:
世间有人谤我、欺我、辱我、笑我、轻我、贱我、恶我、骗我,如何处置乎?
  
拾得曰:
只是忍他、让他、由他、避他、耐他、敬他、不要理他,再待几年,你且看他。

寒山继续追问,如何才能避免啊(“还有甚诀,可以躲得?”)?拾得给他念了一段《弥勒菩萨偈》,为了方便大家,我复制到这里:

老拙穿破袄,淡饭腹中饱,补破好遮寒,万事随缘了。
有人骂老拙,老拙只说好;有人打老拙,老拙自睡倒。
涕唾在面上,随它自干了,我也省气力,他也无烦恼。
这样波罗密,便是妙中宝。若知这消息,何愁道不了?
人弱心不弱,人贫道不贫,一心要修行,常在道中办。
世人爱荣华,我不争场面;名利总成空,贪心无足厌。
金银积如山,难买无常限;古今多少人,那个活几千。
这个逞英雄,那个做好汉,看看两发白,年年容颜变,
日月像抛梭,光阴如射箭,不久病来侵,低头暗嗟叹,
自想年少时,不把修行办,得病想回头,阎王无转限。
马上放下手,回头未为晚;也不论是非,也不把家办,
也不争人我,也不做好汉,骂着也不觉,问着如哑汉,
打着也不理,推着混身转,也不怕人笑,也不做脸面,
几年儿女债,抛开不再见。好个争名利,转眼荒郊伴。
我看世上人,都是精扯淡。劝君即回头,单把修行干。
做个大丈夫,一刀截两段;跳出红火坑,做个清凉汉。
悟得真常理,日月为邻伴。

涕唾在面上,随它自干了,我也省气力,他也无烦恼。唾面自干这个程序也不知道是不是源自此处?不过读到有人打老拙,老拙自睡倒,我忍不住乐了,这放现代不就是碰瓷嘛?哎呦呦,你把我推到了,没2个比特币我是不起来了。


(图源 :bing.com)

总之像寒山拾得他们学习是没错的,不以誉喜不以毁怒,骂我就等唾面自干。至于打我?咱也不说黑道白道咱都见识过的一类话了,打我我就倒地碰瓷,至少2个比特币,别指望拿俩STEEM糊弄我,门都没有。

不由得又想起了弥勒佛的:大肚能容,容天下难容之事;开口便笑,笑世间可笑之人。

相关链接


This page is synchronized from the post: 读书:寒山问拾得 & 弥勒菩萨偈

anti-spam 机器人上线

昨天发帖说要上线一个专门踩中文区搬砖贴的机器人 @anti-spam ,说好今天8点钟开始工作,@dapeng @honoru 等朋友留言建议加一个黄灯期,我还假惺惺地回:我的机器人已经蠢蠢欲动啦,恨不得马上就开始踩!,然后才发现其实一堆事情没做呢。


(图源 :pixabay)

先是给机器人 @anti-spam 弄个头像,加点简单介绍,嗯,找图太麻烦,就从@anti-phishing 上扒过来吧,反正其实也没人关注头像是否好看,尤其是一个讨厌的踩人机器人,又不是萌妹子。

踩人是需要能量的,没有SP是万万不成的,否则别人把垃圾贴踩灰了,可能踩都不让踩。嗯,先代理过来 200 SP吧(额,我代理过来的时候是200整,竟然涨了0.004)。加上@anti-phishing 的100SP, 一共300先踩着。

oflyhigh delegate 200.004 SP to anti-spam

踩人是需要程序的,于是把 @anti-phishing 的代码拿来改改,嗯,差不多能用了。说起 @anti-phishing,steem上已经有几个朋友做类似的工作做得很好,我的 @anti-phishing 可以功成身退了(好像寸功未立?)

程序是需要测试的,于是拿 @oflyhigh.test 当目标,随便发俩帖子当成垃圾贴,我踩踩踩,我生气起来,来自己都踩!

anti-spam downvote @oflyhigh.test/dddd (-1%) 43 minutes ago
anti-spam downvote @oflyhigh.test/2l5rnb-test (-1%) 49 minutes ago

程序需要黑名单,肉眼人工识别+搜索引擎对比,看了一下cn区近十多个小时内的帖子,暂时找到这样一批名单

samptoterdo
nadaxime
elizabethqh
kornhafvakim
zhizu
kuaile
plotgapales
zhuw08110
dupperagcent
faireasadown
michaelfries
sussragetligh
emma2it
aiqing
emmavmzr
notarfuncma
nidvioubabfast
www77
jorns
wcqyt

对比一下,这些名单内的人,几乎都是从什么百家号、网易等网站搬砖过来,点赞团也差不多,极有可能是一两个人在操纵。并且有一堆尚未启用的马甲,看来机器人对抗机器人,任重道远。


(图源 :pixabay)

先这样吧,名单我会不断增加,程序我会不断调整。对于那些搬砖的垃圾内容制造者,我想说的是,机器人何苦为难机器人?,你既然注册了N多马甲,那么好好写贴,哪怕是好好写回复,收益一样会不错的,何必制造垃圾?

还有,大家不要再抱怨账户难注册了!之所以难注册,原因何在,一目了然啊。


This page is synchronized from the post: anti-spam 机器人上线

每天进步一点点:字符串拆分(string split)

做程序的时候遇到一个问题,我想把一个句子按空格拆分成几个关键字,比如说"keyword1 keyword2 keyword3"拆分成"keyword1""keyword2""keyword3",这样便于我组合SQL查询语句。


(图源 :pixabay)

在Python和PHP里,这是很容易的事情,Python中使用split, PHP中使用explode就可以胜任,当然了,还有其它按正则表达式等拆分,就不在我们这篇文章讨论的范畴了。

我的实现

在确认string 并没有现成split或者explode函数之后,就只能考虑自己去写了。找来找去,一个find()一个substr(),似乎可以用这两个完成。

于是乎写了如下函数:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
#include <string>
#include <vector>
using namespace std;
const vector<string> split(const string& s, const string str)
{
vector<string> v;
size_t pos=0, pos1=0;
string sub;
while (true) {
pos = s.find(str, pos1);
if (pos == string::npos) {
break;
}
sub = s.substr(pos1, pos - pos1);
if (!sub.empty())
v.push_back(sub);
pos1 = pos + 1;
}
sub = s.substr(pos1,-1);
if (!sub.empty())
v.push_back(sub);
return v;
}

这个函数兼顾了首尾多余的分隔符,试了一下貌似挺好用。

1
2
3
4
5
6
7
int main()
{
string str = " the quick brown fox jumps over the lazy dog ";
vector<string> v = split(str, " ");
for (auto n : v) cout << n << endl;
return 0;
}

然而突然想到,因为我的程序中用到的是空格分隔,所以惯性的把偏移量加一,如果不是用空格作为分隔符,加1已不是就不对了?

比如输入改成:

string str = "::: the quick brown::: fox jumps over::: the lazy dog :::";

用上述函数就全乱套鸟。所以需要把上述代码略作修改比如把pos1 = pos + 1;改成pos1 = pos + str.size();就可以了。

运行结果如下:

他人实现

实现一

在这里发现一个有意思的实现:
http://www.cplusplus.com/articles/2wA0RXSz/

1
2
3
4
5
6
7
8
9
10
11
vector<string> explode(const string& s, const char& c)
{
string buff{""};
vector<string> v;
for(auto n:s){
if(n != c) buff+=n; else
if(n == c && buff != "") { v.push_back(buff); buff = ""; }
}
if(buff != "") v.push_back(buff);
return v;
}

他的做法相当于按字符直接扫描字符串,但是这个函数遇到多个字节的分隔符,就无能为力了。另外他的函数中没有处理连续分隔符(当然了,可能这也是种需要)。

实现二

另外一种方法使用的stringstream,这玩意我从来没用过,试了一下很好用,倒是涨姿势了。

1
2
3
4
5
6
7
8
9
10
vector<string> split(const string &s, char delim) {
stringstream ss(s);
string item;
vector<string> tokens;
while (getline(ss, item, delim)) {
if (!item.empty())
tokens.push_back(item);
}
return tokens;
}

不过实现一里提及的问题,这里依然存在。

实现三(N)

当我快写完这篇文章时,我发现了How to split a string in C++

链接中的文章里边讲的很详细,并且提供了很多方法,比如使用boost::split

感兴趣的去看看吧,我是懒得去读了,毕竟我的需求已经满足了呢。

参考链接


This page is synchronized from the post: 每天进步一点点:字符串拆分(string split)

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×