有多久没有搞活动,我都有些记不清楚了!其中主要一个原因就是懒,尤其是涉及到用代码计算点赞金额等操作,对我而言更是头大。
(图源 :pixabay)
其实很久很久以前,HIVE还没从STEEM分叉前,我搞过很多类似的活动,比如说新人自我介绍点赞、发新春祝福点赞,还测试过双倍点赞的卖赞小鱼(仅测试学习目的,开了仅仅两个小时),等等等等。
按说有这些个操作基础,再搞个类似的活动,只需要在原来的代码上改改就可以啦。可原来的代码是基于STEEM-Python开发的,后来一些新代码是基于BEEM弄的,显而易见地,想在HIVE上运行类似代码需要做大量的修改,更悲催的是,原来的代码早就不知道被我塞到哪里去了,想找都不知道去哪找了!
好在,事情并不需要从头做起,在HIVE分叉后,有感于用别人的库时常遇到各种不便,我手撸了一个HIVE的Python库,距离完善还差着十万八千里,但是——能用!
另外,虽然以前的代码找不到了,处理的基本逻辑还有,之前的帖子也说了:
通过奖池情况以及点赞账户的有效HP和Voting Power计算出满赞一票的价值,再计算出点出指定金额需要的点赞百分比,执行点赞。
这之前要先用一个账号点赞,来触发处理流程,程序思维是监控新的区块,然后判断其中的点赞操作,如果是由指定账户发起的点赞,则把点赞操作op['author'], op['permlink'], op['weight']
传递给新线程,并启用相应的计算处理。
计算涉及到几个步骤:
- 通过奖池、中间价来计算点出指定金额需要的
net_rshares
- 通过计算账户的有效HP以及Voting Power点出对应
net_rshares
需要的百分比 - 使用相应的比例点赞并回复
看起来很简单吧,但是实际计算时发现一堆问题呀,比如的库里竟然没有get_reward_fund
、get_current_median_history_price
相应的支持,好在这两个弄起来并不麻烦。
还有就是读取账户我使用的是database API
,然后发现里边竟然没有voting_power
这项内容,当然了,我觉得应该可以通过返回信息自己计算,但是那不是又增加工作量嘛,于是用condenser_api
来搞定吧。
点赞的同时想给用户一个回复,我惊诧地发现,我的Python库里竟然没有回复功能(发帖功能也没有),于是又参考网站的开发文档实现了回复功能。
回复功能搞定后,我想在回复里@用户,结果明明看着没啥问题,回复出去,内容就是乱的。试了无数次,貌似是Hive.blog的问题呢?
最诡异的是,大半夜调试的时候,我明明点赞并回复一次,可是相应的功能却被触发两次,这简直就见了鬼了。
我苦思冥想也想不通,为啥线程会被触发两次,是我程序读到重复的区块了嘛?大半夜我逐字逐句地对比广播的内容。
后来才发现,我是想监控@oflyhigh.demo的点赞操作,然后用另外的账户点赞,结果测试时都用的@oflyhigh.demo,这样的话,手动点赞触发了自动点赞,自动点赞又触发一次点赞,可不就出错了嘛。
看起来好像也没啥复杂的问题,但是从昨晚发起活动后就开始写程序调试程序,一直弄到半夜1点多,还没弄好。今天一早起床接着弄,总算搞定得七七八八了,可以给参与活动的用户发放奖励啦,然后又遇到oflyhigh.demo RC不足的问题,又折腾好久才搞定。
我觉得再几年前,这些操作和这点代码根本难不住我,现在呢,差点熬成秃头才解决。之所以有这样的差异,就是这几年没咋写代码,有些功能能用就将就用着。Python库明明一堆问题,我也懒得去修修补补。
人常说拳不离手,曲不离口,也有人说学习如逆水行舟,不进则退,就连伟人毛泽东也说过:三天不学习,比不上刘少奇。所以无论是哪行哪业,真的要不能脱离学习太久,否则手生是难免的。
(图源 :pixabay)
还有就是,经过这次加班加点的奋战,熟悉的感觉又找回来了一些,哈哈哈哈。
新的一年,从这次活动开启,我要把写代码这事捡起来,时不时地写上一段,可不能再像这次险些丢人啦(咦,现在这情形应该不算太丢人吧?)
个人觉得写程序是兴趣大于工作。我也有类似经验,眨眼间又过了二十年。2000年代,外汇界刚开始流行自动交易,我也沉浸在撸键盘的生活。每天起来就是为了改码,不断测试,活用,再改进。后来断了一段时间,十几年后想重新拾回却发现灰常吃力。现在的我,连碰都不敢碰了。
其实现在对我而言,写程序的兴趣也是极大的
不过对着电脑久了,就会触发偏头疼,痛不欲生的那种疼
所以有时候真的是心有余而力不足啊
厉害的o哥!
看来O哥是要重新组织很多活动了,期待ing
注意健康哦,量身体而行🥳🥳🥳
👍👍
O哥辛苦了,再次感谢O哥!
厉害了我的哥👍🏻
厉害O哥👍
感觉有点像 标准化 SOP 流程里的自动回复,触发了某个关键词,就可以自动回复那种😅当然我们应该说的是风马牛不相及的两件事!
O哥好棒,其实我挺羡慕会写代码的,在我心里都是大神级别的。
真厉害👍🏻
真厉害,佩服佩服啊!
O哥厉害👍🏻
程序员O哥👍👍
有害 👍🏻👍🏻
👍👍👍O哥棒棒哒!辛苦啦
O哥威武