MeloGuo Blog

努力给生活加点甜

【翻译】沈向阳:文如其人

推特、PPT、脸书、Ins和短信正在侵蚀我们思考的能力吗?

推特、PPT、脸书、Ins和短信正在侵蚀我们思考的能力吗? 有一句中文谚语说得好“见文如见人”,字面上的意思是“读到文字就如同看到作者本人”。如果确实是文如其人,那么作为一个社会整体我们是什么呢? 最近我参加了一场技术评论,听到我们一位评论者在拷问工程师:你为什么选择这个设计?服务为什么表现出了不好的结果?有多少用户将会切换到该解决方案? 展示者的回答缺乏深度。看起来他似乎并没有做足够...

我的数据备份方案

硬盘坏了就神作了

我的数据备份方案 随着手中设备的增多,不同设备间的数据备份和同步就成了一个头疼的事情。所以通过这篇文章来总结一下目前我自己一个基础的备份方案,目标就是花最少的钱,达到最好的效果。我目前的设备为MacBook Pro、iPad mini、OnePlus 6,两台苹果设备,一台安卓设备。如果是三台苹果设备的话肯定就iCloud通吃了,但是因为穷买不起iPhone,所以就得想点好办法。在存储介质的...

搭建 SS 服务流程

总是借别人的梯子爬,今天自己搭个梯子吧!

之前使用的梯子都是市面上现成的收费服务,例如蓝灯之类。后来有朋友给我推荐了shadowsocks,并且把他的服务器借给了我。用了几个月感觉很爽,但是许多人公用一个毕竟速度会很不乐观。上youtube一般只能看480P的视频,所以一直想自己搭建一个SS服务器来享受高速的代理。 搭建SS服务流程 之前使用的翻墙服务都是市面上现成的收费服务,例如蓝灯之类。后来有朋友给我推荐了shadowsock...

我们为什么需要let与const

因为var就是个垃圾。 - 鲁迅

ES6创造出一个新东西,那必然是为了解决原有的问题。而在ES5中声明变量用的var关键字是真的有一大堆问题。 变量提升 用var声明的变量会提升(Hoisting)真的是个很恶心的事。 function foo () { console.log(a) var a = 1 } foo() // undefined 明明我们是在console.log语句下方声明的a变量并且给他赋值为...

《深度工作》阅读笔记

深度定制我的工作!

何为深度工作 深度工作,即有规律、有计划地在一段时间内,无干扰的高度集中注意力的去完成工作。 为何深度工作 首先,深度工作的前提是这样一个假设: 因为互联网信息的碎片化,深度工作能力日益稀少,而几乎同时,其在社会经济中的价值也日益提升。因此,能够培养这项技能,并将其内化为工作、生活之核心的人,将会取得成功。 如何定义成功?在我看来,可以达到自己的定下目标即为成功。和此书作者卡尔·...

微信小程序调起键盘性能优化

想写好小程序就得有点奇淫异巧啊......

在小程序中,我们经常有调起键盘的操作场景,但是在不同的场景下解决方案不尽相同,还是需要具体问题具体分析。 需求分析 最近在项目中有一个需求,是从列表页点击评论按钮进入详情页时,在加载完页面后自动调起键盘进入评论状态。从需求来看,我们应该在onReady函数中调起键盘,因为onReady函数是在页面初次渲染完成时被调用。但是在实践中我们发现,对于一些配置不好的手机,其加载页面速度较慢,在onR...

new 操作符到底干了什么?

叔叔,你能给我 new 一个对象吗?

前几天无意间发现了刚开始学JavaScript时在知乎写的一些回答,有一个就是讲new操作符到底干了什么。从现在的视角看我当时的回答虽然是正确的,但是在对原理的剖析和细节的理解上还相去甚远。所以借此机会,就想重新梳理一下这一年多来对new操作符理解的变化与成长。 模拟new操作符 第一次去了解new操作符,是在看《JS高级程序设计(第三版)》这本书时,P145是这样写到的。 要创建P...

Gulp 学习笔记

虽然 gulp 过时了,但也了解下

在学习Gulp之前我只简单的在demo中使用过webpack,而从来没有尝试过gulp。正好在这次学习小程序的过程中,看到一个使用gulp进行小程序构建的教程,所以趁此机会学习一下gulp的使用。 最近使用gulp时候遇到了一个问题,就是安装执行失败,后来发现是版本问题。解决方法 # 新版本 npm install -D gulp-babel @babel/core @babe...

常用的canvas函数

还用 canvas 写了一个设计小游戏

常用 API 获取目标元素 var myCanvas = document.getElementById("canvas"); var context = myCanvas.getContext("2d"); 绘制矩形 context.fillRect(x, y, width, height); // 绘制实心矩形 context.strokeRe...

JS中的异步简介

异步 同步与异步 同步:等待结果 异步:不等待结果 经常和同步异步一起出现的一对词语是阻塞与非阻塞 前端经常遇到的异步 // 图片加载是异步的 document.getElementsByTagName('img')[0].width // 宽度为0 document.getElementsByTagName('img')[0].onload = function () { co...