0%

众所周知,现代的信息技术都是构建在二进制的基础之上。你所看到的文字、符号、图像、语音、视频等等在计算机、手机等设备内部都是以0、1的形式存在和存储的。如此缤纷多彩的计算机和网络世界却只是由0、1这两种元素构成,真有点「道生一,一生二,二生三,三生万物」的意味。

阅读全文 »

微服务架构和REST API是现在非常热门的技术话题,采用微服务架构之后带来的一个棘手问题是安全和身份认证(Authentication)。这里所指的身份认证,既包括用户的身份,更强调程序和服务的身份,也就是微服务之间调用的信任关系。

阅读全文 »

现在最热门的开发领域无疑是人工智能(AI)了,这直接带动了Python的热度。连全国计算机等级考试(NCRE)也已经将Python纳入了考试课程,取代了实行很多年的Visual FoxPro。吴军老师在《吴军的谷歌方法论》第48期答读者问中提到,对于计算机的初学者,他也建议学习Python,原因是Python对接AI和大数据分析的工具更容易些。作为一名普通的软件开发人员,我也希望能掌握一些开发AI的技术,来给一般的应用程序赋予一些AI的能力。Python语言断断续续学了好多年,也有一些基础,但总感觉和AI结合的不够,直到我了解并熟练掌握Jupyter Notebook。

阅读全文 »

在前端开发中,图标(Icon)是一种必不可少的资源文件。从最开始的png小图,到CSS Sprites,再到近些年的Font Awesome这类的图标字体文件,搭建一个简洁大方的网站越来越容易。我的博客使用Hexo框架,搭配Next主题,整体效果我也比较满意。但当我将其托管到Azure Website上时,却发现了两个404错误,提示找不到Font Awesome的两个字体文件。

阅读全文 »

根据地球上任意两地的经纬度,可以计算它们在球面上的最短距离(Great-circle Distance / Orthodromic Distance)及相对始末位置的方位角(Bearing)。

阅读全文 »

在.NET的开发中,偶尔会遇到assembly找不到的问题,相信.NET程序员对下面的错误信息都不陌生。大多数时候,我们去bin目录检查,把缺失的dll文件拷贝到bin目录,问题就解决了。但也有例外的时候,因此搞清楚.NET CLR是如何寻找assembly就很有必要了。

阅读全文 »

历经三门考试,在这个阳光明媚的初春,2018年的第一个小目标——考取微软认证解决方案开发者(MCSD, Microsoft Certified Solutions Developer)证书,终于达成了。

回头看看,从大学时期的ASP开始,到ASP.NET、WinForm开发,到后来的ASP.MVC、WCF开发,再到近些年的ASP.NET Web API以及Azure相关的开发,我已经在微软技术栈上学习和实践了近10年。考取这个证书,不是为了面试找工作,而是对自己这么多年来学习的一个检验,给自己的一个交代。

阅读全文 »

REPL

Read-Eval-Print Loop,简称REPL,中文意为“读取-求值-输出”循环,是一个简单的、交互式的编程环境。REPL对于学习一门新的编程语言具有很大的帮助,因为它能立刻对初学者做出回应。

阅读全文 »

Word Count 是学习Spark开发的一个经典案例,类似于其他编程语言中的Hello World程序。但这个例子是基于英文的,英文断句分词是一件比较容易的事情,一般都是以空格为分隔符进行分词。但对于中文来说,事情就复杂了。

阅读全文 »

一切皆服务

在云计算领域,下面的三个术语可谓是人尽皆知了,这三个结合起来,就是云计算的SPI服务模型了。

  • 软件即服务(SaaS,software as a service)
  • 平台即服务(PaaS,platform as a service)
  • 基础设施即服务(IaaS,infrastructure as a service)

由此诞生了一个新的概念,一切皆服务(XaaS),意为“X as a service”、“anything as a service”、“everything as a service”。

阅读全文 »