返回首页
一周热榜
什么是ChaosTree?<p>ChaosTree是一个零依赖的Java排序集合/映射库,基于多种树的实现构建。<p>它提供了以下实现:
- AVL树
- 红黑树
- B树
- B+树<p>我没有创建自定义API,因为它实现了NavigableSet、NavigableMap、SequencedSet和SequencedMap。我的自定义API包括:
- buildFromSorted(Iterator> it, float factor)
- importFlatMatrix(Object[][] blast, float factor)
- Object[][] exportFlatMatrix()<p>我开始开发ChaosTree是因为我想探索数据结构的学习深度。它最初作为7种集合类型树的首次发布,配有自定义API。随着我对这个项目的深入,我转向了映射。在从集合切换到映射的过程中,发生了巨大的变化和知识升级,我将我的树的限制从jdk11+支持提升到了jdk21+,并密切关注无依赖性、内存布局、分配、JVM行为和实际性能。<p>我实验的一些内容包括:
- 不同的节点布局和元数据占用
- CRTP/F界限多态性用于树的实现
- 父指针与无父节点
- 基于数组的N叉树节点
- B树/B+树的度选择
- JMH基准测试和JFR分析
- 针对java.util.TreeMap/TreeSet的差异化/随机化测试<p>经过这些艰难的测试,它还通过了以下测试:<p>- Guava Testlib兼容性测试
- jqwik基于属性的测试
- 针对参考集合的随机化差异测试
- 树节点的白盒结构验证
- B树/B+树结构不变量的直接验证
- 异常和迭代器契约测试
- 序列化和克隆测试
- N叉树使用自定义jqwik测试进行API验证。<p>尾延迟行为在此未显示,因为它被截断为简单文本,导致数据读取错误:<a href="https://chaos-vy.github.io/ChaosTree/utils/JMH-Report.html" rel="nofollow">https://chaos-vy.github.io/ChaosTree/utils/JMH-Report.html</a>
我还对我的N叉树进行了与官方JDK TreeMap更新的基准测试。<p>GitHub:
<a href="https://github.com/Chaos-vy/ChaosTree" rel="nofollow">https://github.com/Chaos-vy/ChaosTree</a>
<a href="https://chaos-vy.github.io/ChaosTree/" rel="nofollow">https://chaos-vy.github.io/ChaosTree/</a><p>我特别希望能收到关于API设计、实现选择和基准测试方法的反馈。目前我正在尝试截断无用和复杂的分支,以进行性能调优。
我正在开发一个名为 TeLoX 的高度模块化排版引擎,它旨在作为 XeTeX 和 pdfLaTeX 功能的超集,使用 Rust 编写。主要目标是模块化和速度(我们知道这两者有时会相互冲突,除非我们在设计时遵循原则)。今天我想展示这些可以从浏览器控制 LaTeX 中数值的交互式滑块(有点像 marimo)。
这并不是一个完整的编辑器,比如 quicklatex 和 texlyre——只是一个加载速度足够快的小型游乐场,可以互动地查看我能将输入体验提升到什么程度。目前,包支持是最薄弱的环节,因此你输入的许多合理的 LaTeX 代码会失败。增加支持范围与快速加载时间相悖,因此我会添加一些“代码拆分”——我可以让编辑器动态获取最常用的 $k$ 个包的缓存数据,看看这能为我节省多少时间。在我添加对 Lua 或其他简单表达式语言的支持后,似乎可以相对容易地制作一些非常美观的收据/计算器。
你还会注意到的另一个有趣之处是,点击和拖动文本可以非常准确地选择相关的输入文本,甚至精确到单词。我曾在一个艺术项目中遇到这个问题,无法将点击准确归因于生成它的具体单词(本质上是一个互动故事书,所见即所得的计算笔记本,带有情境输入)。现在这个问题已经解决。我想制作一个在网页上进行的选择你自己的冒险游戏。
整个过程相当困难,但我认为这是值得的。我知道为任意设备提供任意 LaTeX 的支持是一个雄心勃勃的想法,但这似乎朝着有趣的方向发展。
目前,桌面体验最佳,尽管在冷启动时加载速度仍然比我希望的慢,大约需要 2.5 秒。我可能应该将移动端默认设置为查看模式。PWA 版本、为当前页面排版的书签支持等都是可能的,但尚未开始。我最感兴趣的是首先优化我的内存表示,如果这还不够,我会为底层的 TeX 解释器制作一个词法依赖追踪器,并以合理的方式处理变更/覆盖,可能采用 Svelte 风格。正如我所说,这是一项艰巨的工作。在我的学期开始、自由时间消失之前,现在分享一下。正如他们所说的,“小步前进”。
展示你的产品,不仅仅是描述它。
我创建了Demorta,以便让SaaS创始人和产品团队更容易制作他们产品的互动演示。
将你的SaaS捕捉为HTML或截图,并将其转化为可分享的互动演示,之后你可以轻松地将其嵌入到你的网站中或与客户分享。
我最初开始这个项目是因为我的合作伙伴希望为她的社交媒体制作视觉上干净的旅行视频。现有的视频感觉质量与价格不成正比,而且很多都过于依赖卡通风格的视觉效果。
因此,我决定为她开发一个符合她需求的应用程序,经过过去几个月的努力,它变得越来越完善。
我甚至自己制作了地图图块,因为授权使用现有的图块成本太高。
现在它终于开放公测,我希望在将其提交到应用商店之前能得到一些反馈。
我是一所大学游戏开发俱乐部的成员,身边有很多才华横溢的程序员和各类艺术家。我观察到几乎每个人都对人工智能持反对态度。这种情绪在进入俱乐部的年轻人中尤为强烈。所谓“反对”,是指他们拒绝在游戏中使用AI生成的内容,并普遍认为使用人工智能是一种道德失败。
与此同时,我在YC创业公司目录中向下滚动,按发布日期排序,发现每个非硬件公司(以及大多数硬件公司)几乎都是完全基于人工智能的。我上面描述的人群,像俱乐部里的年轻创意者,几乎没有自愿使用这些产品的机会。
因此,我认为,随着GPT-6等技术的不断进步,大多数AI创业公司的壁垒逐渐降低,这个市场对于任何愿意付出努力并真正编写人们所需产品的人来说,基本上是一个蓝海(用商业书籍中的术语)。从那时起,网络效应将如同互联网诞生以来一样发挥作用。
我正在探索创建这样一家创业公司的想法(最初是一个我自己工作了近两年的副项目),但我对孵化器、风险投资和投资者的态度感到担忧。缺乏人工智能会让大多数外部投资者望而却步吗?我知道人们在2021年开始了非区块链公司,但围绕人工智能的炒作似乎对任何可能提供资金的人来说更具吸引力。我知道自筹资金对某些公司是可行的,但这会是唯一的方式吗?我非常感谢任何建议。