【 以下文字转载自 ITExpress 讨论区 】
发信人: chaobill (若我离去,后会无期), 信区: ITExpress
标 题: 给你们科普一下工业软件的难度
发信站: 水木社区 (Sun Apr 24 22:40:13 2022), 站内
发信人: xieyf (绿蚁新醅酒,红泥小火炉), 信区: WorkLife
标 题: 给你们科普一下工业软件的难度
发信站: 水木社区 (Sun Apr 24 22:38:49 2022), 站内
目前国内互联网有钱是有钱, 但不要以为靠卖广告, 卖菜, 搞搞游戏能挣钱真的就是自己技术水平高, 那是人口红利, 跟你的技术水平关系不大.
给你们科普下工业软件开发的具体难度吧. 工软大致分那么几个方向, 流体, 结构, 电磁方面的场仿真工具, 一般就是CFD, CSD,计算电磁学了, 这些都属于CAE领域. 随便一个方向,比如lz深耕的CFD方向,你想干出一个nb的软件,比如超越fluent, starcd的这种,那么你需要
-- nb无上的流体力学知识, 怎么也得各种流体理论烂熟于胸,否则你怎么确定你算的合理,否则你怎么根据物理现象提出新方法, 要是没干过流体工程比如气动设计,涡轮设计, 航天设计, 根本不可能积累出流体力学的经验, 也不可能干出流体软件来.
-- nb无上的计算流体力学知识, 看到没有, 计算和流体合在一起, 那就是一门新的学科, 有的是人干一辈子也就研究几个格式而已, cray数学研究所悬赏的7大数学难题之一, navier-stoks方程的解, 干废了多少数学家, 即便是想搞个数值解, 也有的是数值不稳定性来折腾人. 好多干ns方程数值解的人, 干不下去, 转行搞金融数学, 搞AI, 随便搞搞都是秒杀一堆调参员. 我有个小弟, c++都跟我学的, 搞数值计算搞不下去, 后来到互联网混的风生水起, 这是为什么, 因为AI那点数学真不够看的.
何况他也不用看, 反正洋人给我们都"服务"到位了,都在github上摆着呢.
-- nb无上的计算机编程能力, 什么win32, linux内核, 高性能并行计算你都得懂. 如果自己想搞点界面,QT, OpenGL那是少不了的, 我周围做计算流软件的, 几乎都是全能手.
这些东西, 随便拿一个方向出来, 都够互联网的crudboy喝上一辈子.
前段时间, lz为了搞一个高性能的数据存储格式,处理流体里边的海量数据, 愣是手撸线程池和软件流水线, 将流场数据的磁盘IO提升到1.5GB~5GB的水平, 因为开源没有现成的. 因为互联网的业务都是水平扩展的, 一台机器不够, 就十台机器, 10台不够, 那就10万台. CAE里边的东西能水平扩展吗? 太多不能的, 因此你就得在性能上, 精度, 甚至软件工程上死磕.
为了高性能计算, 模板, ctrp都得懂,还想要代码更多的触发SSE, AVX指令你还得懂计算机硬件, 为了代码能成就大工程,你还得懂各种patterns. 呵呵, 就这些工业软件一点附带要求, 都超越好多所谓"前端"工程师了. 国内有个神僧在搞miniblink, 从排版一直干到图形接口, 最后干到上屏, 我觉得那才叫真正nb的前端, 其他的什么写js的, 写css, 写html的前端就不要往上凑了.
数值的艰难之处在于, 理论值是1.0, 你算出0.99999, 你说你算的对不对? 你要不要反复求证? 这种艰难, 根本不是互联网的crudboy能理解, 互连网的业务几乎都是逻辑业务, 1就是1, 0就是0, 对错很容易, debug也很容易.
还有一个领域叫CAD, 就是三维造型的.
--
FROM 120.244.225.*