V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Hawstein
V2EX  ›  程序员

AlgoCasts 用心做好每一个算法视频

  •  1
     
  •   Hawstein ·
    Hawstein · 2018-10-08 17:47:02 +08:00 · 3712 次点击
    这是一个创建于 2242 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前言

    丑媳妇早晚要见公婆,忙活了一段时间,觉得是时候把产品放出来和大家见个面了。先来看个介绍视频:

    介绍视频

    网址

    https://algocasts.io/

    源起

    嗯,我辞职了,决定自己完整地做点事情。这个想法从学生时代一直萦绕在我脑里,时隔多年,直到今天终于去践行了。从学生到后端开发工程师,再到后端技术负责人。这么多年过去,除了技术上的精进,我还收获和成长了许多。但此刻,在写这篇文章时,我最想拿出来分享的收获并不是技术水平的成长、架构能力的提升或是团队管理能力的进步,而是一项被很多人忽视的品质:勇气

    我觉得大部分人缺乏勇气,尤其是「优秀的人」、「聪明的人」。这里加了引号,是特指学生时代学习好,毕业后又能找到好工作的人。很多优秀的人上好学校,毕业后去好公司,人生步步为营,手手最优,而这些表象下,则包含了太多的恐惧。上学时埋头在课本和考试中,心里有想做的事不敢轻易尝试,怕学习上会落后;毕业后去知名公司工作,心里有想做的事不敢轻易尝试,怕影响工作影响绩效影响晋升,怕还不起房贷生不起小孩或是小孩上不起好学校。这个时候,所谓的「优秀」反倒成为一种无形的束缚,绑架着你,而且很多人不自知。

    我觉得自己原来就是这样的一个人(姑且不要脸地这么认为),人生步步为营,手手最优。当然了,当你回过头去看,大部分时候只不过是局部最优而已。

    所幸,这个时代出了很多优秀的公司,它们提供了非常牛逼的产品和服务,让你和世界上任何一个人的距离变得从未如此得近。你可以了解到世界上任何一个连着网的人的生活与所思所想,你可以看到他们的作品,你可以和他们交流,你可以从他们身上汲取勇气,你可以放弃掉以前不肯 /不敢放弃的东西,你可以了解到更多的可能性。(以后有机会的话打算在公众号和小密圈分享一下这些人的故事以及给我的启发)这么多年后,攒了足够多的勇气,我终于迈出这一步,辞掉工作,从零开始。

    做什么

    我有非常多想做的事情,有一点我非常确信,它们都不能改变世界:)但我还是希望能完整地去做完它们中的一件或几件,因为我也非常确信,它们能帮助一些人,这就足够了。这个世界有太多的「不够好」,我觉得每个像我一样的普通人都可以尝试去做一些小事,让这些「不够好」的事能变得更好一点。而每一件我想去做的事,基本上都有这个属性。

    在想做的几十件事里,我挑了件最不起眼的事开始:录制算法视频。这么选择的一个很重要原因是,我发现大部分访问我博客的人都是在看我学生时代写的面试算法相关的文章。看来面试时考察算法这一点,过了这么多年,还是没有变,尤其是大家眼中优秀的公司。这个其实非常好理解,这种方式对于大公司来说,可以极大地降低招聘成本。这个和中国高考类似,你当然可以全方位考察一个学生后再决定是否把他招入某个大学,可是这个成本太高了,最后还是制定了些简单粗暴的标准,用几张试卷的分数来判断你是否有进入某个学校的资格。

    如果游戏规则是这么定的,而我们又暂时无法改变游戏规则,那么比较稳妥的方式就是适应它,但不信奉它。你可以好好学习考个好分数上名牌大学,但千万不要以为考个好分数就是所有问题的答案或是生活的全部。同样,你可以好好准备面试算法去个好公司,但千万不要以为会做算法题就是个牛逼的工程师。在这种前提下,我觉得完全可以大大方方地捡起你通向理想公司(而且很多时候是毕业后的第一家公司)的敲门砖。

    这也是我觉得算法讲解视频值得做的原因。如果能帮助你去牛逼的公司体验一下,为什么不值得一试呢?至于你是拿着敲门砖敲完门后在某些大厂里养老,还是在这些大厂里快速学习成长,那就是你自己的选择了,当然这是后话。

    为什么要做这件事

    面试算法视频已经有不少人在做了,为什么我还想做呢?很简单,现有的做的不够好。在这件事上,我希望并且觉得自己能做得更好一些,于是就开始做了。我做的算法讲解视频有以下特点:

    专注一个点

    我注册的网站域名是 algocasts.io ,是 algorithm screencasts 的缩写合并。我只打算做算法视频,并且以录屏的形式进行,不会 AI 火就讲 AI,区块链火就讲区块链。最开始会从常见的面试算法题目开始入手讲解,我希望你在网上能找到的面试算法题目在我这都能找到相应的讲解视频。同时,这些题目里涉及到的经典或是有趣的算法,也会单独拿出来讲一讲。后面如果有机会,还可以讲讲各个算法竞赛里中低难度的题目,这些也常常是面试算法的来源。

    手绘讲解思路

    这点是借鉴可汗学院的,一边讲解一边手绘。我觉得一边讲解思路时,一边把图画出来,把数字写下来,可以让学习者更好地去理解。

    编码+讲解

    讲解完思路后,会一行行敲代码并且一行行讲解,这部分可以呼应手绘的思路图。

    努力做到最全

    我初步定了一个小目标,录制 1024 个视频。

    努力做减法

    在保证讲解清楚的基础上,尽可能地不讲废话,保持每个视频的简短。这个是看了一些很长的讲解视频后做的决定。

    当前进度

    目前录制了 50 个常见面试算法题的讲解视频。下一个 milestone 是 100 个视频。

    从过去一个多月录制视频的速度来看,单天录制的视频数量是 0 ~ 3 个不等。0 个一般是当天有别的事情无法待在家里录音,而当自己效率非常高且录制的题目不是很难时可以达到 3 个。平均下来,每天可以录制一个视频。不过考虑到过去一个月在准备婚礼属于比较忙的,后面的每日平均数量我觉得可以提升到 1.5 ~ 2 个:)如果平均一天能录制一个,差不多需要三年的时间可以达到这个小目标;即使平均每天录制两个视频,也要 512 天,差不多一年零五个月的时间。以前年轻时经常想 21 天精通 XYZ,现在则更愿意花上几年做一件小事(当然,前提是不要饿死:P )

    为什么要收费

    要持续高质量地录制算法视频有一个大前提,不能饿死:)目前我是全职在做这件事,没有其它收入,因此我想是有必要对这些产出做些收费。每个视频的制作净时间大概是 2-5 小时,取决于题目难度以及当时的录制状态。一个算法讲解视频的制作流程是:

    • 做题并且找到所有可能的解法,尤其是要找到最优解
    • 构思讲解内容,开始撰写 script
    • 录音
    • 录屏,包含手绘+编码
    • 剪辑+后期

    我自认为制作的视频质量还不错,而且价格公道,童叟无欺:)因此,如果我做的事恰好可能帮上你,而你又恰好看到这篇文章,希望能得到你的支持,谢谢:)

    AlgoCasts 网站目前推出了两个套餐:Plan 40Plan 100Plan 40 已经录制完,包含 40 个常见的面试算法题目讲解视频,如果你时间紧建议购买这个套餐。Plan 100 在包含 Plan 40 里 40 个视频的基础上,每日更新一个常见算法题目的讲解视频,由于还没录制完,因此目前的定价是早鸟价,如果时间上不着急,建议购买这个套餐。毕竟 100 个视频录制完后会涨价=。=

    后记

    这是我的一个实验,自己完完全全地去做一件事,并以此养活自己。哪怕这件事很小,我也会认真并全力以赴去做。当然,我完全做好了失败的准备。如果这件事不足以养活自己,我还是会去找份工作,毕竟饿着肚子搞创作可能出不了什么好作品。但我不会停止这件事情,只不过整个录制进度会慢下来。所以如果这件事能帮上你,真心希望能得到你的支持,让我们一起来完成这件小事:)

    如果还有什么疑问是这篇文章没有给到你解答的,可以添加微信 Hawstein-Studio 咨询。

    32 条回复    2019-03-04 20:46:50 +08:00
    fhefh
        1
    fhefh  
       2018-10-08 18:22:12 +08:00
    楼主 视频中在屏幕上写板书的是啥软件~
    Justin13
        2
    Justin13  
       2018-10-08 18:27:48 +08:00 via Android
    支持一下。不过放到推广节点更好
    Hawstein
        3
    Hawstein  
    OP
       2018-10-08 19:16:12 +08:00
    @fhefh SketchBook
    Hawstein
        4
    Hawstein  
    OP
       2018-10-08 19:26:05 +08:00
    @Justin13 嗯嗯,受教了。
    jmc891205
        5
    jmc891205  
       2018-10-08 21:51:25 +08:00
    看了试看视频。。。
    我说话直你别介意 看到歪歪扭扭的线和字母 有点难受
    mathzhaoliang
        6
    mathzhaoliang  
       2018-10-08 22:05:35 +08:00
    我的建议:

    1. 我的意见是用 Js 制作 canvas 动画,效果更好。毕竟论图文并茂,很难超过算法导论。
    2. 以你个人的力量,没有可能做大。而算法又是有一定门槛的,可以考虑做开源的算法类的 shadertoy。

    如果你的定位是面试应试类型的算法,盈利模式是收培训学费,那你走不远。
    Hawstein
        7
    Hawstein  
    OP
       2018-10-08 22:08:45 +08:00
    @jmc891205 哈哈不介意,我写字比较丑。。。而且使用的数位板,一开始的时候有些不习惯,画圆或线时都有些歪。现在最新的视频比以前的要好不少。
    Hawstein
        8
    Hawstein  
    OP
       2018-10-08 22:18:13 +08:00
    @mathzhaoliang 感谢建议。

    1. 目前制作一个视频大概花 2-5 小时,如果再用 JS 做 Canvas 动画的话,那制作一个视频的时间成本会更大。这个我觉得可以作为优化的点,但不会在一开始就做。
    2. 我没考虑做大。。

    面试算法只是切入点。后面我计划想讲的还有很多。。不过计划归计划,做好今天要做的就行,说不定明天就挂了呢?
    SingeeKing
        9
    SingeeKing  
       2018-10-08 22:31:00 +08:00
    请考虑一下黑暗模式的感受。。

    aheadlead
        10
    aheadlead  
       2018-10-08 22:31:32 +08:00
    欣赏楼主的态度。

    不过从视频的角度出发,手绘并不清晰易懂。
    我觉得楼上说的用 JS 做 Canvas 动画,能做到比手绘更清晰。但并不限于一定要用 JS 做,Keynote 也可以。
    Hawstein
        11
    Hawstein  
    OP
       2018-10-08 22:36:23 +08:00
    @SingeeKing 233333,确实没有考虑到。Suggestion Accepted.
    Hawstein
        12
    Hawstein  
    OP
       2018-10-08 22:41:41 +08:00
    @aheadlead 考虑过做 Keynote,不过当时觉得 Keynote 效果不如手绘,就没选。动画形式肯定是最好的,不过要做出好的动画非常难,期待有人去做。
    aheadlead
        13
    aheadlead  
       2018-10-08 22:47:51 +08:00
    @Hawstein #12 不论如何还是给楼主的精神点个赞吧。

    有些东西确实手绘不太容易讲清楚的,想起小时候刷过一道 USACO 月赛题,思路大概是分层图最短路。这种玩意如果有个动画展示分层图,基本上不用说话就能把意思讲清楚。
    Hawstein
        14
    Hawstein  
    OP
       2018-10-08 22:52:42 +08:00
    @aheadlead

    嗯,深有同感,我现在手绘已经遇到不少很难去表达的了。所以有的视频也会加入另外做的图(那个画起来估计得吐)以及一些额外的标记。不过你这么一说,其实后面我可以在一些手绘讲不清的地方,加入一小段动画。这个我还是可以做的。
    lhx2008
        15
    lhx2008  
       2018-10-08 22:54:51 +08:00
    1. http 是 nginx 默认页,建议跳转一下
    2. 算法视频,我非常喜欢的一个人,也录了很多收费的视频,他叫刘宇波,楼主可以参考一下:
    https://github.com/liuyubobobo
    Hawstein
        16
    Hawstein  
    OP
       2018-10-08 22:58:22 +08:00
    @lhx2008

    1. Http 我做了 301 重定向到 Https 的,不确实你那为什么会出现 Nginx 默认页。。
    2. 嗯嗯。我知道他。
    Hawstein
        17
    Hawstein  
    OP
       2018-10-08 23:49:51 +08:00
    @lhx2008

    看了眼是原来的 nginx 配置少加了条对 ipv6 的监听,现在应该可以了。
    cwcauc
        18
    cwcauc  
       2018-10-08 23:54:21 +08:00 via iPhone
    学生党看了下价格溜了溜了👀
    cwcauc
        19
    cwcauc  
       2018-10-08 23:54:53 +08:00 via iPhone
    还是支持楼主的
    Hawstein
        20
    Hawstein  
    OP
       2018-10-08 23:56:29 +08:00
    @cwcauc 学生党如果有优惠,是不是就不溜了?
    cwcauc
        21
    cwcauc  
       2018-10-08 23:59:03 +08:00 via iPhone
    @Hawstein 可以考虑一下哈哈哈哈
    cwcauc
        22
    cwcauc  
       2018-10-09 00:00:22 +08:00 via iPhone
    @cwcauc 自学数据结构学到自闭……先去睡觉了
    Hawstein
        23
    Hawstein  
    OP
       2018-10-09 00:02:57 +08:00
    @cwcauc

    哈哈哈。我也想录视频讲数据结构。
    bulabean
        24
    bulabean  
       2018-10-09 00:26:45 +08:00
    好奇说句,精心准备的高质量视频内容,被人盗卖了咋办
    glues
        25
    glues  
       2018-10-09 01:24:42 +08:00 via iPhone
    还不错,lz 加油!
    手写板只要能把问题讲清楚,并没有什么大问题
    Hawstein
        26
    Hawstein  
    OP
       2018-10-09 09:39:17 +08:00
    @bulabean

    后面会加些防盗措施。Hmm,不过只要想盗,是怎么也防不住的。。。这么说来应该在视频里多报一下姓名,被盗了还能传播个名字,2333
    Hawstein
        27
    Hawstein  
    OP
       2018-10-09 09:45:57 +08:00
    @glues 谢谢!我尽力讲好。目前是手写板先讲。如果后期视频处理时发现有哪些没讲清楚,再加上标注和辅助图。后面看来可以再加个辅助小动画。
    hepin1989
        28
    hepin1989  
       2018-10-09 13:35:01 +08:00
    强烈推荐!!!!!!内网已经推荐了。
    Hawstein
        29
    Hawstein  
    OP
       2018-10-09 13:48:23 +08:00
    @hepin1989 多谢大佬推荐!
    Hawstein
        30
    Hawstein  
    OP
       2018-10-09 13:57:54 +08:00
    @cwcauc 刚刚上线了学生优惠。
    toptyloo
        31
    toptyloo  
       2019-03-04 18:27:28 +08:00
    请问现在还有学生优惠么 @Hawstein
    Hawstein
        32
    Hawstein  
    OP
       2019-03-04 20:46:50 +08:00
    @toptyloo
    加微信聊:Hawstein-Studio
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3476 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 04:56 · PVG 12:56 · LAX 20:56 · JFK 23:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.