Monday, January 30, 2012

Enyo 2.0 - An Open source object-oriented, Cross-Platform JavaScript framework

Enyo is an open source object-oriented JavaScript framework emphasizing encapsulation and modularity. Enyo contains everything you need to create a fast, scalable mobile or web application:


Features:

  • Built from the ground-up for mobile first
     - Enyo powers webOS, and was designed from the beginning to be fast and work great on mobile devices
  • Now available for desktop and cross-browser development
     - Enyo 2.0 now runs across mobile environments and desktop browsers including Chrome, Firefox, and Internet Explorer
  • Highly customizable and extensible
     - Enyo core can be expanded with modules, UI widgets, and more
  • Lightweight and fast
     - Enyo 2.0 core is about 13KB gzipped, and built for fast application rendering and performance
  • Simple, self-contained, and easy to digest
     - Build increasingly complex functionality starting with simple, reusable components
  • Built to scale
     - Enyo was created on the principles needed to build vast, complex mobile and web applications
  • Open Source
     - Enyo is available under the Apache License, Version 2.0.
Try it on you're application.

Sunday, January 29, 2012

JAVA - Generics


With generics, we can create classes, interfaces, and methods that will work in a type-safer manner with various kinds of data.

If you define an algorithm once, independently of any specific type of data, and then apply that algorithm to a wide variety of data types without any additional effort.

Simple example:

class Type<G> {

G obj;

Type(G o) {
  obj = o;
}

G getType() {
  return obj;
}

void displayType() {
 System.out.println("Type of G is " + obj.getClass().getName());
}

}

class Demo {
   public static void main(String args[]) {
  Type<Integer> intType = new Type<Integer>(100);
  System.out.println("Integer type "+intType.getType());
 
  intType.displayType();
 
  Type<String> stringType = new Type<String>("Generics");
  System.out.println("string type "+intType.getType());
 
  stringType.displayType();
   }
}

RSpec 2.8

RSpec 2.8 has been released, along with rspec-rails 2.8.1 for the full Rails 3.x integration experience.

JQUERY MOBILE 1.0.1 RELEASED!

JQUERY MOBILE is a Touch-Optimized Web Framework for Smartphones & Tablets and partial rewrite of jQuery but optimized for HTML5.

RELEASE NOTES and DEMO are available for more information.

If you would like to know it supports you're device or not. see Device support.

IntelliJ IDEA 11.0.2 - Release Candidate


IntelliJ IDEA 11.0.2 RC has been released. Download it from here.

Release notes available here.


Saturday, January 28, 2012

Rails 3.2.0 released


It includes Routing & Faster dev mode, explain queries, tagged logger, store.

There’s a v3.2.0 tag on Github and 3-2-stable branch as well. You can see all the glorious details of everything that was changed in our CHANGELOG compilation.

For documentation,  refer 3.2 release notes with upgrade instructions, both the API docs and the guides have been generated for 3.2 as well, and there’s a brand new 3.2-compatible version of Agile Web Development with Rails.

Monday, January 16, 2012

Scala IDE - Eclipse 2.0.0


Features

Support for Mixed Scala/Java Projects
Code Completion
Definition Hyperlinking
Inferred Type Hovers
Error Markers
Integrated Debugger

Download it from here

Redis - open source, advanced key-value store(data structure)

It's an open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.

It also supports trivial-to-setup master-slave replication, with very fast non-blocking first synchronization, auto-reconnection on net split and so forth.

Other features include a simple check-and-set mechanism, pub/sub and configuration settings to make Redis behave like a cache.

Redis is written in ANSI C it comes with clients in several programming languages including Haskell, Tcl, Go and SmallTalk, as well as C# and Java.

You can download source code and more information from here

Funf - sensing and data processing framework for mobile devices

It's a open source for collecting and analyzing mobile data, developed at the MIT Media Lab.

The core concept is to provide an open source, reusable set of functionalities, enabling the collection, uploading, and configuration of a wide range of data types

It includes following key features

   * Remote configuration.
   * Many built-in data "probes" (see below).
   * Automatic or manual data upload.
   * Delay tolerant implementation - When internet connection is not available, caches data locally until server connection is restored.
   * One-way hashing and encryption for sensitive data: Does not save any textual data or phone numbers in human-readable format.
   * Encryption of locally stored database files.
   * 3rd-party data input API allowing any app to leverage the Funf framework for collecting and storing arbitrary app data.
   * Modular probe architecture allows for adding core data probes and modifying existing probe behavior.
   * Basic survey system for manual data collection.
   * Various optimizations for prolongig battery life and dealing with everyday use-cases (e.g. when SD card is not available because user is copying music files to it)
   * Field proven - Deployed for over 15 months with over 100 users in an MIT living laboratory experiment.


Source code of this framework is available on here

For more information available here.

Saturday, January 14, 2012

ActionController::RoutingError (No route matches [GET] "/assets/scaffold.css"):

In rails 3 applications, if any application doesn't refer static resources(js,images,css) such as

ActionController::RoutingError (No route matches [GET] "/assets/scaffold.css")
ActionController::RoutingError (No route matches [GET] "/assets/defaults.js")
ActionController::RoutingError (No route matches [GET] "/assets/logo.png")

Fix for those issues would be

Stylesheets will be in app/assets/stylesheets
Images will be in app/assets/images
javascripts will be in app/assets/javascripts


Friday, January 13, 2012

The R programming language

It become one of the standard tools for statistical data analysis and graphics. For more information click here

Tuesday, January 10, 2012

Vaadin 7, alpha 1

Vaadin announced alpha release of Vaadin 7.0.0 alpha 1.

Release highlights

* New windowing
* Embedding mechanism
* Data binding API to simplify some common application patterns

For more information checkout here

Saturday, January 7, 2012

NetBeans IDE 7.1 Now Available


Release Highlights

First to Support JavaFX 2.0
UI Debugger for JavaFX and Swing
Enhanced Java Editor
WebLogic 12c and GlassFish 3.1.1
Industry leading Maven support
Git integration
Improved PHP support
New Java EE Features

Thursday, January 5, 2012

Rails 3 - Developing simple app in few minutes


Installing rails 3 - Refer this post for install instructions

1. Create a application call "demo"

$ rails new demo
      create
      create  README
      create  Rakefile
      create  config.ru
      create  .gitignore
      create  Gemfile
      create  app
      create  app/assets/images/rails.png
      create  app/assets/javascripts/application.js
      create  app/assets/stylesheets/application.css
      create  app/controllers/application_controller.rb
      create  app/helpers/application_helper.rb
      create  app/mailers
      create  app/models
      create  app/views/layouts/application.html.erb
      create  app/mailers/.gitkeep
      create  app/models/.gitkeep
      create  config
      create  config/routes.rb
      create  config/application.rb
      create  config/environment.rb
      create  config/environments
      create  config/environments/development.rb
      create  config/environments/production.rb
      create  config/environments/test.rb
      create  config/initializers
      create  config/initializers/backtrace_silencers.rb
      create  config/initializers/inflections.rb
      create  config/initializers/mime_types.rb
      create  config/initializers/secret_token.rb
      create  config/initializers/session_store.rb
      create  config/initializers/wrap_parameters.rb
      create  config/locales
      create  config/locales/en.yml
      create  config/boot.rb
      create  config/database.yml
      create  db
      create  db/seeds.rb
      create  doc
      create  doc/README_FOR_APP
      create  lib
      create  lib/tasks
      create  lib/tasks/.gitkeep
      create  lib/assets
      create  lib/assets/.gitkeep
      create  log
      create  log/.gitkeep
      create  public
      create  public/404.html
      create  public/422.html
      create  public/500.html
      create  public/favicon.ico
      create  public/index.html
      create  public/robots.txt
      create  script
      create  script/rails
      create  test/fixtures
      create  test/fixtures/.gitkeep
      create  test/functional
      create  test/functional/.gitkeep
      create  test/integration
      create  test/integration/.gitkeep
      create  test/unit
      create  test/unit/.gitkeep
      create  test/performance/browsing_test.rb
      create  test/test_helper.rb
      create  tmp/cache
      create  tmp/cache/assets
      create  vendor/assets/stylesheets
      create  vendor/assets/stylesheets/.gitkeep
      create  vendor/plugins
      create  vendor/plugins/.gitkeep
         run  bundle install
Fetching source index for http://rubygems.org/
Using rake (0.9.2.2)
Using multi_json (1.0.4)
Using activesupport (3.1.3)
Using builder (3.0.0)
Using i18n (0.6.0)
Using activemodel (3.1.3)
Using erubis (2.7.0)
Using rack (1.3.6)
Using rack-cache (1.1)
Using rack-mount (0.8.3)
Using rack-test (0.6.1)
Using hike (1.2.1)
Using tilt (1.3.3)
Using sprockets (2.0.3)
Using actionpack (3.1.3)
Using mime-types (1.17.2)
Using polyglot (0.3.3)
Using treetop (1.4.10)
Using mail (2.3.0)
Using actionmailer (3.1.3)
Using arel (2.2.1)
Using tzinfo (0.3.31)
Using activerecord (3.1.3)
Using activeresource (3.1.3)
Using ansi (1.4.1)
Using bundler (1.0.21)
Using coffee-script-source (1.2.0)
Using execjs (1.2.13)
Using coffee-script (2.2.0)
Using rack-ssl (1.3.2)
Using json (1.6.4)
Using rdoc (3.12)
Using thor (0.14.6)
Using railties (3.1.3)
Using coffee-rails (3.1.1)
Using jquery-rails (1.0.19)
Using rails (3.1.3)
Using sass (3.1.12)
Using sass-rails (3.1.5)
Using sqlite3 (1.3.5)
Using turn (0.8.2)
Using uglifier (1.2.1)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.

2. Go to app folder

$ cd demo

3. Generate a controller called Index with method init

$ rails generate controller Index init
      create  app/controllers/index_controller.rb
       route  get "index/init"
      invoke  erb
      create    app/views/index
      create    app/views/index/init.html.erb
      invoke  test_unit
      create    test/functional/index_controller_test.rb
      invoke  helper
      create    app/helpers/index_helper.rb
      invoke    test_unit
      create      test/unit/helpers/index_helper_test.rb
      invoke  assets
      invoke    coffee
      create      app/assets/javascripts/index.js.coffee
      invoke    scss
      create      app/assets/stylesheets/index.css.scss

4. Start WEBrick server

$ rails server
=> Booting WEBrick
=> Rails 3.1.3 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2012-01-04 23:24:05] INFO  WEBrick 1.3.1
[2012-01-04 23:24:05] INFO  ruby 1.9.2 (2011-07-09) [i686-linux]
[2012-01-04 23:24:05] INFO  WEBrick::HTTPServer#start: pid=3220 port=3000

Now app can be accessible by browser. Further you can add/modify controller, view and functionality

This is very simple app.it may take few mins. 


Popular Rails Editors

Some times i prefer normal *nix text editors(Emacs, Vim). Following some popular editors to develop rails applications

Mac OS X

TextMate
Xcode 3.0

Other editors which supports major operating systems


Windows

E-TextEditor


Tuesday, January 3, 2012

Install and Setup Ruby, Rails 3 on Ubuntu 11.04

To install Rails 3, system needs supporting packages(including ruby,rake,libtool,etc).

1. Install those support packages 

sudo apt-get install ri ruby ruby1.8 ruby-dev rake libruby1.8 zlib1g-dev libssl-dev libreadline5-dev libncurses5-dev build-essential curl git-core git-gui gitk libxml2 libxml2-dev libxslt1-dev bison autoconf libtool

2. Installing rails by RVM(Ruby Version Manager)
For more information about installing RVM, Check it here

sudo rvm install 1.9.2

To make version 1.9.2 as default ruby version(if you have multiple version ruby)

sudo rvm use 1.9.2 --default

3. Install rails gem

sudo gem install rails

4. Install sqlite3

To install this you may need "libsqlite3-dev". so get this from Ubuntu package repo 

sudo apt-get install libsqlite3-dev

Now rails 3 is ready for developing application, In general rails come up with in-build WEBrick webserver. So you can create and deploy sample application on WEBrick.