程序员“翻墙”打工被罚百万,胡锡进发声
文章来源: 胡锡进 于
- 新闻取自各大新闻媒体,新闻内容并不代表本网立场!
一名居住在承德的中国程序员为境外公司工作,通过“翻墙”在github上领取公司任务做代码编写,在support上回答用户问题,并使用Zoom进行远程办公。承德市公安局对其进行了少量罚款,然而没收了其“非法所得”1058000元。此事在社会上的间接触及面非常大,因此受到关注。
中国法律禁止非正式渠道“翻墙”进行国际网络连接,这一立法的初衷是保护国内的政治和意识形态安全,阻止境外的价值渗透。多年前,互联网“防火墙”刚开始建构时,老胡就坚决表示支持它的设计和推行,因为它契合中国的实际情况,是中国国家安全在这个时代的基础要件。中国不能被美国的互联网巨头肆意跑马圈地,我们的社会被它们绑架。
与此同时必须看到,中国是对外开放的国家,我们捍卫了本国互联网的独立自主,但这不意味着我们与国际互联网完全隔绝。随着全球化在互联网应用层面的不断推进,中国有大量人员需要借助国际互联网开展工作,所以一些国有公司和机构提供了互联网国际连接的渠道。然而由于那些渠道有限,很多人不了解它们,因此一些人还是通过各自方法
“翻墙”上外网开展工作。从互联网上透露出的有关承德处理这件事的信息看,它大致应该就属于这样的情况。
我们要捍卫政治和意识形态安全,同时又要保持中国社会对外开放的基础能力,满足这方面的需求,那么就应该区别对待相关事情,不搞简单的“一刀切”,不用“危害国家安全”的个别案例来衡量其他因工作需求而发生的“翻墙”行为。
从事技术、媒体、和国际交流的人员需要接入国际互联网的情况太多太多了,如果把他们的需求都给切断,那么中国民间将封闭起来,我们对外开放的整体能力将大幅萎缩,那已经不是别人搞我们,而是我们自己放弃互联网时代的种种机会和可能性。我个人认为,有关管理部门有必要对国内连接国际互联网的相关需求开展研究,多开辟一些相关的合法渠道,推动有序的开放。
承德将一个程序员的境外工作收入定性为“非法收入”,并且全部没收,这是迄今我们看到的对“翻墙”最重的经济处罚。如果被处罚者去外网仅仅是编写软件,不涉及政治和意识形态的问题,那么这个处罚就颇为值得商榷,它开的这个“先例”增加了社会的疑惑,不利于中国扩大对外开放。
由于中美关系紧张,带动了中西意识形态冲突的加剧,美国和中国以及西方与中国之间的相互政治防范都在上升。这个时候,我们这边还是要最大限度地保持冷静,基层管理部门不要遇到民间涉外的情况就紧张,不要有管理涉外越严格越正确的认识。美国在对华问题上搞得很极端,中国在保持自信和鼓励对外开放方面一定要做得比美国更好,那样我们才能够更有张力,让我们的发展更加八面来风。
-->
`,
"script":[]
}
, "gg_rightside": {
"html":`
`,
"script":[{"type":"text/javascript","src":"//widgets.outbrain.com/outbrain.js","async":"async"}]
}
, "gg_duturandom": {
"html":`
`,
"script":[]
}
, "gg_square": {
"html":`
`,
"script":[]
}
, "gg_topbanner": {
"html":`
`,
"script":[]
}
, "gg_middlesquare": {
"html":`
`,
"script":[]
}
, "gg_dutu": {
"html":`
`,
"script":[]
}
, "gg_botline": {
"html":``,
"script":[]
}
, "gg_dututop": {
"html":`
`,
"script":[]
}
, "gg_shipintop": {
"html":`
`,
"script":[]
}
, "gg_inContent": {
"html":`
`,
"script":[]
}
, "gg_shipinrandom": {
"html":``,
"script":[]
}
, "gg_sideSticky": {
"html":`
`,
"script":[]
}
, "gg_bottombanner": {
"html":`
`,
"script":[{"type":"text/javascript","src":"//widgets.outbrain.com/outbrain.js","async":"async"}]
}
, "gg_marquee": {
"html":`
`,
"script":[]
}
}
const adEnv={
"gg_header": {
"html":``,
"script":[{"type":"text/javascript","exec":` var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; var pbjs = pbjs || {}; pbjs.que = pbjs.que || []; `},{"type":"text/javascript","src":"https://adncdnend.azureedge.net/adn-hb/adn.wnx2.js","async":""},{"src":"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js","async":"","data-ad-client":"ca-pub-7528949385909099"},{"type":"text/javascript","src":"https://adncdnend.azureedge.net/adn-video/WenxuecityPlayer.js","async":"async"}]
}
}
const wxcEnv = {
"base":{
"exe":[],
"src":[
{"src": "/news/js/recommendednews.js","defer":"true"},
{"src":"/js/wxcFunc.js","defer":"true"}
]
},
"func":{
"exe":[
//展示评论
'function showMoreComments(){let n = 21;for(let i=0;i
2){dom.hide();}}$("#showallcomment").show();$("#showlesscomment").hide();};hideComments();',
],
"src":[
//图片,搜索,QR code
{"src": "/news/js/view.js?v=05132024"},
//计数器
{"src":"//count.wenxuecity.com/service/count/script/do.php?type=news&id=12535134&n=0&out=jsval","defer":"true"},
]
}
}
function wxcCode(){
wxcEnv.base.exe.forEach(x=>{
let tag = buildAdcode(x);
document.head.append(tag);
})
wxcEnv.base.src.forEach(src => {
let tag = buildSrc(src)
document.head.append(tag);
});
wxcEnv.func.exe.forEach(x=>{
let tag = buildAdcode(x);
document.body.append(tag);
})
wxcEnv.func.src.forEach(src => {
let tag = buildSrc(src)
document.body.append(tag);
});
}
function adcode(){
let adkey = Object.keys(ads);
adkey.forEach(x=>{
let code = ads[x].html;
let div = document.getElementById(x);
if(div)div.innerHTML = code;
ads[x].script.forEach(s=>{
if(Object.keys(s).indexOf('src')===-1){
let tag = buildAdcode(s.exec);
document.body.append(tag);
}else{
let tag = buildSrc(s);
document.body.append(tag);
}
})
})
}
function baseCode(){
let baseKeys = Object.keys(adEnv);
baseKeys.forEach(x=>{
adEnv[x].script.forEach(s=>{
if(Object.keys(s).indexOf('src')===-1){
let tag = buildAdcode(s.exec);
document.head.append(tag);
}else{
let tag = buildSrc(s);
document.head.append(tag);
}
})
})
}
function buildAdcode(script){
let tag = document.createElement('script');
tag.innerHTML = script;
return tag;
}
function buildSrc(obj){
let keys = Object.keys(obj);
let tag = document.createElement("script");
keys.forEach(key=>{
tag.setAttribute(key, obj[key]);
})
return tag ;
}