Help distribute this user's images
Mute diff@kaffie.bit

Activity feed

Differentiation commented on Differentiation's post: Context: This essay is about Asia current affairs. [Full text is available in Chinese.](?Post/12h51ug6CcntU2aiBjhP8Ns2e5VypbWWtv/17husSAraRRvc7qRWxwA7KF7PTwjhTmxhD/1562617053)
Differentiation commented on Differentiation's post: @Styromaniac: My old posts are basically my book excerpt, not used for communication with others. Therefore, I would rather remove than argue with other.
Differentiation · diff@kaffie.biton Jul 25, 2019

Improve some performance with few unsafe:
Disable fsync for ZeroNet

Remove line

Differentiation · diff@kaffie.biton Jul 16, 2019
Differentiation · diff@kaffie.biton Jul 15, 2019
Differentiation · diff@kaffie.biton Jul 14, 2019
Differentiation · diff@kaffie.biton Jul 13, 2019

Example of hypocrisy of many U.S. tech companies. Refuse to work with U.S. military on #ProjectMaven but work with partners tied to China military. For example @Google's @Jeffdean serves as #AI advisor for univ tied to key tech supplier to China's military

对于 AI 这种军民两用技术,Google 假装由于道德原因拒绝参与米军无人机战场识别项目 Project Maven,而同时 Google AI 负责人 Jeff Dean 却在与走国军方关键技术供应商有联系的大学担任 AI 顾问… 这与之前 Google 因「传播性别成见」解雇 James Damore,而同时定向广告目标却包含「性别」选项一样虚伪。

之前走区 iCloud 转至云上贵州事件中,起码 Apple 提前 50 天通知现有用户且提供改区 or 停用选择权;据 Intercept 系列报道 (https://theintercept.com/2018/09/21/google-suppresses-memo-revealing-plans-to-closely-track-search-users-in-china/) ,Google 7 月底已近完成的走版搜索引擎 Dragonfly 不但进行关键词屏蔽,而且强制用户关联手机号,搜索记录、地理位置等隐私信息也将被无差别提供给走家合资公司

现在问题已经不是 2016 减少 Hillary 负面搜索结果,or 因「传播性别成见」解雇 James Damore,or 内部讨论调整搜索应对旅行禁令等这类「小事」咯;考虑到前 Google Cloud AI 首席科学家李飞飞带头反对参与米军无人机战场识别项目,现在更进一步,Google 甚至主动为走打造了一套无差别间谍监控引擎,事情已经起变化

「Google 走国版监控引擎 Dragonfly」最新系列报道 (https://theintercept.com/2018/10/09/google-china-censored-search-engine/) ,今年 7 月 18 日的一个内部会议纪要显示,Google 搜索引擎负责人 Ben Gomes 表示希望这个监控版引擎能在未来 6~9 个月内发布,而 Gomes 9 月 23 日对 BBC 记者说「目前(该项目)是探索性的,无计划发布…」;同一人私下与公开说法完全相反

Google 秘密进行了 2 年的走国版监控引擎项目(Dragonfly)被迫收手咯?

去年底被迫暂停的 Google 走国版监控引擎 Dragonfly 被曝仍在秘密开发中,惊不惊喜?Intercept 援引三位内部消息源确认,与 Dragonfly 相关的两个面向走国 Android 和 iOS 用户的移动 App——Maotai 和 Longfei 代码仍在持续更新,消息源并称仍有约 100 人继续被分配到 Dragonfly 相关项目中…

律政剧 The Good Fight(傲骨之战)5 月 2 日第三季第 8 集播出中,CBS 审查删除了一段「想进入走国的米公司讨好走审查机关」的动画短片,其中涉及剧中 ChumHum 公司参与为走打造「定制版」搜索引擎、空椅子、小熊维尼、天安门广场、字母「N」…——厉害了,讽刺自我审查的剧集片段被自我审查,米国人看啥也要被管起来咯

「Dragonfly」还未凉,Google 又有大新闻,据 The Intercept,Google 与 IBM 正通过主要由二者创立的 NGO「OpenPOWER 基金会」帮助走深圳恒扬数据开发大规模网络监控与审查工具,用于监控走国 2 亿人网络隐私,含电邮,电话,短信,手机位置和浏览历史…


Differentiation · diff@kaffie.biton Jul 13, 2019
Differentiation · diff@kaffie.biton Jul 12, 2019

سلام. به دلیلِ اسپم زیاد از طرف کاربران ایرانی، تلگرام به کاربران ایرانی فقط اجازه عضو شدن در گروه‌های عمومی ( پابلیک) را می‌دهد. اگر سازنده گروه عمومی غیرایرانی باشد شما فقط می‌توانید پیام‌های آن گروه را بخوانید و نمی‌توانید به گروه پیام بفرستید. توجه داشته باشید این محدودیت از سمت خود تلگرام می‌باشد و ادمین‌های گروه کاری نمی‌توانند انجام بدهند.
با شماره ایران می‌توانید گروه عمومی بسازید. در گروه‌های عمومی که سازنده‌اش ایرانی باشد می‌توانید پیام بفرستید.

Unfortunately, due to overwhelming amounts of spam, users from Iran currently can join some public groups in READ-ONLY mode. They cannot send messages.

• If the creator of the public group is non Iranian, Iranian users can read the chat and they cannot send messages.

‼️ Pay attention this restriction is from Telegram side, admins of the group haven't done anything about it and cannot solve it.

• With your Iranian account, you can create a public group, and you can send messages to the public group chats that have been created by an Iranian account.


Differentiation · diff@kaffie.biton Jul 12, 2019

Privacy Protection

  • Nearly 600 million resumes of Chinese job seekers leaked
  • Chinese polices are checking mobile phones in big cities
  • Privacy risk of face recognition
  • Firefox released "Track THIS" - camouflage your browsing history
  • Several browsers follow Chrome footstep - won't allow users to turn off click-tracking
  • "Today's Headline" (Jinri Toutiao) shameless claim: contact book is not personal privacy
  • Privacy issue of Google reCAPTCHA
  • Hong Kong polices arrested Telegram chat-group owner

High-Risk Vulnerability

  • Windows high-risk vulnerability "BlueKeep" - Impact range from WinXP to Win2008
  • Internet Explorer high-risk vulnerability
  • Firefox high-risk vulnerability
  • WhatsApp high-risk vulnerability to implant mobile Trojan
  • Vim (and its derivatives) high-risk vulnerability

Network and Web

  • The famous extension NoScript has been ported to Chrome/Chromium
  • WPA3 standard of Wi-Fi protocol vulnerability
  • SACK Panic - denial of service attack on TCP

Mobile Devices

  • Tor Browser for Android officially releases
  • Forensics software to crack any iPhone model
  • Mobile apps can monitor your gait
  • Attacks on Android supply chain

Security Tools

  • Matrix protocol version 1.0 releases


  • Attack ob Qualcomm chips (to steal keys)
  • RAMBleed - new Row Hammer attack method
  • New attack method to bypass UEFI verification and install underlying backdoor


  • It's time to deprecate SHA1 hash algorithm

https://program-think.blogspot.com/2019/07/Security-News.html (Chinese language)

Differentiation · diff@kaffie.biton Jul 09, 2019

How to design a programming language

There are three steps you have to do:

  1. Semantic design
  2. Syntax design
  3. Implement a compiler

In fact, the hardest is often the first step – semantic design, because it determines the final form of your language. The content of "semantics" will be very broad, and these are the categories of semantics:

  1. Type system: Is it strong type or weak type? Static type or dynamic type? Is there type inference? If so, based on which formal system? Is subtype allowed? Is recursion type allowed? What is the mechanism for type conversion? and many more.

  2. Programming paradigm: Is your language imperative or declarative or a combination of both? For "declarative", is functional or logical? Is metaprogramming allowed? and many more.

  3. Storage: Does your language allow users to intervene in storage details? Is pointer arithmetic allowed? Is manual memory management allowed? What is the scope rule for variables (symbols)? Is it lexical scoping or dynamic scoping or a combination of both?

  4. Subroutine: Does your language have subroutines? If so, are they first-class? Is parameter passing by value or by name? Is passing by reference allowed? Is the evaluation strategy eager or lazy? What is the order of evaluation among parameters?

  5. Process Control: Does your language allow non-structural jumps? Is there a built-in exception handling mechanism? Is there a continuation or coroutine mechanism?

After the semantic design is completed, the corresponding syntax should be designed. Almost all tutorials on compiling principles start with syntax, which is the case when implementing a compiler. However, when designing a language, semantics are done earlier than syntax. A set of core semantics can have multiple syntaxes corresponding to it, of course, there is one of the best in many syntaxes. For example, if you like the powerful macros in Lisp, you will prefer simple syntax. (Wat... Does Lisp really have a syntax?)

After the syntax design is complete, you can start implementing the compiler/interpreter. There are so many mature backends now, even if you want to compile directly into x86 machine code, using existing libraries is not very difficult. However, for beginners, it is much easier to target the compiler's platform to some virtual machines, such as the JVM or the CLI. What you have to do when implementing the compiler includes:

  1. Syntax analysis. Libraries for this are quite rich (after all, there are still a bunch of programs to read text files), from the old-school YACC to the popular Parser Combinator. When this step is complete you will get a parse tree.

  2. Type checking and type inference. For those static type languages, you need to do type checking/type inference in this step. There is no universal library for this domain, you have to consult the relevant algorithms yourself (such as the Hindley-Milner inference algorithm).

  3. Language-related optimization. This step is for language optimization. This is especially important for languages that use a lot of functional features. The compiled program performance can be improved several times with well optimized. Of course, traditional platform-independent optimizations, such as sub-expression elimination, copy propagation, etc., can not be ignored.

  4. Intermediate code generation. Most backends are a simple list of instructions, and you have to find a way to turn the tree syntax into linear instructions. You can use three addresses (3-address) or static single assignment (SSA). If you use a backend such as LLVM or JVM, your compiler can be completed here.

  5. Code generation. This is the last step if you want to compile into machine code and don't want to use a ready-made backend. In this step, you will also need to do platform-specific optimizations to tune your program into the form of most appropriate your target platform.

  6. The preparation of the standard library. This can not be strictly included the contents of the compiler, but whose language is a bare language? Writing a good standard library is harder than you think. Look at the scale of libuv used by Node.js.

The debugging and testing of the compiler is very difficult: on the one hand, it does not allow any errors, on the other hand, the compiler's test cases are very difficult to write. So in the step for optimizing, it is better to be conservative and not to introduce errors. At the same time, when programming, please write the program that is "obviously correct": the structure is clear and can be understood in one glance.

Differentiation · diff@kaffie.biton Jul 08, 2019
  • おいくつですか (How old are you / Is it your number)
  • はい、いくつです (Yes, it is number)
Differentiation · diff@kaffie.biton Jul 08, 2019

What's your review on my English quality so far?

Styromaniac · styromaniac@zeroid.biton Jul 08, 2019Reply

Very easy to read. Not perfect, but very good quality.

*sigh* · nzmj@zeroid.biton Jul 08, 2019Reply

Very good :)

Differentiation · diff@kaffie.biton Jul 08, 2019

The obvious fact, the so-easy scene, why everyone "knows nothing", is supporting ____.

Because everyone has a beautiful vision to satisfy their subjective expectations.

In order to control this subjective expectation to make it maybe become true, willing distort the facts, distort the perception of most people who still rely on trust, and guide to the menstrual illusory expectations and nothingness.

This practice has already abandoned the original intention at the time. Isn't it shameful?

Of course, I know that they have to do. It is a good intention to maintain the possibility of beautiful direction, and does not hesitate to gamble on all of their own. But is this really right?

Backfire will destroy all the accumulations of the past, and even individuals will be destroyed.

The sooner being frank, the sooner being initiative. Otherwise everything in the past will become new burden.

Differentiation · diff@kaffie.biton Jul 08, 2019Reply

Context: This essay is about Asia current affairs. Full text is available in Chinese.

Differentiation · diff@kaffie.biton Jul 08, 2019
Differentiation · diff@kaffie.biton Jul 07, 2019

Be lenient. Teenagers often anger impetuously.

Styromaniac · styromaniac@zeroid.biton Jul 07, 2019Reply

@Diff: If you're repeating messages like that, then everyone will want you muted.

Blurhy · blurhy@zeroid.biton Jul 07, 2019Reply

Hi, STFU. It seems funny, right ?

Styromaniac · styromaniac@zeroid.biton Jul 07, 2019Reply

But let's not stoke one another's flames.

Styromaniac · styromaniac@zeroid.biton Jul 07, 2019Reply

I remember being like that myself.

Differentiation · diff@kaffie.biton Jul 07, 2019


Differentiation · diff@kaffie.biton Jul 07, 2019

New: Mozilla was branded an "internet villain" for introducing DNS-over-HTTPS, which will make internet browsing far more private and secure.

In typical fashion, it was the ISPs shrieking, "won't somebody think of the children?"


caryoscelus · caryoscelus@zeroid.biton Jul 07, 2019Reply

Direct link for those who don't want to bother with twitter.

The U.K.’s Internet Services Providers’ Association (ISPA), the trade group for U.K. internet service providers, nominated the browser maker for its proposed effort to roll out the security feature, which they say will allow users to “bypass UK filtering obligations and parental controls, undermining internet safety standards in the UK.”

Differentiation · diff@kaffie.biton Jul 04, 2019



公共 · gonggong@zeroid.biton Jul 05, 2019Reply

@Zer0fish: 从神学的角度来说,法轮功的教义是挺粗制滥造的。不过宗教这东西,亚伯拉罕一神教系三大宗教讲好听的是互相吸收,说白了还是互相抄呗。

Zer0fish · zer0fish@zeroid.biton Jul 04, 2019Reply


Differentiation · diff@kaffie.biton Jul 04, 2019


Junior high school students need to learn more, understand?

Blurhy · blurhy@zeroid.biton Jul 04, 2019Reply


Differentiation · diff@kaffie.biton Jul 04, 2019

For my poor English, I can't explain it in a few words.
But I will keep trying. They are just sending a lot of words, and day by day, you will be brainwashed.
It's not some sort of different ideas.

Red Pill: A life of harsh knowledge, desperate freedom, and the brutal truths of reality.

Blue Pill: A life of luxurious security, tranquil happiness, and the blissful ignorance of the harsh realities of life, basking in an (essentially dishonest) illusion.

Differentiation · diff@kaffie.biton Jul 04, 2019Reply

My old posts are basically my book excerpt, not used for communication with others.
Therefore, I would rather remove than argue with other.

Styromaniac · styromaniac@zeroid.biton Jul 04, 2019Reply

You don't look like a problem to me yet. I let many things slide even if they're not right.

Differentiation · diff@kaffie.biton Jul 04, 2019

How can a (unorthodox) Christian be a FaLunGong?
Don't use FaLunGong as your red herring.

Differentiation · diff@kaffie.biton Jul 04, 2019

For your information:
I created a private ZeroMe hub, and I moved my posts to there.

Zeroconfig · zeroconfig@zeroid.biton Jul 04, 2019Reply

Oh? What happens to your previous posts?

Differentiation · diff@kaffie.biton Jul 04, 2019

The older post has been gone.

Zeroconfig · zeroconfig@zeroid.biton Jul 04, 2019Reply


This page is a snapshot of ZeroNet. Start your own ZeroNet for complete experience. Learn More