抖个机灵:面临的挑战永远是经费不够[逃]
像我等这种(还是脱离一线的)科研小民工,还不敢妄段学界动向。我等的视野太小了。
不过大佬们肯定时刻在考虑领域的大盘子,而且是几十年的大计。2017 年 3 月的国际天文学会的天体化学会议上,学界大佬 Ewine F. van Dishoeck 发表了一篇前瞻文章,列出了未来二三十年内天体化学领域的挑战,一共 14 条。
大致翻译一下(翻译没有很抠字眼,含义如有出入,以原文为准)。重点在前两条。
3-14 都是具体的科学问题,就不展开说了。前两条,往大了说可以说是任何科学领域面临的挑战。天体化学研究是一个非常交叉的学科,它需要化学家、物理学家和天文学家(甚至地球科学家)的共同参与,也需要实验科学、理论科学和天文观测三方的支持。然而,学科越是交叉,来自不同领域的学者相互沟通、相互了解的成本就越高。而且想要获得研究经费的资助,就需要更努力地说服传统领域中对新兴领域了解还不够充分的资助者。而且,天体化学中的关键一环需要天文观测,而且是非常高灵敏度的天文观测的支持。建设并维持高水平的天文台的运行,是一笔非常可观的开销。这关系到领域未来长期的发展。
那么,为什么要研究天体化学呢?天体化学说到底,期望解答两件事。一是恒星和行星的一生是怎么样的。这其实是天体物理学关心的问题,但化学的加入可以为研究物理过程提供丰富的示踪信息。第二件事则更为意义深远:宇宙中的生命从哪儿来?人类自身就是生命的代表,所以宇宙中肯定是能产生生命的。我们在对太阳系天体的详细研究中也已经知道,彗星啊、其他行星上啊,存在适合生命生存的条件,存在氨基酸等生命相关的物质。但是再往前呢?太阳系是宇宙中的个例,还是普遍现象呢?目前,天体化学的研究已经指出了一个方向:星际空间中普遍存在有机分子。但是从有机分子到生命分子,这「临门一脚」究竟怎么发生的,还没有搞清楚。如果在未来二三十年内,天体化学能够解答这件事情,我们就能够有很大的把握说,生命在宇宙中可能是普遍存在的,我们并不孤独。
所以,天体化学的研究,可以说是在试图解答人类的哲学终极三问「我是谁?我从哪儿来?我要到哪儿去?」中的第二个问题。它是人类在茫茫宇宙中寻找同伴的努力。
对中国来说,天体化学领域还面临更大的挑战:缺人,缺认知。
首先,天体化学这个学科概念还没建立起来——中国高校中连天文系都屈指可数,何况下面的交叉学科。从事天体化学研究的人员也不过二三十个人。2017 年的那次国际会议,中国大陆出席的研究人员只有 3 人。(对比,美国有 37 位学者参会)所以,在天体化学的研究中,中国研究者的声音是比较稀少的。对于希望新进回国的相关人员,想要找到好的单位也很困难,和同行之间的交流合作也会面临挑战。
从经费的角度看,也没有专门对口的申请通道。你只能去到传统科学——物理、化学、地学这样的门类中和其他人竞争。这对于偏重化学方向的研究者来说尤其困难:你该怎么和那些搞材料刷引用率的人竞争呢?我想,只有让领导们意识到这个学科的重要性才有可能吧。
我们国家现在在大型天文设备上的投入是不断加大的,这是件很好的事情。我们已经有钱去建造 FAST 这样国际一流的望远镜,也深入参与了国际合作项目(比如 SKA)。这让中国在国际天文学界中的地位和知名度不断提升。相反,美国因为政治原因,近年来不断科研经费的削减。再加上 JWST 和 ALMA 这两个烧钱大户,几乎烧光了 NASA 和 NSF 的钱,导致不得不关停数个其他的天文台。有很多美国同事曾对我说,未来要建设新的天文台,就看中国的了。
不过,对天体化学来说,更需要的是像 ALMA 以及西班牙的 IRAM 这样的毫米波射电望远镜。我们国家有没有能力也参与到这方面的投资建设中来,并且资助一批年轻的科研人员,在天体化学领域也在国际同行中占领一席之地呢?
这或许是中国天体化学领域未来二三十年面临的最大挑战。
14 条挑战的原文如下。这篇文章可以在 arXiv 上找到: Astrochemistry: overview and challenges
1. To secure new facilities for Astrochemistry in the 2030–2040 timeframe.
2. To continue to bring chemists, physicists and astronomers together to characterize and quantify molecular processes that are at the heart of Astrochemistry, to have open lines of communication to prioritize needs, and to convince funding agencies to continue supporting this interdisciplinary research.
3. To build realistic gas-grain models from microscopic to macroscopic scales,
including translation of laboratory ice chemistry experiments into parameters that can be adopted in models.
4. To obtain a full inventory of the chemical constituents of diffuse and translucent clouds, and explain – at the same time – their chemical simplicity and complexity.
5. To quantify the importance of top-down versus bottom-up chemistry in
the production of carbon-bearing molecules.
6. To nail down the dust formation and destruction processes and their efficiencies in the envelopes of evolved low- and high-mass stars, for different metallicities.
7. To bridge the gap between subpc galactic and kpc extragalactic astrochemical studies as functions of metallicity out to the highest redshifts, and to use molecular observations of calibrated tracers to unveil a new understanding of star formation in the
early Universe.
8. To identify and quantify the mechanisms by which molecules, including the more complex ones, are desorbed (intact) from the grain surface in cold clouds.
9. To use chemical signatures to constrain physical structure, evolutionary
stage and the amount of time spent in certain cloud phases.
10. To characterize the chemical and physical structure of outflows, especially near the launching point of the jets and (disk) winds that drive them.
11. To identify the main formation routes of complex molecules in dense clouds, to push detections to even higher levels of complexity including prebiotic species like amino acids, and to assess how dynamics and geometry during star formation can affect their abundances.
12. To make a chemical inventory of disks (from inner to outer, surface to midplane, and young to old) and relate observed molecular structures to underlying gas and dust structures.
13. To determine the (bulk) chemical composition and origin of planet-forming material (inheritance or reset) and relate that to what is found for icy bodies in our own Solar System.
14. To determine exoplanetary atmosphere compositions and to characterize the chemical changes along the many steps to planet formation, necessary to relate
exoplanetary atmosphere compositions to their birth sites in disks.
从大学到现在,我使用Java已经将近20年,日常也带实习生,还在公司内部做training,所以可以分享下我的经验,希望对你有用。
因为是在工作中培训,就必然有两个约束:实用、时间紧,因此就不能像大学那样,把所有的知识点都面面俱到的讲到。而只能挑基础的,实用的,难理解的讲。至于其他边边角角的知识,就一笔带过。一则没有时间,二则不常用,再则既使讲了,学生印象也不深刻。总之一句话:“好钢用在刀刃上”。
下面,就根据我的实践,具体谈下学习过程:
1.基础知识
我学习java的时候,先是通读了《Java编程思想》,然后是《Java核心技术》。当时这两本书还不像现在这么厚,而刚才我把案头的《Java核心技术》第9版翻了翻,上下两册已经1700多页了,可想而知,如果要把它通读一遍,且不说把所有的代码都调通,就是当小说读,估计也需要些时间。
但我现在教学依然首推《Java核心技术》,主要是体系完整,实例多,可操作性强。但对初学者,我一般是只讲前6章,也就是下面的内容:
就《Java核心技术》第9版来说,也就是到250页为止,加把劲,1个月拿下完全没问题。
因为你是自学,所以建议你一定要把其中的代码都调通,课后的作业尽量去做。除此之外,还有两点特别重要:
#.学习笔记
因为你是自学,不像在企业中学了就能够实践,印象自然特别深刻。而自学因为没有实践的及时反馈,所以记笔记就显得特别重要。因为记笔记就像写作一样,是整理思路的绝佳方法。同时学习笔记也是你以后开发,面试的绝好资料。
学习编程,人跟人是不一样的,别人觉得难理解的东西,对你却不一定;而你觉得难理解的东西,别人可能又会觉得特简单。而学习笔记就是自己专有的“难点手册”,有点像高考时的“错题本”,以后无论是在面试前,还是在日常工作中,随时都可以翻出来看看,自是获益匪浅。
#.分门别类保存demo
学习笔记是很好的文字资料,但编程界有句话说的特别好,所谓“no code, no text”,意思就是说:千言万语都没有一段代码来的实在。
以我的经验,在你在学习的过程中,就某个知识点,无论当时理解的多透彻,调试的多棒,只要时间一长,等到了实用的时候,肯定会碰到各种各样的问题,一些看似简单的东西,此时死活就是调不通,正所谓人到事中迷。这个时候,如果你手头恰有运行良好的demo,打开参考一下(甚至直接拷贝过来),问题自然迎刃而解。而且因为这些demo都是你亲手调试出来,印象自然特别深刻,一碰到问题,在脑子中自会立刻涌现。
所以说,在学习的过程,一定要善待你调通的demo,千万不要用完了就扔,等后来碰到困难,想要用时却找不到,追愧莫及。正确的做法就是把所有调通的demo,分门别类的保存起来,到时候查起来自是得心应手。
人都说“书到用时方恨少”,其实代码也是这样,所谓“demo用时方恨少”。
2.Spring
目前在Java EE开发中,Spring已经成为和Java核心库一样的基础设施,所以说如果想成为一个合格的Java程序员,Spring肯定绕不开。另一方面,如果掌握了Spring体系,Java基本上就算入门了,就有能力进行一些实用级的开发了。
但Spring本身也是日渐复杂,衍生项目越来越多,但最最核心的概念依旧是IOC和AOP,掌握了这两个概念,再把Spring MVC学会,再学习其他的衍生项目就会平滑很多。
同时,因为Spring本身就应用了许多优雅的设计理念,所以学习Spring的过程,也是加强Java基础知识学习的过程。因此等你掌握了Spring,原来很多你理解不透彻的Java特性,此时就会恍然大悟,包括接口、抽象类等。
我学习Spring,读的第一本书是《Spring实战》,坦率的说,书很一般,但市面上比它好的书,我却没有遇到过。还有一本《Spring源码深度解析》也不错,对Spring的设计理念讲的尤其透彻,虽然整本书读起来有些艰涩,但前几章却生动有趣,也是整本书的精华。所以建议你在学习Spring之前,先把该书的前几章通读一下,然后再回过头来学习《Spring实战》会顺利很多。
以我经验,要学透Spring,终极的方法还是阅读源码(我当时就是这么干的),待把Spring的核心源码通读了,人就真的自由了(所谓无真相不自由),不仅是对Spring,而是对整个Java体系。以后再遇到其他框架,大概一眼就能看出其中的脉络,所谓到了“看山不是山”的境界。但这都是后话,可以作为以后你努力的方向。
和学习Java基础知识一样,学习Spring也一定要记笔记,一定要分门别类保存demo。
老实说,Spring对初学者不算简单,因此最好能有个好老师带一下,不用太长时间,2个课时即可,然后就是在你遇到大的困难时,能及时的点拨下。
以我的经验,要初步掌握Spring,大概需要1到1个半月的时间。
3.其他知识
Spring是Java编程的基础设施,但真要进入到实际项目的开发,还有些东西绕不过,包括 MySql,Mybatis,Redis,Servlet等,但如果你经过Spring的洗礼,这些东西相对就简单多了,以我的经验,1个月的时间足够了。
4.实践
学习Java,光学不练肯定是不行的。但因为是自学,所以就没有实际的产品让你练手,但也没有关系,谁大学还没有做过毕业设计呢?以我的经验,大家最爱的“学生管理系统”依旧是个很好的练手系统。
别看“学生管理系统”逻辑简单,但麻雀虽小五脏俱全,其中数据库设计、Mybatis,Spring、SpringMVC,Servlet、Tomcat一个都不缺,绝对的练手好伴侣。
还有,虽然你的学习重点在Java,因为要做一个完整的demo,前端的配合肯定少不了。因此就免少不了要学一些简单的JS、HTML知识,但因为前端本就是个很大的topic,所以一定要控制好边界,千万不要顾此失彼。就“学生管理系统”来说,在前端上,只要实现一个包含table、textbox、button,能发送REST请求到server,能实现学生的“增删改查”的简单页面即可。
作为一个练手项目,目标就是把Java的主要技能点串起来,所以自不求尽善尽美(也不可能),所以1个月时间足够了。
.最后
按照上面的过程,4个月的时间刚刚好。当然Java的体系是很庞大的,还有很多更高级的技能需要掌握,但不要着急,这些完全可以放到以后工作中边用别学。
学习编程就是一个由混沌到有序的过程,所以你在学习过程中,如果一时碰到理解不了的知识点,大可不必沮丧,更不要气馁,这都是正常的不能再正常的事情了,不过是“人同此心,心同此理”的暂时而已。
在日常的教学中,我常把下面这句话送给学员们,今天也把它送给你:
“道路是曲折的,前途是光明的!”
祝你好运!
--- 上面是原答案 ---
我把上面的内容作了下整理,画了学习路线图,内容也有些升级,供参考。
因为有朋友,通过留言或私信方式问我:Java中有哪些知识已经过时,不需要再学习了?
回答的多了,就感觉这是一个普遍的问题,因此统一整理了下,作为这篇文章的补充,希望对你有用。