HN user

bitinn

72 karma
Posts5
Comments11
View on HN

What I think: Thiel saw an opening in both Gawker's reputation and the legal system, and made a deadly move.

And to clarify, I am not equating this case to censorship, but rather to setup some context that we have seen much worse :)

But what troubles me is really how SV response to this case:

- There are no better ways and so be it.

This is what Chinese call: the limit of democracy and freedom.

And Thiel get VCs to agree with him in this case. Even though I believe many VCs hold different view on democracy and liberty.

So I am personally troubled by their reactions.

As a js library maintainer and contributor, I do find these arguments flawed:

There is a culture in the JavaScript community that “types don’t matter”

I don't think that's the case, particularly among seasoned developers: we do care about types and interfaces, but we just don't think writing them down in code is as big a deal as Typescript claims it to be.

We are already linting because we believe it makes better code.

Linting doesn't require you to write non-javascript, it just works (after configurations). It doesn't force you to write code in any particular ways (see ESLint for example). That's why we find it more acceptable.

Types are stronger. Types matter.

TS isn't automatically stronger, since TS is a superset of JS, developers can still omit the types. So you either write in proper TS-style and get its benefits, or don't.

And referring to earlier points:

The types are there. Instead of leaving them implicit, you can just make them explicit.

IMO: there are many ways to setup this contract. And I question the % of type-related issues within a library when you have 100% test coverage and proper linting already.

Often in JS libraries, the types are vaguely defined as an afterthought when writing docs.

TS can't force you to write strong types, just as JS can't force you to write good doc. You need a stronger will, not a better nag.

My case for writing your next popular library in vanilla JS: your users will already know how to contribute. And you get to choose how to enforce good variable types.

For TS vs JS details, see http://stackoverflow.com/questions/12694530/what-is-typescri...

Disclaimer: my libraries are nowhere as popular as angularjs or immutablejs, but I do intend to maintain them to a degree that may serve thousands of developers.

(Plus the author uses one of my library so I guess they are not that bad)

To add context:

<Novel Malware XcodeGhost Modifies Xcode, Infects Apple iOS Apps and Hits App Store> http://researchcenter.paloaltonetworks.com/2015/09/novel-mal...

<Hack Brief: Malware Sneaks Into the Chinese iOS App Store> http://www.wired.com/2015/09/hack-brief-malware-sneaks-chine...

<How the CIA Might Target Apple's XCode> https://www.schneier.com/blog/archives/2015/03/how_the_cia_m...

Affected apps include:

- WeChat, messaging app, around 500-600 mil users.

- Railway 12306, the only official app for ordering Sinorail train tickets in China.

- Didi Taxi, Uber's main rival in China.

- AutoNavi, the largest map provider in China, serving Google/Bing/Apple maps.

- China Unicom customer service, 1 of the 2 major ISP in China.

And many others.

Actually this is classic daily life of a chinese netizen: you are never quite sure what the cause of your network woes is (not without spending time digging into it). Is it due to ISP QoS, or is it reset by GFW, or is it just mere network failure?

And what most ppl do when facing this? They choose a local service instead of Twitter, Facebook, Youtube, Google. See, censorship is only a part (though a vital part) of the grand scheme.

Not all VPN services are censored, and not all VPN protocol triggers the reset. But you can bet whatever you get for free (thus likely popular), will get banned soon enough.

OpenVPN is like a prime suspect of a police procedural novel, it gets hunt down no matter what.

Personally experience: I did work for Microsoft Shanghai and VPN works just fine. You need to have the right set of tools, and better, have a good channel of negotiation with the government.

And to add more context: Shadowsocks isn't just a tool nowadays, it's a group of applications that target both developers and common folks.

People have built successful VPN services using Shadowsocks, and they are available on many platforms, like routers and embedded systems.

And the iOS version is more or less the author's recent efforts to build a VPN client that can run on non-jailbroken iPhone, much like Cisco AnyConnect.

I think shadowsocks' popularity as a whole concerns the chinese government, so they do their usual rooting out the leader thing: now that shadowsocks org is headless in the literal sense (no owner, no main repo), they hope its development will die out.