Friday, November 12, 2010

Jlime for Nanonote

Jlime in Nanonote

(source: www.jlime.com) The current image brings a X Environment, Matchbox window and desktop manager, and several useful applications (video player, music player, image viewer, text editor, terminal, pdf viewer, dictionary, games….)

Desktop DOCUMENTATION

root password : root

Shortcuts to control the Desktop
ALT+F1 : Hide all windows and focus desktop ALT+F2 : Move backwards between windows immediately ALT+F3 : Move between windows immediately ALT+F4 : Close a window

KEEP THIS LIST OF SHORTCUTS ON HAND! :) or you will have to reboot your system when some application runs fullscreen and you don't know what to press.

Number keys: fn key + number.

Vol keys react as Page up/down on X. But for video player and music player these work as Volume.


NETWORKING

Your muffinman system have already configured its usb0 network interface (IP 192.168.1.202).

Example to set your usb0 on your Linux PC:

ifconfig usb0 192.168.1.200 // set pc usb0 ip, to give your host an IP address which is in the same subnet as your NanoNote.

To review that, you can use ifconfig as well

$ ifconfig usb0

and should get the following:

usb0      Link encap:Ethernet  HWaddr 71:BF:F1:B2:8A:E8
inet addr:192.168.1.200 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5998 errors:0 dropped:0 overruns:0 frame:0
TX packets:7357 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:357275 (348.9 Kb) TX bytes:9340199 (8.9 Mb)


Modify /etc/network/interfaces as below:

$ sudo gedit /etc/network/interfaces

auto lo

iface lo inet loopback

auto usb0

iface usb0 inet static

address 192.168.1.200

netmask 255.255.255.0

network 192.168.254.0

up iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.254.0/24 &

up echo 1 > /proc/sys/net/ipv4/ip_forward &

up iptables -P FORWARD ACCEPT &

down iptables -D POSTROUTING -t nat -j MASQUERADE -s 192.168.254.0/24 &


$ sudo /etc/init.d/networking restart


Do the following to enable internet on the Nanonote

You will most likely need to replace the /etc/resolv.conf nameservers on your nanonote with the proper ones (just use the ones inside your pc's /etc/resolv.conf).


In Nanonote, do following:


Jlime$ cat /etc/resolv.conf
nameserver 10.48.49.25

nameserver 10.32.52.21


Jlime$ route add default gw 192.168.1.200


Now, your Jlime system has internet connection.

After this configuration, next time you boot your Nanonote, you can ssh to Nanonote directly.


PACKAGE MANAGEMENT

NEW!. Now there is a new tool to install packages. It is a script to avoid the swap problems with opkg. The name is jlime-pkg

opkg is already configured to use Jlime repositories.

After you have gotten your internet connection going, its time to grab an list of available packages.

opkg update <-- syncs package database

Examples of actions:

jlime-pkg search  <-- will search some package. Example: jlime-pkg search game jlime-pkg install bash  <--will download and install bash opkg remove bash <--will remove bash from your nanonote

So use jlime-pkg to search and install packages. Use opkg to update and remove packages.

SET DATE and TIME

Use date and hwclock commands.

For example (we are setting 31th of August 2010, at 20:00pm):

date -s 20100831
date -s 20:00 hwclock -w
SHUTDOWN - REBOOT

Use the power ON/OFF button to shutdown the device, always..

APPLICATIONS USAGE

If you want to see/play your files easily:

  • Copy the video files under ~/videos/

  • Copy the music files under ~/music/

  • Copy the image files under ~/image/

  • For text files and other kind of formats use ~/documents/


To transfer file:

Password is 'root'. 

Jlime$ ls

documents images music videos

To transfer PC_FILE to documents folder:

$ scp PC_FILE root@192.168.254.101:~/documents 
To copy NANONOTE_FILE FROM documents folder to you computer:
$ scp root@192.168.254.101:~/documents/NANONOTE_FILE ./
VIDEO PLAYER

Video player is MPlayer.

Keys:
q : quit
o : OSD ON/OFF
0,9 : Volume ( + + )
arrows : backward/forward
space : pause

HOW TO ENCODE : In order to watch 320×240 videos encode your videos on PC with :

 ffmpeg -i your_video_file -ac 1 -ar 22050 -s 320x240 output.mpg
scp output.mpg root@192.168.1.202:
(And then use the video player.)
MUSIC PLAYER

Music player is GMU. Their usage is pretty easy because there is a help at bottom. Main keys :

Keys:
ALT+ENTER : quit
TAB : move between playlist/file selector/etc
IMAGE VIEWER

Image Viewer shows the image files under ~/images/ folder. You can browse them using arrows. “Q key” quits.

DESKTOP LOOK AND FEEL

Muffinman is fully theme-able, because it uses both, Matchbox Window Manager and Matchbox Desktop.

If you want to replace the WALLPAPER, just replace the /etc/muffinman-extras/wallpaper.png file with your wallpaper.png file.

To modify the theme, icons and folders just read the Matchbox Desktop and Window Manager documentation

It is easy, because Matchbox, like others Linux Desktop/Window Managers, uses freedesktop.org specifications.

How to RECORD and PLAY sound files (using mic/speaker)

You can use the “Audio Recorder” application on Desktop. But, if you need manual settings or work done follow the below instructions.

In order to record, the device's “capture” switch must be set. To do so, run alsamixer (Audio Settings), select your microphone (maybe you need to press TAB) and press space. Something like…

 CAPTUR  L    R

should appear. Set the level of the Mic there with arrow keys :33% is okey for good quality.

Then we record a while using the mic with (CD quality, 8 seconds, wav) :

 arecord -d 8 -f cd -t wav test.wav 

Then listen your file with :

 aplay test.wav

Tuesday, October 26, 2010

Installing LAMP, Mediawiki in Ubuntu

Install LAMP
sudo apt-get install tasksel

sudo tasksel

And select LAMP Server

During the installation you will be asked to insert the mysql root password. Make sure you record your MySQL root superuser name and superuser password that you will create at installation. You will need it later.
(Each of the components (Apache2, MySQL5, and PHP) can also be installed individually, if you wish.)

To full manage your lamp Server database, install phpmyadmin
sudo apt-get install phpmyadmin

Please choose the web server that should be automatically configured to run phpMyAdmin.
Web server to reconfigure automatically: [ ] apache2

To login to phpmyadmin, open browser and type :
http://ip/phpmyadmin or http://localhost/phpmyadmin

Install MediaWiki
Install the package:
sudo apt-get install mediawiki

Optionally install add-ons:
sudo apt-get install imagemagick mediawiki-math php5-gd

Enable MediaWiki by editing the following file and remove the '#' from the third line so that it reads 'Alias /mediawiki /var/lib/mediawiki':
sudo nano /etc/mediawiki/apache.conf

Then restart apache:
sudo /etc/init.d/apache2 restart

Start your MediaWiki
http://localhost/mediawiki
Follow the setup instructions.

Friday, October 22, 2010

Cisco VPN in Ubuntu 10.10

Since I upgraded to ubuntu 10.10, my Cisco VPN stopped working. I needed to find a way to convert .pcf file so that I could work with vpnc.

1. Install vpnc.
sudo apt-get install vpnc

# Get the cisco decrypt program
wget http://www.debuntu.org/files/cisco-decrypt.c

# Get the dependencies needed for it
sudo apt-get install libgcrypt11-dev

# Compile it into a binary
gcc -Wall -o cisco-decrypt cisco-decrypt.c $(libgcrypt-config –libs –cflags)

chmod +x cisco-decrypt

# Move it to a place in our path
sudo cp cisco-decrypt /usr/bin

2. Download the pcf2vpnc perl script.
wget http://svn.unix-ag.uni-kl.de/vpnc/trunk/
or, wget http://svn.unix-ag.uni-kl.de/vpnc/trunk/pcf2vpnc
or, wherever you can find it!


3. Make the script executable.
chmod +x pcf2vpnc
sudo cp pcf2vpnc /usr/bin


4. Convert your .pcf files to work with vpnc.
# Run the converter, which will call the decrypt program
./pcf2vpnc cisco.pcf > cisco.conf

5. Copy your new .conf files to /etc/vpnc.
sudo cp cisco.conf /etc/vpnc/

6. Connect using vpnc.
sudo vpnc-connect cisco

Then I got this error:
vpnc-connect: Error binding to source port. Try '--local-port 0'
Failed to bind to 0.0.0.0:500: Address already in use.

So, I tried:
sudo vpnc-connect cicso --local-port 0

And, it worked.


7. To disconnect your vpn tunnel.
sudo vpnc-disconnect

TestDisk, Data Recovery

Yesterday, my USB pen drive became corrupted. Linux, Windows couldn't recognise the filesystem. Thanks to TestDisk software, I fixed the issues and now it's working again.

TestDisk is OpenSource software and is licensed under the terms of the GNU General Public License (GPL).

TestDisk is powerful free data recovery software! It was primarily designed to help recover lost partitions and/or make non-booting disks bootable again when these symptoms are caused by faulty software, certain types of viruses or human error (such as accidentally deleting a Partition Table). Partition table recovery using TestDisk is really easy.

TestDisk can

  • Fix partition table, recover deleted partition
  • Recover FAT32 boot sector from its backup
  • Rebuild FAT12/FAT16/FAT32 boot sector
  • Fix FAT tables
  • Rebuild NTFS boot sector
  • Recover NTFS boot sector from its backup
  • Fix MFT using MFT mirror
  • Locate ext2/ext3/ext4 Backup SuperBlock
  • Undelete files from FAT, NTFS and ext2 filesystem
  • Copy files from deleted FAT, NTFS and ext2/ext3/ext4 partitions.

TestDisk has features for both novices and experts. For those who know little or nothing about data recovery techniques, TestDisk can be used to collect detailed information about a non-booting drive which can then be sent to a tech for further analysis. Those more familiar with such procedures should find TestDisk a handy tool in performing onsite recovery.

Saturday, October 16, 2010

Host Ubuntu 10.10, Guest Windows XP - sharing folders.

In virtualbox 3.2.10, I first installed guest additions.
Then, I setup sharing folder from Devices menu of virtualbox.
For example I shared \home\mysharingfolder. (the folder exists in \home of my ubuntu system).
In Folder Path navigate to the folder you created in step one and select it.Check “Make Permanent”.


In commandline of windows:
net use x: \\vboxsrv\mysharingfolder

Now, I can access the 'mysharingfolder' in windows.
Open My computer,you will see the shared folder:


Windows Host and Ubuntu guest:
1.Create a folder in windows,assuming it is:

c:/mysharingfolder

2.Same to the step 2 above.
3.In ubuntu guest,open terminal(Applications->Accessories->Terminal).Using following command mount the folder:

sudo mkdir /media/mysharingfolder sudo mount -t vboxsf vbshare /media/mysharingfolder

Tuesday, October 12, 2010

HCI4D: Infrastructure

As one of the important thrusts of ICT4D is developing infrastructure to provide power, connectivity, and devices appropriate for the prevailing conditions in a sustainable manner, the focus on infrastructure is absolutely relevant.
To highlight its importance, I would like to briefly mention the 'low-cost computer for poor' as an example. Following the success/failure stories of OLPC, simputer and many other technologies including existing attempts to develop cheaper computers for poor, it clearly highlights
affordability of computing as a still remained primary barrier. As we know that the idea of leapfrogging technology (off-the-shelf solutions) that could be replicated - doesn't work and low-cost terminals is definitely a central part of ICT4D. But, even though the quest for the low-cost computer has been one of the most significant pursuits of ICT4D, most projects have fared poorly in markets, despite the apparent enthusiasm for many such initiatives. Demand is therefore to develop low-cost approaches and replicable hardware, and also serve the unique needs of developing regions and populations.
The need to support open standards to encourage interoperability of emerging technical solutions is highlighted as one of the grand challenges. My personal interest is to introduce and explore the use of an open platform (open-source software and open-source copyleft hardware) in the context of ICT4D.
The restricted license of a proprietary devices do not allow using hardware designs freely. But, the copyleft approach ensures the design is always open for a complete customization, enhancement or extension, allowing the community to influence its future hardware revisions and there is no end of life for devices as in a proprietary system. If coplyleft approach used, even if the device fails, it can at least ensure that the design can continue to live and be improved in future. But, as it has happened with open source software, though, it may take some years and test cases for legal clarity to emerge in open source hardware. Therefore, while benefits of an open-source software are well established, hardware based on an open-source copyleft designs to support specific need in the developing regions are yet to be seen. Also, as Weiss highlighted, open source hardware also faces several challenging questions such as how would business benefit from open sourcing hardware and who is really going to make their own device?

Ubuntu Upgrade from 10.04 LTS to 10.10 Maverick Meerkat

Upgrade from 10.04 LTS to 10.10

Network Upgrade for Ubuntu Desktops (Recommended)

You can easily upgrade over the network with the following procedure.

  1. Open the Software Sources application from the System -> Administration menu

  2. Select the sub menu Updates from the Software Sources application
  3. Change the Release Upgrade drop down to "Normal Releases" and close the application
  4. Press Alt-F2 and type update-manager

  5. Click the Check button to check for new updates.

  6. If there are any updates to install, use the Install Updates button to install them, and press Check again after that is complete.

  7. A message will appear informing you of the availability of the new release.
  8. Click Upgrade.

  9. Follow the on-screen instructions.

Wednesday, September 29, 2010

Using git in Ubuntu

1. Open Terminal.

2. Make HelloWorld folder in your Desktop.

3. cd HelloWorld

4. Create hello.c file.
---------------------------------
#include studio.h

main()
{
printf();
}
---------------------------------

5. Initialise git.
git init

6. Check the git status.
git status

7. Add hello.c to your git.
git add hello.c

8. Commit your file to git.
git commit -m "hello.c created"

9. Check the log.
git log

10. Make some changes to your hello.c.

---------------------------------
#include studio.h

main()
{
printf("Learning to use git.");
}
---------------------------------

11. Commit your file.
git commit -m "printf argument added"

12. Check the difference in different revisions.
git diff

13. To check the difference between latest and the last revision.
git diff HEAD^...HEAD


14. Delete current hello.c file from your HelloWorld folder and retrieve the last commited file.

git checkout hello.c

Monday, September 27, 2010

Mediawiki

Follow these instructions to install Mediawiki in Ubuntu system.

To important folders where you will be updating certain files are:

  • \var\lib\mediawiki
  • \etc\mediawiki
Including many other useful scripts, to export and import XML dump, there are scripts (dumpBackup.php, importDump.php) available in the (\var\lib\mediawiki\maintenance) folder.

To export my own mediawiki, I used following command, which creates dump.xml file in temp folder that contains only current pages of the wiki. To backup everything, you can use --full instead. More detail instruction are available here.

php dumpBackup.php --current >/tmp/dump.xml

Saturday, September 25, 2010

Free eBook: Mobile Learning: Transforming the Delivery of Education and Training

Free e-Book "Mobile Learning: Transforming the Delivery of Education and Training" is available here. Amazon is selling it for £30.88. The book is edited by Mohamed Ally. March 2009. Paperback $39.95. 978-1-897425-43-5 (SC)

Thursday, September 23, 2010

Limor Fried leads off at Open Source Hardware Summit

Limor talks about her own development of electronics projects, starting with MP3 players and a cellphone jammer at MIT. Then she reverse engineered a synthesizer. She wanted to share the work so that "others didn't have to go through the same frustrating process to build something that had already been built."

One reason for doing Open Source Hardware is to share the work you've done with others. Then there are haters, who are frustrating to deal with. Being good at Open Source hardware and being good at business are two different things. Turn your fear of getting ripped off into a sense of pride that your design was chosen to be ripped off. Biggest reason for doing open source software is the awesome community. We are giving to the community. We are letting go of our Art so that it can grow up. What we make will outlast us. She does open source hardware to make herself a better engineer.

Source: dalepd | Dale Dougherty


Wednesday, September 22, 2010

ICT4D: Mountain Regions of Nepal

Just wanted to share the recent interesting paper that I read titled, “Demystifying the Possibilities of ICT4D in the Mountain Regions of Nepal” by Devinder Thapa and Øystein Sæbø. (Accepted for presentation in Hawaii International Conference on System Sciences (HICSS)-44, Jan 4-7, 2011, Hawaii.)
This paper focuses on an interpretive case study in Nepal to widen the understanding of how locally-initiated ICT4D projects may help to narrow educational, healthcare, information, and communication gaps between urban and remote communities. The study utilises the Assets Pentagon Model to identify the strengths and challenges of the Nepal Wireless Networking Project (NWNP) in the mountain areas, and to identify implications for research and practice based on insights from the case.

References:


Development 2.0

Heeks suggested three potentially-transformative, ICT-enabled development models.
1) Direct Development: delivers resources and services without the intervention of traditional development actors; where those resources and services can be digitized.
2) Networked Development: occurs neither solely through the state and similar agencies nor through the market, but through a mesh of actors and institutions that are connected and can act together through ICTs.
3) Grassroots Development: occurs from within poor communities, as a result of ICT-enabled empowerment.

These models could only be judged transformative if they are having real and significant new development impacts. Evidence is only just emerging, but five types of impact are starting to be seen:
1) Connecting the excluded: providing information and other livelihood assets including social capital that were previously unavailable.
2) Disintermediation: cutting out the gatekeepers who prevent access to resources and services, or who charge rents for such access.
3) Digital production: enabling those in low-income communities to become producers of digital content, and to develop ICT-based productive livelihoods.
4) Digital innovation: enabling those in low-income communities to appropriate technology to such an extent that they start to do new things with it.
5) Collective power: enabling communities to bring the power of the group to bear in the service of economic or socio-political agendas.

Source:

Monday, September 20, 2010












Screenshot of a Mediawiki website running on a locahost. The wiki site is being developed to provide Mobile Application Development related course content for MSc students.

MW4D Impact Analysis

There are several mobile impact assessment working papers on this site from the University of Manchester

Sunday, September 19, 2010

Rich v. Poor Country ICT Statistics and Charts Online

Very interesting statistics...
Worldwide mobile, Internet and broadband data for 1998-2009 is now available online at: http://ict4dblog.wordpress.com/tag/ict4d-statistics/

Based on ITU data, this provides a compiled and cleaned-up spreadsheet of data; charts comparing technology penetration levels in countries grouped by income; 'digital gap' charts comparing richest vs. poorest countries; and 'digital lag' data showing how many years behind the richest countries are the poorest countries.

Other items available at - http://ict4dblog.wordpress.com/tag/ict4d-statistics/ - include Google motion chart visualisations of mobile and broadband data over time, and data on worldwide ICT4D expenditure and the Indian IT sector.

To subscribe to the blog, visit: http://ict4dblog.wordpress.com/feed/

For source data, visit: http://www.itu.int/ITU-D/ICTEYE/Indicators/Indicators.aspx

Richard Heeks
Director, Centre for Development Informatics
University of Manchester, UK
http://www.manchester.ac.uk/cdi

Wikireader: compiling Wikibooks














Download the latest copy of Wikireader source from github and extract it to your home directory. Download the XML backup dump from the mediawiki website. In this example I've used wikibooks as below:

2010-09-08 22:36:40 done Articles, templates, image descriptions, and primary meta-pages.
2010-09-08 22:36:40: enwikibooks 85591 pages (497.926/sec), 85591 revs (497.926/sec), 98.2% prefetched, ETA 2010-09-08 22:41:50 [max 239932]
  • This contains current versions of article content, and is the archive most mirror sites will probably want.
  • pages-articles.xml.bz2 78.9 MB

The below procedure is based on github and the doc/Quickstart from the downloaded Wikireader package.

Install these packages for building:
  • apt-get install python-gd gawk gforth flex bison m4
  • apt-get install netpbm qt4-qmake libqt4-dev wget
  • apt-get install python-serial sqlite3 php5-cli python-dev
  • sudo apt-get install mecab-ipadic-utf8
  • sudo apt-get install python-mecab mecab-ipadic-utf8
Make sure samo-lib/include/config.h is setup. copy default configuration
  • cp samo-lib/include/config.h-default samo-lib/include/config.h
Edit samo-lib/include/config.h to remove // from the line:
  • //#define BOARD_SAMO_V1 1
so it looks like:
#define BOARD_SAMO_V1 1

Display the possible make targets with this command:
  • make help


Compiling WikiReader program and QT4 simulator
=====================================

  • make clean

There maybe errors because of missing programs, these will be indicated by an apt-get install message to show the Ubuntu 9.10 package(s) to install.

  • make


Compiling a test database (multiple language version - latest kernel.elf)
============================

1) mkdir -p image work

make DESTDIR=image WORKDIR=work WIKI_LANGUAGE=en \
XML_FILES="XML-Licenses/en/license.xml XML-Licenses/en/terms.xml xml-file-samples/enwikibooks-20100908-pages-articles.xml" \
cleandirs createdirs iprc

#Note: iprc => index parse render combine

2) Optionally: simulate using qt4-simulator:
make DESTDIR=image fonts-install nls-install sim4

4) Install fonts and programs
make DESTDIR=image install

5) Format a microSD card as FAT32 and copy the contents on image to it. You can use gparted to format your microSD.
e.g. mkfs.vfat -F 32 -n wikird /dev/sd
mount /dev/sd /mnt
cp -r image/* /mnt/

I tried this few months before and I couldn't even compile at that time. I did manage to compile the source with Wikiversity back then. This time around, while it did compile Wikibooks successfully, once loaded in Wikireader, it didn't function as expected. The search for only certain words worked. When I searched for some random words, it usually froze and I had to restart the device every time.

Therefore, I decided to setup my own Mediawiki website in a localhost and loaded with custom content. I exported C programming material from Wikibooks and imported to my Mediawiki website.

I also used Packedobjects reference material. First, using Html 2 Wiki tool, I converted it to Wiki format and imported to my Mediawiki running on my localhost.

From my Mediawiki, I exported XML dump and compiled with Wikireader source. It is also possible to export content using special:dump page in the Mediawiki that allows a list of articles to be output and usually has an option to include templates, but sometimes templates deeply nested inside other templates are often missed. To export XML dump using script, please follow these instructions.

With the imported content, there were some issues of loosing formatting and not displaying correctly. Mostly, the internal page links didn't display as it was which I had to correct manually. Also, the examples of programming codes (for example Packedobjects Real type) lost it's formatting such as indent and the text appear all wrapped up as in a paragraph.

Wikireader does have a potential to be used as an offline reading device in a different way then intended. Because of the freely available software, it allows to import custom content or even modify the software.

Wikireader currently supports 15 different languages but doesn't support 'Devanagari' yet. My attempt to compile Nepali Wikipedia failed. Wikireader screen may not be good enough to show such detailed letters, but I've requested the team to look into this.
Hopefully, it will be possible soon.

Monday, March 01, 2010

Wikireader: don't take it apart!

Someone tried to take it apart ....
Below is the post from the mail archive from openmoko community.

As you know (or will know) I took apart my Wikireader to view what lives
inside, and try to add some backlight.
This idea, as great as it can be, revealed to be a REALLY bad idea. The
WR's motherboard is link to the screen by two 'ribbons' conenctors (I
don't know the english name) which are REALLY thin and FRAGILE. I
removed them really carefully, though, the touch screen don't respond
anymore. :-(

I tried to resolder point by point this -really- thin ribbon, but
nothing did the trick....

I'm in relation with the support team at Openmoko, who told me this
device is not designed to be hard-tweaked as the freerunner is. So this
kind of mistake is not covered by the warranty !
So, I just can ask you to avoid opening your WR. (the soft tweak is not
dangerous for the device, as all the system remains on the SD card)

For those who wants, I took some pictures, so if you want to see take a
look at http://freerunner.daily.free.fr

Tuesday, January 12, 2010

Installing Windows in Linux


Uninstalling Wine / Windows Applications from Ubuntu.

Note that Wine does not fully implement everything required to cleanly uninstall all applications. Some uninstallers might not function at all. To remove all programs installed under Wine, remove the ~/.wine directory:

Please note that in the following commands there should be no spaces in the path, particularly between $HOME/ and .whatever.

rm -rf $HOME/.wine

Also the uninstaller does not remove menu and desktop entries. To remove all Wine-created menu entries run the following commands

rm -f $HOME/.config/menus/applications-merged/wine*
rm -rf $HOME/.local/share/applications/wine
rm -f $HOME/.local/share/desktop-directories/wine*
rm -f $HOME/.local/share/icons/????_*.xpm


Restart panel:
killall gnome-panel

User Experience of Mobile Internet: Analysis and Recommendations

Mobile access to the Internet with handheld devices has been technically possible for quite a while and consumers are aware of the services but not so ready to use them. A central reason for the low usage is that user experience of the mobile Internet is not yet sufficiently good. This paper analyses the mobile Internet from the end-user perspective, identifying factors and solutions that would make Internet usage on a mobile device an enjoyable experience. User experience can be improved by a better understanding of users and usage contexts, by developing mobile services that better serve the needs of mobile users, easing service discovery and by developing the infrastructure needed for the mobile Internet. This paper discusses all these aspects and gives development recommendations. Multidisciplinary and multicultural cooperation between the various actors in the field is needed to improve user experience.

User Experience of Mobile Internet: Analysis and Recommendations
by Kaasinen, Eija; Roto, Virpi; Roloff, Kristin; Väänänen-Vainio-Mattila, Kaisa; Vainio, Teija; Maehr, Wolfgang; Joshi, Dhaval; Shrestha, Sujan

http://www.infosci-on-demand.com/content/details.asp?ID=34977

State of the Mobile Web, November 2009

Very interesting report about opera mini growth in africa (issues december 2009)
http://www.opera.com/smw/2009/11/

"... The number of Opera Mini users more than doubled — from about 16.4 million in November 2008 to 41.7 million in November 2009. This increase shows that our prediction of accelerated growth of the mobile Web has come true. Rapid growth is evident, not only in developed countries, but also (and especially) in developing parts of the world such as Africa, which is the focus of this month’s geographic spotlight..."

Sunday, January 10, 2010

Setting JAVA_HOME in ubuntu

export JAVA_HOME=/usr/lib/jvm/java-(your-version)


You can find your JAVA_HOME using the locate command for a file belonging to the JDK.

locate /rt.jar

Installing Tomcat in Ubuntu

sudo apt-get install tomcat6 tomcat6-admin tomcat6-common tomcat6-user tomcat6-docs tomcat6-examples
This command downloads and install the following packages: -
tomcat6 : Servlet and JSP engine
tomcat6-admin : Admin web applications
tomcat6-common : Common files
tomcat6-user : Tools to create user instances
tomcat6-docs : Example web applications
tomcat6-examples : Example web applications

To start, stop, restart and get the server status: -
Start tomcat server:
sudo /etc/init.d/tomcat6 start

Stop tomcat server:
sudo /etc/init.d/tomcat6 stop

Restart tomcat server:
sudo /etc/init.d/tomcat6 restart

Get tomcat server status:
sudo /etc/init.d/tomcat6 status

After installation type http://localhost:8080 or http://serverip:8080/examples/servlets/ in your browser.Now you should see tomcat welcome page:

* To enable admin web based features add the following lines to your /etc/tomcat6/tomcat-user.xml



* you should be able to see your manage page here http://your_ip_goes_here:8080/manager/html
* log in with the name and password you just set in /etc/tomcat6/tomcat-users.xml
* ls /var/lib/tomcat6 directory.
* you should see these directories conf, logs, webapps, work
* webapps is where your servlets will go ( or at least a xml file that points to them )
* as a test download this war file http://simple.souther.us/SimpleServlet.war
* then use the tomcat management page and select war file to deploy ( in teh deploy section) to upload this file to your server
* optionally just wget http://simple.souther.us/SimpleServlet.war directly to the webapps folder
* tomcat should recognize the war file and expand it with everything you need
* browse to http://serverip:8080/SimpleServlet/

Change tomcat server to run on port 80
If you want to Change tomcat server to run on port 80 follow this procedure
You need to edit the /etc/tomcat6/server.xml file

nano /etc/tomcat6/server.xml

Now replace the part that says Connector port=”8080? with Connector port=”80?
Save and exit the file

Restart tomcat server with the following command
sudo /etc/init.d/tomcat6 restart

Ubuntu: Can't locate the file you are looking for?

Very easy!

Open the terminal and then issue the command as below:

sudo updatedb
locate filename

Wednesday, January 06, 2010

Offline: Google Gears, Mozilla Prism

Gears is a plug-in that extends your browser to create a richer platform for web applications. For example, webmasters can use Gears on their websites to let users access information offline or provide you with content based on your geographical location.

A number of web applications currently make use of Gears, including: Google Reader, Google Docs, Zoho and Remember the Milk.

But to use Gears, you'll need one of the following:

* Microsoft Windows XP or Vista with Firefox 1.5+ or Internet Explorer 6+
* Apple Mac OS X 10.4+ with Firefox 1.5+
* Apple Mac OS X 10.4.11 (or higher) or 10.5.3 (or higher) with Safari 3.1.1
* Linux with Firefox 1.5+
* Microsoft Windows Mobile 5 or higher, with Internet Explorer 4.01+

Prism: - Split web applications out of the browser and run them directly on the desktop.
Prism, previously called WebRunner, is a simple XULRunner based browser that hosts web applications without the normal web browser user interface. It is based on a concept called Site Specific Browsers (SSB).

XULRunner is a single "gecko runtime" that can be used to bootstrap multiple XUL + XPCOM applications that are as rich as Firefox and Thunderbird.

You can easily install both in Ubuntu by running sudo apt-get install command or by using synaptic package manager.

I installed both in my Ubuntu. There was an incompatibility issue....
"Google Gears" could not be installed because it is not compatible with your Prism build type (Linux_x86-gcc3). Please contact the author of this item about the problem.