<commit_before>---
layout: post
title: 从0开始做一个OJ
tag:
- project
date:   2016-09-2
excerpt: "从现在开始我要记录我从0开始做Lier OJ的过程 虽然，我随时可能会跑路"
comments: true
image: http://images2015.cnblogs.com/blog/831801/201609/831801-20160903073610543-104292058.jpg
feature: http://images2015.cnblogs.com/blog/831801/201609/831801-20160902151416793-1469017528.jpg
undone: true
---

# 序

最近一段时间，随着Noip的临近，越来越感觉到历二信竞队对私有OJ的需求之大。正巧这几天看到好几位大牛博客里写的关于自己开发OJ的经历，加上我在运营这个博客期间经验的积累，我决定要自己开发一个Online Judge系统。

## 目标/需求：

我的目标是做一个除了具有正常OJ所必备的准确的Judge、分类明确的题库、比赛、作业等功能外，还要具有完善的用户分析功能和部分教学功能的OJ。完善的用户分析，就是会根据用户的刷题、比赛等得分，以及在作业的完成情况，利用大数据可视化，为用户生成完整的擅长/薄弱点分析，会适当的建议用户下一步的学习和练习方向。当然，这些需求都是针对历二信竞队平时的表现。

 * 用户注册、登陆、信息管理
 * 正常的测评
 * 题库功能
 * 比赛功能
 * 教学板块
 * 作业功能
 * 用户分析

## 进度：

#### 2016-09-02:

  * 决定采用MVC构架，web采用Python+Django+Bootstrap, 测评机采用C++编写或直接使用<a href="https://github.com/laekov/acejudge" target="\_blank">Hja大神的测评机</a>。
  * 开始学习熟悉Django，并实现首页。

#### 2016-09-03

  * 全天回教室上高中课。<commit_msg>post update<commit_after>---
layout: post
title: 从0开始做一个OJ
tag:
- project
date:   2016-09-2
excerpt: "从现在开始我要记录我从0开始做Lier OJ的过程 虽然，我随时可能会跑路"
comments: true
image: http://images2015.cnblogs.com/blog/831801/201609/831801-20160903073610543-104292058.jpg
feature: http://images2015.cnblogs.com/blog/831801/201609/831801-20160902151416793-1469017528.jpg
undone: true
---

# 序

最近一段时间，随着Noip的临近，越来越感觉到历二信竞队对私有OJ的需求之大。正巧这几天看到好几位大牛博客里写的关于自己开发OJ的经历，加上我在运营这个博客期间经验的积累，我决定要自己开发一个Online Judge系统。

## 目标/需求：

我的目标是做一个除了具有正常OJ所必备的准确的Judge、分类明确的题库、比赛、作业等功能外，还要具有完善的用户分析功能和部分教学功能的OJ。完善的用户分析，就是会根据用户的刷题、比赛等得分，以及在作业的完成情况，利用大数据可视化，为用户生成完整的擅长/薄弱点分析，会适当的建议用户下一步的学习和练习方向。当然，这些需求都是针对历二信竞队平时的表现。

 * 用户注册、登陆、信息管理
 * 正常的测评
 * 题库功能
 * 比赛功能
 * 教学板块
 * 作业功能
 * 用户分析

## 进度：

#### 2016-09-02:

  * 决定采用MVC构架，web采用Python+Django+Bootstrap, 测评机采用C++编写或直接使用<a href="https://github.com/laekov/acejudge" target="\_blank">Hja大神的测评机</a>。
  * 开始学习熟悉Django，并实现首页。

#### 2016-09-03

  * 全天回教室上高中课。

#### 2016-09-04

  * 修改主题颜色及添加背景
  * 学习了解Django认证系统
  * 为Django配置Mongodb
  * 完成用户注册、登录、登出功能
  * 完成简单的个人信息管理  
  ~~想把这个OJ放到github上……但是第一次写这个代码很幼稚又怕被笑话于是就不敢放了(>_<)有人感觉我的OJ丑到爆…… 这两天看了别人的博客，感觉自己的网站好像确实很丑……一开始选的太认真了忘了确实还可以好看一点 不过这样就这样吧，习惯就好， 嘿嘿~~
{'fraction_non_alphanumeric': 0.13432144511347846, 'fraction_numerical': 0.11672070402964335, 'mean_word_length': 6.448275862068965, 'pattern_counts': {'":': 0, '<': 8, '<?xml version=': 0, '>': 8, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4098612', 'n_tokens_mistral': 1728, 'n_tokens_neox': 1788, 'n_words': 94}