Windows 11 令人不爽

感觉得区分一下开源和自由 :eyes:。商业公司主导的开源项目和自由软件差别还是挺大的。

还有个我认为比较特殊的场景是云服务相关的开源项目。这个衍生了特殊的许可证,比如OSI并不接受SSPL协议。。另一个就是copilot。。

当开源遇上利益冲突总是一地鸡毛。这时候回头看自由软件,,只能说确实是高瞻远瞩。

3 个赞

我认为 PostgreSQL 就很好的实现了开源和自由的结合

微软还是有一些开源的系统级软件的,包括(不限于)

2 个赞

我说的是内置的东西。。。另外windows内置的powershell和开源的是两个东西

以上这些都是Windows11内置的。我没留意开源的Powershell和内置的不完全一样,但它们基于同一个旧版本,所以还是共享很多代码的,将来也可能会合并,就像dotNet core一样。

收到win11升级提示,现在还能选择拒绝,我对win11没有兴趣,但我怀疑会被微软强制升级或因为某它原因只能升级,win的驱动支持是好,但我感觉这已经成为了微软迫使用户不得不升级的方法之一,这种情况我是遇到过的,去年 发过一贴讲过

1 个赞

我的对 PostgreSQL 的印象是发论文用的(误

感觉和社区主导有一定联系。

Win11 用着感觉挺好的。从10升到11,无痛。原以为很多软件要重新安装,结果如丝般顺滑。

1 个赞

什么时候 sway bar 的托盘图标可以弹出菜单了什么时候切过去。

直接在 BOIS 中关闭 TPM 2.0 ,你的电脑就没法升级 Windows 11 了,永远停留在 Windows 10

While reviewing Thomas Munro’s patchset to consider expanding the uses of specialized qsort [1], I wondered about some aspects of the current qsort implementation. For background, ours is based on Bentley & McIlroy “Engineering a Sort Function” [2], which is a classic paper worth studying. 1) the check for pre-sorted input at the start each and every recursion This has been discussed before [3]. This is great if the input is sorted, and mostly harmless if the current partition is badly sorted enough that this check fails quickly, but it’s not hard to imagine that this is mostly a waste of cycles. There have been proposals to base the pre-sorted check on input size [4] or to do it only once at the beginning, but that strikes me as looking for the keys under the lamppost because that’s where the light is. The logical criterion for proceeding to check if the input is sorted is whether we think the input could be sorted. That may sound like a tautology, but consider the case where the partitioning phase didn’t perform any swaps. Then, it makes sense to check, but we can go further. What if we do the check, but towards the end that check fails. If just a couple elements are out of place, does it really make sense to give up, partition, and recurse? If just a few iterations of insertion sort are all that is needed to finish, why not just do that? This way, we dynamically decide to optimistically start an insertion sort, in the hopes that it will occasionally prevent a recursion, and worst case the input is slightly more sorted for the next recursion. All we need is a lightweight way to detect that the partitioning phase didn’t do any swaps. More on this later. 2) cardinality issues can cancel abbreviated keys, but our qsort is not optimized for that Since in this case comparison is very expensive, it stands to reason that qsort could profitably be optimized for a low number of unique keys. The Bentley & McIlroy scheme does take great pains to prevent quadratic behavior from lots of duplicates, but I’ve found something that might have stronger guarantees: Pattern-defeating quicksort (paper: [5] C++ implementation: [6]) claims worst-case runtime of O(nk) for inputs with k distinct elements. This is achieved via an asymmetric partitioning scheme. It’s not complex, but it is subtle, so I won’t try to describe it here. I recommend reading section 3 of the paper for details. Rust and Boost use PDQuicksort in some form, so it has some production use. The partitioning scheme just mentioned also provides an easy way to detect when no swaps have been done, thus solving #1 above. There is one requirement that is a double-edged sword: Recursion to the partitions must happen in order. This has an additional advantage that in every case but one, insertion sort doesn’t need to guard against running off the beginning of the array. The downside for us is that we currently recurse to a partition based on its size as a stack-guarding measure, so that guard would have to be replaced. The C++ implementation of PDQuicksort falls back to heap sort as a last resort to bound runtime, but it would be just as effective at guarding the stack. That’s a bit of a snag for making it production-ready, but not enough to prevent testing the actual qsort part. Does anyone see a reason not to put in the necessary work to try it out? [1] PostgreSQL: Re: A qsort template [2] https://cs.fit.edu/~pkc/classes/writing/samples/bentley93engineering.pdf [3] https://www.postgresql.org/message-id/flat/87F42982BF2B434F831FCEF4C45FC33E5BD369DF%40EXCHANGE.corporate.connx.com#e69718293c45d89555020bd0922ad055 [4] PostgreSQL: Re: Timsort performance, quicksort (was: Re: Memory usage during sorting) [5] https://arxiv.org/pdf/2106.05123.pdf [6] GitHub - orlp/pdqsort: Pattern-defeating quicksort.

John Naylor EDB: http://www.enterprisedb.com

我摘取了一份PG社区邮件列表的讨论,个人认为这是一个由纯学术项目向工业化生产成功转型的好范例. 现在PG的核心开发者都是商业公司的. 参见PG贡献者列表.

看起来是关于pdqsort的讨论 :thinking:

之前看过一点PG的代码,很规整注释也全。(现在看C++简直是灾难。对比隔壁 MySQL 和 MariaDB 。。


我在做的ceph也算学术转商业(虽然性能被商业闭源实现吊打。只是这些面向企业的开源项目和个人关系不那么大的样子。

1 个赞

字体渲染那个事情我感觉就是微软雅黑有 hinting,B 站那个应该就压根就没 hinting。

从这个角度那可能微软雅黑还会好一点,毕竟我可以不用,你不能没有。(虽然雅黑的 hinting 也呵呵)

但是 Windows 不让你不用,有了就必须用。不过这些都是 Windows 传统特色,祖宗之法也算不上 Windows 11 的问题。

比起这个倒是某微软员工对 MacType “歪门邪道”的评论更好玩。

可以参考这篇文章,给第三方字体披上微软雅黑的皮😆https://zhuanlan.zhihu.com/p/414159998

我两年前用sway时就可以

你用的,可能是 waybar 。

我用的的确是waybar,所以为什么不用waybar要用不好用的sway bar呢?这完全不应该成为切换到wayland的阻碍啊。

因为需要额外的依赖和配置文件。

任务栏不知道,其它的问题以前的Windows版本也存在。我理解楼主被Windows不爽到的心情。还好我的开发工作90%以上都能在Linux下完成,所以大多数时候只用Windows娱乐。

其实Windows下面有很多牛逼的应用,但是emacs在Windows下用起来确实没有Linux下爽