30天学习30种技术
GarfieldEr007
这个作者很懒,什么都没留下…
展开
-
Day 1: Bower —— 管理你的客户端依赖关系
我决定将第一天的学习主题选为Bower。什么是Bower?Bower是一个客户端技术的软件包管理器,它可用于搜索、安装和卸载如JavaScript、HTML、CSS之类的网络资源。其他一些建立在Bower基础之上的开发工具,如YeoMan和Grunt,这个会在以后的文章中介绍。为什么我会在意Bower?节省时间。为什么要学习Bower的第一个原因,就是它会为你节转载 2015-12-04 09:41:50 · 1353 阅读 · 0 评论 -
Day 3: Flask —— 使用Python和OpenShift进行即时Web开发
最近Packtpub找到了我,让我给他们新出版的关于Flask的书写书评。Flask是一个很流行的Python框架。那本书是Ron DuPlain写的《Flask 即时Web开发》。我决定把“30天学习30种新技术”挑战的第三天花在Flask上。在本文中,我首先将介绍Flask框架的一些基本知识,然后提供一个短篇的书评。同样,我也会把示例应用移植到OpenShift上。对于Flask而言我不是转载 2015-12-04 10:49:54 · 2188 阅读 · 0 评论 -
Day 11: AeroGear 推送服务器:使应用的通知推送变得简单
在今天的“30天学习30种新技术”, 我打算去扩展一下昨天开发的 PhoneGap 应用,加上推送通知的功能。推送通知允许应用去通知或者警告用户,即使是在程序没有打开的情况下。例如,如果我们有一个允许通知推送的 Twitter 应用,当 Twitter 上有人提到你或者关注你了,Twitter 应用也会推送一个通知给你,即使这个应用没有在运行。几周以前,我读到一篇 Jay Baluna转载 2015-12-04 10:58:25 · 1264 阅读 · 0 评论 -
Day 24: 使用Yeoman自动构建Ember项目
到目前为止,我们这个系列讨论了Bower、AngularJS、GruntJS、PhoneGap、Meteor、Ember和TimelineJS等JavaScript技术。今天的《30天学习30种新技术》,我决定学习前端开发的效率工具Yeoman。本文将首先介绍Yeoman的基本情况,接着我们会使用Yeoman开发一个Ember应用。本文不会介绍EmberJS的基本知识,所以请参考day 19。转载 2015-12-05 18:14:29 · 1715 阅读 · 0 评论 -
Day 25: 联合Tornado、MongoDB 和 AngularJS 进行应用开发
今天的《30天学习30种新技术》,我决定暂时放下 JavaScripts 的内容,而去学习一个叫做Tornado 的 Web 框架。我决定去学 Tornado 的原因是我这样就可以用 Python 去写 Web 程序了。我只学过 Flask 框架,所以我觉得 Tornado 应该能增加我在 Python Web 开发方面的知识。我们在这篇博文中描述的应用使用 Tornado 来作 RE转载 2015-12-05 18:15:11 · 1640 阅读 · 0 评论 -
Day 20: 斯坦福CoreNLP —— 用Java给Twitter进行情感分析
今天学习如何使用斯坦福CoreNLP Java API来进行情感分析(sentiment analysis)。前几天,我还写了一篇关于如何使用TextBlob API在Python里做情感分析,我已经开发了一个应用程序,会筛选出给定关键词的推文(tweets)的情感,现在看看它能做什么。应用该演示应用程序在OpenShift http://sentiments-t20.rhcloud.转载 2015-12-05 18:11:29 · 3115 阅读 · 0 评论 -
Day 22: 使用Spring、MongoDB和AngularJS开发单页面应用
今天的《30天学习30种新技术》挑战,我决定使用Spring框架、MongoDB和AngularJS开发一个单页面应用。我很熟悉Spring和MongoDB,但是我没用配合Spring使用过AngularJS。今天我们将开发一个社交化的书签应用,类似我们几天前用EmberJS开发的那个。我在第二天介绍了AngularJS的基本知识,请参阅我的文章获取更多信息。本文使用最新版的Spring框架,即3转载 2015-12-05 18:12:59 · 1917 阅读 · 0 评论 -
Day 29:编写你的第一个 Google Chrome 扩展程序
今天的《30天学习30种新技术》,我决定去学习如何写一个 Chrome 扩展程序。在做了一些搜索之后,我发现一个 Yeoman 生成器可以用来写 Chrome 扩展程序。我们在这篇要写的扩展程序是一个可以在工作时间内,把 Facebook、Twitter、LinkedIn 等等的社交网站屏蔽掉的插件。这篇文章不会说到 Yeoman 的基本知识,你可以阅读第 24 天的内容了解一下 Yeoman转载 2015-12-05 18:18:26 · 1532 阅读 · 0 评论 -
30 天学习 30 种新技术系列
编者注:我们发现了比较有趣的系列文章《30 天学习 30 种新技术》,准备翻译,一天一篇更新,年终礼包。以下是译文,英文标题表示还未翻译,附原文链接;中文标题表示已翻译,附译文链接。更新:全系列已经全部翻译完成。让你 30 天学习 30 种新技术,你会觉得这是挑战吗?我已经接受了挑战,我会在一个月的时间内每天学习一门新技术,挑战开始于 2013 年 10 月 29 日。下面转载 2015-12-04 09:39:48 · 1404 阅读 · 0 评论 -
Day 21:Docker 入门教程
几个月以前,红帽(Red Hat)宣布了在 Docker 技术上和 dotCloud 建立合作关系。在那时候,我并没有时间去学习关于 Docker 的知识,所以在今天,趁着这个 30 天的挑战,我决定去学习一下 Docker 究竟是怎样的。这篇博文并不是说以后怎么在 OpenShift 上用 Docker 的。请阅读由 Mike McGrath 撰写的 "关于 OpenShift 和转载 2015-12-05 18:12:04 · 1157 阅读 · 0 评论 -
Day 28: OpenShift的Eclipse集成
今天的《30天学习30种新技术》 我決定介绍OpenShift的Eclipse集成。应用将运行在OpenShift上,我们将使用OpenSHift的Eclipse插件来开发和部署一个应用。预备要求基本Java知识。在你的系统上安装最新版的JDK。你可以安装OpenJDK 7和Oracle JDK 7。OpenShift支持 OpenJDK6 和 7。从官网 下载转载 2015-12-05 18:17:44 · 1722 阅读 · 0 评论 -
Day 23:使用 TimelineJS 构建精美的时间轴
确定今天的主题费了我不少工夫,我开始打算学习brain,后来又去看了看Twitter Server,但是我最后决定学习TimelineJS。本文将介绍如何使用TimelineJS为一系列文章创建一个精美的时间轴。TimelineJS是什么?TimelineJS 是一个开源库,可以帮助你创建精美、可交互的时间轴。它可以使用Google试算表或基于JSON的REST后端作为数据来源。它可以转载 2015-12-05 18:13:35 · 5233 阅读 · 0 评论 -
Day 30: Play Framework —— Java开发者的梦想框架
今天是最后一天,我决定学习一下 Play 框架。原本是想写关于Scala的,学习了几个小时之后发现在一天之内是不可能完成Scala的,所以今天会介绍一下Play框架的基本知识,然后学习如何用它开发应用。什么是 Play 框架?Play是一个开源的现代web框架,用于编写Java和Scala的可扩展Web应用程序。它通过自动重载变化来提高生产力,由于设计的就是一个无状态、无阻塞的架构转载 2015-12-05 18:19:16 · 2236 阅读 · 0 评论 -
Day 26: TogetherJS —— 让我们一起来编程!
今天的《30天学习30种新技术》挑战,我打算学习一个源自Mozilla的很酷的JavaScript库——TogetherJS。几个月前,我写过一个面向Java 8的在线Java编辑器。今天我将学习如何使用TogetherJS来给这个应用增加协作功能。TogetherJS是什么?TogetherJS是一个开源的HTML5 Javascript库,提供了用户间的即时协作功能。它同时通过转载 2015-12-07 09:23:51 · 1582 阅读 · 0 评论 -
Day 10: PhoneGap —— 开发手机应用如此简单
今天又是“30天学习30种新技术”的一天。长期以来,我觉得手机开发很恐怖,大部分应用都没有商业模式。事实上,编写手机应用从来都不能让我兴奋。然而,考虑到手机领域的飞速发展,以及更多的人通过手机而不是桌面访问互联网,我决定尝试下手机开发。我的手机开发之旅将从PhoneGap 起步。本文首先介绍 PhoneGap 的基本情况,接着我们使用 PhoneGap 开发一个手机应用。手机应用转载 2015-12-04 10:57:38 · 1251 阅读 · 0 评论 -
Day 9: TextBlob——对文本进行情感分析
又是“30天学习30种新技术”的一天,我打算暂时把JavaScript放一放,然后学下用Python进行文本处理。本文的重点是情感分析。我在几年前就对情感分析产生了兴趣,当时我想写一个分析与电影有关的推的应用。这个应用将帮助我决定是否看某部电影。我 google 了一番,最后发现 [Naive Bayes classifier]( Naive Bayes classifier) 可以解决这个问转载 2015-12-04 10:57:07 · 5005 阅读 · 0 评论 -
Day 18: BoilerPipe —— Java开发者的文章提取工具
今天我决定学习如何使用Java做网页链接的文本和图像提取。在大多数内容发现网站上(如Prismatic)这是一个非常常见的需求,今天就是学习如何使用一个名为boilerpipe的Java库来完成这个任务。准备基本的Java知识是必需的,安装最新的Java开发工具包(JDK ),可以是OpenJDK 7或Oracle JDK 7。注册一个OpenShift帐户,它是完全免转载 2015-12-04 11:03:57 · 2805 阅读 · 0 评论 -
Day 2: AngularJS —— 对AngularJS的初步认识
昨晚我完爆了一天一技术的任务(完成的很好),谈的是关于Bower的一些知识,你可以在这里看一下文章,也可以去reddit 看看大家的讨论。今天我打算学习一下AngularJS的基本知识,并希望能用它做一个简单小应用。我也会在这篇文章里用到Bower,我不可能在一天之内学习完AngularJS,所以我打算用好几天时间来学习,每天涉及其中不同的点。什么是AngularJS?转载 2015-12-04 09:42:44 · 977 阅读 · 0 评论 -
Day 4:PredictionIO——如何创建一个博客推荐器
今天是“30天学习30种新技术”的第4天。到目前为止我很享受,而且周围开发者反响也很不错。我现在更有动力在30天内完成它了。在这篇文章中,我将介绍如何在Java下使用PredictionIO来简单地构建一个博客推荐引擎。我没找到太多在Java下使用PredictionIO的文档。所以,本文对那些寻找在Java下使用PredictionIO的完整教程的人可能会有用。“30天学习30种新技术”系列文章转载 2015-12-04 10:51:25 · 2021 阅读 · 0 评论 -
Day 16: Goose Extractor —— 好用的文章提取工具
今天的“30天学习30种新技术”的主题是如何使用Python进行文章提取。这几个月来,我对文章提取很感兴趣,因为我想写一个Prismatic克隆。Prismatic创建基于用户兴趣的新闻源。提取文章的主要内容、图片和其他元信息对大多数类似Prismatic的内容发现站点很有用。本文中,我们将学习如何使用Python的goose-extractor包来完成这个任务。我们首先介绍一些基础知识,然后使用转载 2015-12-04 11:01:54 · 2142 阅读 · 0 评论 -
Day 12: OpenCV —— Java开发者的人脸检测
今天我准备学习如何用Java来进行人脸检测。人脸检测有助于在任何数字图像上识别人脸,在做了一些研究后,我发现OpenCV的库可以帮我检测图像中的人脸。不过,我没能找到一个完整的通过Java使用OpenCV库的初学者教程,所以这篇文章可能会是他人在这方面学习的资料。什么是OpenCV?OpenCV(Open Source Computer Vision) 是一个开源的计算机视觉算法库。是转载 2015-12-04 10:59:10 · 3191 阅读 · 1 评论 -
Day 17: 使用 JBoss Forge 和 OpenShift 构建部署 JAVA EE 6 应用
今天的“30天学习30种新技术”挑战,我决定学习一下JBoss Forge。JBoss Forge是一个创建基于Maven的Java应用的开发工具,它可以帮助Java开发者快速地开发web应用。本文中,我们将使用JBoss Forge开发一个简单的待办应用,可以为基于Angularjs的前端提供服务。这一切都可以使用JBoss Forge完成。让我们开始吧。预备注册一个Op转载 2015-12-04 11:03:24 · 1401 阅读 · 0 评论 -
Day 5: GruntJS——重复乏味的工作总会有人做(反正我不做)
GruntJS 是基于JavaScript的命令行构建工具,它可以帮助开发者们自动化重复性的工作。你可以把它看成是JavaScript下的Make或者Ant。它可以完成诸如精简、编译、单元测试、lint检查等工作。由于越来越多的开发移到了客户端,帮助开发者更高效地工作的工具就更有用了。本文中,我将展示我如何使用GruntJS来精简javascript文件。我们也将使用GruntJS的markdow转载 2015-12-04 10:53:49 · 975 阅读 · 0 评论 -
Day 6:在 Java 虚拟机上使用 Grails 进行快速 Web 开发
在“30天学习30种新技术”的第六天,我决定去学习一个 web 开发框架 :Grails。Grails 是一个基于 Groovy 和 Java 的开源 Web 框架。它是 Java 虚拟机(JVM)上顺应 Rails、Django 等流行 Web 框架而生的,伴随着标准的 Jetty/Tomcat 服务器,Grails 能帮助开发者进行快速的应用开发。在这篇文章中,我们会描述如何用 Gra转载 2015-12-04 10:54:56 · 1268 阅读 · 0 评论 -
Day 7: GruntJS 在线重载 提升生产率至新境界
在我的“30天学习30种技术”挑战的第5天,我提到了如何使用GruntJS来执行重复性任务。今天,我们将把上次提到的例子扩展一下,加入HTML模板和在线重载服务。本文将首先介绍grunt-markdown插件如何配合HTML模板使用,接着我将介绍如何使用grunt-watch插件将工作效率提升至新层次。如果你不熟悉GruntJS,请先阅读我关于GruntJS的文章。Github仓库今天转载 2015-12-04 10:55:31 · 1044 阅读 · 0 评论 -
Day 13: Dropwizard —— 非常棒的Java REST服务器栈
我已经是一个使用了8年Java的软件开发人员了,我写过的大多数应用程序是用的Spring框架或Java EE。最近,我花了一些时间学习用Python进行web开发,其中印象非常深刻的是Flask 框架——一个微型架构,这使得它很容易写REST后端。所以今天我决定找一个Java的Python Flask框架替代品,做一些研究后,我发现 Dropwizard 框架可以帮助达到Flask框架转载 2015-12-04 10:59:39 · 2995 阅读 · 0 评论 -
Day 19: EmberJS 入门指南
到目前为止,我们这一系列文章涉及了Bower、AngularJS、GruntJS、PhoneGap和MeteorJS 这些JavaScript技术。今天我打算学习一个名为Ember的框架。本文将介绍如何用Ember创建一个单页面的社交化书签应用。本教程将包括两篇:第1篇介绍客户端代码和用HTML 5本地存储持久保存数据,第2篇中我们将使用一个部署在OpenShift上的REST后端。过几天转载 2015-12-04 11:04:28 · 1652 阅读 · 0 评论 -
Day 8: Harp.JS——现代静态web服务器
到目前为止,我们的“30天学习30种技术”系列已经讨论了Bower、AngularJS和GruntJS。这些最新的技术可以帮助开发者更高效地开发,也可以减轻开发者的负担。今天,我们将学习另一项新JavaScrit技术,它叫做Harp。在本文中,我们将开始了解Harp的基础,接着我们将创建一个简单的Harp应用,最后将此应用部署到OpenShift。Harp是什么?Harp是为现代web转载 2015-12-04 10:56:36 · 1707 阅读 · 1 评论 -
Day14:使用斯坦福 NER 软件包实现你自己的命名实体识别器
我并不是一个机器学习(Machine Learning)、自然语言处理(Natural Text Processing,NLP)等的狂热者,但我总会想到一些需要用到它们的主意。我们今天在这篇博文中要实现的目标是:利用 Twitter 数据建立一个实时的职位搜索。每个单独的搜索结果要包括提供职位的公司名称、工作的地点、去公司应聘时联系的人。这需要我们从 个人(Person)、地点(Location)转载 2015-12-04 11:00:28 · 2474 阅读 · 0 评论 -
Day 15:Meteor —— 从零开始创建一个 Web 应用
到目前为止我们讨论了Bower、AngularJS、GruntJS和PhoneGap等JavaScript技术。今天是“30天学习30种新技术”挑战的第15天,我决定重返JavaScript,学习Meteor框架。虽然Meteor的文档相当好,但是它缺少为初学者准备的教程。我觉得教程的学习效果更好,因为教程可以帮助你快速上手一种技术。本文将介绍如何利用 Meteor 框架构建一个epoll应用转载 2015-12-04 11:01:12 · 1607 阅读 · 0 评论 -
Day 27: Restify —— 在Node.js中构建正确的REST Web服务
今天决定学一个叫做restify的Node.js模块。restify模块使得在Node.js中写正确的REST API变得容易了很多,而且它还提供了即装即用的支持,如版本控制、错误处理、CORS和内容协商。它大量地借鉴了Express(故意地),因为这或多或少是事实上的API来写在node.js上写web应用程序,将数据存储在MongoDB中。Restify准备Restify需要NodeJ转载 2015-12-05 18:16:55 · 1828 阅读 · 0 评论