【2024W35】肖恩技术周刊(第 13 期):肉,好次!

周刊内容: 对一周内阅读的资讯或技术内容精品(个人向)进行总结,分类大致包含“业界资讯”、“技术博客”、“开源项目”和“工具分享”等。为减少阅读负担提高记忆留存率,每类下内容数一般不超过3条。
更新时间: 星期天
历史收录: shawn-weekly
订阅方式: 微信公众号“肖恩聊技术”,除周刊外还有更多原创技术博文~

开篇图

周末见了两年未见的同期入职同事,两年前他离职时在北京吃的火锅,这次相见又吃了火锅,我们是真的爱吃肉🤤。虽说见面还是熟悉的感觉,聊的也是熟悉的话题,但时间已经悄悄咪咪的过去了两年,相聚的机会越来越要按年来计次了。

业界资讯

  • IBM中国回应“关闭研发部门”:根据需要调整运营,变化不影响支持客户的能力

IBM中国近期对外界关于其关闭研发部门的传闻作出回应,表示公司会根据业务需求调整运营策略,以确保为客户提供最佳服务,且这些调整不会影响其支持客户的能力。此前有消息称IBM将关闭中国研发部门,涉及员工超过1000人,且有员工在社交平台上透露,公司关闭了研发和测试岗位员工的访问权限,并在线上会议中宣布裁员。据悉,裁员赔偿金为“N+3”。IBM强调,其在中国的本地战略重点是利用技术和咨询经验,组建具备相应技能的团队,以帮助中国客户共创解决方案。IBM是全球领先的混合云、人工智能及企业服务提供商,服务于175个国家和地区的客户。今年是IBM进入中国的40周年,公司表示将继续深耕中国市场,构建开放、充满活力的AI生态系统。2024年第二季度,IBM营收总额为158亿美元,净利润18.3亿美元,同比增长15.82%。

  • 小鹏 MONA M03 发布上市:11.98~15.58 万元,面向年轻人的 15 万级 AI 汽车

小鹏汽车在2024年8月27日的发布会上推出了全新车型MONA M03,定位为20万元内的A级智能纯电掀背轿跑,面向年轻消费者。该车型提供三种续航版本,价格区间在11.98万元至15.58万元。515km续航版本售价11.98万元,620km续航版12.98万元,而580km续航Max版为15.58万元。MONA M03计划从2024年9月起交付,其中M03 Max版本将在2025年春节后交付。

车辆设计采用“AI量化美学”,提供五种车漆和三种内饰配色选择,包括限定的“黑武士版”。车辆尺寸为4780mm1896mm1445mm,轴距2815mm,风阻系数为0.194,是全球风阻最低的量产纯电掀背轿车之一。车内配备了15.6英寸中控大屏,搭载高通骁龙8155芯片和16GB内存,支持360度全景影像和3D感知渲染地图。

智能座舱支持4音区语音交互,配备18颗扬声器,支持7.1.4全景声场。车内还标配了大尺寸全景天幕和无线充电功能。智驾方面,MONA M03提供标准版和Max两个版本,标配20+智能感知硬件,具备L2级智驾能力,包括智能巡航辅助、自动泊车辅助等功能。小鹏汽车还计划通过四个步骤实现L3+级别的智驾体验。

动力方面,新车提供两种电机选择,最大功率分别为140kW和160kW,电池有51.8/62.2kWh两种容量,续航在515~620km之间。小鹏汽车表示,MONA M03是其四年研发和40亿投入的成果,目标是成为同级别的经典车型。

  • 颠覆霍金猜想!数学家证明极端黑洞可能存在

数学家克里斯托夫·凯勒和瑞安·昂格尔通过数学方法证明,极端黑洞可能存在,这颠覆了霍金等人在1973年提出的黑洞热力学第三定律。极端黑洞是一种特殊黑洞,其表面或事件视界的引力为零,表面不吸引任何物质,但内部仍无法逃逸。这种黑洞的存在意味着它们没有温度,无法发射热辐射,这与霍金辐射理论相矛盾。霍金辐射理论认为黑洞可以缓慢向外辐射能量,逐渐失去质量并最终消失。然而,数学家们还证明,极端黑洞的存在不会导致裸奇点存在,这与彭罗斯的观点一致,即自然界不允许裸奇点存在,因为它们会破坏宇宙的因果性。尽管数学上证明了极端黑洞的可能性,但目前还没有观测到明显带有电荷的黑洞。这项研究为广义相对论、量子力学、弦理论等前沿领域提供了新的见解。

技术博客

  • 浅析 JVM invokedynamic 指令和 Java Lambda 语法|得物技术

这篇文章主要探讨了JVM中的invokedynamic指令以及Java中的Lambda表达式。文章首先指出,尽管JDK版本更新迅速,但JDK8因其兼容性、稳定性和语言特性,尤其是Lambda表达式,仍然在开发者中占据主导地位。Lambda表达式简化了Java的函数式编程,使得代码更加简洁。

文章接着讨论了Java与JVM的关系,解释了JVM如何通过字节码指令集解耦高级语言和底层架构,实现“一次编译,处处运行”。Java语言的任何新特性,如果不是纯粹的语法糖,都需要JVM特性的支持。因此,支持Lambda表达式的JVM特性就是invokedynamic指令。

invokedynamic是Java 7引入的新型指令,它允许在运行时动态解析方法调用,与之前的invoke系列指令相比,它不要求在编译期确定目标方法。这种设计使得JVM可以更好地支持动态类型的高级语言,如JavaScript和Python。

文章详细介绍了invokedynamic的工作原理,包括引导方法(Bootstrap Method)和方法句柄(MethodHandle)。invokedynamic通过引导方法来动态决定调用哪个方法,而方法句柄则允许Java方法像C语言中的方法指针或JavaScript/Python中的方法变量一样工作。

在Lambda表达式的实现部分,文章解释了Lambda表达式如何通过invokedynamic指令和引导方法来实现。Lambda表达式在编译时会被转换成静态方法,并通过invokedynamic调用。文章还讨论了Lambda表达式的性能,指出无状态的Lambda表达式性能开销很小,而有状态的Lambda表达式(捕获外部变量)的性能与匿名内部类类似。

最后,文章总结了invokedynamic指令的重要性,它不仅支持Lambda表达式,还对JVM语言开发者(如Kotlin、Groovy等)至关重要。文章还强调了Lambda表达式捕获的局部变量必须是final或effectively final,这是Java语言层面的限制,以避免潜在的错误。

整体而言,文章深入分析了invokedynamic指令和Lambda表达式的技术细节,为读者提供了对Java函数式编程和JVM动态特性的深刻理解。

  • Java字符串拼接技术演进及阿里巴巴的贡献

本文主要介绍了Java字符串拼接技术的演进历程,以及阿里巴巴在该领域的贡献。在JDK 8中,使用"+“进行字符串拼接与使用StringBuilder性能相当,因此推荐使用更简洁的”+“。JDK 9引入了JEP 280,使得”+"拼接字符串的性能优于StringBuilder,因为它通过StringConcatFactory.makeConcatWithConstants方法动态生成代码,减少了对象创建和数组拷贝。

阿里巴巴的工程师温绍锦在2024年7月提交了PR 20273,提出了一种新的字符串拼接实现方案,使用动态字节码生成隐藏类,代替了基于MethodHandle表达式的实现。这种方法在保持相似运行性能的同时,显著提升了启动性能,减少了JVM优化器的开销。

除了PR 20273,阿里巴巴还对字符串拼接进行了其他贡献,包括优化StringConcatHelper.simpleConcat的PR 20253,减少float/double类型转换为字符串的内存分配的PR 19730,以及提升Integer/Long.toString和相关StringBuilder.append性能的PR 14699。

总结来说,JDK 8中"+"的使用已经足够高效,JDK 11之后通过JEP 280进一步优化了字符串拼接的性能。阿里巴巴的贡献,特别是PR 20273,不仅提升了性能,还解决了启动速度慢和JIT优化资源消耗大的问题,预计该实现将在JDK 24中成为默认的字符串拼接方式。此外,阿里巴巴在OpenJDK社区的其他贡献也涵盖了GC、JIT、Runtime、RAS等多个方面,推动了Java技术的进步。

开源项目

  • AppFlowy

AppFlowy是一个开源的Notion替代品,旨在提供数据安全、跨平台的原生体验和社区驱动的可扩展性。它使用Flutter和Rust构建,支持Windows、Mac、Linux和Docker。

  • AFFiNE

AFFiNE是一个隐私优先、本地优先、开源的一体化工作空间和操作系统,旨在整合构建知识库所需的所有构建块,如维基、知识管理、演示和数字资产。它提供了一个无边界的画布,支持多种编辑应用,并且是Notion和Miro的更好替代品。AFFiNE支持本地数据所有权、实时协作、自托管,并即将推出插件社区和第三方模块。项目由多个开源项目支持,如Blocksuite、OctoBase、yjs等。

  • coolify

Coolify是一个开源且可自托管的平台,旨在替代Heroku、Netlify和Vercel等服务。它允许用户在自己的硬件上管理服务器、应用程序和数据库,仅需SSH连接即可。Coolify提供了云服务的便利性,同时避免了供应商锁定,因为所有配置都保存在用户服务器上。项目还提供了付费的云版本,提供高可用性、免费邮件通知、更好的支持和较少的维护需求。

  • openobserve

OpenObserve是一个云原生的可观测性平台,专为日志、指标、追踪、分析和真实用户监控(RUM)设计,支持PB级数据规模。它易于操作,与Elasticsearch相比,减少了设置和调整的复杂性。OpenObserve提供了一个用户界面,无需单独安装,并且可以显著降低存储成本。它支持多种数据类型和查询语言,包括SQL和PromQL,并提供高可用性和集群功能。

学习资源

  • 70本经典程序员书单

这份书单汇集了编程领域的经典书籍,涵盖了从算法、编程语言、设计模式到软件开发等多个方面。书籍作者包括Donald E. Knuth、Martin Fowler、Robert C. Martin等知名专家,出版年份从1968年至2023年,涉及多种编程语言和主题。

  • books

Free-Educa/books 是一个GitHub仓库,提供与开发和编程相关的精选书籍资源。该仓库旨在帮助程序员和开发者获取最新趋势、工具和最佳实践的知识。书籍内容覆盖编程语言、Web开发、移动应用开发、软件工程、数据科学、机器学习、DevOps、基础设施、软件架构和网络安全等多个领域。所有书籍均免费提供,且鼓励社区贡献和反馈。

其他周刊

  • 科技爱好者周刊(第 315 期):一份谷歌离职报告

本期分享了一位谷歌SRE工程师的离职报告。该工程师在谷歌工作了九年,从L3晋升至L6级别,期间获得了丰富的经济回报、技术技能、领导力以及公司福利。然而,她指出谷歌发生了变化,不再像以前那样有趣,技术优势减弱,内部预算削减,商务旅行减少,招聘名额转移,安全规章增多,使得工作环境变得复杂。她感到自己的能力没有得到充分发挥,缺乏成长机会,且公司高管缺乏支持。

该工程师还提到,自己对谷歌技术的迷恋减少,兴趣转向其他方面,SRE岗位与她的性格不符,长期夜班影响了她的睡眠。她考虑过换岗位,但爱尔兰缺乏其他选择,且作为非美国总部的员工,感到被边缘化。她认为自己在谷歌的晋升机会有限,对L7级别的政治角色不感兴趣。她对自己的财务状况感到满意,但后悔没有早点寻求变化。

周刊还提到了微软工程师的薪资情况,显示微软工程师的年薪较高,收入差异主要由奖金和股票决定。此外,周刊还包含了科技动态,如中国的载人飞艇AS700的飞行、新形状意大利面的设计、折叠屏笔记本的创新等。同时,周刊还提供了一些编程工具、AI相关资源和活动通知,如豆包MarsCode的AI编程活动。最后,周刊以一些言论和往年回顾作为结尾。

  • AIGC Weekly #86

Ideogram发布了2.0图像生成模型,提升了图像生成质量并改进了产品易用性,新增了图像风格控制和调色板控制功能,同时推出了移动端APP和API。Jamba 1.5系列模型作为非Transformer架构,性能首次追上市场上的先进模型,具备256K的有效上下文窗口和快速长文本处理能力。

在产品推荐方面,Zed AI作为一个AI代码编辑器,通过集成Anthropic的Claude 3.5 Sonnet模型,提供了在线服务以提高开发者的生产力。Vercel V0新增了对话式UI界面,集成了最新的Web开发技术。Ugic作为一个Figma AI UI生成插件,支持调用设计组件库生成界面,降低了UI设计的门槛。

精选文章部分,a16z发布了AI应用Top 100排名,展示了AI应用领域的最新趋势。文章还探讨了如何评估大语言模型的有效性,介绍了新的LLM训练前和训练后范式,以及深度学习中非线性的新视角。此外,还介绍了如何将Llama-3.1 8B模型修剪和蒸馏为更小的Llama-3.1-Minitron 4B模型,以及如何构建能够生成全栈应用的Townie应用程序。

重点研究部分,微软发布了Phi 3.5系列模型,包括Phi 3.5 Mini、Phi 3.5 MoE和Phi 3.5 Vision,这些模型在性能上超过了多个现有模型。HALVA项目旨在减少语言模型中的物体幻觉问题,通过数据增强的对比微调方法来提高模型的准确性。Transfusion模型通过结合语言建模和扩散模型的训练目标,实现了对文本和图像的同时理解和生成。Sapiens模型组专注于四项基本以人为中心的视觉任务,支持高分辨率推理。MegaFusion项目则推动了扩展扩散模型向更高分辨率图像生成的发展。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/149439.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【C++算法】链表

知识总结 常用技术: 1.画图!!——>直观形象便于理解 2.引入虚拟”头结点“ 便于处理边界情况方便对链表操作 3.不要吝啬空间,大胆定义变量 4.快慢双指针——判环、找链表中环的入口、找链表中倒数第n个节点 链表中的常用…

移动数组中数字的方法(c语言)

1.移动一维数组中的内容;若数组中有n个整数,要求把下标从0到p(含p,p小于等于n-1)的数组元素平移到数组的最后。 例如,一维数组中的原始内容为:1,2,3,4,5,6,7,8,9,10;p的值为3。 移动后,一维数组中的内容应为:5,6,7,8…

融会贯通记单词,绝对丝滑,一天轻松记几百

如果我将flower(花)、flat(公寓)、floor(地板)、plane(飞机)几个单词放在一起,你会怎么来记忆这样的一些单词呢? 我们会发现,我们首先可以将plane去掉,因为它看上去几乎就是一个异类。这样,我们首先就可以将…

力扣958:判断二叉树是否为完全二叉树

给你一棵二叉树的根节点 root ,请你判断这棵树是否是一棵 完全二叉树 。 在一棵 完全二叉树 中,除了最后一层外,所有层都被完全填满,并且最后一层中的所有节点都尽可能靠左。最后一层(第 h 层)中可以包含 …

Pyinstaller打包python程序为exe时 程序多线程导致打开非常多窗口解决

装了个Pyinstaller打包exe pip install Pyinstaller 打包命令 Pyinstaller -F main.py Pyinstaller -F -w main.py #不带控制台 Pyinstaller -F -w -i 1.ico main.py #指定图标不带控制台 打包完的exe一运行开了一坨窗口,一眼多线程,我程序里的多线程如…

内容生态短缺,Rokid AR眼镜面临市场淘汰赛

AR是未来,但在技术路径难突破、生态系统难建设,且巨头纷纷下场的背景下,Rokid能坚持到黎明吗? 转载:科技新知 原创 作者丨王思原 编辑丨蕨影 苹果Vision Pro的成功量产和发售,以及热门游戏《黑神话》等在A…

Mac电脑可以只装Windows系统吗 苹果电脑也可以清除垃圾吗

选Mac还是Windows,一直是个有争议的话题。习惯Windows操作模式的用户,甚至想在Mac电脑上安装Windows操作系统。其实,只要掌握Mac系统的清理技巧,苹果电脑也能带来良好的使用体验。有关Mac电脑可以只装Windows系统吗,苹…

将Pytorch环境打包,快速部署到另一台机器上(在没有网络,或者网络环境不好的情况下推荐使用)

打包PyTorch环境 当您需要在不同的机器上快速部署包含PyTorch的Python环境时,使用conda-pack是一个很好的选择。conda-pack可以打包一个完整的Conda环境,包括所有已安装的包和依赖项,使其能够轻松地在其他机器上还原。 步骤一:…

My_string 运算符重载,My_stack

思维导图 将My_string类中的所有能重载的运算符全部进行重载 、[] 、>、<、、>、<、! 、&#xff08;可以加等一个字符串&#xff0c;也可以加等一个字符&#xff09;、输入输出(<< 、 >>) My_string my_string.h #ifndef MY_STRING_H #define MY_…

【Web】初识Web和Tomcat服务器

目录 前言 一、认识web 1. 软件架构模式 2. web资源 3. URL请求路径&#xff08;统一资源定位符&#xff09; 二、Tomcat服务器 1. 简介 2. tomcat服务器的目录结构 3.使用tomcat服务器启动失败的常见原因 3.1 端口冲突 3.2 jdk环境变量配置出错 三、使用Tomcat发布…

重塑教育未来:数字教学与智能知识库的深度融合

在当今这个信息爆炸的时代&#xff0c;教育作为推动社会进步与发展的重要基石&#xff0c;正经历着前所未有的变革。随着科技的飞速发展&#xff0c;数字教学与智能知识库作为两大核心驱动力&#xff0c;正携手并进&#xff0c;共同塑造着教育的全新面貌。本文旨在探讨数字教学…

【Docker】Docker快速入门

Docker学习笔记 一、Docker概述 为什么会出现Docker? 安卓开发流程&#xff1a;apk(java开发的)发布到应用商店&#xff0c;用户安装apk即可使用。 后端开发流程&#xff1a; jar(java开发的)带上环境发布到Docker仓库&#xff0c;用户从Docker仓库拉取镜像并部署。 总结…

Java_Day05学习

Object类被子类经常重写的方法 方法说明toString()返回当前对象本身的有关信息&#xff0c;按字符串对象返回equals()比较两个对象是否是同一个对象&#xff0c;是则返回****truehashCode()返回该对象的哈希代码值getClass()获取当前对象所属的类信息&#xff0c;返回Class对象…

TAPD多类别需求管理

本文档将介绍&#xff1a;什么是 TAPD 多类别需求管理&#xff0c;以及如何配置或创建新的需求类别。 一、概述 在研发管理过程中&#xff0c;团队经常会遇到规模扩张、不同特性团队间研发模式差异化大等问题。以上问题导致团队中的需求无法进行统一管理。为解决上述情况&…

《关键跃升读书笔记》11

协作&#xff1a; 怎么解决“容忍⿊”这类问题&#xff1f;我们要重新理解“⽂化”。⼈类⽂化、企 业⽂化&#xff0c;都是为了让⼈们更好地协作。 再⼩的公司&#xff0c;再⼩的团队&#xff0c;都是⼀个共同协作体&#xff0c;就像整个⼈类社会 是共同协作体。理解了⼈类社会…

卷积的理解和应用

妈妈说&#xff0c;生活就像一盒各种口味的巧克力&#xff0c;你永远不知道下一块是什么。 我说生活像这个棒棒糖。不同口味&#xff0c;方向相反的味道一路走一路相伴&#xff0c;衰老和成长缠绕在一起&#xff0c;成了最终的滋味。 一、 卷积的直觉 这一生…

菱形继承的类对父类的初始化、组合、多态、多态的原理等的介绍

文章目录 前言一、菱形继承的类对父类的初始化二、组合三、 多态1. 构成多态2. 虚函数3. 虚函数的重写4. 虚函数重写的两个例外1. 协变2. 析构函数的重写 5. C11 final 和 override1. final2. override 6. 设计不想被继承的类7. 重载、覆盖&#xff08;重写&#xff09;、 隐藏…

YOLOv8——测量高速公路上汽车的速度

引言 在人工神经网络和计算机视觉领域&#xff0c;目标识别和跟踪是非常重要的技术&#xff0c;它们可以应用于无数的项目中&#xff0c;其中许多可能不是很明显&#xff0c;比如使用这些算法来测量距离或对象的速度。 测量汽车速度基本步骤如下&#xff1a; 视频采集&#x…

JVM的基本组成

一、JDK\JRE\JVM JDK: 全称 "Java Development Kit" &#xff0c;Java 开发工具包&#xff0c;提供 javac 编译器、jheap、jconsole 等监控工具;JRE: 全称"Java Runtime Environment"&#xff0c;Java 运行环境&#xff0c;提供Class Library 核心类库 JV…

同等学力英语用什么app背单词

同等学力申硕的意义和作用 授予同等学力人员硕士学位是国家为同等学力人员开辟的获得学位的渠道&#xff0c;对于在职人员业务素质的提高和干部队伍建设起到积极作用。它为那些没有传统学历背景但具有相应学术水平的人员提供了获取学位的机会&#xff0c;有助于提升他们的职业竞…