今年我们的独立开发者训练营的主题是 “架构”,目的就是为了让你可以快速发布自己的 SaaS 软件。你可以通过这次训练营掌握一套应用架构里介绍的各种技术,比如怎么做前台应用的界面,如何设计后台应用的接口,如何实现身份验证,实现基于用户角色的权限检查或者基于属性级别的权限检查,怎么通过计划任务在子线程处理一次性或者循环执行的任务,如何用消息队列提高应用的负载能力,处理大规模的网络请求。
如何部署强大的语言模型实现智能化的应用,比如你想自己做个 chatgpt 也是可以的,我们还会练习利用人工智能社区里提供的开源模型,在本地为用户提供各种服务,也就是你可以把这些模型下载到本地服务器或者缓存到用户的浏览器,然后用这些模型完成各种处理任务。还有如何做全文搜索,跟向量搜索,也就是通过搜索的意图找到搜索结果。
如何集成微信生态,比如公众号,微信支付还有小程序。我们还会配置一个集群来运行应用,集群就是把很多台服务器当成一个整体来使用,最终会实现自动化的部署还有扩展应用等等,为你的应用在将来可以为成百上千万的用户提供服务做好准备。
你可以基于这套构架去实现你的想法,我会辅助您解决在训练过程中或是在实现自己想法的时候遇到的所有问题。
这次训练营的内容分成了三个系列,一套极简的直接的全能全栈软件架构,可以让你可以快速实现需求。一个强大的微信生态,让你可以拓展软件的分发渠道,提供优质的用户体验。还有一套自动化的运维流程,可以为你的软件在将来的迅速扩张打好基础。三个系列一共六十六组训练,每组训练大概有 5 到 10 个训练内容,每一个都是我精心设计过的内容,做这些内容,我总共用了一千两百个小时,这次我们总共只需要写一万行左右的代码,一个基本可用的项目,大概需要 3 到 5 万行代码。
第一期训练营从今年 3 月份开始,持续到 6 月份,大家现在报名可以享受早鸟价格(点击报名🚀)。好了,硬广就这些,下面我们再整点软的。
(上面这个视频是本次训练营中的其中一节,主要练习的是通过验证码完成用户登录。训练营一共有 66 组训练,每一组有 5 到 10 节。)
(上面这个视频是本次训练营中的其中一节,主要练习的是解析大语言模型返回来的 markdown 格式的内容。训练营一共有 66 组训练,每一组有 5 到 10 节。)
野路子生长的软件应用开发者
我觉得像我这种没上过大学,没进过大厂,纯粹是兴趣驱动通过野路子成为软件开发者的人都有类似的成长过程,这个过程的特点就是混乱而且漫长。
一开始你肯定是对电脑很感兴趣,这个兴趣点我也说不清楚, 不过很有可能是因为电脑游戏,开始学习一些优化系统的方法,比如安装各种驱动程序,修改文件夹选项,在电脑里隐藏一些不想让别人看到的秘密文件,改改活动目录,注册表什么的,慢慢的你对系统熟悉了以后,又开始对网络感兴趣,配置局域网,修改电脑的 ip 地址,子网掩码啥的,你觉得通过远程控制别人的电脑很有意思,你可能开始研究一些黑客相关的技术,这个阶段你觉得自己已经无敌了,已经是黑客高手了。
因为没人引导,接收到的都是一些零碎的信息,很难遇到最终自己想要干的事情。后来你又开始对 web 产生了兴趣,因为你想表达自己,想通过 web 让别人看到你的想法,用你做的东西,你想搭建个游戏交流论坛,分享各种资源,搞个游戏积分排名系统什么的。于是你又开始了解 web 技术,在网上找一些现成的模板或者开源的系统,开始搭建自己的网站,现在你已经亲戚朋友眼中的技术高手了,家里的网络或者电脑坏了都会找你修。
你开始觉得直接用现成的网站应用系统已经不能满足需求了,因为你有自己的想法,想让界面变成自己想要的样子,你了解到需要通过 html,css 来修改界面的样子,于是你开始照着网络教程,似懂非懂地改一些现成的系统的模板,不过终还是可以改成自己想要的样子,虽然一半时间不知道自己在干什么。通过修改现成的模板可以让页面变成自己想要的样子,通过拼凑一些现成的功能模块也能实现想要的功能,你又开始觉得自己无敌了,可以利用现成的网站系统做出自己想要的东西,你觉得那些自己写代码开发应用的人都很傻,通过各种朋友的介绍,你开始能接一些自由职业的单了,可以给别人搭建一些网站了。
漫漫的你会发现通过使用现成的模板跟组合现成的模块也已经无法再满足自己的需求了,于是你下定决心研究某种网站系统的开发,比如 wordpress 或者 drupal 什么的。一开始你会觉得无从下手,因为这些系统太过庞大了,通过一段时间的学习,你学到了一些基本的主题、插件还有模块的开发,有能力够扩展系统的一些功能,但还是无法从全局理解这个系统,你觉得你很难完全掌握它们。首先,是因为系统都是很复杂的,这些系统经过多年的成长,都有数百万行的代码(drupal 2186902 行,wordpress 1321846 行),还有一个原因就是因为我们并没有理解网站应用开发相关的那些最基本最关键的概念。
于是你决定继续往下再走一层,这应该就会接触到应用构架了,你可能得先确定一种程序语言,这就相当于是选择了一个开发的生态,这个生态决定了我们的工作方式。一旦你掌握了一套应用构架以后,你就会发现自己可以更自由的表达了,以前觉得是问题的问题已经不再是问题了。
这次为什么要选这个技术组合
在这次独立开发者训练营里,我们选择的是 javascript / typescript 这个生态来制造全栈应用,也就是我们会使用 javascript 这一种语言来构建应用的前台界面,还有应用的后台服务。这个生态的用户极其庞大,各方面的解决方案也都非常的成熟,有很多估值几十亿的项目都是在这个生态构建出来的。
我之前用过挺多应用构架的,不同的构架都有自己的一套东西解决问题,我们之前介绍过简单的 express 框架,也讲过复杂的 nest 框架。后来我发现,能够简单、直接、快速地实现才是根本,能够在发现问题以后,快速地实现并且发布,把应用交到用户的手里得到反馈才是王道啊。所以根据这个快现实现的特点,这次我给大家确定了一套技术组合,就是用 nuxt 作为全栈应用框架,用 surrealdb 作为应用的数据服务。
在以前的训练营里,我们一般至少要介绍两个应用构架,一个做应用的前台界面,一个做应用的后台服务。这回我们只选择一个框架同时实现这些功能,这样就不再需要有两个框架里来回切换了。nuxt 这个框架的开发体验是我用过的所有框架里最好的一个,极其的简单,没有弯弯绕的东西。你像国外的 chatgpt 母公司 openai 的官网,奢侈品牌 LV,国内的汽车品牌比亚迪,还有小米公司都在使用这个构架构建网站应用。而且我最近也看到有越来越多的初创项目都会选择这种极简风格的应用构架构建全栈应用,有的项目已经融资几千万了。
数据层我们选择的是 surrealdb,如果你之前用过 sql 类型的数据库,使用 surrealdb 可以很容易上手,而且一旦用上了就根本没法再切换回 sql 类型的数据库了,真的是太方便太好用了。大家知道在开发应用的时候,除了数据服务以外,我们经常会选择一些 orm 框架,作为后端应用与数据服务之间沟通的一些方法,这次我把这个中间层去掉了,让这套应用架构更轻便一些。而且我发现使用 surreqldb 的时候,直接写几句查询声明能更直接,更清晰地表达想要的东西,完全不需要使用 orm 来构建查询语句了。
而且,这个 surrealdb 能缩也能伸,这跟它的架构设计有关,因为它把计算层跟数据存储层分离开了,所以你即可以把它嵌入到某个东西里使用,比如嵌入到浏览器或者某个桌面应用里,也可以把它放到单台服务器上运行,等你的应用需要处理海量数据的时还可以做成分布式的数据服务。
网站应用的巨量市场
大家知道像 wordpress 还有 drupal 的母公司值多少钱吧,drupal 的母公司是 acquia,在 2019 年的时候估值是 10 亿,wordpress 就更厉害了,它的母公司叫 automattic,在 2021 年的时候估值是 75 个亿。这个公司名字里有创始人的名字,也就是 matt。matt 一开始还混过一阵 drupal 社区,一边儿学习一边儿写代码做贡献,后来他觉得 drupal 太复杂了, 于是自己就做了一个更简单易用的网站系统,也就是后来的 wordpress。这个 matt 跟另外一家现在很著名的独角兽 vercel 这个初创公司还有些联系,vercel 的创始人之前是 socket.io 的作者,后来 matt 把这个项目收购了。你可能听说过 next.js 这个框架,这个框架的作者就是 vercel。
同学们,刚才咱们说的这还只是母公司的估值,如果再算上相关的生态,那就根本没办法估算了,另外更夸张的是全球 45.8% 的网站是用 wordpress 做出来的。这些都是老牌的网站系统,后来还有很多后起之秀,不过也有些年头了,比如 squarespace,wix,webflow 之类的,这些主打的是视觉化的网站构建应用,都是 saas 软件。你像 squarespace 已经上市了, webflow 这个初创公司也已经估值 40 个亿了,这个项目的创始人之前是学设计还有 3d 动画的,后来因为学费太贵又改成了软件开发专业,毕业以后在外包公司给别人做网站,后来创立了 webflow,过程也是挺曲折的,创业那会儿也是到借钱维持生活。
我们要写多少行代码?
说起这个代码的行数问题,大家看到 drupal 还有 wordpress 的代码量的时候也不用太担心,这些系统因为需要做成通用系统,所以代码量肯定少不了。如果你要开发一个软件应用,实现自己的想法,一开始大概有个 3 到 5 万行代码就可以实现第一个版本了。
比如我知道有个预约类型的 saas 软件,它在发布第一个稳定版的时候只有 2 万多行代码,当时就拿到了 740 万的种子资金,现在这个项目大概有 26 万行代码,已经融到了 3200 万了。还有一个金融科技项目有 6 万行左右的代码,开发的费用已经到 100 万了。有没有瞬间觉得自己写的代码值钱了啊。
留意身边的问题,可能是个创业机会
同学们,咱们现在要做的就是到处收集实际的问题,然后用软件来解决这些问题,因为未来所有的行业一定是要全面数字化的,比如你发现有在某些行业工作的朋友,平时要处理二十几个电子表格,经过你的调查你发现这是这个行业普遍的问题,你就知道机会来了,因为这些电子表格,可能就可以转化成一个 saas 软件,如果说你的软件能解决朋友遇到的问题,能让他们的工作变得轻松,能提高他们的工作效率,你说你这软件不卖钱才怪来,你说是不。
我有一个朋友就有类似的情况,平时他要管理几百上千个客户,他很厉害,自己用电子表格研究了一套工作系统,平时得在几十个电子表格里来回切换任务。后来也是实在管不过来了, 最终还是决定要上一套信息系统,不过找遍全网也没有完全合身可用的,后来就随便找了一个差不多的 saas 软件,能够帮他解决 30% 左右的问题,主要就是帮助他维护客户还有库存。购买这个软件用了 1 万多的费用,每年需要 2000 左右的使用费用,现在已经花了 2 万多了,但他平时还是得维护二十几个离线的电子表格。
可以报名啦
行了,同学们,今天聊了挺多了,今年的这个独立开发者训练营现在就可以报名啦,现在报名有早鸟优惠。我们今年这么安排,上半年主要学习这套应用架构,下半年咱们用这套构架一边儿学一边儿做点项目,看看能不能挣到钱。
我会解答参加训练营的同学位在学习中遇到的问题,另外如果你打算用我们在训练营里提供的这套应用架构去做一些项目的话,遇到啥解决不了的问题,咱们也可以一块儿研究研究,我会辅助您解决这些问题,也就是参加了今年的训练营,除了可以用到全栈应用开发技术以外,您还相当于是雇了一个技术保镖啊。好了,现在大家可以报名了 :)
点击报名🚀(早鸟优惠中 ... ¥2799),查看独立开发者训练营架构目录(报名后请加微信 wanghao_8088,然后我给您发送参加训练营的邀请与相关资料)
我把添加到微信好友,我可以为您答疑解惑,也可以聊聊人生,讨论软件创业点子啥的。