Python 发送电子邮件

Python 发送电子邮件

Python 发送电子邮件需要依赖 smtplib 和 email 两个 Python 自带模块

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText …
阅读全部

DropKindle 第一版本发布后复盘

DropKindle 发布了第一个版本

7月4号晚上的时候我上线了 DropKindle 的第一个版本,功能也只有 Dropbox 里的文件推送到 Kindle。 然后我就在 Twitter,V2EX,HiPDA三个地方发了推和帖子来和大家分享这一功能。不过收到的反馈和关注 少的特别特别可怜。

事后我稍微分析了一下这里面的原因

  • IFTTT 本来就可以做到 Dropbox 里的文档推送到 Kindle ,这么个重复的功能并且还不成熟没有亮点,肯定不会有人关注
  • Dropbox 在国内的用户真的是很少了,付费用户估计更少,所以很少有人来关注 …
阅读全部

长租公寓被坑指南 作者:小上 Twitter @fxupupup

搬运文章

原文点我 需要翻墙

原作者:小上,Twitter @fxupupup

从推友们手里收到的合同有自如、蛋壳、青客和链家这几个平台的,其中链家的那份合同不是长租合同,就是传统的中介,在这就先不说了;青客的那个合同十分简单,看着像是一个没有法务的公司拟出来的东西,也没有很坑,所以也不提了……

重点看看自如和蛋壳这两个长租公寓平台的合同吧,啧啧,真的看得出来他们是用心了的,“别有用心”的那种用心。

按照我习惯的方式,分点陈述吧。

房屋设施老化维修费用承担 人为造成的损坏都由承租人承担维修费用,这没什么可说的。看一下房屋自然老化的维修都怎么处理:

蛋壳的合同里约定了承租人要支付“维修金”,也就是说修房子的钱要租客掏。(合同中明确约定了“乙方按时支付维修金的,甲方承担房屋及附属物品、设备设施因老化产生的维护、维修事宜”,意思是如果没交维修金就可以不管了。)

自如比较正常,直接约定由平台承担。

房屋转租成本 依照法律规定,承租人转租租赁标的要经过出租人的同意,所以两家都对转租设置了门槛。看合同,自如和蛋壳的转租手续费都是半个月的租金。

我觉得这个约定明显是不合理的,毕竟《最高人民法院关于适用《中华人民共和国合同法》若干问题的解释(二)》规定了,违约金超过实际损失30%的,就属于过高。承租人如果能自己找到下一个符合条件的租客,对出租人实际上是没有造成损失的。

但这也都是没办法的事,你们谁也不能为了半个月租金去打官司对吧。

提前退租成本 自如:无论租了多久,提前退租就是违约,就要付一个月租金。

蛋壳:比自如人性化一下,租赁期限一年以上的,提前45日通知且配合看房可以不付违约金。

租金逾期违约金 …

阅读全部

终于通过了Google AdSense

先上一图 googleadsense.PNG

回想一下第一次申请Google AdSense的时候还用的是tk域名,申请了多少次忘记了,这次终于用com域名和几篇内容通过了申请。通过了审批对内容的产出来说是一种鼓励,并不是单纯的以后可能会有一点点广告费可以拿了。接下来的时间里我会尽可能的把时间用在多阅读,多写,多实践上面。

申请Google AdSense的要点其实也就是做好一个个人网站的几个要点:

  • 域名可能不是那么重要,但是如果能有一个自己的顶级域名应该会是锦上添花
  • 内容一定要原创,并且要丰富,几篇是不容易通过的
  • 内容要符合Google的要求
  • 网站一定要可以访问,因为有一次没有通过的原因是Google说我的网站不可以访问,虽然我一直以来都没有把网站的服务关掉过。

在申请通过之后,要注意严格按照Google的要求,不要作弊,努力产出内容,再提升自己的同时还可以拿到一点算是对VPS的补贴。

阅读全部

Docker Compose + PyCharm打造Django + MySQL容器化开发环境

一、 创建容器项目目录

mkdir Docker_Project && cd Docker_Project

二、 在容器目录中创建DB文件夹以及Django Project的文件夹

mkdir db Blog

三、在Blog目录中创建requirements.txt文件

vim Blog/requirements.txt

django
mysqlclinet

四、创建Dockerfile docker-compose.yml配置文件 …

阅读全部

Bose QC30 使用三日谈

Bose QC30降噪耳机使用三日体验感受

程序员的工作重要的是人Mac合一,其它万事万物皆空的感觉,有了这种感觉之后,码思如泉涌,手速赛单身。Bose QC30给我的就是这种感觉。

办公室是一个复杂的环境,咳咳,老师要划重点了,此处的复杂只是字面意思容不得你多想,毕竟程序员没有勾心斗角的脑子,顶多就是关于各种技术的文人相轻。所以降噪耳机在我看来就是办公室中尤其重要的办公用品(凸显出其在工作中的重要性,然后就可以名正言顺的剁剁剁)。

QC30我是在周六下午拿到的,拿到之后就迫不及待的拍了没有()()之前的样子,然后打开了它,按下开机键打开之后会默认的打开降噪并且降噪程度会开到最大,链接iPhone之后就开始各种听听听了。降噪的效果一定是超级明显能感觉得到的,和封闭式的并不相同,佩戴舒服,并且并不闷,佩戴的感觉很小很小,不太能明显的感觉耳朵被什么东西 额。虽然带着降噪耳机能明显的感觉整个世界都安静了很多,但是也听到了不小的电流声,然后就觉得很失望,但是后来想了想,我有耳鸣……好久了……这锅并不知道到底是谁的啊。好在是我还算习惯了所以过了一会儿也就感觉并没有什么了,所以降噪效果是好评的。

之前用过Bose SoundTrue Ultra,鲨鱼鳍的佩戴感受没得说,很棒,入耳式我是不喜欢的,感觉太撑并且还闷,时间一常就不舒服了。

音质来说,那就是我俩木耳还说个什么音质啊!哦,比苹果小白低音棒,但是没有Bose SoundTrue Ultra来的汹涌澎湃,低嚎的还不够给力,可能是因为还很新,并没有煲开的原因?

大概就先这么多,图之后补,(文思虽然有,脉络得整理,负分滚粗)

阅读全部

要填的坑

要写的文章列表


  • Docker VMess
  • LastPass使用感受并且为什么切换到了1Password
  • Yubikey的日常使用
  • Sapcemacs日常使用(安装,配置,浏览器,邮件收发,使用代理,Shell)
  • 西瓜书笔记
阅读全部

语法糖&&为什么要在密码数据库里加点儿“盐”

语法糖

维基百科,自由的百科全书

语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·兰丁发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。语法糖让程序更加简洁,有更高的可读性。

举例来说,许多程序语言提供专门的语法来对数组中的元素进行引用和更新。从理论上来讲,一个数组元素的引用涉及到两个参数:数组和下标向量,比如这样的表达式,get_array(Array, vector(i, j))。然而,许多语言支持这样直接引用 Array[i, j]。同理,数组元素的更新涉及到三个参数,set_array(Array, vector(i, j), value),但是很多语言提供这样直接赋值,Array[i, j] = value。

语言处理器,包括编译器和静态分析器,在处理的过程中,首先把“加糖”的结构变成基本的结构,这个过程叫做“去糖”。


为什么要再数据库里面加点儿盐

Salt 可以是任意字母、数字、或是字母或数字的组合,但必须是随机产生的,每个用户的 Salt …

阅读全部

开始LeetCode的学习

LeetCode第一题 Two Sum

Two Sum这道题大致的意思为:给定一个整形数组,然后根据一个目标数,算出是由数组中哪两个数相加 得出的结果,然后返回这两个数的检索值。

在看到这道题之后我想到了用连个for循环遍历每一个数组成员相加的结果,然后和目标数进行对比得到符合要求的数组成员,然后返回。

虽然这样可以得出结果,但是看了其他人的答案,有个一用到了HashMap,写的很精巧。

public int[] twoSum(int[] numbers, int target) …
阅读全部