分类 扯淡 下的文章


由妮哩萌萌引发的杂想


酷安的妮哩萌萌大家应该也都有点了解。酷安小编的推荐语大概意思是:这是个高一的妹子开发者,大家支持一下。实际上她的所谓App,就是一个小工具集合。这没什么好吐槽的,关键就是她引用的都是GitHub上的开源项目,license也都是GPL什么的,但是她并没有遵守license。

这都不是重点,重点是,酷安上有一群人给她洗地,嚣张的嘴脸…没话说。反而好像是妮哩萌萌违反了license还很光荣。更有意思的是这些人都在说:“人家是个高一的妹子,写程序不容易,有什么好喷的?”

一群小学生指责大佬们是小学生。

我在小学的时候搭网站,也做过改版权的事情,后面随着我知识水平的提高,我这种事情也就不会去干了。不过那时候没有人指责我,也没有人袒护我。妮哩萌萌却因为她拥有了一群袒护者,以后会怎么样?

我不评论她的app做得怎么样,可能都是Android入门101,毕竟一个程序员是在成长当中的。我刚涉足Web Dev的时候,做出来的东西真的不能看。我支持妮哩萌萌以后的发展,以后如果她真的成长了,我没准还会邀请她和我一起做项目,但是我不支持你们这样袒护妮哩萌萌的抄袭和不遵守license。

还有那些袒护者,是不是也可以映衬出中国一些民众对于版权意识的轻视呢?

这次事情我说了好几次“贵圈真乱”,我不希望青少年开发者圈子会变得更糟,但是…让它变好更难。

本文同步发布于Immortal.Work:https://immortal.work/p/GjBPncidMnWP75uES


到底该怎么学编程


首先声明,这篇文章来自于我自己的经历,对于他人的适用性不确定。

我刚刚写完了我们队伍(Team 6385 - TrueMoe)的FRC2017机器人基础RobotCode(仅operator操作时的手柄控制系统)。用的是C#,一个我在今天之前只知道怎么拼写、长什么样的语言。

身边的朋友好许人认为我是“大神”,只是因为我“很会写程序”,也有想学编程的小伙伴来问我,怎么才能学编程。我当然没有这么厉害,我只是一个全能又全不精的一个高中生。当然我是更希望我能精一样东西的。(不过我总比现在青少年IT圈中涌现出的一批批处理小学生、改代码小学生、单机打站小学生、花样装(zuo)逼(si)小学生要好,自认为。)别人在问我怎么学编程的时候,我听到最多的一句话是“诶,我听说是不是要学C语言开始啊?”当然不是啊!显然很多人认为编程是一个“打怪升级”的过程,我先学什么,然后学什么,才能学什么。多插一句,C的确是一个非常经典的语言,如果能学精,那是非常棒的,但是我并不认为它适合一个新手。举个简单的例子,中国大部分地区的高中的信息技术教学中的编程教学,大多是Visual BASIC 6.0。

那么该怎么按照我的路子开始学编程呢?

第一,相信靠谱的资料。这里靠谱的资料是指官方文档一类的,当然也包括市场上一些书籍,但我个人建议不要使用书籍,能用官方文档就用官方文档。因为图书市场鱼龙混杂,举个例子,谭老的C语言书。一般如果不是专业的朋友推荐,还是尽量看官方文档吧。然后多看点官方例程或者书上的例程(最好敲一遍),我第一门学会的语言Pascal就是把书上所有例程在Free Pascal上敲了一遍就学会了,每敲一个程序都会对这个语言的语法有点感觉。(别找我推荐!除了我小学的OI入门(keng)时专门买过《Pascal基础》外,我基本不看编程类书。)

第二,要会使用搜索引擎。能用Google就用Google,都打算入程序大坑了,还舍不得一点点“求学费”买梯子?百度我曾经试过几次,很难找到让我满意的结果。当然搜索也是要有技巧的,要简明扼要而又不失真的构建搜索词,才能找到前人给你铺的路。(用搜索引擎查找官方文档也是个不错的主意哦!)

第三,要会问。问,主要是在通讯工具上找朋友问,或者是StackOverflow、SegmentFault等在线交流(you)平台问。问的时候要说清楚问题是怎么出现的,出现了什么问题,如果你说的模模糊糊,怎么让别人帮你?注意,这是最后一步,只有第一第二不行才走这一步。毕竟大部分人没这个空来帮你解决一些明明网上一大堆solution的问题。(想起我一个同学,连VB6里面的数组定义和使用方式都错了,问我为什么不能运行,我当时很烦躁,直接就一句“老师上课时候都不听。”,就不理了。)

编程本身就不需要有人来教,只要你好学,没什么搞不定的。况且还有附加值:可以提高你的英语水平,毕竟以上三点你不可避免的要接触大量英文,讲个事实,英语是我三门主科中唯一的优势了。

我到目前为止(除了Pascal)没有一个我目前会的编程语言亲自写的第一个程序是很简单的。PHP第一个程序是OIH的爬虫,用了正则和数据库连接。Node.js的第一个程序是一个小纸条盒(Web应用)。C#的第一个程序是今天写的FRC2017的控制程序。C++的第一个程序是CRC2016的控制程序。最后,装完b跑路。npm install b

本文已经同步在Immortal.Work上投稿:https://immortal.work/p/yMoGdcTit6Estw2J6


以手机被没收后的想法来发发牢骚


本文也同时发布在 Immortal Works 上:https://immortal.work/p/yMxvXuj3cRa7o2Lj6

上周五晚21点50分左右,我打开手机设置完闹钟,刚准备放下,发现旁边站着班主任,我只能把手机上交。因为一些原因,周日我选择了逃学,并没有回校,而是呆在了家里。班主任也许会在班里说是因为我“玩”手机,因此回家一周(这是之前家长会的决议),但是呆在家里是我自己选择的。我是想好好缓一缓,脑子里想法太多,没办法。

一直不认为学校应该全面禁止手机,应该从堵到疏,从禁到限。我相信给信任比完全不信任要好,当然是有那么一部分人控制不住自己,但这个比例很小。把手机带到学校看成如洪水猛兽一般,我觉得这实在是很可笑。其实大部分的学生的需求其实根本不是学校“防止”的那种上课玩、半夜睡觉玩,但是现在的情况就像我妈今天刚和我说的,“这就是是一个定时炸弹”。曾经听到学校某领导说:“我们不可能像职高一样允许学生在学校里使用手机。”,虽然的确是方便管理,但是不见得带手机的人有减少。作为一个学生,我十分清楚这到底是什么情况,每个班肯定至少有12个以上同学带手机,而且查了一部,还有第二部。永远抓不完,永远不会减少。

我们班主任很讨厌我用中午的一个小时去写写程序做做小研究。仿佛我失去了那么一个小时在教室里的时间,我就失去了一本一样。今天我感叹“人太能动也不好啊”,因为班主任说我不是省油的灯。当然不省油啊,我只是想在学校里有个释放自己灵感的时间,在这些传统老师的眼里,我就是在浪费时间,我就是在不务正业。曾经和我关系不错的信息老师也觉得“该好好整整我了”。我曾经举过例子,让我脑子里的想法从周一憋到周六回家,还是周一直接释放出来,这两者哪个更影响我的学习?显然是前者啊。我感觉学校需要让学生当中这些有想法的人有自己表现自己的机会。可惜我校不光是个传统高中,还是个以“专注”为主旋律的学校,想做与学习无关的事情?好啊,你就想想吧!

顺便讲点不搭界的事情,我校“为了体现和美艾中”,不允许食堂打包带出东西吃。连小店买牛奶喝都必须得在小店里解决。这真是一个利校利民的好决策!


为现在青少年IT人的未来而担忧


从接触 Web 开发的那一刻开始,就开始不断接触一些青少年 IT 人。从当初的中国学生站长联盟,到崇才科技。他们都是一群青少年 IT 人,也是我所担忧的一类人。

在 GTC16 主题演讲的时候,我引用了 laosb 去年的对青少年 IT 人的分类:
QQ20160731-0.png
没错,现在青少年 IT 人的组成大部分是伪开发者和商人。当初做 GTC 的原因,就是想净化一部分青少年 IT 人的思想。

这两天听说了“小曹铁路”(小曹铁路?妈的智障! | Guoguo's Blog)本来没啥的,想想也是一个小学生,被网络上这么骂,也该有点悔意。但是今晚看了一下……得了吧!还搞了一个“官方 Git”!我们几个“老人”在群里讨论这件事。突然我意识到,GTC是没用的。它根本影响不到我想要影响的那一类人。他们该怎么样还是怎么样。

包括在 GTC 上提出的 teensDoCode 这个计划,也是想让更多的青少年接触编程,也想净化一部分青少年 IT 人的思想。但除了专业教育机构来帮我们完成,只靠学校是没用的。初中要准备中考,高中要准备高考,靠学校社团根本行不通。专业机构可能也不会有用,因为那一类人往往不会觉得自己需要。

就这样,我才会觉得以后的青少年 IT 人让我担忧。炫耀技术的伪开发者和只是为了赚钱的商人不是真正热爱 IT 的人。


GTC16


GTC青少年极客大会2016圆满结束了。从去年GTC15一结束就决定了是我负责,放在厦门。但是一直到今年五月,我的筹备动作一直很慢。我的错。但是从五月开始办事效率十分高,联系了各种赞助商,虽然最后的赞助商只有3个,但是总比去年只有1个要好。

关于场地,这是我在开幕前最头疼的一个问题。本来组委里一个是厦大学生,主会场厦大他是包了的,也说没问题,可是快开始前两天突然说社团那边没把这件事报上去,报上去以后学校拒绝了。因此很头疼。那天下午去浙师大附中准备联动会场的场地,也突然给我一个惊喜,说是因为G20,所以各种安保都很严,加上就在浙江,上面要求是外来人员不能进校园。后来也十分感谢二中老师帮忙,联动会场是保下来了。后来在厦门也准备了两手,一是继续向学校申请,二是校外就近找场地。感谢美亚柏科和厦大CTF小队提供了校外场地,虽然后来拿到了厦大的一个会议室。感谢厦门大学。

日程本来是两天,但是经过厦大方面和浙师大附中方面的要求,压缩为一天。毕竟就算我固执地要两天,第二天没场地也没法搞。

终于到了14号,我们组委一行早早赶到厦大那个会议室,但是发现会议室没有网络。有一个网络接口dhcp都没有,另外一个能获取地址但是上不了网。这就很尴尬了。毕竟联动会场还需要联网过来。然后负责直播的小组也迟到了。有人提醒我:“你看这条消息,你现在最好要开始了。”总不能放弃联动会场吧?还好cyy也跑出来了。他依赖就研究了另外一个有dhcp的网络接口,ipv4的确没有外网但是……ipv6!我们像是发现了新大陆一样,cyy赶紧用ipv6连进了天海节点CHL,并做了一个跳板。虽然ipv6通道的速度比较慢,但还是实现了会场的互联网接入。感谢cyy。还有直播小组虽然迟到了,但是也非常出色的完成了任务。给ClassicOldSong和qwe7002赞一个。

后来还遇到了HDMI转VGA接口炸了的意外。最后的情况是主题演讲推迟到了10:15,终于开始了。虽然Crack Lab因为没时间,加上Crack Lab的主持人不在现场,被抽掉了,其他情况还是蛮好的。

就是中饭过后会场上一堆人回宾馆看直播而不来现场是什么情况!

其他部分执行地还好。

14号下午特别困,尤其是Docker Lab的时候。因为前一晚只睡了半个小时多(应该是40分钟),因为为了赶主题演讲的keynote,所以熬了一下夜。然后突然又被甩了开场视频的盘子,于是我只睡了40分钟。

算上联动会场,直播间,主会场,大概有80人参会吧。

感谢大家的支持与信任。

明年GTC17上海见!

以下为会场收拾完以后还留在会场的所有与会者合影。

IMG_0633-small.jpg