泛滥的点文件

很多应用程序会在用户的主目录($HOME/)下创建自己的 . 文件/文件夹(dotfiles)。这些文件默认在系统中是隐藏的。这么做的目的大部分是跨平台地存储“永久”的用户配置、文件等。而这种做法的后果就是主目录下被各种这类的隐藏文件充斥。

阅读全文 »

背景

突然接手诺丁腔,想把课表抓取这块的代码重写一下整合进自己的服务。但这后面的科学道理没有表面上看起来那么简单。而原因并不是学校的反爬取策略多高明,而在于这课表系统的规律性实在是太难以捉摸、莫名其妙……

这里记录一下这些天的研究成果和最终思路。(不涉及代码层面,只说服务原理。)

阅读全文 »

Operating Systems and Concurrency

Content

  • Introduction to operating systems/computer design
  • Processes, process scheduling, threading, ...
  • Concurrency (deadlocks)
  • Coursework clarification/revision
  • Memory management, swapping, virtual memory, ...
  • File Systems, file structures, management, ...
  • Virtualisation
  • Revision
阅读全文 »

问题来了

这些天给 uCourse 加动态功能。系统本身设计贴近知乎,目前分为评课系统 + 论坛发帖。动态功能仔细想想竟然牵扯四层嵌套——

  • 一级结构:
    • A 发布了 一个帖子
  • 二级结构:
    • B 点赞了 A 的帖子
    • B 评论了 A 的帖子
    • B 测评了 某个课程
  • 三级结构:
    • C 点赞了 B 在 A 的帖子下的评论
    • C 回复了 B 在 A 的帖子下的评论
    • C 赞同了 B 在某个课程下的评测
    • C 评论了 B 在某个课程下的评测
  • 四级结构:
    • D 点赞了 在某个课程中 B 的评测下的 C 的评论
    • D 回复了 在某个课程中 B 的评测下的 C 的评论

嵌套关系分析:

  • 帖子 => 评论 => 回复
  • 课程 => 评测 => 评论 => 回复
阅读全文 »

原文链接:12 tricks for ES6 fun

已经有很多讨论谈到了 ES6 是如何减少我们对于诸如 underscore.jslodash 这类库的需求。我想要用一种稍微不同的方式来展示 ES6 是如何用「非预期」的方式来完成某些常见任务。你可以称之为「ES6 小技巧」。

阅读全文 »

1 Introduction

Book: Programming in Haskell 2ndEdition

1.1 Functional Programming

What is functional programming?

  • Functional programming is style of programming in which the basic method of computation is the application of functions to arguments;
  • A functional language is one that supports and encourages the functional style.
阅读全文 »

0 Introduction

作为 System & Architecture 的第二部分,我个人感觉这门课教得一塌糊涂……

所使用教材:

  • Java(TM) Network Programming and Distributed Computing
  • Distributed Systems - Concepts and Design (5th Edition)
  • Computer Networking - A Top-down Approach (6th Edition)
阅读全文 »