从新开始

两周前,12月底,去了趟重庆,前一天去,第二天一早就回。一方面谈点业务,一方面见见老同学,庆和涛,去庆那边公司聊了会,还是有很多合作机会,重庆感觉也比早些年去洋气多了,整了点微微辣的重庆老火锅,3人两箱啤酒,安逸,毕业差不多10年了,生活都逐步偏向家庭,趋于平淡,家家也都有难念的经,工作也是太久没什么意思了,都想出来整点什么。

庆公司的业务加上我这边运营商和电商资源可以好好整一番事业,回昆明后,我这边就可以着手准备了,一方面对接了业务,一方面和老板沟通了下下一步合作方式,我这边零申报一年多的公司,今年看样子会产生收益了。年前把所有事情准备好,年后就在呈贡整办公室招人了,正好利用大学生好好整一把事情。

创业第一年只要公司能活下去就满意了,至于赚钱是额外的,先活下去,后面再活好,有人有资源,花点时间做好必然能成事。来年几个方面,一是抖音电商,二是运营商业务,三是分销平台,四是直播,这几块我是打算一步步都给做了,公司嘛,起步昆明,后面重庆,成都都整一个公司去对接运营商,但起步则只是抖音和运营商,一步步来,步子迈得大容易扯着蛋。

后续,目前按照庆他们公司的做法,做了两周抖音视频,暂时还没什么关注和转化,下周做橱窗商品,加各类推广,也看看效果,心里预期3个月出效果,慢慢来,凡事都是需要积累。

文明城市

昨天去楼下吃午饭,十字路口的肉夹馍摊点已经不在了,去面馆吃燃面,店门口的几张桌子也收起来了, 看了下店对面街道,之前有几个流浪汉在关着的门面口打的地铺也不在了。问了下店老板,才知道昆明又想去评文明城市了,然后就各种治理街道,只是觉得大冬天的这些流浪汉能去哪?往日我都会吃了多买一份面放在流浪汉身边。

为了个文明城市,哎,至少得把他们给安顿下啊,想起之前规定:一句军队不许经商,昆明市中心好些街道全部关门,随后损失的还是小商贩,交了整年的房租好不容易做点小生意,结果军队直接收走,没有赔偿,拉横幅分分钟让你服,结果好好的街道冷冷清清,完全可以让三方公益机构去带运营这些商铺,以福利的方式让小商贩有活路,收入还能做点公益什么,帮助更多需要帮助的人。

想起肉夹馍摊,上上月才发觉的,味道做的不错,就多和老板聊了些,他在十字路口摆是交了钱给城管的,除非大检查,他都能在那边摆摊。因为馍做的不错,肉分量也足,所以生意还不错,一天两锅肉,挺好,靠本事吃饭。老板河南漯河人,50岁,两年前离婚,净身出户,全部留给前妻和两个孩子,带了2000块钱只身来到昆明,一直做这个生意,刚开始还艰难,现在做的久了,哪怕是个小铺子,也是又品牌效应的,销量也就慢慢好些了,也没什么爱好,不出意外每天都在十字路口摆摊。但是聊到孩子还是有满满的自豪感,都在读大学,他供的,去年iPhone X刚出,他还给大女儿买了个送她,读书也不错,对女儿们也很好,要什么去哪玩也都满足,或许做父亲的都是如此,为了孩子自己苦点没关系。如果一旦评文明城市,他就出不了摊,苦不了钱,生活啊,如何继续。

另外想起个情况,就是我们家小区门口一条商业街,之前很多小摊点能在商业街中间流动摊点摆着,每月交两千块钱吧,但是那个位置人流量多,所以生意还算不错,后来也是因为要评文明城市,相关部门把商业街旁边的湖填了一半,搞了一堆和报刊亭差不多的小亭子,整了一条新街道,把原商业街上面的那些流动摊位清理了,价格也提高了,3万6到3万8一年,加1万押金,一次性付清,目前陆陆续续有些摊位进去了,估计10来个(总共怕是有三四十个),但是人流量比以前那条街道小多了,好多人都没办法,但是钱交了还是得继续做,很难还得继续,毕竟交钱了。好多以前的摊位不愿意转过去的,就开始了游击战,在小区门口摆摊了,没城管就可以整着,弄到晚上三四点,呈贡的晚上是很冷的,一旦城管来,各个摊主就是推着车四处逃散,城管如果呆着久就各回各家今晚不做生意了。我有次买鱿鱼就和老板聊了会得知,下面摊位费太贵,没法,就这样打游击,也不用交钱给城管,他们来就不做了,都是这些人做,大家都讲个规矩,位置最初来这边摆好后,就默认固定了,不是先来后到,后面有新人要来摆摊,自觉往旁边空的位置摆,这个位置摆谁的,那个位置摆谁的,大家不会乱抢,甚至你哪天来得晚这个位置也还在给你留着,这是多么有素质的一群人啊。

其实想想,很多老百姓做事都是有规矩的,不是乱来,反倒是官方在添乱,下一篇写个车相关的,有感而发。

笑傲江湖

前天10月30日,金庸先生去世了,飞雪连天射白鹿,笑书神侠倚碧鸳,说来惭愧,读书的时候我没看过武侠小说,电视剧电影什么的倒是看过,到11年中,大概8月,我从杭州回到成都,那时借宿在朋友家,用iPad看的第一本金庸就是神雕侠侣,也是头一次看金庸小说,至今还记得此书开篇第一回的几句诗词:越女采莲秋水畔,芳心只共丝争乱,风月无情人暗换,旧游如梦空肠断。此后到如今,看了10来部,有些看了好多遍,今年最近还陆续把笑傲江湖,倚天屠龙记,碧血剑,鹿鼎记等又看了一遍,感谢这漫长的通勤时间,基本上都用来看书了,最近又开始看神雕侠侣,刚看完前两章,感觉李莫愁是一个为情所伤因爱生恨孤独的细腻的女人。

喜欢金庸小说,主要是看里面对人物的刻画,武术什么的倒是其次,对于女性角色,我是喜欢赵敏这种,至于男性角色,印象深刻的反而是田伯光,一个有情有义的采花大盗,说是采花,但实际上整书并没有一处说他采花的事件,反而刻画出一个有情有义的汉子,不乘人之危,说到做到,也绝不强求。鹿鼎记里面的洪教主,这个越看越觉得像太祖,“洪教主仙福永享寿与天齐”。

个人觉得金庸就是郭靖,侠之大者,为国为民,受过迫害,从名门望族到父亲因阶级斗争(地主成分)被迫害致死,逃亡香港,做大公报,明报,后投身政坛。前天微博上满屏悼念,用这句形容金大侠不为过:“人生,就该大闹一场,悄然离去”。后来想想,早几天过世的李咏先生不也如此,默默承受各种怒骂,没有回应,没有煽情,心中只有家庭,直到他妻子发微博才知道李咏已经去世了,在此之前接受了17个月的治疗,没有人知道,一个大写的体面的人,默默与病魔抗争,直到最后。

90年代正是香港武侠的鼎盛期,张敏的赵敏,邱淑贞的小昭,李若彤的小龙女、王语嫣,林青霞的东方不败,王祖贤的雪千寻,啧啧,那个年代的古装美女可真多,喜欢也看了多遍的一个是倚天屠龙记之魔教教主,一个是神雕侠侣古天乐版,这才是小龙女应该有的样子。

从此世间,再无江湖。

小萌

家里有只猫叫小萌,英短渐层折耳,本来叫小怂的,16年12月份带回家的,养了差不多快两年了。

之前媳妇怀孕生娃啥的,猫在她同事家呆了3个来月,同事家有只小布偶,正好一起养着,但是小萌特别的怂,一直躲着,各种角落躲着,老是被欺负,期间都是我时不时过去看看,撸下猫,带点罐头,换尿垫猫砂什么的,大概7月底带回来的,送过去养时4公斤多,回来大概3.6公斤,回家后就吃的很少,我还怀疑天猫国际买的渴望猫粮有问题,到8月底差不多3.3公斤了,带小区边医院看了下,说是肠胃炎,开了点药,打了三天针,后来稍微正常了会,然后9月初它刚过两岁生日,媳妇又带小萌去她同事家看看,结果又被布偶给欺负了,我又给它洗了个澡,回来就更抑郁了,吃的就越少了,慢慢越来越瘦,后来感觉呼吸越来越吃力,大口喘气,吃的少,还吐,找各种角落躲着,而且都是以前不待的角落。

第二天我联系了下之前卖猫给我的那女生,问下昆明有什么好点的医院给猫检查下的,媳妇带着去看了下,传染性腹膜炎,把她给伤心的,哭的不要不要的,还以为活不久了。医生说先打点GC376试试,从9月14号开始打,到现在还在继续,不过前天的报告说已经没病毒了,昨天我又带它去医院做了检查,医生也说没必要再过来检查了,已经恢复的不错,把这周打完就差不多了。

想想这一个来月的坚持,媳妇每天早晚给它打针,小萌背上估计千疮百孔了。这段时间小萌的体重也从3公斤到现在4公斤了,现在也比以前精神多了,能吃能睡的。看着小萌病好我也高兴,以后每天就由它看着小桃子了,哈哈。

11-1日更新

上周五晚上打针,戳了10来次,死活不让打,问了下医生,这种情况还是停药吧,于是乎还剩两盒就这么放着了,差不多停药一周了,一切正常,活蹦乱跳了。也大概统计了下开销,不打算细算了,真贵,两三万块钱,以后好好照顾,健康才是最好的资本。

未来方向

上月开始整体方向开始发生改变,老板因为接触到外面公司做拉新挺赚钱,我跟老板沟通了下,把自己想法和规划整理好,老板也终于同意,决定改变方向从B2C这块开始扩展,走分销,联盟,订货这条路子,将6米做成一个供应链平台,包括商城,分销,联盟,订货等。

为了这一步等了一年多,要知道去年转型的时候提过B2B2C这个概念,很可惜没下文了,将大量工作放在B2C这块,重点是为门店服务,然而很可惜一直没做好,现实中门店并没按照要求去使用去推广,我也在今年初萌生退意,想找个能实现自己理念的地方,不然这么下去也太无趣。

现在终于能实现自己想法,但是缺人,不过也不是什么问题,计划一步步走,先将整体规划好,做好整体规划及架构,核心框架搭建好,按照规划目前分销已经搞定,接下来就是联盟+订货了,计划从下月起完全以外包的方式实现掉。

目前自己手头项目还有不少,打算还是自己来做公司,做服务商,核心为企业,店铺进行服务。现在都还只是雏形,先将功能实现掉,然后再去推广,不过要想推出去,还需要强大的运营销售人才。来年去成都,重庆看看有没同学有兴趣加入一起做这个。

最后:我怀疑这台linode配置不够,因为ss一直运行着,好几个朋友在用,导致内存占用过多,mysql就崩溃了,还是新开一台搭建wordpress吧,这台就做做测试,折腾下ghost,shadowsocks,docker,node之类。

mongo问题

今天登陆m端服务器想登陆mongo看看,mongo命令不起作用,报错:

Failed global initialization: BadValue Invalid or no user locale set. Please ensure LANG and/or LC_* environment variables are set correctly.

然而本地使用robo3T能够连接服务器上mongo,搜索了下原来是本地化的问题,export LC_ALL=C,去除本地化设置,然后再次输入mongo命令,一切正常。

LC_ALL=C 是为了去除所有本地化的设置,让命令能正确执行。

在网上搜索到的相关介绍如下,在locale环境中,有一组变量,代表国际化环境中的不同设置:

1.    LC_COLLATE
定义该环境的排序和比较规则

2.    LC_CTYPE
用于字符分类和字符串处理,控制所有字符的处理方式,包括字符编码,字符是单字节还是多字节,如何打印等。是最重要的一个环境变量。

3.    LC_MONETARY
货币格式

4.    LC_NUMERIC
非货币的数字显示格式

5.    LC_TIME
时间和日期格式

6.    LC_MESSAGES
提示信息的语言。另外还有一个LANGUAGE参数,它与LC_MESSAGES相似,但如果该参数一旦设置,则LC_MESSAGES参数就会失效。LANGUAGE参数可同时设置多种语言信息,如LANGUANE=”zh_CN.GB18030:zh_CN.GB2312:zh_CN”。

7.    LANG
LC_*的默认值,是最低级别的设置,如果LC_*没有设置,则使用该值。类似于 LC_ALL。

8.    LC_ALL
它是一个宏,如果该值设置了,则该值会覆盖所有LC_*的设置值。注意,LANG的值不受该宏影响。

“C”是系统默认的locale,”POSIX”是”C”的别名。所以当我们新安装完一个系统时,默认的locale就是C或POSIX。

Locale是某一个地域内的人们的语言习惯和文化传统和生活习惯,是根据计算机用户所使用的语言,所在国家或者地区,以及当地的文化传统所定义的一个软件运行时的语言环境。
Locale是软件在运行时的语言环境, 它包括语言(Language), 地域 (Territory) 和字符集(Codeset)。一个locale的书写格式为: 语言[_地域[.字符集]]。完全的locale表达方式是 [语言[_地域][.字符集] [@修正值]。zh_CN.GB2312=中文_中华人民共和国+国标2312字符集。

locale的设定:
LC_ALL和LANG优先级的关系: LC_ALL > LC_* >LANG
1、如果需要一个纯中文的系统的话,设定LC_ALL= zh_CN.XXXX,或者LANG=zh_CN.XXXX都可以。
2、如果只想要一个可以输入中文的环境,而保持菜单、标题,系统信息等等为英文界面,那么只需要设定 LC_CTYPE=zh_CN.XXXX,LANG=en_US.XXXX就可以了。
3、假如什么也不做的话,也就是LC_ALL,LANG和LC_*均不指定特定值的话,系统将采用POSIX作为lcoale,也就是C locale。
LANG和LANGUAGE的区别:
LANG – Specifies the default locale for all unset locale variables
LANGUAGE – Most programs use this for the language of its interface
LANGUAGE是设置应用程序的界面语言。而LANG是优先级很低的一个变量,它指定所有与locale有关的变量的默认值

spring cloud学习笔记

早在16年,部门都尝试过使用Spring boot来搭建项目,实现一些小功能和业务,对于spring cloud也只是表面上的了解,没深入去学习过,这几个月还算比较系统学习,不过迁移成本实在太高,只能放弃,如果说后台团队在8-10人,我想迁移还是值得的,至少能让同事们学习到更多先进的东西,理解它的思路,包括如何使用docker去构建环境,去部署项目。

spring cloud并不是新东西,只是把很多需要的三方框架优化并整合到一起,核心基础是spring-boot,micro service之间是消息通信,如何高效通信,然后就有了注册-发现机制,所有的provider都注册到service discovery component上,这类支持有eureka,consul,zookeeper等,主要功能就是服务注册表,服务注册与发现,服务检查。consumer要调用provider就通过eureka等这类组件。服务要集群部署则可以通过ribbon在consumer实现负载均衡,通过一定规则或者自定义规则调用指定服务名的provider,如果service要提供rest api给consumer,通过feign即可。

不能让用户或者客户端去零散的调用微服务,使用统一网关是必要的,如zuul,不仅能统一服务,还能直接使用过滤器来筛选,提高效率。

如果上大型集群,使用config来统一管理微服务配置,直接配置git连接,总之就是方便。

要监控服务和容错处理则使用hystrix即可,内置rabbitmq兼容,还带有dashboard,实时监控,还有sleuth+zipkin,这种就高级了,实现分布式跟踪。

还有更高级的特性暂时也没细研究,利用spring boot + consul/eureka + ribbon + zuul + hystrix + config 已经可以实现足够强大的微服务后台,而且很简单,复杂的已经被实现,对于我们只需要在于业务方面,如何设计,如何拆分细粒度,松耦合等。不过对于人员的基础要求还是相对高点,现在云南这边大部分培训出来的就整点spring mvc完事,boot都未必接触,分给每个人一个服务,实际上是一个独立的模块,很难控制他的代码质量,增加代码审核成本,像我们现有项目,实际上拆成了4,5个,后台有独立common,service,controller,web,mq等,对于初级点的程序员,我只给controller项目即可,照着设计好的接口文档调用service返回json,供app,node层使用。如果说上cloud,至少来说一个微服务得两人来做,或者一个人一个微服务,然后两三个微服务一个负责人。

我看node也有实现的eureka-js,就是说也可以用node写微服务,供客户端调用,使用sidecar整合。

下个项目想整下这套解决方案,培养一堆相对比较厉害的程序员出来。

另外就是看了两本书,聊聊架构,进化,前者真的是太差了,通篇废话,做架构整成了哲学,什么是架构,什么是产品,我也实在无语,还挺贵一本。另外就是技术相关书籍国内作者和国外差的不知道哪去了。

iOS读书笔记

最近更新iOS版本6米网,顺便看了几本iOS的书,iOS面试之道和iOS开发进阶,个人觉得也就是个入门,相比早年看的objc的书还有cocoa编程,设计模式等书,这两本还是差强人意,还以为有很深入的讲解,其实大部分都是点到为止,还带很多工具介绍,上架介绍等教程,其实没这必要,少贴点代码,多让人去搜索学习更好,比如之前看过的java程序员修炼之道,我就觉得挺好,讲的系统,很多干货需要下来google下,没有那么多琐碎的代码。

Go语言学习笔记

昨天忙完抽空花了点时间在https://golangbot.com/learn-golang-series/ 学习Go语言,环境我是早搭建了,也就写了个HelloWorld。昨天在那个教程上学习了1-17,整个语法感觉还是很像C语言的,唯一让我觉得怪异的就是类型后置,不过这是都是基础,go的核心是在并发处理上,接下来往后学习相关教程,顺便看看https://github.com/ethereum/go-ethereum,早日上手区块链相关。

 

8月17日增补

昨天小程序已经上线,今天打算利用一天时间学完整个golang教程,为下一步区块链做准备。学完基础倒是没觉得有什么特别的,学到concurrency和oop这两章,OOP的三大特性:封装,继承,多态。golang使用自己的方式实现了,struct实现封装,继承。struct里面可以套用匿名struct这算是go的一种特性。对于多态,则使用interface实现掉。

对于并发核心就是goroutine,降低了并发的开发成本。使用go关键字就new了一个goroutine,或者说是一个线程。主函数就是在一个单独的goroutine中运行,即main goroutine。这就有点像iOS的runloop,不过iOS是消息驱动类型的,runloop作用是获取消息和处理事件。题外话,node不就是事件驱动,单线程非阻塞,eventloop获取event,到event handler,处理完成继续event loop。不过node其实是支持多进程的cluster,另外非阻塞实际上IO,异步都是在内部子线程处理。

  • Goroutines are extremely cheap when compared to threads. They are only a few kb in stack size and the stack can grow and shrink according to needs of the application whereas in the case of threads the stack size has to be specified and is fixed.
  • The Goroutines are multiplexed to fewer number of OS threads. There might be only one thread in a program with thousands of Goroutines. If any Goroutine in that thread blocks say waiting for user input, then another OS thread is created and the remaining Goroutines are moved to the new OS thread. All these are taken care by the runtime and we as programmers are abstracted from these intricate details and are given a clean API to work with concurrency.
  • Goroutines communicate using channels. Channels by design prevent race conditions from happening when accessing shared memory using Goroutines. Channels can be thought of as a pipe using which Goroutines communicate. We will discuss channels in detail in the next tutorial.

对于channel,就是读取写入阻塞的队列。select就是多个阻塞队列任意又一个不再阻塞,select就会被执行。mutex就是互斥,和channel搭配使用。

f() //普通阻塞方法
go f() //创建一个新的goroutine然后执行该方法

ch := make(chan int) // 可以写入读写int类型的channel ch <- x //写入 ch = <-ch //读取 <-ch //读取并直接舍弃 func hello(done chan bool) { fmt.Println("Hello world goroutine") done <- true } func main() { done := make(chan bool) go hello(done) <-done fmt.Println("main function") }

defer 表示延迟方法延迟到return之前最后执行,不过如果是defer stack(defer列表),按照last in first out原则。自定义error,使用struct+interface即可。panic主要是用于抛出异常,recover则是捕获这个异常并进行处理,两者必须在同一goroutine中,如果defer a()中加个recover方法,recover方法必须使用defer调用,否则无法捕获,然后 go b()中抛出一个panic,这是无法捕获的,此刻程序就会终止掉。class function则是很像iOS中的block。reflection以为着我们能在运行时获取一个struct的所有变量的type,value。这是高级语言的特性,java,iOS都有这块,不过iOS是要基于runtime获取,java的反射则是spring的基础。

学完了教程,感觉go这块用在后台开发实现高性能是很容易。

流浪者和手艺人

在城市里闹市区几乎随处可见乞讨的人,有老人卖惨的,有身体残疾的,也有推着音响唱歌的,碰到这类人我是从来不给钱的,因为基本上都是职业的。

还有地铁上也是如此,我周一那天下午坐地铁,坐在头节车厢,半路上沿着车厢过来一对父女(看起来像),男的杵着拐棍一瘸一瘸举着讨钱的大碗,女的在后面跟着拉着二胡,边走边把碗伸到乘客面前,还是有不少人给的,比如坐在我旁边的大哥,当时那对父女还没过来,这位大哥就从钱包掏出5块钱放在衬衣胸前口袋,我没搞清楚为啥,等到父女过来他把5块钱放了进去,当然我是带着耳机没有理他们。碰巧我是在南部客运站下车,等下班换乘,所以一直在站台站着,结果这对父女出现了,然后男的收起了拐杖,很正常的走下楼梯。虽然知道这些是骗子,但是我还是头一次见现形的。

对于这些职业卖惨卖艺的我是向来不理的,但是有些真正的卖艺或者流浪的,前者是享受这个过程,用心在卖艺,后者则是真实的生活,流浪。对于无论前者还是后者,我都是愿意平等去对待。遇到这种情况,只要我身上有现金,我都会给一些。底层人民都在艰难的活着,却无人关注。记录下我这些年印象最深的几个人吧:

按照时间顺序,应该是我读大学的时候,成都,夏天,我估计是07年,因为08年之后我就没回过湖北了。应该是夏天,下着大雨,我去火车站,坐公交车到火车站,然后走向火车站,大雨中没什么人,一个路口有个老奶奶跪在地上,前面放着一个碗,披着一块透明塑料薄膜,我走过去把口袋的几十块钱全给她了,然后双手紧紧握住她的手,冰凉的,我好一会才放开,然后去赶火车了,看到那一幕,很容易想到自己的爷爷奶奶。

然后是在昆明,估计15年左右,中间很多年倒是没什么太大印象也和自己有关,没去经历过什么,没去感同身受过,有一天晚上,我坐公交车,有点晚了,车上人不多,有个老人应该是拾荒的,说自己住在春城路什么桥洞那边,自己参加过抗战什么的,民国三十六,还是三十七年来到昆明,一呆就这么久,没有亲人,想想这些参加过抗战的国军,心头一酸,艰难抗战的国军,却被窃取了胜利果实,导致这些国军战士老无所依,一无所有,真的是只恨蒋公当年剿匪不力,临下车我把自己买的两袋面包给了他,至少能让他吃饱一次。

今天这个新闻更加恶心到我了:

【河南南召回应“抗日陵园遗址被毁”:11处发现遗骸,将鉴定】日前,有网友发文称,南阳一抗日将士烈士陵园被政府卖给私企做厂房,烈士墓碑被挖倒,并配上“被丢弃的烈士墓碑”、“挖出的烈士遗骸”、“施工现场出土的烈士服、帽饰”等图片,引发热议。对此,南召县回应称,调查组在走访时,当地群众反映此处是乱葬坟场。部分老人说此处原为国民政府抗日将士烈士陵园。但经现场勘察,多次遭到破坏地形地貌发生巨大变化,当年的“陵园遗址”已无从辨识。现场共有11处发现遗骸,现暂存县殡仪馆。下一步将确认是否为国民党抗战死亡人员遗骸。此前,该县已责成企业停止施工,保护现场。

然后就是今年了,可能随着年纪越大,越会在意周围,关心别人,其实人也是会慢慢转变的,想当初16年刚做百步技术部门的头时,喷运营部门人员喷了多少次,虽然他们很多事情做的很差,但是有些我现在看来确实是我做过了,慢慢到如今,几乎不再意气用事,很多时候沟通是沟通情绪,而不是事情,情绪失控了,事情再对也无济于事。回归正题,也是在公交车站,我刚下车,准备去公司,然后看到一个拾荒者正在捡垃圾桶中间烟灰缸的烟蒂,没看见合适的,准备走了,我拉住了他,把自己刚买的利群给了他,看他的眼神仿佛是不相信似的,递给他他赶紧接过去,我说不急等等还有火机也一起给你。看着他匆匆走过的身影,我在想,对他而言或许不会再有下一次,如果我老了变成这般模样,那会怎样?我现在是戒烟了,但是出去有时还是会带包烟,至于利群,因为早年在杭州抽习惯了,烟蒂长,而且广告词很好:

人生就像一次旅行,不必在乎目的地,在乎的是沿途的风景,,以及看风景的心情,利群,让心灵去旅行!

接下来就是今天(7月4日)下班,走过十字路口,看到一老婆婆,在翻垃圾桶,推着个小车,类似购物小车,下方一个笼子,笼子里面是一只狗,旁边一个小碗,碗里有点米线。上面放着几块叠整齐的纸箱板,笼子前面有个牌子,狗狗出售。我心一酸,走过去把身上的钱给了她,并没说话,看到这般情景,心里就明白了她的故事。希望她能好好的,和她的狗狗一起都好好的。

接下来再写几个手艺人的故事。

8月10日更新下面一段:

也没有几个,之前在城里住的时候偶尔会看到一对父子在广场卖艺,父亲吹萨克斯,小孩唱歌,唱的虽说有些稚嫩,但是不怯场,父亲的萨克斯吹的很不错,就安静的演奏着,没有纸板描述家世,也没有用喇叭像路人要钱,一首接一首,随心随性,完了就走了,也不像职业乞丐那样长时间在一个地方,在我6月21日写完下方那条微博后,再也没在城里那条路上见过他们了,也不知道他们去了哪边。不过在上月下旬的某天早上我在中国银行那边倒是看到那个推着小狗的老奶奶,小推车放在一边,她坐在台阶上逗着小狗,挺开心的样子,我正好坐在滴滴上,匆匆而过,却让我耿耿于怀,下次要是再遇到一定要好好和她说几句话,多帮助点。

之前回家经常能碰到他们在这边卖艺,但是每次我经过时掏下口袋,发现没钱就急匆匆走过,终于我半个多月前取了钱,放了些零钱一直在口袋,可能下雨就再也没见过他们,今天终于又见到了,放了些钱在盒子里,才安心站在旁边静静欣赏,小孩唱着成都,大人吹着萨克斯伴奏,唱的挺好的。 ​​​​