大家好,我是500佰,先简短介绍下最近做的产品EasyCut已有100+用户体验
wubai-cq.github.io/easycutpro/
(推荐使用电脑chrome浏览器打开体验最佳,软件可下载)
非常适合在职场中需要频繁切换内、外网的朋友使用
电脑内外网保持 & 双网口保持,连接不掉线
推特上有位老师说了一句话(程序员是没有生活的,因为平时比较累了,还要不断学习新的知识,空闲时间太少)。
技术没有高低,但人有格局。
在从事开发工作3年多的过程中,我与同事共同推进多项项目,并与其他项目组的同事保持密切交流。由此,我总结出产品化过程中普遍、包括我自己也存在的这些通病。
学而不用
学习新知识需要投入大量时间。掌握的技术若在工作中能派上用场就再好不过;若用不到,再经过时间的淡化,很容易从记忆中消退。
如果工作中用不到但自己却很想去掌握一门技术时,可以从以下角度来优化:
以项目驱动学习:选择能直接服务于当前或近期目标的技术路线,将学习嵌入具体任务中,边做边学。
场景化练习:通过真实的编码场景来练习,如在现有代码中替换一个模块、实现一个简单的插件,或重构一个子系统,以提升实操记忆。
知识的可复用性:将学到的知识以模板、脚本、组件的形式保存,方便在不同项目中快速复用。
团队分享:定期在团队内做新技术分享,把新知落地为团队的共同资产,提升整体使用率。
重复工作
我的工作原则也同样适用于前端开发,遇到重复工作,优先考虑自动化解决方案。避免因重复工作拖慢进度,不只追求"自己写得多快",而会把时间投入到学习新技术、提升能力上。
在前端开发的实际项目中,基础功能的实现往往包含若干重复性工作,比如页面路由结构、统一的请求封装、全局请求拦截、统一的错误提示、以及公共组件库的搭建等。
初次做一个新项目时,可以手动实现这些模块以熟悉项目结构和工作流;但在后续的若干个项目中,如果继续从零开始重复编写这些基础代码,就是在浪费时间。更高效的做法是:复用以前项目中的通用代码、使用自动化脚本生成模板,或搭建一个可复用的前端模板仓库。
制定代码规范和自动化测试、CI/CD 的模板,减少重复的配置工作。
过度设计
我有一次在视频号看到一位京东后端专家,他讲解了京东早期的后端组织架构原理,没找到原视频了,在京东订单、库存、支付、推荐这些核心业务中,有3个组件:MySQL + HBASE + Redis ,这两组件我相信现在我们都比较熟悉的,很常用,但就是这3个组件都完全可以支撑京东这类超大型顶级业务。
当然,当前大型企业类项目会用到许多高阶组件,什么RxJava响应式编程等场景。
所以,我们在做项目的时候,真有必要,问问自己到底要不要用到这个技术栈?比如Redis组件,我认为用户量没个十万用Redis缓存没有必要。如果当我们不熟悉Redis组件的使用,又要去恶补短缺的知识。在网站部署时我们如果增加了业务组件,那组件必定增加服务器的资源和带宽,这些服务器资源费用也是一笔不小开支,项目成本也是需要考虑到的。
一般来说,我们在思考业务实现方案时,能少用一个技术就少用一个技术,减少开发和维护成本。90%的业务场景都可以少用或不用。
以上的问题,其实都无足轻重
我们经常把时间花在代码规范,比如纠结变量的命名、目录的命名、接口的规范,这些问题如果不会产出bug,怎么写都可行。
AI的出现就已经证明了技术不值钱了,关键是如何利用全面的信息与技术知识库去解决生活中的问题,以实践为主。
如果把AI比作一个人,人有聪明和不聪明的人,AI也是一样有不聪敏的AI(这个大家在使用中有不同体会吧,有的AI产品很傻)。我前阵子写代码AI每次总是给我生成新的测试脚本放在项目下,也不主动去删除测试代码(我有手动去设置规则删除测试文件),但AI始终没去删。
openAI的产品很好用,利用AI能做出解决生活中的需求,这时这款AI产品就特别有价值,
那人也是一样如果人能利用自身所学做出解决生活需求的产品,那这个人就是聪明的,很有价值。