Tuesday, August 23, 2011

Adhoc networking support on Android Froyo

In my summer holiday, i bought a Samsung Galaxy Tab Wifi only device. It was a really happy night because i had a chance to test my new android based applications. I also needed a PDF reader because i like to read books and articles when i travel from home to work. Finally, it was a nice toy for a 30+ computer geek.

The toy was nice, fast, customizable. Browsing the web is reasonable. I think, i had not got a problem with the device itself. My problem was about the Android software.

My wife has an IPhone 4 and first, i used to connect my Galaxy Tab with IPhone 4 with the functionality of iOS's infrastructure network. But there was a problem with my Nokia E72. I downloaded the JoikuSpot Lite version from OVI Store and it turned my Nokia E72 into an ad hoc access point. My wife's IPhone 4 successfuly  connected to my Nokia E72 but Galaxy Tab didn't see it in WiFi scanner.

There are lots of different solutions based on replacing the wpa_supplication dynamic library, modifying the configuration files etc.. Those files are stored in the system folders, so you have to make your device rooted or you have to connect your device with 'adb' thing which is stored in the Android SDK (under folder platform_tools).

I do not want to struggle with those things. I want my device to connect to my E72 easly.  I heard that, there is no reason my Samsung Galaxy Tab not to support adhoc networking, it is the failure of Android!.

Finally, i am disappointed...

I am not alone with this, too many people want Android to support adhoc.
This is the willings: http://code.google.com/p/android/issues/detail?id=82

Friday, August 19, 2011

RCaller is now in ohloh.net

RCaller is now in ohloh.net as a project entry. The address is https://www.ohloh.net/p/rcaller . It would be a good meeting point of developers and users of RCaller.

Friday, July 22, 2011

Random Number Generation with RCaller 2.0

Java has two standard libraries for generating random numbers. The java.lang.Math class has a random method with is used for generating uniform distributed random numbers. The second one is the java.util.Random class which has got several functions for generating random numbers. We can draw random numbers from several distribution using the probability integral transform. But R has many internal functions for random number generation from several probability distributions including the gamma, the binomial, the normal etc.


RCaller has a wrapper class, under the package statistics, for generating random number for those distributions. The class statistics. RandomNumberGenerator has these functions:


public double[] randomNormal(int n, double mean, double standardDeviation)
public double[] randomLogNormal(int n, double logmean, double logStandardDeviation) 
public double[] randomUniform(int n, double min, double max) 
public double[] randomBeta(int n, double shape1, double shape2)
public double[] randomCauchy(int n, double location, double scale) 
public double[] randomT(int n, int df) 
public double[] randomChisqyare(int n, int df)
public double[] randomF(int n, int df1, int df2)
public double[] randomPoisson(int n, double lambda) 
public double[] randomBinom(int n, int size, double p)
public double[] randomNegativeBinom(int n, int size, double p)
public double[] randomMultinomial(int n, int size, double p)
public double[] randomGeometric(int n, double p) 
public double[] randomWeibull(int n, double shape, double scale) throws 
public double[] randomHyperGeometric(int amount, int n, int m, int k) 
public double[] randomExponential(int n, double theta) throws Exception 
public double[] randomGamma(int n, double shape, double rate, double scale) 


One can see the usage of class in the Test5 class in the source of RCaller 2.0.
http://code.google.com/p/rcaller/source/browse/RCaller/src/test/Test5.java

Sunday, July 17, 2011

IP Subnet Calculator In debian.

I'm talking about console based application that able to ip subnets calculator. You have to use following command to install it;

sudo apt-get install ipcalc


How to use;

ipcalc [ip address] [mask]

You can use both format for mask part. like this:

example 1;


ismail@ismail-laptop:~/Desktop/swap$ ipcalc 172.16.40.85/24
Address: 172.16.40.85 10101100.00010000.00101000. 01010101
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111
=>
Network: 172.16.40.0/24 10101100.00010000.00101000. 00000000
HostMin: 172.16.40.1 10101100.00010000.00101000. 00000001
HostMax: 172.16.40.254 10101100.00010000.00101000. 11111110
Broadcast: 172.16.40.255 10101100.00010000.00101000. 11111111
Hosts/Net: 254 Class B, Private Internet



or



ismail@ismail-laptop:~/Desktop/swap$ ipcalc 172.16.40.85 255.255.255.0
Address: 172.16.40.85 10101100.00010000.00101000. 01010101
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111
=>
Network: 172.16.40.0/24 10101100.00010000.00101000. 00000000
HostMin: 172.16.40.1 10101100.00010000.00101000. 00000001
HostMax: 172.16.40.254 10101100.00010000.00101000. 11111110
Broadcast: 172.16.40.255 10101100.00010000.00101000. 11111111
Hosts/Net: 254 Class B, Private Internet



If you have a C class network address and you want to create 4 subNet, actually your mask is 24.

2 exp. 2 = 4

So 24-2 = 22 is your new subnet..



ismail@ismail-laptop:~/Desktop/swap$ ipcalc 172.16.40.85/22
Address: 172.16.40.85 10101100.00010000.001010 00.01010101
Netmask: 255.255.252.0 = 22 11111111.11111111.111111 00.00000000
Wildcard: 0.0.3.255 00000000.00000000.000000 11.11111111
=>
Network: 172.16.40.0/22 10101100.00010000.001010 00.00000000
HostMin: 172.16.40.1 10101100.00010000.001010 00.00000001
HostMax: 172.16.43.254 10101100.00010000.001010 11.11111110
Broadcast: 172.16.43.255 10101100.00010000.001010 11.11111111
Hosts/Net: 1022 Class B,Class B, Private Internet

About the licence of RCaller

The licence of RCaller 2.0 was changed to LGPL . That means you can use it in commercial projects without distributing the source code.

For our users who like RCaller...