转载自:https://post.smzdm.com/p/az59qdwo/


软路由搭建攻略:从小白到大白

写在最前

本文写于2018123日,其中的硬件软件资讯随时可能更新换代,请阅读本文的同时结合搜索引擎更新相关资讯。

最近突然很流行【软路由】这个关键字,然而在搜索引擎搜索出来的文章大多都相当硬核,让许多想尝试的小白望而止步,所以我就通过自身的经验简单的普及一下软路由的基础知识,以及软路由的搭建教程,因为这方面的文献比较少,多数都是本人自己胡说八道,如果文章中有什么错漏欢迎大家指出来,我会及时修正。

这篇文章接下来会说什么:

  • 软路由的定义
  • 软路由的优缺点
  • 什么人会使用软路由
  • 软路由的挑选
  • 软路由的组建
  • 软路由的设置
  • 硬路由桥接软路由发射WiFi

    这篇文章不会涉及的知识点:

  • 软路由虚拟机多系统(对于新手来说太麻烦而且我个人觉得暂时没有必要)
  • 黑群晖之类的NAS搭建(三大妈已经有其他作者写过啦)

    总的来说就是作者会尽可能的从新手的角度出发,尽量让各位小白都能看懂然后早日打造出自己的软路由


    什么是软路由

    在了解什么是软路由之前,我们先定义一下【硬路由】这个关键词,硬路由就是我们现在随便在京东淘宝搜索【路由器】搜出来的,从一开始就是按照路由器规范设计出来的硬件设备。而相对的【软路由】则是指,利用现有的硬件(可能是电脑或者树莓派之类的)配合软件来实现路由器的功能。

    软路由能做什么

    软路由对比硬路由优势在哪里?

  1. 性能强劲且配置可变
  2. 可玩性强
  3. 价格实惠(对比高端硬路由)

    软路由一般是利用PC的硬件加上路由系统来实现路由器的功能,那么就意味着硬件性能肯定会比硬路由的要高出许多,而且配置可以根据自己的需求随时调整,同时价格也肯定比高端的硬路由要便宜许多。同时因为抛开了硬路由的条条框框,使得软路由基本兼容市面上任何一种路由系统(前提是有对应驱动),所以软路由的可玩性比一般硬路由要高出许多。

    软路由的缺点

  4. 需要折腾
  5. 相当折腾
  6. 作为无线路由器信号会比硬路由差不止一点

    每一枚硬币都有两面,那么软路由当然也有他的缺点,首先软路由的出生环境就注定使用者一定要折腾,不像硬路由即插即用,软路由从硬件到软件,每一步都是折腾的过程,当然如果你享受这个折腾的过程那这一条可以当我没说。其次在硬件上,因为软路由不像硬路由,有专门的电路板布局,有信号放大芯片,屏蔽网等等,
    所以软路由在发射WiFi这一个方面可以说是有天然劣势的,当然这个劣势是有办法弥补的,后面会提到。

    什么人适合软路由

    其实我觉得这一项应该写在最前面,不过我感觉不适合的人应该坚持不到这一行,所以就不改了。

  7. 舍得为提升家里面的网路体验在路由器上掏4位数的人 (重点)
  8. 有一定硬/软件知识(硬件方面知道什么是CPU、什么是内存。软件方面最最最起码要知道什么是PE,会重装系统)
  9. 喜欢折腾的人

    如果你看到这里觉得自己非常符合前面几条,那么后面直接开搞。如果你觉得多学一点也是好事,那么也欢迎继续往下看,只不过可能有相当一部分知识点你会看不懂,那么我也欢迎你举手提问(每一个好学的灵魂都值得尊重)


      0、软路由硬件挑选

    目前软路由主流硬件来源大概有以下三种:

    1.自己淘汰/换代的主机

            能看到曾经陪伴自己的小伙伴重新焕发光彩是非常令人兴奋的事,预算上也舒服很多,不需要再额外购买硬件,但是缺点就是功率颇高(电费不用钱当我没说),硬件尺寸比较感人(不介意当我没说)。

    2.卡吧基佬最喜欢的移动平台主板

            这种往往是被淘汰的整块主板(移动平台CPU一般都是焊死在主板上),价格低廉(几十到几百不等),唯一缺点就是折腾的点又多了(要自己配电源,机箱,加千兆网卡等等),性价比最高的方案,但是同时也是最折腾的方案。

    3.tb的软路由准系统(我的方案)

            tb购入类似的整机,一般是一体式金属机身,被动散热(没有风扇),外置电源(机身尺寸大大减少),缺点就是小贵。当前类似的整机tb大概也就两三家,因为目前广告费还没到账所以先不贴出来CPU也大多是那几个:J1800/J1900:目前最多是这一款,双核高频,tb搜软路由多数也是出现这一款,据说被无良商家炒到有点贵;3215U高玩最喜欢的一款,因为原生支持intel的虚拟机技术,所以在有虚拟机需求时有着超级巨大的天然优势;N3050/N3150/N3160/N3700/N3710:这一款也是相当热门,四核四线程,而且是15年以后发布的产品,功耗低,性能高,不过对比3215U没有虚拟机技术,但是我也用不上,所以我选了这款。注意选择准系统时一定要买两个千兆网口以上的型号。

    我的目标方案

     

    1、软路由硬件准备

    由于我买的是不带内存跟SSD的版本(另外配便宜,而且这家店带内存SSD的版本也同捆了一个比较差的无线网卡,所以我选择裸机),所以到手之后要自己加内存跟SSD注意看你CPU支持的内存类型是普通DDR还是低压版的DDRL,不要因为内存不兼容而导致开不了机一脸懵逼。

    先水几张硬照

    前面板有4个USB3.0+2个USB2.0
    背面分别是两个音频接口,两个千兆网口,两个HDMI接口还有一个电源接口(空出来的两个洞洞是用来接无线网卡天线的,详看题图)
    一体式的金属机身,整个上盖都是CPU的散热器


    背面再来一张

    开始拆解

    首先拧下背面版的4颗螺丝,把背面版拆下来,再拧下底板的四颗螺丝,就可以看到主板了。


    事先准备的内存还有SSD


    完成合体!

    这个时候其实先不着急把背板装回去,先在这个状态下装好系统,方便调试,不然等下内存或者SSD有问题又要重新拆开一遍(不要问我为什么那么熟练 )。这里由于时间关系我们假装肯定没有问题了先把他装回去。


    装好之后是这个样子哒,底板除了有防震垫脚之外还有预留的挂孔,可以让你挂在某些显示器后面

    好,到这里为止软路由的硬件就准备完成了,下面开始赋予他路由器的灵魂

    2、软路由系统准备

    1.启动U盘准备

    首先这里需要一只带PE的启动盘(如果不知道什么是PE建议先百度一下怎么制作PE启动盘,这里不详细讲了)。然后把软路由镜像文件还有镜像写入工具拉到U盘里面。这里先说一下我用的软路由系统是KoolShareLEDE,软路由系统数量繁多,请根据自己需要来选择。大家都想要的传送门 提取码: 2333


    镜像写入工具还有软路由镜像

    2.软路由系统安装

    将鼠标键盘,电源线,hdmi线还有启动U盘接到软路由上,然后正式点火!(此处忘记拍照所以没图)看到BIOS界面之后按F11进入启动菜单(不同主板可能不一样,根据实际情况按),选择U盘然后进入PE系统。


    先看一下CPU内存等参数正不正常


    再看一下SSD,如果你的U盘跟SSD容量一样的话,那么把SSD具体容量这个数字记住(不需要分区,不需要分区,不需要分区!!!)

    接下来我们打开预先准备在U盘里面的DiskImage工具,第一次打开会弹出一个警告框,我们之间选择同意就可以进入主界面了。


    这个时候记得要选SSD对应的“Physical Disk”(记得不要选错了你的U盘)


    然后选择U盘里的img镜像文件,点击开始


    大概几秒钟就完事儿了

    这个时候就可以关机然后拔出所有设备,只留电源线。然后再把软路由通过网线接到电脑上(软路由端要接LAN2,这个后面设置会详细讲)。

    3、软路由系统设置

    0.进入软路由系统

    前面提到将电脑跟软路由通过网线连接,然后启动软路由,同时将电脑的IP设为192.168.1.2(不会设的百度一下),然后通过浏览器访问软路由(192.168.1.1),默认登录密码为【koolshare】。


    默认密码:koolshare


    主界面信息一览

    1.网络设置

    作为一个路由器最起码要学会上网(你已经是一个成熟的路由器了 ),所以我们第一步先点击左侧菜单【网络接口】设置我们的网路。(初始设置的界面忘记截图了,这里先补一张最终成品的图)


    我设置完了是这样子,你们设置完了也大概率是这样子(Duang Duang

    网络这里设置比较复杂,所以我会尽量详细说明(当然我的设置只针对我这款主板,其他不同型号的主板你们根据实际情况设置)。

    首先第一次进入到接口这个界面应该是有3个预设项(一个LAN,一个WAN,一个WAN-V6好像?),然后除了LAN(右边协议:静态地址)之外其他全部删除。

  • LAN设置

    然后这个时候应该只剩下一个LAN,我们点击LAN右边的编辑按钮进入编辑界面。


    LAN的设置

  • WAN设置

    WAN口就是我们用来连接光猫,进行拨号的口,在这台软路由上面我们对应LAN1口(也就是系统里面的eth0)。

    首先返回接口界面,点击添加新接口按钮,然后协议选择PPPoE,连接名称就填个WAN吧,然后点击确定。

    然后进入WAN的编辑界面,根据下面图设置,重点注意项我会在图中标注。


    WAN设置,设置不当会导致上不了网

    上面WAN设置好了之后就可以测试一下,将路由的LAN1接口用网线跟光猫连接起来,然后路由器应该就会自动拨号了,拨号成功之后会有一个运行时间,出错也会有错误提示。

    这个时候可以试试电脑能不能直接上网,理论上到这一步已经可以联网了,如果不行就重新检查WAN的设置,还有跟光猫的连接与设置(现在光猫有一个口是保留给iTV的不可以用作拨号)。

    2.插件设置

    恭喜你的软路由已经成为一个真正的路由了,接下来我们就给他一些普通路由没有的特异功能,感谢KoolShare软件中心里面的众多开发者的贡献,我们只需要轻轻一点就可以安装自己想要的插件。


    我安装了的部分插件


    可供选择的插件相当多,这里要再次感谢各位开发者的无私奉献

    插件这部分我就不详细说明了,大家可以大胆探索一下,一般不会导致路由BOOM的(万一BOOM了重新刷就是了  )。

    4、无线路由器桥接设置

    前面有说过因为天生的劣势,软路由直接发无线信号的能力会比硬路由弱很多,所以我们这里的解决方法就是桥接一个硬路由,利用硬路由来做软路由的天线

    这里我选择的是某讯的K2P B1版本,选择的理由不详细说明了,反正就是便宜好使(我入手价不到150的样子,全新),这个路由有AB两个版本,用的处理器还有路由方案都不一样,A1CPU更强,可以刷的固件多,B1信号好,但是像我们用来做桥接的话基本不用考虑路由器自己的CPU还有固件,信号才是首要考虑项。

    顺便提一提这个路由听说官方固件有后门(虽然公司都已经倒闭了应该),不过为了安全起见还是刷了官改固件(感谢恩山的abccba94大神制作的固件),硬路由刷固件这里不重点提及(张大妈里面好像就有相关文章)。

    这里简单提及一下怎么设置,首先将把软路由跟PC的网线连接拔出,然后把硬路由跟PC连起来(接到硬路由的LAN口,不要插错了WAN口),进入硬路由的后台,把硬路由的静态地址重新设置成192.168.2.XX介于2-255,前面我把软路由的地址设成了192.168.2.1,所以桥接的硬路由也要在192.168.2.X下,如果你的软路由是192.168.1.1那么硬路由就设置成192.168.1.X),然后关闭路由器的DHCP功能,关闭路由的拨号功能(不能直接关闭就改成自动获取),设置好了之后就可以直接把硬路由跟软路由连接起来了(硬路由接任意LAN口,注意是LAN口,软路由接LAN2),这时候用手机连上硬路由发出来的WiFi,如果可以上网那么就证明设置成功了!

    因为不同路由器后台都不一样,所以这部分就不详细上图了,大家如果找不到相关设置可以百度搜索自己的路由器品牌+DHCP还有静态地址来查看设置方法。


    关闭DHCP功能,还有把硬路由的静态地址改成192.168.2.X

    5、总结

    其实看标题就知道这篇文章其实是比较偏向于技术文的,但是既然发布在三大妈,那么还是要算算账,我自己的话整套网络设备(包括光猫、软路由、硬路由)总价大概在1300左右,其实这个价格浮动还是比较大的,我重点说一下自己软路由的价格,我购买的N3160准系统(含电源,不含内存、SSD)价格是530大洋,说实话这个做工我还是相当满意的,机箱纯金属(大概是铝或者不锈钢?没有认真研究)用料很足,拿上手沉甸甸的,而且配合移动平台CPU散热效果也是很不错,现在广东室温25左右(没错广东12月还有25 )的情况下,软路由的CPU大概是40度左右,可以说是相当满意了(回想我之前用的AC88U刷了梅林待机大概70)。

    对了对了忘记给参数党留测试数据了,大概说一下隔一面承重墙连WiFi然后PING主机(192.168.2.1)稳定1ms(测试了大概10分钟,中间偶尔有几个5ms以下的跳动,但是99%都在1msPC的无线网卡是Intel9260AC),然后手机连WiFi测速结果大概是下行20MB/s,上行2.8MB/s(上行懒得吐槽了,测试设备iPhone 8 Plus,测试软件speedtest,网络环境广东电信100M)。以上测试进行时软路由去广告还有科上网插件都是开启状态,反正就是相当满意~


    之前的测速结果

    再说说日后升级的情况,软路由这个配置不吹不黑用个5年是完全没有问题的了(而且我感觉升级的主要原因大概是
    千兆网口的瓶颈而不是CPU),除非到时候宽带网速大于等于1000Mbps,不然理论上光猫跟软路由都不需要动了,而硬路由这块的话,其实我是比较想上带MU-MIMO的无线路由的,但是奈何现在带这项技术的路由器还太贵,等过一两年普及了之后再考虑换代的问题吧。

请使用手机”扫一扫”x

最近留意到一款物联网软件,叫blinker。相比yeelink,貌似它的可玩性更多。


Blinker官方网站:https://blinker.app
github:https://github.com/blinker-iot
社区支持:https://www.arduino.cn/forum-132-1.html
QQ群:301438087

blinker是什么?

blinker是一个 跨云平台跨硬件跨连接方式 的物联网解决方案,旨在让大家可以轻松畅快地DIY物联网设备。

blinker具有以下特性:

  • 其由服务器端、app端、设备端组成,可以部署到几乎所有物联网平台
  • app端支持ios、android
  • 设备端可以使用蓝牙、WiFi、MQTT等方式接入,支持Arduino、freeRTOS、mbed OS、Linux等开发平台
  • 服务器端可以部署到阿里云、腾讯云、OneNET、百度云、AWS、google cloud等平台
  • 通过界面布局器,DIY用户可自己拖拽布局设备控制界面,自由打造你的物联网设备
  • 通过专属SDK,认证用户可以使用Blinker开发自己的产品,并用于商业用途

blinker能做啥?

  • 快速开发物联网 / 智能家居 / 无线遥控项目
  • 手机 / 语音助手 控制设备
  • 蓝牙ble / 局域网WiFi / 远程MQTT 接入设备

blinker库

blinker库封装了不同硬件平台的底层代码,提供了一套物联网设备开发api。
开发者不用再考虑网络适配、不用再烦恼硬件差异,只用更好的聚焦业务逻辑,即可进行畅快的物联网开发。
使用blinker库,无论开发者使用何种硬件、何种开发方式、何种云平台,开发起来都大同小异。

快速开始 APP下载 开发指南 项目示例 FAQ

快速开始

blinker当前接入方式有三:蓝牙 、 WiFi 、MQTT,理论上只要是支持蓝牙或者WiFi的设备,都可以使用blinker连接
未来计划支持的接入方式:nbiot
我们提供了对主流硬件平台支持,点击你希望使用的设备和接入方式,即可查看快速接入教程

APP下载

Android下载:
点击下载
或在应用商店搜索“blinker”下载安装
已上架的android应用商店有:Google Play、腾讯应用宝、360应用商店、三星应用商店、锤子应用商店
需要Android 5.0以上版本才能正常使用
IOS下载:
点击下载
或在app store中搜索“blinker”下载

硬件开发

FAQ

  1. 什么硬件可以连接blinker?
    硬件支持情况
  2. 是否可以远程控制设备?
    可以,以MQTT方式接入设备,即可进行远程控制
  3. 是否支持IOS?
    支持,在app store中搜索“blinker”下载
  4. blinker商业版和DIY版本有什么区别?
    blinker是一个面向商业用户的解决方案,同时blinker DIY为开发者提供便捷的原型开发能力
    blinker商业版功能更多,如语音控制、云存储、数据分析与统计、批量设备配网 等

内容来源:http://hsk.oray.com/case/

远程监控

网站&论坛

VPN

转载自:电子火花

谷歌的 Project Soli 雷达技术可不光是应用在智能表,如果交到创意无限的人手上,其应用可是既实用又有趣。圣安德鲁斯大学的研究员利用开发者套件来创作了 RadarCat,能分辨靠近的物品是什么。RadarCat 通过机器学习,慢慢就会分辨到放在上面的是苹果或是橙、玻璃杯里有没有水,甚至是人体部位。

团队并没有做出太复杂的东西,他们只把手机和雷达连在一起,就能通过握机的方式和位置来做出不同反应,设备还懂得分辨手掌有没有戴上手套而改变界面呢。在应用范例里,餐厅能知道客人的饮料喝完没有、视障人士也可以在店里分辨到货品。再进一步的,团队认为农场和废料回收场也能应用 RadarCat 来分类物品。希望它能尽快从概念计划变为实际产品,造褔大众吧。

知乎上有个问题:物理专业自学计算机应该学些什么?

题目大概是说他物理本科大四了,申请去美国读物理博士,但自己对计算机有很大兴趣,为了考虑以后的饭碗,想自学计算机。自己对计算机图形学有兴趣,希望得到一些建议。

回答的人不少,有几个人的回答震撼到我了。


第一个回答:

作者:陈然
链接:https://www.zhihu.com/question/23212279/answer/24061341
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

个人站的角度不同,现在的答案基本都是从图形学的角度建议,我换个角度。

从研究生计算机科学做研究的角度来讲,我认为本科最适合的专业首先是物理,其次是数学,再次才是计算机。数学学的太抽象,抽象层次太高,研究现实问题的人往往处在鄙视链的底端。计算机学的太底层,对于概率论、随机过程、线性代数等学科学的太少,不了解建模分析的那套方法论。而物理学一方面的数学知识足够多,另外一方面主要研究的方法也是对这个世界建模,然后进行观测,这与前沿的机器学习领域做的事情几乎是一样的。至于会不会写代码,其实科研里面要写的代码不多,主要都是在推公式,研究如何设计模型使得其拥有很多良好的性质。代码很多时候写写matlab就可以了。

所以恭喜你,如果你想转行做CS的科研,你有很大的优势。事实上,很多CS领域的大神都是学物理的,比如华人图灵奖得主姚期智,CMU Machine Learning领域大神Alex Smola。

如果你真的励志做CS相关的研究的话,物理PhD的选择最好到CS极好的学校,比如UCB, CMU, MIT, Stanford,一般这些学校都可以辅修Machine Learning的Master, 多修CS相关的课程,都是很好的选择。Coursera上的Machine Learning课程都很入门,如果想进阶,你可以看看CMU 10701(Machine Learning), 10702(Statistical Machine Learning), 10708(Probabilitic Graphic Model) 课程的课件、视频、相关阅读和作业,基本都不需要写代码,主要是数学证明、建模和分析。

当然,如果你想做应用而不是做理论什么的,当我以上没说。


第二个回答:

作者:Milo Yip
链接:https://www.zhihu.com/question/23212279/answer/23940891
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

其实在计算机图形学里有很多与物理相关的课题,例如物理模拟(刚体、柔体、流体等)、基于物理的渲染(光源、材质、媒介等),还有一些涉及物理的跨学科课题,例如生物力学、基于物理的声音渲染、光场摄影等等。简单介绍几本书

有空可以看看最前沿的图形学发展,特别是当中涉及物理部分的

看看那些文献的作者网站,可能会发现不少研究者都有物理背景。

我觉得能做理论物理研究的人,其智商做哪种科学问题也不大吧。而计算机科学之本就是算法,无论是哪一个应用方向都是必须的,建议深入学习。个人不建议浪费时间在API、OS、UI编程上面,不竟这些东西许多人都能做,有研究能力的人可以探索新世界。因为游戏、动画、电影这些娱乐工业,计算机图形学的职位在行业上也有需求。


第三个回答:

作者:徐枭涵
链接:https://www.zhihu.com/question/23212279/answer/27455609
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

我是理论物理大二的…给师兄回答这个问题吧。
================================================
当师兄看到很多API繁杂但无从下手,答案是唯一的:多写。
再说说我的建议吧,
掌握一门快速开发语言:强力推荐Python,因为有scipy和numpy存在。可以把这玩意当Matlab用。我做过测试,进行大矩阵乘法numpy的速度比matlab快50%,这二者都比mathematica快20倍…而且python有一个很好的web framework django,结合html css,可以写出不错的网站(比如知乎)如果你是OI的,数据结构神马不用太多虑,直接上计算机图形学吧。
建议可以OpenGL+PhysX(物理引擎)+.NET/Cocoa(win/mac)一起做一个项目,像我做的是一个无人机控制的仿真平台。这个对于学习三这玩意都有效。特别是mvc的构建方式。
另外还有一个很轻巧的构建计算机图形学的方式是webgl,很漂亮。或者直接unity3d(游戏引擎)引擎亦可。
如果你会了html也就是如果你会了javascript,建议入手node-webkit,二十分钟构建一个跨平台桌面应用。对于交互UI我比较倾向于两种,一个是轻量级的html+js的形式,好看简单,一个是unity虚拟现实,我最近做的一个项目就是这两种结合的模式。强力推荐CUDA(GPU计算),物理口必备…想在自己的PC上模拟核聚变CUDA绝对是居家旅行,杀人放火必选。而且CUDA的模型天生是为物理学家设计的。同时需要学点cpp,可以把鄙校丁泽军老师计算物理A书上的习题全部CUDA一遍基本就练习的差不多了
micro.ustc.edu.cnML/DataMining我只看过一些些,这些东西如果自己写算法的话需要用c/cpp如果只是玩玩可以用python+一堆库的方式来搞。主要可能还是数据源吧。嵌入式&单片机,如果不慎入实验物理坑会点单片机嵌入式还是有必要的,入个树莓派玩玩ROS吧。从树莓派+arduino玩的方式入手玩起来很简单无压力,最练手的就是写机器人控制了。这个是从机械折腾到前段的。
树莓派既是典型的嵌入式Arm开发版,优势在于社区庞大。
arduino是一种高度简化后的单片机。比起51等用起来真的简单多了

移动开发:学习学习swift吧。玩玩iOS。。总是觉得Android怪怪的

学习轨迹:
1.熟练使用linux/unix(格式化硬盘一个月内可以生存)
2.选一个自己顺手的IDE(vim/emacs/VS),基本熟练cpp、python(均指一万行代码,可以写写计算物理习题)
3.搭建一个自己的服务器(using aws.amazon.com ec2)
4.写一个桌面app .net/cocoa,(学c#/o-c),在这里折腾OpenGL CUDA等
5.写一个绚烂的个人网站use Django&html5&css3&webgl
6.研究妹子回你短信速度和她对你好感度的关系(使用支持向量机/deep learning)
7.学习CUDA并在你的pc上模拟EAST using MHD model in FEA
(其实能跑出来一个N-S方程出来个卡门涡街就很好了)
8.学习单片机并且控制一架四轴飞行器给那个追了四年没追的女神泼一盆冷水(someone你丫两年以后给我等着)。
可以适当从ROS+树莓派入手,加上一些有意思的硬件比如kinect什么的,就很好玩,推荐学习OpenCV(人脸识别)+讯飞各种接口(语音)。

对了。。。工程控制论,或者什么ML,DataMining的数学比物理口的数学真的是弱爆了。一群不用解偏微分方程的渣渣。

顺便抛我的blog stlover.org(呃最近好像数据库挂了)
就这些差不多了…剩下做点小项目自己也就会了
=====================
操作系统建议看看,就是看看而已。。我大二选了操作系统课最后发现完全没听。
编译原理没有必要,想深入学推荐MIT的计算机结构和解释同时学习LISP


第四个回答:

作者:Joe Physwf
链接:https://www.zhihu.com/question/23212279/answer/102771418
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
如果读完PhD在转计算机,真真是浪费了。计算机对高等物理那些基本不需要,倒是数学是很需要的,但PhD依然是浪费。
那些图形学,虽然涉及到物理,但是最多也是本科就够了,图形学的很多东西都是在投机取巧,那些有颠覆的理论基本上根物理无关,细节的东西都是在拼奇技淫巧。不是不懂物理,而是上帝的高度凡人根本无法企及。你想两面镜子相互反射这种东西,在计算机看来就是无限循环(卡死),但是上帝那里却是realtime的,一点都不卡。
其他很多计算机领域跟物理就更加没有关系了,互联网,大数据,人工智能都没有。如果你对两者都割舍不了的话,那你应该关注计算机基本理论这些东西。你对软硬件结合很感兴趣,但是这些难度不大,而且你一旦了解之后估计很快就失去兴趣了,因为很容易理解掌握。真正难的是计算机物理基础层面的东西,那才是真正软硬结合的地方。半个多世纪之前,贝尔实验室发明了三极管,现在半导体技术已经日渐迟缓了,量子计算机,量子传输这些技术充满想象。当然未来很难说,但发言权在于那些位于基础理论前沿的那些人,很明显你有机会。实用技术有时的确很吸引人,但那些都是细致末节,你穷尽一生改变的只是一枝一叶,并且或早或晚都将坠落。

我的感悟:

第一个回答站在常春藤留学生的视角给出了实用的建议。给我的感觉就是,国外的课程比国内大学的课程领先了太多了,似乎这些课程已经完全成熟和系统化了,而国内还比较杂,很多人还必须去看网络课程来学习。这从一个侧面能看出,国内学生相比国外学生这方面受教育的深度和看问题的视野是有差距的,而且这样网络封闭的话,很不好弥补。

第二个回答罗列了不少书籍,都是物理和游戏、计算等相关的计算机书籍。这类书籍国内也越来越多,不过不得不说的是,大多好的教材,似乎都是外国人写的,中国引入翻译版(书的好坏甚至还要取决于译者的水准)。也就是说,好的教材都是英文的,大家最好学好英文,方便自己掌握知识。这也提醒我们,我们与他们的差距还是很大的。

第三个回答深深震撼到我了。一个大二学生,已经对计算机技术掌握了这么多,真是不简单啊。我感觉他做的事情如果让我去做,没有几年是做不完的。其中他讲到了Python、C#编程,js编程、html、css、javascript(也许他还会java呢),swift,用到了U3D,还会使用SUDA,也玩开源硬件,arm编程,而且非常擅长Python(用Python结合其他框架做了网站,做了GUI编程等)。学习MachineLearning(机器学习)、DataMining(数据挖掘),还会OpenCV、讯飞API。这个答案是答主在2年前回答的,估计现在已经用到了Google、百度的接口(语音接口还是很强大的),做模式识别,可能还有很多我根本没有听过的,也不知道存在的技术。我非常佩服他,

第四个回答比较理性。他简单澄清了物理和计算机的关系,并建议去做最基本的事情。题主感谢了他,而且题主已经走上了计算物理的道路。“我现在业余时间主要关心机器学习方面的东西,因为背后的数学支持挺对我胃口。我自己的科研方向也正是量子计算,我还在尝试涉猎量子计算+机器学习的交叉。”题主这样回答。


我摘下眼镜,停下来想了想。

普通大众忙忙碌碌,做的事情对他们来说可能过于简单了。世界上就是有这么一小部分人,走在人类发展的前列。虽然和大家一样一日三餐,闲了也玩耍逗乐,但静下来的时候,很多人选择看电视打牌睡觉娱乐,而他们选择去钻研他们的兴趣。

上面的只是物理和计算机的话题。其实,无论是摄影,研究昆虫,或者是别的什么,只要是钻进兴趣里了,人生不会太枯燥,追求也就不会太乏味。我不想说谁的生活更有意义,至少,这么些人的其中一些人做的事,会影响很多人。我感觉,他们活着的意义更大一些吧。