下面是这个网站会重点关注的一些主题,为了保证整个站点内容的相关性,我会尽可能的围绕下面的主题展开。但是个人也一直认为技术永远都是需要触类旁通的,所以如果我看到一些与下面的主题无关的内容但是非常有用,我也会予以学习和刊出。个人站点,任性就任性点咯,有用的内容才是最好的内容!


开放源代码(Open Source):

关于开源一词,我更多的理解为一种思想—将源代码公开使别人可以任意获取并在一定的限制之下学习、修改、增进提高这款产品的质量。在这里:

  • 源代码不局限于软件产品的代码,也可以包括文档、图片、硬件设计图纸甚至是某个机器的细节设计等生产资料,只要它符合“开源”这一思想,并且我认为它值得关注,我也会尝试去了解和学习。这一类我暂且分为开源软件和开源硬件两类。
  • 一定的限制通常由产品所遵循的开源协议(许可证)作出相关说明,由于各协议之间略有不同,个人也无法具体去界定一个产品是否是严格意义上的“开源软件”。所以我会尽量的去参考一些大众的习惯并加入一些自己的主观判断,毕竟也没有必要去纠结一个定义,有用的才是王道。

下面是我比较认可的关于开源软件的定义,来自Bruce Perens(Debian的创始人之一),可以作为个人参考:

  • 自由再散布(Free Distribution):允许获得源代码的人可自由再将此源代码散布。
    源代码(Source Code):程序的可执行文件在散布时,必需以随附完整源代码或是可让人方便的事后获取源代码。
  • 派生著作(Derived Works):让人可依此源代码修改后,在依照同一许可协议的情形下再散布。
  • 原创作者程序源代码的完整性(Integrity of The Author’s Source Code):意即修改后的版本,需以不同的版本号码以与原始的代码做分别,保障原始的代码完整性。
  • 不得对任何人或团体有差别待遇(No Discrimination Against Persons or Groups):开放源代码软件不得因性别、团体、国家、族群等设置限制,但若是因为法律规定的情形则为例外(如:美国政府限制高加密软件的出口)。
  • 对程序在任何领域内的利用不得有差别待遇(No Discrimination Against Fields of Endeavor):意即不得限制商业使用。
  • 散布许可协议(Distribution of License):若软件再散布,必需以同一条款散布之。
  • 许可协议不得专属于特定产品(License Must Not Be Specific to a Product):若多个程序组合成一套软件,则当某一开放源代码的程序单独散布时,也必需要符合开放源代码的条件。
  • 许可协议不得限制其他软件(License Must Not Restrict Other Software):当某一开放源代码软件与其他非开
  • 放源代码软件一起散布时(例如放在同一光盘),不得限制其他软件的授权条件也要遵照开放源代码的授权。
  • 许可协议必须技术中立(License Must Be Technology-Neutral):意即许可协议不得限制为电子格式才有效,若是纸本的许可协议也应视为有效。

云计算(Cloud Computing):

一种基于互联网的计算方式,通过将共享的软硬件资源和信息按需求提供给计算机和其他设备。云计算描述了一种基于互联网的新的IT服务增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展而且经常是虚拟化的资源。对于一名用户而言,由提供者提供的服务所代表的网络元素都是看不见的,仿佛被云掩盖。

云计算定义常见有三种服务模式:

  • 软件即服务(SaaS):消费者使用应用程序,但并不掌控操作系统、硬件或运作的网络基础架构。是一种服务观念的基础,软件服务供应商,以租赁的概念提供客户服务,而非购买,比较常见的模式是提供一组账号密码。例如:Microsoft CRM与Salesforce.com。
  • 平台即服务(PaaS):消费者使用主机操作应用程序。消费者掌控运作应用程序的环境(也拥有主机部分掌控权),但并不掌控操作系统、硬件或运作的网络基础架构。平台通常是应用程序基础架构。例如:Google App Engine。
  • 基础设施即服务(IaaS):消费者使用“基础计算资源”,如处理能力、存储空间、网络组件或中间件。消费者能掌控操作系统、存储空间、已部署的应用程序及网络组件(如防火墙、负载平衡器等),但并不掌控云基础架构。例如:Amazon AWS、Rackspace。

计算机/网络基础知识/编程

出于兴趣,一直在学习这方面的知识,然而整个IT产业涉及到的技术及其广泛,无法穷尽,需要不断的学习和充电。操作系统:我会持续学习Linux(顺带熟悉部分其他类Unix)系统;当然,Windows作为桌面端也非常不错,尤其是如今,“Microsoft Love Linux !”。虽然个人热爱开源软件,但我对商业软件没有成见,它们中有许许多多优秀的产品亦值得称赞。

网络:了解一些常见的协议,深入学习TCP/IP协议簇,时常关注网络技术的发展。

编程:目前只学过C/C++Python,不敢说精通,还需要继续不停的使用和锻炼,以后会视需要学习一些其他的工具。

常用软件:Bash、Vim、IPython、Gmip、LibreOffice、MicroOffice、AutoCAD、Chrome、Firefox ……


部分机械/电气/自动化的知识

鉴于个人大学的专业是机械工程及自动化,我认为这方面的基础知识对于一个工程师而言也是十分重要的,所以我也会适当的分享一些这方面的内容,主要侧重工业自动化这一块。学习和分享一些常用的技术和标准,但是毕竟精力有限,不会尝试去全面的覆盖,而且这些基础性的东西个人感兴趣的话还是系统的通过课程或书籍学习更好。


 

部分国家项目/政策/国内国外的相关标准

小松一直觉得了解一些国家政策可以帮助我们更好的了解未来的发展趋势,一些好的标准和项目范本可以帮助我们系统的学习和应用技术。所以我也会关注一些类似“中国制造2025”“工业4.0”“物联网”这一类的“新潮”的概念,尽可能的结合网站的主题发表一些个人看法,而不是简单的去收集和堆砌相关新闻。


总之,希望这个网站辅助我不断成长的过程也能帮到别人,欢迎各位朋友也参与分享有价值的内容!