追时间

Yak shaving during web development, thoughts...from Jijie Chen

在 Ubuntu Server 上运行 ASP.NET 5 应用程序

.NET 宣布全面跨平台和开源已经过去一段时间了,而 ASP.NET 5 的也已经到了 beta5。是时候行动起来,迎接下一个版本的 ASP.NET 了。为了将 ASP.NET 5 网站发布到一台 Ubuntu 服务器上,还是需费一番周折的。
最终的成果是令人满意的,毕竟尽管 .NET 开源和跨平台事的影响力让 .NET 这样一个活跃的平台拥有更多可能性,而我们开发人员才是真正让这些可能性变成现实的人们。 [更多...]

使用命令行工作

命令行有用,但并没有什么可供显摆的。最近我也在考虑,作为一个开发者,我们为什么要使用命令行呢?很简单,因为它有用。事实是,就算不提服务器管理这种批量性比较严重的工作,即便是在日常开发工作中,还是有很好用的工具,并没有提供足够好用的 GUI,或者根本没有提供 GUI,我们需要面对它。
接受命令行,多加练习之后我们很快发现,命令行很有用,而且它并不难用。当我们熟悉使用命令行之后,不再觉得它是一个令人恐惧的东西,就算是一时间没能正确地使用,不管是调用格式不正确还是导致了错误,也不至于恐慌怕不好收拾。打消了这些顾虑,这才非常自然地接受它作为日常工作的一种常用技能了。 [更多...]

ASP.NET 5 Web Pages 支持

随着开源策略的实施,不少 ASP.NET 中的原有特性和功能受到了影响。比如 Web Form 开发方法,以及从 Web.Config 读取配置等特性和功能已经不原生提供了。
这篇文章里,我讨论了 Web Pages 的基础,并为 ASP.NET 5 提供 Web Pages 的支持。 [更多...]

ASP.NET 5 Startup

这篇文章里,我们来一起看看在一台从来没有安装过开发环境 Visual Studio 的 Windows 机器上如何顺利地部署一个 ASP.NET 5 的开发环境,并开发一个 Hello World 应用程序。 [更多...]

在 Windows 8 以上系统中使用微软账号可能导致 Users Profile 目录名为非英语

首先,重要警告:千万不要尝试强行修改 C:\Users\ 下的文件夹名。 非英语的用户 Profile 目录名可能带来问题 只能说很无奈,这是一个事实,却也可能是一个问题:当你在安装系统之初就直接使用微软账号登录时,可能导致最终你在使用 Windows 时,你用户 Profile 文件夹的名字为非英语——会是你在微软账号中填写的名字。比如我的,显示为“计节”,而不是英语的 jijie,或者我常用的 ciznx (如下图)。 本来我不认为这是什么问题,虽然安装系统之初我隐约是有一些担扰的,但一直以来也没出什么状况,我也就没有太花心思去处理了。问题是,当这个路径的值是中文,或其他非英语文字,一些... [更多...]

时区和夏令时相关的基本知识

人们自古以来“日出而作,日落而息”。而现如今,全球化越来越明显,大家凑到微博上交流时,发现不同地方日出而作的时间实际上是不一样的。张三在上海,他早上六点就日出而作了,而李四在新疆,到早上九点才日出而作。这差异还是很显的。正是由于大中国采用了统一的时间制度,才带来了这种差异。脑洞一下,如果全球都采用统一的时间制的话,大家的对话就不好开展了:在上海的张三跟远在巴黎的李四约早上八点开个远程会议,结果李四还在睡觉呢(那时候,他正是半夜刚过)……   时区(Time Zone) 时区(Time Zone)就是解救人们的得力工具。它使得地球上的不同区域使用同一个时间定义得以实现。1884年在华... [更多...]

解决你的拖延症:构建一套得心应手的工具和环境

如果你觉得你想做一件事,却又好像没有太大的动力去尝试它,那么请弄清楚什么是阻碍你尝试它的真正原因。如果是工具没有就绪,那么先把你伟大而令人激动的创意记录下来。先搞定一个令人愉悦的工具箱和开发环境,或许你很快就豁然开朗,立即就感到冲劲十足了…… [更多...]

安装 Visual Studio 2015 Preview 附加软件 Git CLI 失败 无法连接到远程服务器

Visual Studio 2015 Preview 是一个大家伙,14号发布以来,相信已经有不少人已经下载到自己电脑上了,安装所用 ISO 镜像文件 4.6 G,最终安装更需要 15~20 G 之巨。 在完成基本组件的安装之后,需要重启计算机。我以为这回可以尝试一下新环境的特性,计算机重启之后,却弹出了一个“Secondary Installer for Cross Platform Mobile Development” 的新向导。这大概是由于在基本组件安装的环境我选择了跨平台移动设备安装的相关选项吧。 Secondary Installer 中的选项大多是十分有用的,例如 Git C... [更多...]

理解 JavaScript 中的 generator (EcmaScript 6)

 Generator 函数是一种特殊的函数,只需要在其中使用 yield,就可以暂停其执行过程。调用 generator 函数时,会得到一个 generator 对象的返回值。要想运行在 yield 位置之前的函数体,需要调用 generator 对象的 next 方法。定义 Generator 函数的方法就是在函数名之前加一个星号(*[更多...]