akicode

关于我们

akicode 里的 aki,是日语的「あき」。秋天,橡树上挂满橡子。橡子里常常藏着一只小虫子,一个 bug。写程序也是这样,代码里总会有 bug,把它找出来、弄明白,正是学编程最有意思的地方。所以我们的标志是一颗橡子。

akicode 是为第一次写程序的人做的。

我们发现,刚开始写程序的人最容易卡住的,往往不是语法,而是动手之前的那些准备:装软件、配路径、改设置,每个系统还各不相同。所以 akicode 想做的事很简单:把这些麻烦去掉。打开一个网址,就能写、就能跑,不用注册,不用安装。它不是简化版的玩具,而是真的编程环境,你写的代码拿到别处照样能跑。

最初只是想在浏览器里跑个调试器,好让你能一步步看程序怎么执行。可调试器要跑起来,得有真正的进程;进程又要有虚拟内存和页表,要有文件系统,要能兼容 Linux……顺着一个接一个的「还差这个」做下去,最后竟从头写出了一个完整的操作系统,能跑得动 gcc、gdb 这些原本要装在机器上的工具。说起来只是为了一个调试器,绕了好大一圈。

当然,它离真正的 Linux 还差得远。说到底是我们重新实现的,很多地方的行为和真正的 Linux 对不上:有些系统调用还没做,有些做了但细节不一样,某些程序在真机上跑得好好的,到这里就出些奇怪的岔子。这些都是还没抓出来的虫子,我们在慢慢一个个修。要是你碰上了,也欢迎告诉我们。

这就是 akicode,一个还很小、还在长的工具。希望它能帮你顺顺利利地写下第一行程序。