这篇文章又叫一即是全,全即是一。
有时候想想为什么写程序?写程序的初心是什么?这个代码写时间长了有时候就忘记了。为生计?为房贷?都不是。我想做自己喜欢的东西。就想一个一个画家画出了自己想表达的东西,一个木匠做了一个家具,一个铁匠铸造了一把绝世好剑。所以我要学很多东西,移动端,前端,后端,我写程序的初心不是产品说今天我们要做一个这个,做一个那个,改完bug,上完线下班。
领导总说你学技术要专一,但是实际我认为组成完整的能力才是关键。现在总说全栈工程师。有人说,全栈 = 全干 = 啥都会 = 啥都不会。其实我觉得这么说也有偏见,全栈工程师应该着眼于一个人能够设计开发维护一个能盈利的产品。
我们从战争中能学到什么?小国打一仗成本非常高,所有武器都要进口,现代战争小国的飞机大炮都是一次性产品,用完国内不能自给。阿根廷打英国船,法国的飞鱼好用,但是打到一半就没了。兵者国之重器咋能不漫天要价。程序员和设计时薪不怎么值钱,但是。。。。我觉得一般只想做个小产品的时候我还是请不起其他人的。
能做一个端的技术你只是流水线的工人,你能从老板那里分来的是你做为工人的那份,但是如果能一个人基本提供一个完整的产品,那么你获得的是整个产品的利润。
有些行业不可能成为全栈,你可以同时会开飞机,坦克,潜水艇但是你不可能一个人上战场,但是软件工程师有这种可能,开源软件迅猛发展,你可以一个用开源软件组织一场战斗。比如曾经在很短时间搭建一套复杂环境很难,但是现在用docker一拉就行,用c写代码很慢不可能自己写一个网站,但是用django就可以,写网站不会设计界面直接用bootstrap。写app不会写后端直接用baas。不会组装电脑直接买阿里云。你不可能一个人开一个钢铁厂,因为他真的需要很多人,但是你可以自己在软件的世界里运行一个自动化工厂。
我需要的是一个完整的产品,可以放弃对一些细节和美观的要求。类似完整的军事工业,核武器可以效果不好,可以大,但是只要有导弹有核弹头就能达成效果。自己做一个产品需要注重费效比。功能性需求比优化更重要。工作了一年我的经验是烂代码也是要上线的。
只要有一个稳定可以盈利的项目就是巨大的胜利。 做养不活大平台却可以养的起个人团队的项目。 做周期短和见效快的项目。 做尽量可以复用的代码,小团队的项目要适合快速转向。
利用baas弥补后台开发的短板,学会维护和开发一个baas服务。拥有一个人维护后端的能力。
前端:工具型前端界面快速开发能力bootstrap,jquery。 完成vue或者anjularjs。前端工程化能力 iOS开发:iOS付费意愿较好,工具较为完整适合小团队开发。安卓端放弃。 pc端工具开发能力:这个优先级在前端和后端能力形成之后。
ui设计采用,极简设计,通过设计节约设计和开发成本。但是也需要最基本的ps与ui设计能力。
尽量不依赖自己选择性的购买云服务,但是也需要对运维知识有一定理解。这种理解可以方便业务在各个层面进行拆分。 管理机器与运维多台机器的能力 虚拟机基于proxmox管理多台服务器的能力 ansible自动部署 整体以Docker+git+Jenkins为开发流程
wiki bugziral git 项目管理软件
乱七八糟的东西加上git加上Jenkins 后端:Docker+git+Jenkins iOS:代码+git+Jenkins 前端:前端部署工具+git+jenkins
交给第三方统计工具
交给第三方统计工具
软件是一个变化非常快的行业,技术更新非常快,但是如果拥有完整的自制产品能力可以一定程度降低影响。一个端的技术的迅速变化并不会导致你做不出一个完整的产品。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。