InK

100年前的Kindle阅读机长啥样?

流过昼夜 提交于 2020-08-18 10:21:36
      大数据文摘出品    来源:engadget    编译:Andy   早在电子阅读器出现前,人们就早想给书压缩成更方便携带的形式了,毕竟书多的人都知道搬家有多痛苦。   现在,电子阅读器差不多已经成了 最普及科技产品之一 了,里面原因种种(比如说刚好能盖住一碗泡面,手动狗头)。而且即使有了平板人们都还会去用它,首先因为价格不贵,入门款Kindle才80刀,也不用天天充电。加上电墨水屏看书对眼睛也会好些上,也不会让你晚上睡不着觉。此外,它很轻很薄,莎士比亚全集你一只手就能拿手上。   虽然看起来电子书好像是最近出的,但其实这种将文字压缩成只有设备才能读取格式,并且便于携带的想法,可能比《了不起的盖茨比》(1925年)还要久远了。   这个想法最早可以追溯到 20世纪20年代初 ,菲斯克阅读机的发明。    菲斯克其人   布拉德利·艾伦·菲斯克(Bradley Allen Fiske)生于1854年,曾在美国海军有过一段漫长且辉煌的军事生涯,还当到了 海军上将 。   当然他可不仅仅只是名海军军官,他同时还是个 多产的发明家 。他在战争技术方面做出了很多创新,比如说为舰艇火炮设计 望远镜瞄准器、电子测距仪、机动炮塔 ,以及为鱼雷设计 无线电控制 和 空中发射系统 。在美国卷入一战的前一年,他刚好60岁出头,光荣退役了,但他对发明的热情却丝毫不减,仍然继续他的发明家生涯。

win10下使用mklink命令给C盘软件搬家

一曲冷凌霜 提交于 2020-08-18 05:05:42
在windows下,大多数软件会默认安装在C盘,即使小心翼翼地点开“自定义”->“安装路径”,然后把软件安装到其他盘,还是会有很多软件用到的数据文件被塞到C盘,虽然可以到注册表修改软件默认安装路径以及数据存储路径,然而emmm...并没有多大用处,C盘还是会被塞满。 我C盘是SanDisk的SSD,虽然128G不算少,但是我分了十多G给PrimoCache做缓存,然后又装了很多很多的软件,C盘被塞得满满当当的,这时候需要把C盘上一些文件搬到其他盘。然而C盘大都是软件会用到的数据文件,直接Ctrl+X,Ctrl+V的话会出现很多问题,那么可不可以在搬家后给原来的路径搞个“代理”,把路径指向文件的实际地址?如下图所示: 接下来我们就试验下吧,先试着用快捷方式来实现搬家: 我这里把迅雷安装路径下整个文件夹剪切出来,然后在原来路径下放个快捷方式,然后双击桌面上的迅雷快捷方式,成功启动,并没有啥不妥,接下来换个方式: 把迅雷中的resources文件夹剪切出来,然后把快捷方式放进去,然后启动迅雷,emmm。。迅雷打不开了。 为什么会出现这样的问题,很简单,第一次操作是把迅雷整个文件夹剪切出来的,这个文件夹包含了迅雷运行的所需要的所有文件,第二次操作时,迅雷的程序找不到resources里面的文件,所以就运行不起来了,那为什么把快捷方式放这里没有用呢。 其实是因为快捷方式本质是个.ink文件

无所不能的Embedding 1

强颜欢笑 提交于 2020-08-17 20:09:17
word2vec是google 2013年提出的,从大规模语料中训练词向量的模型,在许多场景中都有应用,信息提取相似度计算等等。也是从word2vec开始,embedding在各个领域的应用开始流行,所以拿word2vec来作为开篇再合适不过了。本文希望可以较全面的给出Word2vec从模型结构概述,推导,训练,和基于tf.estimator实现的具体细节。完整代码戳这里https://github.com/DSXiangLi/Embedding 模型概述 word2vec模型结构比较简单,是为了能够在大规模数据上训练,降低了模型复杂度,移除了非线性隐藏层。根据不同的输入输出形式又分成CBOW和SG两种方法。 让我们先把问题简化成1v1的bigram问题,单词i作为context,单词j是target。V是单词总数,N是词向量长度,D是训练词对,输入 \(x_i \in R ^{1*V}\) 是one-hot向量。 模型训练两个权重矩阵, \(W \in R ^{V*N}\) 是输入矩阵,每一行对应输入单词的词向量, \(W^{'} \in R ^{V*N}\) 是输出矩阵,每一行对应输出单词的词向量。词i和词j的共现信息用词向量的内积来表达,通过softmax得到每个单词的概率如下 \[\begin{align} h =v_{wI} &= W^T x_i \\ v_{w^{'}j

flutter显示图片和弹窗使用方式大全

谁说我不能喝 提交于 2020-08-15 01:55:18
本示例包含 弹窗(对话框): showDialog、showAboutDialog、CupertinoAlertDialog、context共享性dialog(StatefulBuilder构建), 列表弹窗 showBottomSheet 、showModalBottomSheet、类似于Toast的 showSnackBar 提示 、各种按钮、列表、按钮水波纹效果、设置语言、右上角菜单 PopupMenuButton、PopupMenuItem等 图标加载示例包含: Icon、ImageIcon、NetworkImage、从内存解密(base64Decode)加载图片(Image.memory)、渐显式加载图片FadeInImage、给图片添加按下事件GestureDetector、Ink.image、从应用assets目录加载 Image.asset、图片圆角等 效果: 请先在flutter 根目录创建image文件,随便找两张图片命名为 bg.png 、aad.webp 放进去。 完整源码如下: main.dart import 'dart:convert'; import 'dart:math'; import 'dart:typed_data'; import 'package:flutter/cupertino.dart'; import 'package

玩转Microsoft Teams Room系列 5

吃可爱长大的小学妹 提交于 2020-08-12 04:44:14
运筹帷幄之中,决胜千里之外 - 西汉·司马迁《史记·高祖本纪》 使用场景 之前一篇文章介绍了通过XML文件来自定义MTR的背景图片,其实我们通过XML文件其实还可以做更多在MTR会议室的日常运维任务。 想像一下这样一个场景:当你需要为分布在不同地方的多间MTR会议室进行配置或管理的时候,例如: 变更MTR会议室的帐号? 在改密码之后需要更新MTR设备的密码? 为了安全原因需要隐藏会议主题? 会议室新购多一块会议交互大屏,变成了双屏会议室?我们需要打开MTR的双屏显示开关 自定义MTR的主题图片?参考这篇: 自定义主题让你的MTR会议与众不同 具体配置步骤 这些操作我们都可以通过XML配置文件的方式远程推送给MTR设备来实现(用共享目录的方式来推,用组策略来推,用SCCM来推,都行,只要你能够把SkypeSettings.XML这份XML文件放在MTR的指定目录即可) 什么是MTR? Microsoft Teams Room 首先需要先创建一份名字为SkypeSettings.XML的文件。 接着就可以去修改SkypeSettings.XML里面的内容,例如以下代码配置了三个设置(自动屏幕共享,隐藏会议主题,MTR帐号)。 PS. 当你要运维多个MTR会议室时,你不需要把所有参数都放在XML里面,只需要把要改的放进来即可,这样就可以有针对性地去维护这些会议室。

win10下使用mklink命令给C盘软件搬家

隐身守侯 提交于 2020-08-11 00:10:35
在windows下,大多数软件会默认安装在C盘,即使小心翼翼地点开“自定义”->“安装路径”,然后把软件安装到其他盘,还是会有很多软件用到的数据文件被塞到C盘,虽然可以到注册表修改软件默认安装路径以及数据存储路径,然而emmm...并没有多大用处,C盘还是会被塞满。 我C盘是SanDisk的SSD,虽然128G不算少,但是我分了十多G给PrimoCache做缓存,然后又装了很多很多的软件,C盘被塞得满满当当的,这时候需要把C盘上一些文件搬到其他盘。然而C盘大都是软件会用到的数据文件,直接Ctrl+X,Ctrl+V的话会出现很多问题,那么可不可以在搬家后给原来的路径搞个“代理”,把路径指向文件的实际地址?如下图所示: 接下来我们就试验下吧,先试着用快捷方式来实现搬家: 我这里把迅雷安装路径下整个文件夹剪切出来,然后在原来路径下放个快捷方式,然后双击桌面上的迅雷快捷方式,成功启动,并没有啥不妥,接下来换个方式: 把迅雷中的resources文件夹剪切出来,然后把快捷方式放进去,然后启动迅雷,emmm。。迅雷打不开了。 为什么会出现这样的问题,很简单,第一次操作是把迅雷整个文件夹剪切出来的,这个文件夹包含了迅雷运行的所需要的所有文件,第二次操作时,迅雷的程序找不到resources里面的文件,所以就运行不起来了,那为什么把快捷方式放这里没有用呢。 其实是因为快捷方式本质是个.ink文件

为什么 WPF 软件在 win7 启动时会尝试调起 wisptis 进程

倾然丶 夕夏残阳落幕 提交于 2020-08-10 05:40:53
我看到一个问题是在 win7 系统上,如果开机启动的软件是 WPF 软件,而这个 WPF 软件在系统的 wisptis 进程启动之前就启动了,那么 WPF 将会调起 wisptis 进程。而在 wisptis 进程已经启动完成,此时启动 WPF 进程不会再打开新的 wisptis 进程。但是被 WPF 启动的 wisptis 进程存在这样的问题,在触摸屏上 win7 的双指打开右键菜单等功能不可用 在 WPF 启动时,将会在 Window 类的 Visibility 修改时调用到 WispLogic.RegisterHwndForInput 方法进行初始化触摸,这部分详细请看 WPF 触摸到事件 而在初始化触摸时,需要用到 PenIMC 的逻辑 在 win7 系统上,触摸需要通过 wisptis 进程的辅助才能让 WPF 进程能够完成实时触摸,这里的 wisptis 是 Windows Ink Services Platform Tablet Input Subsystem 进程,用于处理触摸书写等功能。也是 RealTimeStylus 的提供,通过一些不靠谱的文档和经验,其实 PenIMC 的核心逻辑就是 RealTimeStylus 提供的。上面这句话对或不对我不敢说,只能说用 RealTimeStylus 可以实现 PenIMC 的效果,而且 API 和参数差不多 那么

如何把门禁卡做成你用不起的样子?B站up主自制迷你卡片,公司小区通刷,还带墨水屏的那种

谁说胖子不能爱 提交于 2020-08-06 06:59:31
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 这次,野生钢铁侠稚晖君带着他的硬核项目又来了。 上次自制纯手工打造AI小电视,播放量就超过300万,还登上了b站首页。 可能有些朋友对他还有点陌生。 他毕业于电子科大生物医学工程,大学期间就自学计算机,现为OPPO算法工程师,还是Arduino中文社区版主。 那么「稚晖君」这次带来的是什么样的新奇项目呢? 如何让门禁卡做成你用不起的样子?——纯手工自制智能卡片,公司小区门禁通刷,还带电子墨水屏,将自己的头像显示卡片上。 还延续了上次的传统,野生钢铁侠的「铁律」——足够迷你。 它是这样的。 就是那个UP主手里小小的,写着「稚晖」二字的DIY卡片。 视频上传不过一天,播放量就逼近100万… 这个项目也在GitHub上开源,短短两天就收获1.3k星。 不过开源又怎么样,网友表示还是做不出来。 开源很了不起吗?说的好像你开源了,我就能做出来似的。 那么这样一个「就算开源也做不出来」的项目到底是怎么样的呢? 我们就来好好了解一下。 这张卡公司小区门禁通刷 让稚晖君萌生这种想法的原因是,每天出门要携带各种卡片,非常不方便。 有了这张自制卡片,稚晖君就能优雅地打开公司大楼和办公室门禁。 你也许会说,现在很多手机不是也支持模拟门禁卡了吗? 没错,手机的确能实现模拟门禁卡

Leetcode:NO.25 K 个一组翻转链表

£可爱£侵袭症+ 提交于 2020-08-05 17:48:30
题目 题目链接:https://leetcode-cn.com/problems/reverse-nodes-in-k-group 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 k 是一个正整数,它的值小于或等于链表的长度。 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 示例: 给你这个链表: 1 - > 2 - > 3 - > 4 - > 5 当 k = 2 时,应当返回 : 2 - > 1 - > 4 - > 3 - > 5 当 k = 3 时,应当返回 : 3 - > 2 - > 1 - > 4 - > 5 说明: 你的算法只能使用常数的额外空间。 你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。 解题记录 更据K的大小分组转换 记录每组头节点和尾节点 循环将头节点的值插入到尾节点的后面 遍历链表直到不满足K大小组出现,跳出 /** * @author ffzs * @describe K个一组翻转链表 * * 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 * k 是一个正整数,它的值小于或等于链表的长度。 * * 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 * 示例: * * 给你这个链表:1->2->3->4->5 * 当 k = 2 时,应当返回: 2->1->4->3

kafka的基本介绍、架构

感情迁移 提交于 2020-08-05 13:57:21
一、kafka的基本介绍 官网:http://kafka.apache.org/ kafka是一个分布式,分区的,多副本的,多订阅者的消息发布订阅系统(分布式MQ系统),可以用于搜索日志,监控日志,访问日志等。 最初由linkedin公司开发,使用scala语言编写, Kafka is a distributed,partitioned,replicated commit logservice。 kafka对消息保存时根据Topic进行归类,发送消息者成为Producer,消息接受者成为Consumer,此外kafka集群有多个kafka实例组成,每个实例(server)成为broker。无论是kafka集群,还是producer和consumer都依赖于zookeeper来保证系统可用性集群保存一些meta信息 二、kafka的好处 可靠性: 分布式的,分区,复制和容错。 可扩展性: kafka消息传递系统轻松缩放,无需停机。 耐用性: kafka使用分布式提交日志,这意味着消息会尽可能快速的保存在磁盘上,因此它是持久的。 性能:kafka对于发布和定于消息都具有高吞吐量。即使存储了许多TB的消息,他也爆出稳定的性能。 kafka非常快: 保证零停机和零数据丢失。 三、分布式的发布与订阅系统 apache kafka是一个分布式发布- 订阅消息系统和一个强大的队列