What is Hackers' Pub?

Hackers' Pub is a place for software engineers to share their knowledge and experience with each other. It's also an ActivityPub-enabled social network, so you can follow your favorite hackers in the fediverse and get their latest posts in your feed.

【草姬亮目丸過百位眼科推薦特約】天文台今日(1月7日)下午4時30分發出霜凍警告,提醒農友及有關人士,明(8日)早新界內陸可能出現地面霜。

強烈季候風信號、紅色火災危險警告及寒冷天氣警告現正同時生效。天文台表示,強烈冬季季候風正為廣東沿岸帶來晴朗及非常乾燥的天氣。本港今早天氣持續寒冷,今日早上5時30分,天文台錄得最低氣溫10.9度,為入冬以來最低紀錄。高地氣溫更顯著偏低,於早上6時50分,大帽山錄得僅0.8度;昂坪、大老山及大隴亦錄得低於5度的氣溫。

May be an image of text
0
0

과학자 5명 중 1명 ‘백수’ 됐다...미래를 팔아먹은 R&D 예산 삭감 수정 : 2026-01-06 10:22:03 과기부 2024 국가연구개발사업 조사 연구책임자 11.2% 급감 연구과제는 13%나 줄어 R&D예산 삭감 여파 현실화 m.mk.co.kr/news/economy...

과학자 5명 중 1명 ‘백수’ 됐다...미래를 팔아먹은...

0
1
0

@zkatkat

To summarise a few things I’ve said over the last couple of decades:

I believe copyleft licenses are, at best, unhelpful, and often actively harmful if your goal is to empower users. A system that empowers users should be easy to modify and if modification comes with a bunch of conditions that you need to be a lawyer to fully understand then that’s another barrier. A successful Free Software system would be one where most users modify the software, but I’ve rarely seen examples where even 1% do. A license can only ever prevent people from doing things, it can’t make them participate in a community. When you give people a load of conditions to try to force them to do what you want then you begin your relationship with them on an adversarial footing. This immediately puts them in a mindset of trying to avoid compliance with the spirit of your intent, while sticking with the letter. This is not how I want a community to work.

A lot of F/OSS is a clone of some proprietary system but ignores the social aspects that shaped these things. Proprietary software has to have a strict divide between the program (the thing that they sell you), plugins (which third parties may be allowed to use to extend the program but which the end user may not be able to redistribute, may require an explicit license from the program vendor) and documents (which the user may create, modify, and distribute). In a Free Software system, a user should be able to extend the functionality in arbitrary ways and distribute the results. This is one aspect where copyleft licenses are actively harmful: if you actually build something like this, then every document the user creates must comply with the license and you can’t, for example, use it for anything shared under NDA. GCC has an explicit exemption for the output of the compiler, and that works only because there is an assumption that most users will not extend the program in ways that are specific to the user: from the choice of license, they start from a position that they cannot build something where users actually exercise the FSF’s Four Freedoms.

And this impacts the structure of software a lot. Proprietary software is all about building large monolithic entities so that users remain in your ecosystem. You can justify the cost for the next version by how long they spend using the program. If a program is just a tiny extension to a workflow, it’s hard to charge for it and it’s very hard to get people to buy a new version next year.

None of these concerns matter for community-driven software and most of them are actively counter to the goal of empowering end users.

The focus on licenses also ignores why most end users don’t exercise the freedom to modify the software:

  • It is hard to understand these codebases even for experienced developers due to lack of documentation and complex structures.
  • It is very hard to keep modifications working as upstream churns the code.
  • If you make a change in anything that you use in a collaborative environment you need to make sure that all of your collaborators have the modified version, which is infeasible in most cases.

For Étoilé we had a few goals to try to address this. One was to replace the notion of monolithic programs with loosely coupled services which could be assembled to meet the same needs as existing programs, but could also be assembled in other ways. Our tentative rule was that no service should be more than 10,000 lines of code (excluding shared-library code used by other services), which is small enough that a single person can fully understand or rewrite it if it doesn’t meet their needs. A lot of services were expected to be tiny: tens to hundreds of lines of code, the kind of thing an end user could throw together in half an hour to solve a problem that they have this week. And, because they were self-contained and modular, they could be distributed to collaborators as additions to the system, rather than replacements for something they were using.

The other thing that we did was focus on exposing core functionality to higher-level languages. We had a JIT’d Smalltalk dialect that shared the same object model with the Objective-C core and we’re looking at using the same model in visual / dataflow UIs to enable people who don’t think that they are programmers (if you can write an Excel formula, you’re a programmer) to build services. The reflection support in the runtime meant that you could use high-level code to replace a method written in statically-compiled Objective-C, so you could have local modifications of a compiled service without needing to recompile it ( @neilNeil Brown might be able to tell you what your obligations are under various GPL variants if you do this, but the lawyers I spoke to gave conflicting replies).

By focusing on modularity and small, loosely coupled components, we aimed to build a humane system that could shape itself to user needs and be hard for corporations to capture. Company comes with a large monolithic service that you can’t modify? Well, it’s obviously less useful than the ones you can because your normal workflow involves modifying components. And the monolithic nature means it doesn’t interoperate well with your other services. Corporation decides to take a service that you use in a stupid direction? Fork it, they’re small and designed to be maintainable by a single person, so if a dozen of you all prefer the old version then it’s a negligible amount of work shared between all of you.

As long as your ecosystem cares more about licenses then architecture and builds monoliths, it can’t be the system that makes end users demand the ability to modify and redistribute modifications of the code, and that demand is the essential thing for making user-hostile proprietary software an anachronism.

0
0
1

과학자 5명 중 1명 ‘백수’ 됐다...미래를 팔아먹은 R&D 예산 삭감 수정 : 2026-01-06 10:22:03 과기부 2024 국가연구개발사업 조사 연구책임자 11.2% 급감 연구과제는 13%나 줄어 R&D예산 삭감 여파 현실화 m.mk.co.kr/news/economy...

과학자 5명 중 1명 ‘백수’ 됐다...미래를 팔아먹은...

0
0
5
0
0
0
1

@zkatkat So, you mean like some sort of enforceable covenant? I think its possible to establish like an org you can be part of, that abides by a set of principles that if they get violated in one project, the offenders get blocked in all of them.

"An offense to one project is an offense to all projects"? Type thing?

You could go as far as to actually have a registry that projects can check and enforce that includes individuals, companies and organisations. Not sure if too aggressive though.

0

"쿠팡 정보 유출자가 일본인이면 일본을 미워할 겁니까? 쿠팡에 미국 사람 많으면 미국을 미워해야 합니까?" 한국 정치인, 특히 대통령한테 평생 기대하지 않았던 속시원함이다. 다른 혐오, 차별 소수자 문제도 저런 식으로 시원하게 쳐내야 할텐데.

RE: https://bsky.app/profile/did:plc:a6qvfkbrohedqy3dt6k5mdv6/post/3mbsuuozrms2z

0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0

The Virtue of Finished Things

An email asking if my software was abandoned made me realize how the ideal of completeness has disappeared from our lives. In an era of mandatory updates and disposable goods, I reflect on the value of boring software - the kind that is finished, reliable, and simply does its job.

my-notes.dragas.net/2026/01/06

0
0

SparklingOutlaw🍉 shared the below article:

参政党が内部崩壊?

HUNTER(ハンター) @news-hunter.org@web.brid.gy

「昨年は最高の年だった。しかし、今年は分裂含みの最悪の1年になるかもしれない」――新年早々、不安を口にしたのは昨年の参院選で躍進した参政党の国会議員X氏だ。どういうことか? ◇   ◇   ◇ 昨年12月、参政党の衆議院 […]

Read more →
0
0
0
0
0
1
0
0
0
0
0