PHP:草根创业的最爱
PSI - https://gitee.com/crm8000/PSI 是我们的创业项目,其后台开发语言是PHP。
最终选择PHP的过程
1. PSI的起源
2013年,在一个物流项目中,首次用了PSI这个项目名称,这应该是PSI起源的最初了。该项目是用C#写的(有趣的是,该项目的前端框架一直沿用到今天)。
2014年圣诞节前后,用Groovy写的PSI原型完工。这次PSI是进销存项目了。原本是计划用Java写的,但是在习惯了C#后,在品味方面实在是不能接受Java的某些风格,所以就找到了Groovy这个替代品(题外话,如果当时有.net core的话,就没有后面的故事了)。
时间到了2015年,Gitee联合魔泊云,一起推广研发和部署一体化的解决方案。当我们把PSI部署到魔泊云后,发现Groovy写的程序没法运行。这自然是我们当初技术稀烂,就找Groovy背锅,决定换一种开发语言。
最后的选择是PHP。
娶了红玫瑰,久而久之,红的变了墙上的一抹蚊子血,白的还是“床前明月光”;娶了白玫瑰,白的便是衣服上沾的一粒饭粘子,红的却是心口上一颗朱砂痣。
C#与PHP,白玫瑰与红玫瑰。
2. 黑客、理想主义者与商业开源
这种从C#换到Groovy,再换到PHP,除了是玩票,不会是正常的商业行为。 的确如此,PSI最初是玩票性质,Just For Fun。
深受第一代黑客的影响,最初的PSI走的是理想主义的路线。说的难听点就是,很多地方自不量力,走了很多弯路。
在这期间,很奇怪的事情是,PSI作为一个完全开源的项目,居然源源不断地有收入。市场一步一步地把PSI推进到了商业开源的路径中来。
商业开源视角下的PHP
国内商业开源中,我们最佩服的公司是做禅道( https://gitee.com/wwccss/zentaopms )的公司,从各个方面对他们有不少研究,受益很多。同时,我们也有了自己的理解。
PHP天生的脚本性质,使其与Web和开源就是天然一体的。同时PHP没有一个巨头直接支持它,这又决定了它的草根性质。这种草根性质,让人总是有一种利用完它就抛弃掉再去找新欢的冲动。是的,说的就是诸如这类言词:“先用PHP快速完成,赚钱后再换Java来重构”。
但,这只是技术人员天真的美好想法。
当PSI不断地在商业开源之路上行走的时候,愈发认识到一个公司在一个技术路线上越有沉淀,越不可能轻易切换技术路线。
我们对PHP的思路,从投机性质的使用,逐步走向了把后台技术路线完全交托在PHP之下的转变。2021年末,PHP基金会的成立,更是对我们影响巨大,产生了公司的技术愿景:二十年后成为PHP基金会中的董事成员。这需要我们在商业开源上做出极大的成就,既是动力也是压力。
PHP语言和其生态,既然我们已经身在其中了,就奋力把它改造得更好。
最爱
天空一片蔚蓝
清风添上了浪漫
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
记录:尝试 HashiCorp Vault + AWS IAM + AWS Lambda
Vault 是 HashiCorp 开源的密钥库程序。 从 https://www.vaultproject.io/downloads 下载得到的 CLI 程序包括既包括客户端也包括服务端实现。 本文以 Windows + PowerShell + Nodejs 为环境描述用法,其它环境基本相同。 Vault 基本用法 运行开发服务器: vault server -dev 开发服务器会直接使用 HTTP 而不启用 HTTPS,在 http://127.0.0.1:8200 。 开发服务器会默认启用 Vault UI,在 http://127.0.0.1:8200/ui 。 根据运行后的提示,客户端的用法是: $env:VAULT_ADDR="http://127.0.0.1:8200" vault status vault auth list 静态的密钥读写: vault kv put secret/hello foo=1 bar=a vault kv get secret/hello 这里的 secret 是一个默认的存储库(Secret Engine),hello 是具体的密钥,而...
- 下一篇
卷起来了!软件开发正在越来越快……
之前,小编在《从瀑布式到 DevOps,开发流程经历了什么?》一文中,梳理了软件开发流程的大致演变过程。 其实,在早期软件开发还是“小作坊”作业的时候,没有形成所谓的开发流程方法论,开发特别倚重个人能力,大多都杂乱无章,所以效率也不高。 20 世纪 70 年代,从瀑布式开发开始,开发流程有了一套自己的方法论。一路发展演进,先后涌现了敏捷和 DevOps 等新兴理念。可以看出的是,软件开发规模越来越大,要求的速度却越来越快。 01 开发流程正在“提效”路上一去不回头 上世纪50年代,一种项目管理三角(也称的三重约束、铁三角或项目三角)的模型开始被人们广泛使用。 三角模型被用来约束项目的发展过程,它认为: 质量工作是由该项目的预算、时间和功能来限制; 项目经理可以约束之间的平衡; 一个约束的变化需要其他约束的变化来补偿,否则质量将受到影响。 例如,可以通过增加预算或缩小范围来更快地完成项目。同样,增加范围可能需要相应增加预算和进度。削减预算而不调整时间表或范围会导致质量下降。也就是说,好、快、便宜(范围、时间和成本),只能选择两个。 在早期,瀑布式开发与三角模型相关联,由此表明:软件开发可...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题