Day 10: PhoneGap–Mobile Development for the Dummies

Today for my 30 day challenge, I decided to learn about mobile development. For a long time, I thought mobile development was fud, and there will be no business model around most of the applications. In fact, writing mobile applications never excited me. However, given the advancements that have happened in the mobile space, and the fact that more people access the internet on mobile devices than desktops, I decided to give mobile development a try. I will be using PhoneGap as my starting point for my mobile development journey. Read full blog here https://www.openshift.com/blogs/day-10-phonegap-mobile-development-for-the-dummies

Day 9: TextBlob–Finding Sentiments in Text

Today for my 30 day challenge, I decided to take a break from JavaScript and learn about text processing using the Python programming language. I will be focusing on Sentiment Analysis in this blog. My interest in sentiment analysis is few years old when I wanted to write an application which will process a stream of tweets about a movie, and then output the overall sentiment about the movie. Having this information would help me decide if I wanted to watch a particular movie or not. You can read full blog here https://www.openshift.com/blogs/day-9-textblob-finding-sentiments-in-text

Day 8 : Harp — The Modern Static Web Server

So far in the 30 technologies in 30 days blog series, we have looked at Bower, AngularJS, and GruntJS JavaScript technologies. These latest technologies are designed and developed to make developer life easier and more productive. Today, we will learn another new JavaScript technology called Harp. In this blog, we will start with the basics of Harp, and then we will create a simple Harp application, and finally deploy the application to OpenShift. Read the full blog at https://www.openshift.com/blogs/day-8-harp-the-modern-static-web-server

Day 7 : GruntJS LiveReload : Take Productivity To Another Level

On day 5 of my 30 technologies in 30 days challenge I talked about using GruntJS to perform repetitive tasks. Today, we will extend the example covered in that blog with html templates and livereload server. In this blog, we will first cover how we can use an html template with grunt-markdown plugin and then I will cover how we can take productivity to the next level by using grunt-watch plugin. Please read my earlier blog on GruntJS in case you are not familiar with GruntJS. Read the full blog at https://www.openshift.com/blogs/day-7-gruntjs-livereload-take-productivity-to-the-next-level

Day 6 : Grails — Rapid JVM Web Development with Grails And OpenShift

On 6th day of 30 technologies in 30 days challenge, I have decided to learn Grails web framework. Grails is an open source web framework which uses Groovy and Java programming languages. The web applications written using Grails can be deployed in any of the existing web server like Jetty or Tomcat, etc. Grails is a JVM response to the Rails or Django web frameworks. In this blog, I will first talk how we can develop a simple web application using Grails Eclipse plugin, and then we will deploy the application to OpenShift.

Why should we care about Grails?

The two reasons why I considered learning Grails are :

  1. Rapid web development : It can help us achieve productivity benefits similar to Rails or Django but without leaving JVM and Java knowledge.
  2. Powered by proven technologies : Grails underneath uses Spring and Hibernate to power web applications. It can be considered as syntactic sugar over these technologies. Continue reading “Day 6 : Grails — Rapid JVM Web Development with Grails And OpenShift”

Day 5 : GruntJS : Let Someone Else Do My Tedious Repetitive Tasks

Today I decided to learn GruntJS. GruntJS is a JavaScript based command line build tool. It can help us automate repetitive tasks. We can think of it as JavaScript alternative to Make or Ant. It can perform tasks like minification, compilation , unit testing, linting, etc. As more and more development moves towards client side, it makes a lot more sense to use tools which can help us become more productive. In this blog, I will show how we can use GruntJS to minify javascript files. Then using GruntJS markdown plugin we will convert a markdown document to HTML5 document. Let’s get started. The full blog series can be tracked on this page.

Why should we care?

The main reason why we should learn GruntJS is that developers by nature are lazy creatures. They make mistakes when doing repetitive tedious manual tasks. Continue reading “Day 5 : GruntJS : Let Someone Else Do My Tedious Repetitive Tasks”

Day 4 : PredictionIO : How to Build A Blog Recommender

Today is the fourth day of my challenge to learn 30 technologies in 30 days. So far I am enjoying it and getting good response from fellow developers. I am more than motivated to do it for full 30 days. In this blog, I will cover how we can very easily build blog recommendation engine using PredictionIO. I did not find much documentation around using PredictionIO with Java. So, this blog might help people looking for end-to-end PredictionIO Java tutorial. The full blog series can be tracked on this page.

prediction-io

What is PredictionIO?

PredictionIO is an open source machine learning server application written in Scala. It provides an easy to use REST API to build recommendation engines. It also provides client SDKs, which wraps the REST API. The Client SDKs are available in Java, Python, Ruby, and PHP programming languages. PredictionIO core is using Apache Mahout. Apache Mahout is a scalable machine learning library which provides various clustering, classification, filtering algorithms. Apache Mahout can run these algorithms on distributed Hapoop cluster. Continue reading “Day 4 : PredictionIO : How to Build A Blog Recommender”