开源项目filepond的独立自由之路:城市套路深
微信原文更清晰:https://mp.weixin.qq.com/s/dv39XvvDNlDqvSgrhN2f7A
最近一直在做一个有关独立开发者友链联盟的插件项目,在做到上传头像时,满网络找最好的头像上传、剪裁插件,最后终于找到了filepond,满心欢喜的认为,这么好的东西居然是开源项目,简直牛的不要不要的。
这个filepond到底怎么好呢?给大家看俩图,或许能了解,她如此美丽简洁,真漂亮!


看到效果,是不是很激动?是不是特别想要?
想必肯定是了,我也是啊。
立马,我就开始准备继承她了。。。
集成中,才发现,filepond是一个设计也精美的插件,它由主filepond工程和几个不同功能的插件组成,你可以根据实际需求来添加插件,默认主工程可以直接使用,但只有基本的上传功能。插件如下:
- File encode
- File rename
- File size validation
- File type validation
- File metadata
- File poster
- Image editor
- Image size validation
- Image preview
- Image crop
- Image resize
- Image transform
- Image EXIF orientation
并且作者pqina还适配了不同的前端框架:
真的可以说是用心良苦啊!不得不佩服。
说这么多,只是说它有多牛逼,还没说到独立开发者上来,这个也是我集成filepond的图片编辑功能之后才了解到的,也就是上面中第二章图展示的功能。

我擦,我好不容易把7个插件的js、css引入进来,结果还有个一Doka的东西!!这是什么鬼啊???
刚开始还以为是另外一个项目没引入,赶紧去filepond的README中找。。。最后找到这样几句话:

打开Doka一看,原来TM是个收费项目啊,最牛逼最亮点的东西居然收费,我TM。。。。。服了,后来一转想,人家东西做的这么好,独立开发如此不容易,收个费怎么了,想到这,我就特想买了。
不过,人家价格方案比较贵,最低一年要79美金,而且不适用于saas,所以它这个项目,一开始就把目标人群定位在了企业级的用户上,很明确。

我是买不起你了,要是以后独立开发者友链联盟这个项目能做起来,做大了,我肯定买!
自此,我是深感套路深啊,但就算套路深,我却很喜欢这种感觉,毕竟人家很挣钱。
继续了解下背后的作者pqina吧,个人网站是:pqina.nl,个人网站上没有写任何有关自己的事情,基本都是自己的几个关键的独立产品,FilePond、Doka、Flip和Soon,但是公布的推特,当发现你很崇拜一个人的时候,你就特别想了解他的一切,那就fq去推特看看吧。
推特上显示他来自荷兰(Netherlands),主要给WordPress、jQuery、React、Angular设计高质量的Web插件,并在推特上发布有趣的web相关的新闻。
信息就这点,现在来复盘一下filepond的盈利模式。
- 创建开源项目filepond,开源绝大部分基础功能
- 在更高层次的图片编辑功能上做限制,开发出Doke.js的付费项目
- filepond负责引流,filepond提供了很好的插件模式,虽然你也可能开发出类似的插件,但终究门槛太高,基本上如果你要图片编辑功能,那你是必须购买Doka.js的
但,就是因为pgina把这块的功能做的足够好,并且市面上并没有比他更好的,所以才有这么大的自信做收费,还不便宜。
对我们独立开发者的反思:
- 有时候我们并不需要做太多产品,做一款产品做到极致那抵得过"千军万马"
- 开源基础功能,高纬度功能收费,定价合理,这种盈利模式,独立开发者可以考虑一下
- 好的有价值的产品,能够做到自我传播,就像filepond一样,让我使劲夸它,要是一个烂东西,看都懒得看。所以独立开发者做的东西,一定要有很高的价值才行,一定不要敷衍你的用户!
还有一点要分享就是关于谷歌搜索引擎,它的目标是让你找到对你最有价值的东西,只要你的东西做的够好,总会把这种价值带给用户,就像我找filepond,所以谷歌SEO不仅仅是字面的意思,还是背后一个价值的意思。
开源项目filepond的独立自由之路:城市套路深的更多相关文章
- Android 上传开源项目到 jcenter 实战踩坑之路
本文微信公众号「AndroidTraveler」首发. 背景 其实 Android 上传开源项目到 jcenter 并不是一件新鲜事,网上也有很多文章. 包括我本人在将开源项目上传到 jcenter ...
- 【Android 应用开发】GitHub 优秀的 Android 开源项目
原文地址为http://www.trinea.cn/android/android-open-source-projects-view/,作者Trinea 主要介绍那些不错个性化的View,包括Lis ...
- Github上关于iOS的各种开源项目集合(强烈建议大家收藏,查看,总有一款你需要)
下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. SVPullToRefresh - 下拉刷新控件. MJRefresh - 仅需一行代码就可以为UITableVie ...
- swift开源项目精选
Swift 开源项目精选-v1.0 2016-03-07 22:11 542人阅读 评论(0) 收藏 举报 分类: iOS(55) Swift(4) 目录(?)[+] 转自 http: ...
- fir.im Weekly - 如何打造 Github 「爆款」开源项目
最近 Android 转用 Swift 的传闻甚嚣尘上,Swift 的 Github 主页上已经有了一次 merge>>「Port to Android」,让我们对 Swift 的想象又多 ...
- 直接拿来用!最火的Android开源项目(完结篇)
直接拿来用!最火的Android开源项目(完结篇) 2014-01-06 19:59 4785人阅读 评论(1) 收藏 举报 分类: android 高手进阶教程(100) 摘要:截至目前,在GitH ...
- 59.Android开源项目及库 (转)
转载 : https://github.com/Tim9Liu9/TimLiu-Android?hmsr=toutiao.io&utm_medium=toutiao.io&utm_so ...
- 直接拿来用!最火的Android开源项目(完结篇)(转)
摘要:截至目前,在GitHub“最受欢迎的开源项目”系列文章中我们已介绍了40个Android开源项目,对于如此众多的项目,你是Mark.和码友分享经验还是慨叹“活到老要学到老”?今天我们将继续介绍另 ...
- iOS及Mac开源项目和学习资料【超级全面】
UI 下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UITable ...
随机推荐
- Python3学习(1)——初步了解
Python是解析性语言,Python解释器将源程序解释并执行. 基本语法 print() --打印字符串 -直接打印 print("hello world") 结果: hel ...
- JavaScript基础视频教程总结(051-060章)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- Exp4 恶意代码分析 20154320 李超
恶意代码 概述 恶意代码是指故意编制或设置的.对网络或系统会产生威胁或潜在威胁的计算机代码.最常见的恶意代码有计算机病毒(简称病毒).特洛伊木马(简称木马).计算机蠕虫(简称蠕虫).后门.逻辑炸弹等. ...
- vshost32-clr2.exe 已停止工作
软件中使用了DevComponents.DotNetBar2.dll MessageBoxEx.Show("ddd");运行到这句出现如上错误 解决:在项目属性里->调试: ...
- Exp3 免杀原理与实践 ——20164325王晓蕊
一.实践基本内容 1.实践目标 (1) 正确使用msf编码器(√),msfvenom生成如jar之类的其他文件(√),veil-evasion(√),加壳工具(√),使用shellcode编程(√) ...
- vue.js 2.0(1)
1.点击一个按钮打开,关闭弹框 2.实现滚动监听,导航看顶置,实现某元素吸顶 路由
- shell 日常技巧
批量注释: :<<COMMENT code COMMENT 循环: #!/bin/bash for varible1 in {1..5} #for varible1 in 1 2 3 ...
- Python之路【第一篇】Linux常见命令语句
查看当前目录: pwd 查看文件具体大小: ls -l 返回上一级: cd.. 返回根目录: cd / 创建一个隐藏文件: vim .test 显示隐藏文件: l ...
- ssh框架 基本整合
struts的基本配置 <struts> <constant name="struts.devModel" value="true" /> ...
- Jenkins可用环境变量列表以及环境变量的使用(Shell/Command/Maven/Ant)
一.可用环境变量列表(以下来自google翻译): BRANCH_NAME 对于多分支项目,这将被设置为正在构建的分支的名称,例如,如果您希望从而master不是从特征分支部署到生产. CHANGE_ ...