一、 为什么读这本书?

1.想了解如何更好地利用 AI 工具来辅助编程。

在我日常的工作中,常使用 ChatGPT 和 DeepSeek 来辅助编程。当然,方式比较简单与直接,就是将问题丢给它们,然后看一下这些 AI 工具怎么解答,根据解答选择比较好的解决方案。但是,有两个问题经常困扰着我:1. AI 工具给出的解决方案是错误的。例如:我使用的 Python 版本是 2.7.18,Flask 框架版本是 1.1.4, 那么相应的 Flask-SQLAlchemy, marshmallow, marshmallow-sqlalchemy 等应该使用哪个版本?这个问题截止到目前这些 AI 工具都没有给出正确的版本。2. AI 工具给出的解决方案不是最佳的。例如:在 Flask web 开发中,应该使用哪个 restful 框架?对于这个问题, AI 工具始终没有给出最佳的选择理由。

对于以上两个问题,我时常在想是否是我的提问方式不正确?刚好有一天看到朋友圈有朋友在阅读 《AI-Assisted Programming》(《AI辅助编程实战》) 这本书,所以打算看一下。借鉴别人利用 AI 工具来辅助编程的经验。

2.想看看 O'Reilly 最近几年出的书水平是否有改进。

我买的第一本书 O'Reilly 的书是 2018年出版的《利用Python进行数据分析 (原书第2版)》, 当时感觉比较简略,后面就再也没有买过 O'Reilly 的书了,而 《AI-Assisted Programming》是 2024 年出版的,6 年过去了,想必 O'Reilly 出的书应该有所改进。

二、这本书写了什么?

简单介绍了 AI 工具的 发展,详细介绍了 Copilot 和 其它 AI 工具的使用,软件开发流程。

从 2025 年 3 月 13 日至 2025 年 7 月 27 日,期间断断续续花了 38 天阅读完《AI-Assisted Programming》(《AI辅助编程实战》)。

三、这本书特点

1.很多生词

这是我阅读过的所有书中生词最多的书。这本书只有 200 多页,然而我却从 2025 年 3 月 13 日至 2025 年 7 月 27 日花了 38 天才阅读完,之所以从 3 月拖到 7 月,是因为生词实在太多,然而又毫无技术价值,导致我一度不想读,但本着“要么不做,要做就做好”的原则,还是选择继续读下去,最后就变成这样读一天,然后用三天调整心情的节奏。示例:á la(第 4 页), voilá(第 6 页).....搞不懂作者为什么一定要用法语。

2.很多形容词

只要这个特点出现一次我就提一次,真正好的东西是不需要那么多形容词来说这个东西好的,用太多形容词来修饰往往是为了掩饰一些不好的东西。示例:

A key theme of the evolution of programming languages is abstraction. This is a fancy way of describing how systems get easier for developers to use. When the tedious details are handled in the background, developers can focus on what matters most. This has been a driving force of innovation, allowing for breakthroughs like the internet, cloud computing, mobile, and AI.

上面这段话是随便截取的,我们来看下有多少形容词:第 1 句:key;第 2 句:fancy;第 3 句:tedious;第 4 句:driving;真的大可不必这样,去掉这些形容词完全不影响阅读。

3.很多比喻

第 5 页,AI is the big umbrella: it includes all systems that can pull off tasks with the flair of human intelligence.

第 83 页,Amazon CodeWhisperer is like a Swiss Army knife extension for IDEs like VS Code, PyCharm, and AWS Lambda.

......

AI 是 “big umbrella”, CodeWhisperer 像“Swiss Army knife”,我觉得这样的比喻毫无意义,一点儿也没显示出其特点。

4.很多引用

书中引用了大量的各种人士说的话,示例:Andrej Karpathy,Quinn Slack,Zach Lloyd,Marwan Elwaraki,Salwa Al Alami, James LePage,Deepak Kumar......整本书读下来让我有一种感觉:xxx 说 xxx。感觉像作者就是拉这些人来站台。

5.很多惯用语(idiom) 、非正式用语

整本书有非常、非常、非常多的惯用语、非正式用语,除了增加阅读难度外毫无意义。示例:gin up,shady practice,tricks up their sleeve,move rapidly downards through the air.....如果你看到这四个词组(或短句)能理解明白它的意思,那我给你点赞,你阅读这本书应该会比较顺畅。做一个不那么恰当的比喻,如果一本书夹杂大量的口语、方言,我觉得没多少人会喜欢这样的书,因为除非读者熟悉这些口语、方言,否则对读者来说,很多内容很难理解。

四、这本书适合什么样的人?

写到这,我还是很生气,因为我觉得这都不能称为一本书,虽然中文名叫《AI辅助编程实战》,其实概括起来就是一句话:遇到问题可以问这些 AI 工具,仅此而已。读完这本书,回到”为什么读这本书?“,对于“想了解如何更好地利用 AI 工具来辅助编程。”——没有找到更好的方式;对于“想看看 O'Reilly 最近几年出的书水平是否有改进”——只能说从这本书来看,依然没有改进。

鉴于书中内容毫无技术价值,且难以阅读,所以不推荐阅读。

五、推荐指数

按照5 星的标准,本书推荐指数 1 颗星。

六、参考资料

1. 编程

(1)豆瓣,Tom Taulli,《AI-Assisted Programming》:https://book.douban.com/subject/36871090/

(2)源码,Github: https://github.com/ttaulli/AI-Assisted-Programming-Book/

2. 英语

(1) Etymology Dictionary:https://www.etymonline.com

(2) Cambridge Dictionary:https://dictionary.cambridge.org

欢迎搜索及关注:编程人(a_codists)

《AI-Assisted Programming》读后感的更多相关文章

  1. 《DevOps软件架构师行动指南》读后感

    从软件架构师视角讲解了引入DevOps实践所需要拥有的技术能力,涵盖运维.部署流水线.监控.安全与审计以及质量关注,这是本书一开始内容简介的开头,本书的作者是伦恩·拜斯(Len Bass).英戈·韦伯 ...

  2. nodejs开发指南读后感

    nodejs开发指南读后感 阅读目录 使用nodejs创建http服务器; supervisor的使用及nodejs常见的调式代码命令了解; 了解Node核心模块; ejs模板引擎 Express 理 ...

  3. DevOps:软件架构师行动指南(文摘)

    第一部分 背景 第1章 DevOps是什么 第二部分 部署流水线 第三部分 横切关注点 第四部分 案例研究 第五部分 走向未来

  4. 2020年DevOps工程师入门指南

    DevOps兴起于2010年代,到现在DevOps已经在行业中拥有了一席之地,并在继续发展壮大. 有兴趣成为一名DevOps工程师吗?如果想要成为一名DevOps工程师,需要做到以下五点: 要有开发者 ...

  5. 5月29日 Java性能调优指南 读后感

    并行垃圾收集器 串行垃圾收集器 并发标记清除(CMS)垃圾收集器 Garbage First(G1)垃圾收集器 没有深入的学习G1的原理,只是看了大概的思想; SA工具:待学习

  6. 敏捷开发、DevOps相关书籍——书单

    自己瞎整理的一些书单,都是豆瓣评分比较高的书,可以作为选择的一个参考. 书名 豆瓣链接 持续交付:发布可靠软件的系统方法 https://book.douban.com/subject/6862062 ...

  7. 有奖试读—Windows PowerShell实战指南(第2版)

    为什么要学PowerShell? Windows用户都已习惯于使用图形化界面去完成工作,因为GUI总能轻易地实现很多功能,并且不需要记住很多命令.使得短时间学会一种工具成为可能. 但是不幸的是,GUI ...

  8. [转载]你所不了解的DevOps

    DevOps开发运维训练营 一旦建立了创新的文化,即使那些并非科学家或者工程师的人——诗人.演员.记者——也能以团体的形式,接受科学文化的意义.他们信奉创新文化的概念.他们以促进这种文化的方式投票.他 ...

  9. 给 DevOps 初学者的入门指南

    当我们谈到 DevOps 时,可能讨论的是:流程和管理,运维和自动化,架构和服务,以及文化和组织等等概念.那么,到底什么是"DevOps"呢? 什么是DevOps 随着软件发布迭代 ...

  10. CI Weekly #3 | 关于微服务、Docker 实践与 DevOps 指南

    CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成.持续交付,持续部署.自动化测试. DevOps 等实践教程.工具与资源,以及一些工程师文化相关的程序员 Ti ...

随机推荐

  1. 鸿蒙版《智慧农业APP》通过华为云IoT平台实现软件硬件互联

    一.原理图 本篇不涉及硬件相关的功能开发,硬件设备使用MQTT客户端模拟,如果有硬件相关经验的可以直接使用真实硬件代替MQTT客户端. 1.华为云物联网服务器 华为云物联网平台是硬件设备端跟移动APP ...

  2. File与IO流之File练习

    创建文件夹,并在其中创建文件 package Java_test; import java.io.*; public class Test { public static void main(Stri ...

  3. 【Spring Boot】ActiveMQ 发布/订阅消息模式介绍

    本文在<Spring Boot 整合 JMS(Active MQ 实现)>的基础上,介绍如何使用ActiveMQ的发布/订阅消息模式.发布/订阅消息模式是消息发送者发送消息到主题(topi ...

  4. java RSA公私钥生成工具类

    package cn.daenx.my.util; import java.security.*; import java.security.spec.PKCS8EncodedKeySpec; imp ...

  5. HarmonyOS 实战:给笔记应用加防截图水印

    最近在做笔记类应用时,遇到一个头疼的需求:防止用户内容被非法截图传播.思来想去,加水印是个直接有效的方案.研究了 HarmonyOS 的开发文档后,发现用 Canvas 配合布局组件能轻松实现动态水印 ...

  6. python学习课后练习

    此次爬虫学习的资源是B站所找,具体如下:Python课程天花板,Python入门+Python爬虫+Python数据分析5天项目实操/Python基础,该课程留了课后练习,我把自己的代码和想法单独整成 ...

  7. Dify实战案例:AI邮件批量发送器!

    在 Dify 的使用中,有很多很实用并且很好玩的案例,例如今天给大家介绍这个"AI邮件批量发送器". 在没有 Dify 之前,我们要实现邮件的批量发送是件很难的事,不但要写很长的代 ...

  8. C# 异步编程:从 async/await 到 Task 并行库的全面解析

    引言 在现代软件开发中,处理高并发和耗时操作是一个常见的挑战.C# 提供了强大的异步编程模型,它允许程序在执行耗时操作时不会阻塞主线程,从而提高程序的响应性和性能.其中,async/await 关键字 ...

  9. DRF之登录认证源码分析

    DRF之登录认证源码分析 [一]引入 [1]表模型 from django.db import models # Create your models here. class UserInfo(mod ...

  10. ChatGPT学习之旅 (3) Prompt进阶用法

    大家好,我是Edison. 上一篇:Hello Prompt 复习Prompt用法 还记得上一篇学到的黄金公式吗? 这里,我们先来复习一下,假如我们想要ChatGPT来扮演一个[私人营养师]为我们给出 ...