博文

功能平板化,电纸书的未来在哪里?

 注:本文所说的“电纸书”,是指使用电子墨水屏技术的平板设备。 最近,国内电纸书产品的头部厂商文石科技推出了一款所谓的“革命性”产品——Tab 8。这款产品的卖点在于其高刷新率低残影,文石宣称此款产品将带领业界进入“阅读3.0”时代。“阅读1.0”、“阅读2.0”这些概念,都是文石自己提出来的,噱头大于意义,不过把电纸书的刷新提升到几乎和普通平板一样流畅,确实值得一提。要知道,很多想了解电纸书的用户往往第一眼就被其“闪瞎眼”的刷新劝退。 国产的电纸书一直在往“更像平板电脑”的方向努力,kindle在中国的下场部分解释了国产厂商选择这样一条道路的原因。kindle诞生之初的目的只是为了提供一个“专注阅读”的设备,以便更好的售卖亚马逊商城的书籍。而在中国,没有一家书城一家独大,内容的分散导致厂商开发一个仅为自己服务的设备毫无市场,所以出现了多家像文石一样,使用开放系统,兼容多个内容来源的纯设备商。开放系统必然会激发人们的想象力,用户开始想用这样一个小小的设备满足更多的需要。 不仅仅是用户的需要,厂商们也有迫切的需要扩大电纸书设备的使用场景。毕竟,阅读作为一种娱乐活动,在电视出现后就成了一个小众爱好,更不用说在网络流媒体、短视频横行的当下了。既然单走阅读路线市场太小,“大而全”成了一个选择。但是和普通的平板电脑相比,电纸书有什么优势呢? “护眼”是论述电纸书优势最经常被提起的一点。有“护眼”需求的消费者主要有两个群体,一是学生,包括中学生、大学生;二是经常坐在电脑前面的白领。但其实,“护眼”这一优势被商家放大了。搜索下网上商城便能发现,1000元的价位就能买到通过莱茵TUV硬件级低蓝光认证的品牌平板。并且对于护眼,良好的用眼习惯才是最重要的,即使是纸质书籍,长时间专注观看不休息也会造成疲劳等一些列眼部问题。 “护眼”只是电纸书可能吸引这两类人群的一个特色,设备的基础功能才是最终决定消费者是否买单的关键点。对于有意购买平板的学生群体来说,他们的需求非常简单,就是看教材(书籍),以及记笔记,8寸及以上的屏幕是最低要求。对于白领来说,需求稍微复杂,但更多的是作为一个移动办公的设备,能够比手机更容易操作,同时兼具娱乐需求,如读书,浏览网页,甚至看视频。学生的消费能力不强,他们需要的是能够满足基本功能的高性价比产品;白领们具有一定的消费能力,但相对的要求设备的性能要足够出色。而市面

聊一聊“硅谷钢铁侠”——埃隆·马斯克

无论是从财富上,还是社交媒体影响力上,埃隆·马斯克都无疑是现在最火的人。就好像当年人人在谈论乔布斯,现在的媒体、创业者也无时无刻不在讨论马斯克。 我不太关注汽车,听说马斯克的时间比较晚,经常看到他被媒体提及是近两年在Twitter上,而对他的第一印象就是“疯狂”。首先他在Twitter上的言论引发特斯拉股价的大起大落,简直像是操纵市场的凶手;其次还有他在节目上公开抽大麻,让人以为他是个瘾君子;大力推广狗狗币,不知道出于什么原因,和公开讨论特斯拉一样,让他成为操纵加密货币价格的高手。马斯克俨然成为“推特治国”的特朗普第二。 前段时间马斯克宣布收购推特,称要“维护言论自由”,让我再次感受到他的“疯狂”之外,又对他的所作所为有了一些好奇。“维护言论自由”这种充满了理想主义的言论,从一个亿万富翁嘴里说出实在是少见。花了几天时间读完了《硅谷钢铁侠:埃隆马斯克的冒险人生》,对这个现实版的托尼·史塔克有了更清晰的了解。 马斯克并非一开始就是一个实业家,他也曾在互联网领域创造出一番事业。大名鼎鼎的Paypal就是他创办的。从Paypal创办的出发点——颠覆传统银行,成立一家专门的互联网银行——可以看出,马斯克是一个喜欢挑战权威的人。毕竟当时的互联网创业者都在创造一些和传统行业完全不同的世界,而马斯克却想颠覆传统行业。这种精神贯穿了他后续的几次创业,让他一直在做“不可能”的事情。 马斯克从Paypal的创业中获得了一大笔资金,得以建立他的实业。而他的想法在当时的商界看来不仅是异想天开,而且无利可图——他想探索火星。一开始他只是想从俄罗斯那里买来几枚导弹作为运载火箭发射一些实验品,但被俄罗斯人拒绝后,他居然表示要自己建造火箭,而且马斯克为此花了几个月时间研究航天工业及物理学。一个被大家认为是亿万富翁花几千万玩一玩的项目,却被马斯克认真对待,并成立了Space X。马斯克聚集了一帮天才,从无到有的开始建造火箭,到今天,Space X已经颠覆了航天业,能够通过重复利用火箭来降低发射成本,随着发射频率的提高,让太空移民成为可能。 马斯克涉及到的产业是他世界观的体现。特斯拉在建立之初就拒绝走油电混合路线,马斯克称之为“不理想的妥协方案”,太阳城通过价格战打败了几十家电力公司,把自己打造成了一家大型公用事业公司,并且为特斯拉遍布美国的充电站提供清洁能源。马斯克希望通过这样的方式挽救地球和人类,实

Boox替代Kindle的使用感受

图片
最近 Kindle 在京东的自营店产品出现了大面积缺货,网友们猜测是 kindle 阅读器要退出中国市场。虽然后面官方否认退出传闻,声称只是暂时缺货,但此回复的背后是 kindle 面临的日益严峻的竞争环境。本土化的内容生产商纷纷推出自己的阅读器,内容也越来越丰富,电子书市场已不是亚马逊一家独大的时代了。我卖出 kindle 换上了 Boox 文石阅读器也有半年时间了,这期间感受到了本土产品的优势所在,对比 kindle 也发现了一些不足。 优势一:扩展性 亚马逊 kindle 当年推出的目的其实是配合自家的电子书商店,可以说亚马逊本质是内容提供商而非硬件生产商,所以它的系统只能使用自家的书库。以前,确实是只有亚马逊的内容最大最全,吸引了最早一批版权意识觉醒的用户群。但是现在,版权意识深入人心,国内的阅文、掌阅、小米的内容日渐丰富,最主要的是差异化,不同平台的内容侧重不同,单一平台再难满足读者需求。这种情形下,可以自由安装多个阅读 APP 的阅读器会成为用户首选,而阅读 APP 也包括 Kindle 自家的 APP ,想获得 kindle 的内容根本无需再买 kindle 。 优势二:手写功能 Boox 买回后我一直没有用过其手写功能,延续使用 kindle 的习惯,只把它当作阅读器来用。直到某次想记个笔记,一时找不到纸笔,就用买 Boox 附赠的手写笔记在了其自带的笔记本 APP 上,体验与真实书写无异,后来便经常使用手写功能。想必试过 iPad 手写的用户一定会爱上做笔记,墨水屏虽然比不上 iPad 的流畅,但也不输真实纸笔,何况其便携、易保存。 Kindle 目前还没有产品提供手写功能,笔记和阅读这两项联系紧密的活动被割裂了。 优势三:格式支持与自带阅读器 Boox 支持的格式较多,包括 kindle 不支持的 epub ,毕竟还是有很多公版书是用 epub 格式。 Boox 也支持 kindle 特有的 mobi , azw3 格式。虽然同样有对 PDF 的支持,但是 Boox 对 PDF 重排的功能比较强大,可以根据需要进行任意调整。 Boox 自带的阅读器还支持多标签, OCR ,分屏等功能,可以说满足了阅读中的所有需求。 Boox 的不足之处 不足一:无邮件推送功能 用惯了 Kindle ,再用其他阅读器最不方便的感

VBA学习笔记5:对文件路径的获取

图片
 VBA中经常需要对文件夹里的XLS文件进行打开、复制粘贴等操作,可以直接在代码中指定文件路径,但如果是要批量打开多个文件,就要想办法把所有的文件名存到数组里再一一读取。可以使用Application的FileDialog方法,来获取文件或文件夹的路径,再使用Dir函数读取具体的文件名。 调用FileDialog方法可以使用with语句构建,如下: With Application.FileDialog(msoFileDialogFolderPicker) End With 括号里面的参数可以有四种选择,分别是msoFileDialogFilePicker-允许用户选择文件,msoFileDialogFolderPicker-允许用户选择文件夹,msoFileDialogOpen-允许用户打开文件,msoFileDialogSaveAs-允许用户保存文件。直接运行此语句就会跳出文件对话框。这里以文件夹举例。 接下来就可以在with语句内部对文件对话框框的选择结果进行操作。这里涉及到FileDialog的show方法,show方法返回-1(操作)或者0(取消)。FileDialog还有一个SelectedItems属性,会返回一个集合,里面是所选文件的路径列表。可以用一个简单的语句理解.show和.SelectedItems的使用: If .Show = -1 Then      PathStr = .SelectedItems(1)      MsgBox PathStr Else      MsgBox "Cancel" End If 如果选了文件夹并点了确定按钮,Msg就会显示出所选文件夹的路径;如果选了取消,Msg就显示Cancel。实际应用中,通常在.Show返回0的情况后面跟Exit Sub,退出程序。 需要注意的是,如果上面的例子我们没有使用选择文件夹的参数,而是msoFileDialogOpen或msoFileDialogSaveAs,在文件对话框里选择了文件并确定后,系统并不会真的执行Open或者Save动作,而是要再写Workbook.Open语句进行操作。 FileDialog的参数可以使用msoFileDialogFilePicker来选择多个文件,因为.SelectedItems返回的是一个集合,包括所有选中的文件名,所以

Power Query学习笔记1:多列聚合求和

图片
 需求分析:公司在全国有多个销售区域,每个销售区域又有多个项目组。现需从各销售区、各项目组收取1-12月的销售数据并汇总,汇总字段按照销售区区分。 此文目的:多个表格的简单整合比较容易,使用PQ可以实现自动更新,数据处理能力也大大提升。此文针对的是多表汇总后进行的按销售区域聚合的步骤。 解决思路:数据聚合可用的方法有”分类汇总“或”数据透视表“,但是因为上一步骤使用PQ对多表进行了整合,再对整合后的表另外单独数据透视就有点繁琐,何不一步到位在PQ中进行聚合?PQ中自带“分组依据”功能。下面是例表,同时先看下“分组依据”如何使用。 “分组依据”功能对于需要求和的列数不多的情况下很方便,但如果1-12月均需要进行求和,就要在第④步中操作12次。所以我想对这一步进行简化。 我们需要用到的函数是Table.Group[ 官方文档 ],先用最简单的形式写出这个函数,看看会抓取到什么结果。 可以看到,Group按照区域名称抓取了每个区域的数据,汇总成一个Table放在我们构建的”数据“列。对于单个Table,我们无需再进行聚合,直接对其每列数字进行相加就可以了。拿”北京“区域为例,先把它转换为列表,再使用List.Sum函数相加。 还要使用Table.FromRows函数把列表转换为一行表格。为了标识列,使用Table.ColumnNames函数获取源表的列名和汇总的结果拼接在一起。 退回步骤一,既然我们有了每个区域的汇总表格,那就可以在步骤一中用步骤二的代码对”数据“列进行替换了。 这时再对步骤一的"数据"列进行扩展即可。 最终表的效果如图

“元宇宙”将深刻影响的六大行业

 近期《黑客帝国:矩阵重启》上映了,全球观众又跟随基努·里维斯回到了Matrix的虚拟世界。抛开机器与人类的对立,Matrix放在今天来说也相当于一个“元宇宙”,就和《头号玩家》里的绿洲一样,只是在Matrix中人类没有选择权。 “元宇宙”是什么这里不再赘述,普遍认为,“元宇宙”将是一个包罗万象、无限逼近真实的虚拟世界,在未来某一天,元宇宙可能取代现实世界,成为人类生活的主要场景。如果这种愿景最终发生,将会对现在的某些行业产生深刻的影响,甚至颠覆。 1.电信产业 前几年4G技术刚刚普及时,“无限流量”成了运营商吸引用户的手段,大家乐观认为,随着基础设施的完善,“5元30M”的时代一去不复返,流量越来越不值钱,最终大家都可以用很低的价格体验”无限流量“。然而事实是,现在三大运营商均已取消”无限流量“套餐,即使进入5G时代,”无限流量“也没有回归的迹象,最多就是”达量限速“。究其原因,有工信部的整治,也有运营商的盈利需要,但本质是,现在已经进入流量世界,无论是看短视频,即时通讯,还是玩游戏,甚至打电话(手机厂商的”畅连“技术),都需要流量,内容的出产速度远远大于基础设施的建设速度。而“元宇宙”基本是现实社会的映射,其数据量更是天量级别,到时除非基础技术发生革命性变革,否则我们将进入一个“流量紧缺”时代,甚至现在的“宽带”都要按量收费了。因为数据传输已经实质上成为基础设施产业,很有可能未来的流量费变成一种“税”,由政府收取。 2.商业地产 2020年突然爆发的新冠疫情让许多公司第一次尝试在家办公,有些公司会发现,在家办公不仅没有影响工作效果,反而节约了租金、水电等成本。在元宇宙里,在家办公的效果更加显著,不是单纯的通过即时通讯派发任务,通过远程系统操作办公软件,而是像在真实世界中一样,能够和老板、同事、合作伙伴面对面交流,就像《星球大战》里绝地武士们通过全息投影开会。企业雇佣员工目的是获取的是员工的idea,如果idea通过线上传播实施,还有什么理由一定要坐在办公室里呢?再者,现在已经有个趋势,就是线上劳动者逐步增多,如视频主播,推广代理等之前被称为“自由职业”的群体,未来对写字楼的需求即使不会下降,也没有增长的理由。商业地产开发可能会萎缩到很小的规模。 3.设计行业 设计如今是个门槛较高的行业,不仅要有天赋,也要花费一定精力学习各种复杂的软件和工具。但是在元宇宙中,可能

VBA学习笔记4:再说数组赋值

之前以为自己把数据的概念搞清楚了,在工作中多次涉及到相关知识点,但还是有一次出了问题。在给数组变量赋值时,发现直接引用单元格的方式行不通了,提示“类型不匹配”。我用了如下语句:  Dim sht() sht = Worksheets(1).Range("B4:B6") 在 《VBA学习笔记2:数组的使用》 中,我曾总结: 直接引用区域也是创建数组的办法,因为range的默认方法是value,所以直接使用arr=range("A1:B6")这样的语句就能为数组赋值了。 但是用 sht = Worksheets(1).Range("B4:B6") 却出现错误。使用Debug检查发现一些问题。 首先用 Debug.Print TypeName(Worksheets(1).Range("B4:B6")) 检查了数据类型,返回“range”,而dim sht()时,sht的默认属性是variant,是否是这个原因造成无法赋值呢? 但是当我把Worksheets(1)去掉时,这个语句居然奏效了,虽然 Debug.Print TypeName(Range("B4:B6")) 出来的还是“range”类型,但sht = Range("B4:B6")的赋值确实是有效的。 那如果我要赋值的数据不是当前工作表呢?试着把Dim sht()去掉,也就是说赋值前不声明数组变量, sht = Worksheets(1).Range("B4:B6") 居然也奏效了, Debug.Print TypeName(Worksheets(1).Range("B4:B6")) 依然返回“range“。 再试一下,如果直接声明Dim sht,或Dim sht as variant,则后面的语句无论加不加worksheets都能生效。 这让人感觉有点混乱,稍微一个不小心就会出错。在微软官方文档并没有找到相关说明。 总结了一下引用区域对数组赋值的两个规则: 1.range对象可以为未声明变量或variant变量(Dim x)赋值,其值会转换为variant类型。 2.声明数组变量后再赋值,只适合当前工作表,不能引用range的父对象。