从部队文职转行程序员,我有这些体会

2023-12-19 01:40

本文主要是介绍从部队文职转行程序员,我有这些体会,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

讲述人:家旺

“无人可以接触到世界尽头,因为我们永远无法超越未知。”

“我最开始是在部队做新闻报道员,每天负责写一些新闻传到网上。读者只需要打开链接,就能看到你写的文字,这太神奇了。在这个过程中,我渐渐了解到一些 Web 技术。在某一刻,你感觉写程序是世界上最接近魔法的能力,你只需要点点鼠标,就能把脑子里的想法投射到现实,就能改变世界,为人们生活和工作带来便捷。”

01

世界是被设计好的还是真实的?

杨照在《海明威:对决人生》曾写道,海明威是个没有办法好好活着的人,要是活得好好的,他的生命就失去了焦点。一切都是平板平铺的,必须在死亡的威胁下,平板平铺的才倏地站立起来。成为立体的,有高有矮,有顶峰有深谷,才真正知道生命中什么是重要的,什么是有趣的,什么是有价值的。

就生命来说,它可以是有形态,也可以是无形态的;它汇聚着我们所有的纠结与想象,它可以像篮球比赛一样,经常要与人对抗,靠团队或对手获得掌控感;也可以像滑雪、射箭比赛一样,与自己对抗,不断去雕琢自己的每一个动作,靠自我获得掌控感。

然而,有没有一种可能,我们生活的世界,其实是被设计好的?

试想下,你每天的生活都是安排好的,有爱你的父母,考试也很顺利,找到了一份不挨骂、业绩杠杠的工作,遇到困难也有贵人相助,在适当的年龄遇到了对的人,结婚、生子,就好似电影楚门的世界一样,一切都是被设计好的,一些伤悲都是演出来的。

作为观众,你关心的是楚门怎样走出自己的世界;但作为导演,你需要去思考如何让虚拟的世界更加真实,特效的制作团队融合了编剧、动画师、灯光师、设计师、剪辑师、机械师等多个领域,每一个人在各自领域都是顶尖的,确保做出来的效果是最好的。

这样的分工,在互联网开发也很常见。比如你要去制作一个游戏,或者一个 APP、网站,会经常需要解决各种问题。比如维护用户数据库,确保用户正常登录,登录后,需要确保用户数据安全,又需要开发安全系统,为了保证系统时时刻刻运行,需要有监控,在监控和安全的背后还需要确保自身系统稳定性,可能还需要开发第二个系统,去做实时监控。

在这个过程中,因为需要开发太多系统,企业会发现很少有时间聚焦于自身业务上,比如网易云音乐聚焦核心“音乐”功能,飞书聚焦核心“协作”功能,抖音聚焦核心“视频”功能等等。有的工作,是否可以被拆分开,去寻找外部供应商帮企业完成,使其更有精力去聚焦核心赚钱的业务。

假设工程师想实现一个新的产品功能,但是之前没做过,所以需要知道怎么做。这时候,首先需要去查找相关资料,看看有没有相关企业已经做了这个功能,然后通过各种科技网站、书籍、文献去了解并深入学习功能背后的技术逻辑。

单个功能学习起来可能不费劲,但是当你想要把这些功能组合在一个系统里时,就需要通过不断修复 bug,将产品功能不断完善,直到上线。上线后,再根据用户反馈,不断优化迭代,这种复杂度让我们身心俱疲,倾向于去找一些现成的、接入成本低的软件。接入软件的好处在于心智负担更低,可以更容易地做更多事。

02

如何让现实世界变得更好?

世上本没有路,走的人多了,便变成了路。

没有路,就不会有车。
在蒸汽时代来临之前,人类处于农业时代,社会生产力水平很低。而第一次工业革命的到来,使人类告别马车时代,迎来火车时代;告别纺织手工工厂,迎来纺织机器的变革。在以电动机为代表的第二次技术革命结束后,世界近代史上的第三次技术革命于 20 世纪中叶爆发,其核心技术是电子计算机技术。

计算机的发展也为互联网的诞生提供了基础,随着罗伯茨设计“资源共享的电脑网络”诞生,开启了计算机网络新纪元;20 世纪末 Web 技术和浏览器的出现又为互联网发展提供了更多可能性,QQ 以及微信等在线化沟通工具的普及,互联网逐渐开始占据更多用户时间;2010 年,随着移动互联网元年的到来,京东、美团等电商巨头崛起,我们生活场景彻底完成了从线下到线上的转移。

科技的发展,让我们的工作与生活越来越容易,也让很多创意成为可能。每一个创造都是建立在前浪的基础上,我们很难创造一个没有前身的东西。比如我们看到 2007 年苹果手机——世界上首款将听音乐、收邮件和上网流畅地整合到一起的系统,只需要动动手指,滑动屏幕,即可完成所有操作。

但是,如果没有 2005 年第一款内置硬盘的诺基亚 N91,没有 2003 年第一款支持 WCDMA 的 3G 手机诺基亚 6650,没有 2002 年第一款内置摄像头的诺基亚 7650,没有 2001 年第一款内置蓝牙手机爱立信 T39mc 以及第一款彩屏手机爱立信 T68,没有 2000 年第一款 MP3 手机三星 SGH-M188,没有 1999 年第一款智能手机摩托罗拉 A6188,没有 1999 年第一款全中文手机摩托罗拉 CD928,没有 1998 年第一款内置游戏手机诺基亚 6110,没有 1993 年中国第一部大哥大,没有 1992 年全球第一条手机短信的发送,没有 1973 年第一款民用手机由摩托罗拉公司生产,没有 1938 年贝尔实验室的第一款移动手机,没有 1902 年第一款无线电话装置,也就不会有智能手机现在的辉煌。

随着手机越来越智能,我们会装各种各样的 APP。如果每下一个软件,都需要重新输入账号和密码,我们就会陷入“输入密码-忘记密码-找回密码”的恶性循环,因为要记住的密码实在太多了,很多平台为了安全起见,密码甚至区分大小写、需要有特殊符号、中英混杂、8 位以上等等。

而手机号一键登录解决了这个痛点,用户只需点击按钮「手机号一键登录」,即可识别本机号码,进行身份认证。从原先至少需要 20s 才能「注册」 /「登录」成功,降低到 1s 上下,极大简化注册流程与门槛,降低用户流失率。

仅仅做好登录对一个软件是远远不够的,我们还需要考察这个软件的各种性能。曾经看到一个开发用的翻译工具,功能是给很多网站做多语言适配。但当下载了这个工具后发现,这个工具自己都没有配置多语言,就会让人对它产生很大不信任感。如果你真的像宣传的那么好,为什么自己不用呢?

Authing 的产品是“自举”的,即 Authing 首先定义了一套关于身份的规则,然后基于该规则实现了 Authing,同时公司又使用 Authing 这款产品来服务 Authing 的员工和客户,将自身关于 SaaS 产品身份服务的最佳实践产品化。

Authing身份云

近些年,人脸识别的技术让我们可以出门不用带钥匙就能开门,Authing 也像一把钥匙,我们希望客户可以用更自动化的方式去接入各种各样的应用。Authing 凭借单点登录技术,实现成员、客户在一处访问任何软件服务,并统一管控身份权限。无论通过企业联合、社会登录还是用户名和密码身份验证,用户只需登录一次,就可以使用他们被授予访问权限的所有应用。

想象您的家里,它有大门及各种相连但独立上锁的房间。如果使用类似 SSO 的系统,管理人员将改为授权信任的访问者,仅使用一把钥匙打开大门,免去再使用单独的钥匙进入各个房间的重复性动作。

功能最终是为了简单服务,一款好的产品是符合用户直觉的,就像你买一款游戏,你不会希望开发商给你一份使用说明书,而是希望通过操作几个按键,逐步到游戏怎么玩,然后玩家可以自己探索更多玩法。甚至有些人当年太喜欢捣鼓软件了,经常把软件捣鼓死机再也无法修复。

这就是软件的稳定性问题。Authing 面向数亿用户提供安全、伸缩和可靠的全场景身份云,通过持续认证、自适应安全,采用最新技术(诸如 OPA)来做安全管理和创新。

在安全方面,Authing 采用多租户加密、内部审计、强化的基础设施和运营控制、渗透试验、安全架构和团队和风控中台,打造值得客户信赖的服务;在伸缩方面,Authing 100% 云架构在 AWS 之上,拥有 Authing 专有创新;多租户发布平台快速方便地启动新的基础设施;在可靠性方面,Authing 已达到 99.999% 可用性,每次发布前 4k+ 测试用例,跨基础架构进行监视和警报,具有自动、无用户影响的故障切换。

这篇关于从部队文职转行程序员,我有这些体会的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/510489

相关文章

springboot体会BIO(阻塞式IO)

使用springboot体会阻塞式IO 大致的思路为: 创建一个socket服务端,监听socket通道,并打印出socket通道中的内容。 创建两个socket客户端,向socket服务端写入消息。 1.创建服务端 public class RedisServer {public static void main(String[] args) throws IOException {

LabVIEW程序员是怎样成长为大佬

成为一名LabVIEW编程领域的“大佬”需要时间、实践、学习和解决复杂问题的经验。尽管LabVIEW作为一种图形化编程语言在初期可能相对容易上手,但要真正成为精通者,需要在多个层面上深入理解。以下是LabVIEW程序员如何逐步成长为“大佬”的路径: 1. 打好基础 LabVIEW的大佬们通常在初期会打下非常坚实的基础,理解LabVIEW编程的核心概念,包括: 数据流编程模型:Lab

程序员必备心理学——心流

心理学之心流 前言一、“心流”是什么?二、心流的好处二、如何进入心流心流状态的四个阶段第一个阶段:挣扎第二个阶段:放松第三个阶段:心流第四个阶段:巩固 进入心流的技巧 总结题外话 前言 你是否常常感觉自己明明学习了一整天,但是就是感觉没有太多的收获。这个时候除了你的学习方向等问题之外,也可能是你的学习方法太低效了。作者本人就经常有这种情况,好在偶然间在b站刷到一个大佬的这个心

group by 新体会

group by 分组语句中的 select 后面查询的东西,只能是 group by 中的字段或聚合函数,如果含有group by 中的没有的字段,sql 会报错。 表users   例子:  1.select count(1),sex from users group by sex; sql执行正确   2.select count(id),sex from users gr

程序员都在使用的画图工具

大家好,我是袁庭新。 程序员都在使用的画图工具,你一定没用过这款画图工具吧!我教程中的架构图都是用它来画的。 比如我编写的RDB工作原理图就是用draw.io绘制的,如下图所示: 再例如Redis集群故障恢复原理图我也是通过draw.io工具绘制的,如下图所示: 是不是觉得draw.io绘制的图形特别简洁、美观。它的官网是: https://www.drawio.com dra

GitHub:代码是程序员沟通最直接的手段

如果不是 Andreessen horowitz 的投资,估计 GitHub 很难被福布斯、CNN、纽约时报等传统媒体注意到。普通大众之前不了解这个工具,是因为它距离记者的世界太远了——GitHub 是一个程序员所使用的托管项目的服务。 但在一些程序员眼里,它不仅是托管项目的地方,还是“开源”项目的大本营,而且是提高程序员“技术水平”和“技术品味”的地方,更是一个程序员社交的地方。

黑马程序员---银行业务调度系统

模拟实现银行业务调度系统逻辑 需求分析: 银行内有6个业务窗口,1 - 4号窗口为普通窗口,5号窗口为快速窗口,6号窗口为VIP窗口。 有三种对应类型的客户:VIP客户,普通客户,快速客户(办理如交水电费、电话费之类业务的客户)。 异步随机生成各种类型的客户,生成各类型用户的概率比例为:         VIP客户 :普通客户 :快速客户 =  1:6:3。 客户办理业务所

黑马程序员---空中网面试题

空中网4k/5k月薪挑选大四实习生的线程题     两年前,我们一个大四的学员去应聘空中网的实习生职位,空中网只给他出了三道线程题,拿回家做两天后再去给经理讲解,如果前两题做好了给4k月薪,第三道题也做出来的话就给5k的月薪。这样的实习薪水和招聘要求,不需要有工作经验的限制,纯粹是技术功底的比拼和考核,而不像许多其他公司非要招两年工作经验的人,逼得那些刚毕业和未毕业的大学生不得不去撒谎,不得不去做

黑马程序员---线程并发库

软件包 java.util.concurrent 在并发编程中很常用的实用工具类。 请参见:            描述 接口摘要BlockingDeque<E>支持两个附加操作的 Queue,这两个操作是:获取元素时等待双端队列变为非空;存储元素时等待双端队列中的空间变得可用。BlockingQueue<E>支持两个附加操作的 Queue,这两个操作是:获取元素时等待队列变为非空,以及

黑马程序员---多线程

TraditionalTread 传统线程技术回顾 创建线程的两种方式: thread3中,同时创建了Thread的子类和Runnable,那么会优先执行Thread的子类,因为Runnable的代码被当做参数传到了Thread类里,Thread子类的run方法又覆盖了父类的方法,所以会执行Thread子类的代码。 package cn.itcast.heima;public class T