返回

陈然的公开内容

文章、回答、音乐、视频、播客和访谈的统一归档 · 全部内容 · 编程 · 44 条 · 第 1 / 2 页

2025

AI如何辅助编程?

回答2 分钟

从我的观察来看,AI辅助编程最大的变革不在于代码自动生成本身,而在于它完全改变了我们与代码交互的方式,让编程从"写代码"变成了"设计系统"。就像我写的文章中提到的: "工程师的工作大部分就是造轮子与用轮子,而工具的逐渐标准化使得重复造轮子的需求越来越弱,越来越多的工程师核心任务并不是研发,而是整合(Integratio...

集成 GPT-4 的代码生成器 Cursor 使用体验如何?怎么用更高效?

回答4 分钟

你有没有过这样的时候:花了无数心力去“打磨”一个人工智能开发项目,结果却越修越乱,反而不如直接重来?这个现象在当今 AI 领域并不罕见。我们常常期望用 AI 帮助我们自动生成内容乃至代码,但却忘了 AI 在处理复杂的中间过程时,可能会带来比想象中更多的混乱。今天就和大家分享一个失败的 AI 开发项目经历,以及由此带来的...

如何评价Cursor?

回答4 分钟

你有没有想过,只花不到一个小时,就能为你的播客产出整整一周的内容?又或者,一首自己用AI创作的音乐,能成为一支支短视频的背景,让需要被领养的狗狗收获更多关注?听起来像是天方夜谭,但其实现在通过“AI自动化”,这一切都不再是难事。下面,我想分享三件我用 Cursor AI+自动化做的项目,也谈谈其中的一些思考。 一、自动...

2024

学习编程可以为自己带来什么?

回答2 分钟

之前引用过一个笑话: "程序员有个著名的笑话,这么说的:'老公,晚上回来买一个西瓜,如果看到西红柿,就买两个。'晚上,老公买了两个西瓜回来,老婆问为什么,老公说,'因为看到了西红柿。'程序员看到了一定会心一笑,甚至认真的人还会辩解说完全没有什么问题,认为这是对于语言严谨的追求。" 这个笑话说明编程其实改变了我们的思维方...

写代码和写文章,哪个难?如果对于程序员来说,哪个更难?

回答2 分钟

其实写代码和写文章一样难,但是难在不同的地方。在《好学生学不会 THE UNTEACHABLE STUDENT》中我分享了一个观点:"他们接受的训练就是去分析、研究和寻找问题,而且他们在这方面相当在行。他们能很快找出任何问题的负面影响,在行动之前,他们会问很多问题,确保自己了解所有的事实。" 有意思的是,这个特点在面对...

什么事情是你当了程序员才知道的?

回答2 分钟

当了程序员最大的感受,就是当你真正进入行业,会发现实际工作和在学校里学习完全是两回事。 实际工作中,代码量只是整个软件工程中很小的一部分。花在写代码上的时间可能只占20%,更多的时间是在做设计、测试、部署、运维,以及最重要的:跟人沟通。 Conway's Law(康威定律)说组织的架构决定了系统的架构。当你真正进入行业...

编程的难点在于哪里?是逻辑、数学、算法,还是模块、框架、接口的掌握?

回答2 分钟

编程最大的难点其实都不在这些技术层面上,而是在于如何把一个复杂的现实问题转化为计算机可以理解和执行的形式。 我之前中提到过一个观点:"部署、运维等工具的逐渐标准化使得重复造轮子的需求越来越弱,越来越多的工程师核心任务并不是研发,而是整合(Integration)。"这背后的深意是:现在的编程工作,难点已经从"如何实现"...

为什么说程序员学习只看视频不好,还要多看书?

回答2 分钟

这个问题让我想到了一个本质的观点:学习编程不是为了看会做什么,而是要真正理解和掌握。 从我在CMU的经历来看,最重要的不是获取知识的方式,而是如何让知识真正变成自己的。正如我在《如何做错题集》中说过的: "因为学习就两步:1.找到不会的,2.把不会的变成会的。绝大部分人把时间花在了做题上,而忘了其实做题是为了找到不会的...

2021

2019

2015

2014

有哪些算法惊艳到了你?

回答2 分钟

Reservoir Sampling( Reservoir sampling ) 这是我在今年求职过程中面试的时候被问到的,因为之前很少接触Streaming的算法,在听到这个题目的时候被惊呆了,根本不能理解: 给一个Streaming的Data,未知长度,要求在Streaming结束后返回N个Data,且是等概率的。...

想成为计算机技术高手,一定要懂汇编吗?

回答1 分钟

大概在另外一拨人的眼里,成为计算机学科的高手应该是把数学学好,只有把高等数学学好,精通概率、统计、随机过程、抽象代数,熟练掌握各种建模方法,才是计算机科学的王道。再结合各种领域知识,年薪百万轻轻松松。弄点高级算法几十亿被收购瞬间财富自由。 技术只是技术本身,计算机发展了这么多年,无数新技术层出不穷。每个人都靠着自己的专...

有没有什么可以画大型关系图的软件?

回答1 分钟

ER图和Visio是可以并列的么? 首先你要选择一种建模的语言,比如常见的ER图,IDEF,UML 然后要学习这种语言的规范 接着再找建模的工具,比如Rose,Visio 大型系统的设计必须考虑设计规范,这么几千个点的图就算你画出来也没人想看吧 该分层的分层,该抽象的抽象,才是好的系统设计

用 LaTeX 撰写的学术论文怎么方便地供老师评注和修改?

回答1 分钟

Latex是文本文件,所以可以使用Git进行版本管理,进行评注和修改 但是要是老师不熟悉Git的话,那就参照别人的方法把╮(╯╰)╭

在美国课堂上使用 Matlab 完成作业,需要自己购买软件吗?

回答1 分钟

可以使用Octave 代替 GNU Octave 语法跟Matlab的没啥差别

2013

编译原理是不是计算机基础课程中最难的?

回答1 分钟

当然不是 因为它背后有很多理论的支持 比如自动机 文法等 而这些理论恰好又比较好出题 比较好实现 所以比较好变成作业 对于不熟悉的人来说看起来往往很难 而真正难得东西 比如OS 往往由于国内没几个老师有能力教的好 所以最后反而让人觉得没那么难了

如何计算两份代码的相似度?

回答11 分钟

正好之前的毕设中阅读了相关的文献 这里依照我肤浅的理解也来回答一下 计算两份代码的相似度是有很多实际的应用背景的,比如在代码仓库中(Software Repository)中,大量的代码来自于相互的复制粘贴,如果能够合理地检测到相似的代码,将相似的代码只保存一份,那么可以减少大量的存储冗余,同时也可以更好地保证数据的一...

哪些事情让你觉得「哇!还可以这么干」?

回答1 分钟

想起了两个神级的排序算法 1. Sleep Sort 输入一组数 A1 A2 ... An, 新建n个线程,每个线程Sleep(Ai),然后输出Ai,就排序好了。。 这可是正儿八经的多线程排序噢!!! 详情: 排序算法 Sleep Sort 2. Bogosort 输入一组数,随机打散顺序,如果不是有序的,继续随机打散...

话说数字电路对一个计算机系的学生真的那么重要吗?

回答1 分钟

一个决策一定有损失, 也有收获 它对于你重不重要一方面体现在其学术性上, 有人已说, 再此不表. 另一方面体现在影响你的GPA上. 如果你觉得这两者不影响你, 那自然可以低分飘过. 我所见的牛人, 不少是完全对此不感兴趣的. 不过他们中的大部分, 都觉得GPA还是挺重要的, 花一点点时间弄个不错的成绩, 挺值得. 另一...

大一自学计算机,目前在看 C Primer Plus,准备学习的书还有很多。应该按照什么顺序阅读,如何进阶?

回答1 分钟

别看书了……做点项目去吧…… 不真做做你那看看跟没看差不了多少……

学习计算机一定需要较高的智商吗?

回答1 分钟

如果是想问C语言如何学习的话, 知乎上有不少答案. 善用搜索. http://www.zhihu.com/search?q=C%E8%AF%AD%E8%A8%80%20%E5%AD%A6%E4%B9%A0&type=question 如果是想问学习方法的话, 你从小学到大学学了12年, 方法都差不多 入门个C语言跟你当...

2012

在校大学生有没有可能自主研发成功“植物识别器”?如果有可能那需要自学哪些内容?如果不可能的话,为什么?

回答1 分钟

当然有可能啦 我们大一的大作业就写过搜索引擎呢 当然能用 搜个关键词就能出来匹配的东西 至于好不好用,那就是值得你化一辈子时间去优化的事情了

计算机应届毕业生三四月份再找工作晚吗?

回答1 分钟

考虑到提问者没有提供自己的信息,加上我对于前两点不了解 只回答第三点: 1.我不反对蹭课,我举双手支持每个人充分利用各种资源完善自己。如果需要,我也可以提供相关的信息。 2.我猜提问者应该是计算机相关的专业的。我猜提问者也上过自己院系的课。我猜提问者也明白其实计算机相关类的课程课上老师讲不了什么。工程类课程主要的内容绝...

作为一名程序员,面对如此大的信息量和技术,比如 Java 程序员或C++ 程序员,该怎样过滤学习技术呢?各大国内技术类网站论坛要怎样有针对性的学习呢?

回答1 分钟

需要什么学什么,学精学透 神马好玩学什么,乐在其中 定期回顾 多与人交流

为什么大多数编程语言中的数组都是从0开始计数的,比从1开始计数有什么好处?

回答2 分钟

先说说为什么C语言的数组是从0开始 众所周知,C语言的数组是直接操作内存,那我们肯定得从内存的寻址开始说起: 以“以行为主序”的分配为例:设数组的基址为LOC(a c1 c2),每个数组元素占据l 个地址单元,那么aij 的物理地址可用一线性寻址函数计算: LOC(aij)=LOC(a c1 c2)+( (i- c1)...

如何能提取出用户在 Android 手机中访问的人人网主页地址?

回答1 分钟

如果用户是使用人人客户端的话: SD卡上有一个文件夹 Renren/account/ 里面是登陆过的人人网的人ID 比如我的是Renren/account/295813394 在打开网页 http://www.renren.com/295813394 即可 如果是非客户端的话,那可能稍微麻烦点了,只能通过读取浏览器的历...