AndroSDK comes to Town!

With all the hype, fame and glamour Android has been picking up, it felt like the right time to start developing applications for the World's favorite Linux-based Mobile OS!
(You don't know what Android is? Shame on you! Read this now! :P  )

In today's post, we shall learn how to set up an Android App Developer system, using a regular Linux System. The instructions I provide here, will work for Debian and it's derivatives with no changes, and will work for other Linux systems, with minute changes here and there.

Things You Will Need:

1. A Linux System with a good amount of free space (say 3GB, to be safe).
2. A good Internet Connection (cant stress enough on this point.)
3. The latest Java Development Kit
4. An IDE that you can use to develop the Android Applications! (Eclipse SDK)
5. Google's Android SDK tools.


Note
The large space is because of the fact that the Google APIs and Supporting  Packages take up quite a bit of space, after they are downloaded. (Mine are currently at 1.9GB, with support for Android versions 2.2 and up, till 4.0.3)

Here's How To Set It All Up!


Step 1
Get The Software!
Get these software downloaded and ready to begin setting up your Development Environment
1. Eclipse SDK : I go with 3.7.2 (Indigo, classic), but I recommend going with the latest version of the classic type you find in the download page.
2. Android SDK : This is the SDK that Google provides for Android Development. Download the "Linux (i386)" version from the list given in the page. Yes, The SDK is 32bit, but it can run fine on a 64bit system as well. (My system is Debian 64, and it runs!)
3. Java Development Kit : This is a pre-requisite, and is probably already there on your system. However, just to make sure, check for its existence, and if not there, download and install. You could do this with the help of your favorite package manager. I recommend atleast v6.
[In debian, apt-get install sun-java6-jdk as root]

Step 2
Set up Eclipse!
Once you have the software, you need to install it on your system. Many Linux OSes provide the option to set up customized Eclipse versions, through their package managers. however, I have experienced enough problems with that route, and heartily recommend against it. Now, the file you downloaded (eclipse-SDK-3.7.2-linux-gtk-x86_64.tar.gz in my case) is a compressed file. It needs to be extracted. Extract this in your Debian system's /opt directory, or your home directory, with the following command:
tar -xf eclipse-SDK-6.2-linux-gtk-x86_64.tar.gz

You can extract it in your home directory, and use it from there. However, if you plan to move the directory to /opt, you might need to provide rwx permissions to the username that you will use to develop apps in Eclipse. a simple chmod or chown command will work


Step 3
Set Up Android SDK!The android SDK that you have downloaded, can now be extracted using the command:
tar -xf android-sdk_r11-linux_x86.tgzYour AndroidSDK directory must be extracted in the Home or /opt directory
Step 4
Link up Eclipse and AndroidSDK!Now that both software have been successfully set up, we need to link them together.
1. Start Eclipse, by running
/opt/eclipse/eclipse (if installed in /opt)
or
~/eclipse/eclipse (if installed in home directory)

2. Select a workspace for your development work



3. In the Help menu, choose "Install New Software"



4. In the new window, Add a new repository, with name "ADT Plugin" and
URLhttps://dl-ssl.google.com/android/eclipse/  and click "Add"
Once done, Android Development plugins will turn up. (this may take some time)



5. Go ahead and install all the plugins. Once done, you may need to restart Eclipse.

6. You have successfully linked the AndroidSDK with Eclipse. Now, go to Window>Preferences,


and chose "Android" in the left column. 

Click Proceed, and provide the path to the directory where you extracted the Android SDK. (In my case, /opt/androidSDK)


Once done, Go to Window>Android SDK Manager, and select the packages you want to work with.


After choosing all the packages you need, Install them. They get downloaded directly, and configured on the fly. This may take some time, depending on the number of packages you have chosen.


NOTE:
Unattended downloading may not work sometimes, as in some cases, license agreements from manufacturers like Motorola and Samsung pop up, halting the process till you approve the licenses..




There you go! You have now successfully configured, linked and set up a complete Development Environment for Android Application Making!


More to come!


App Review: Blogilo

The other day, I felt that I was wasting too much time on public transport, and decided to use the time productively. Decided to give offline blogging a shot. 
Blogging offline has its advantages, you know. You get to save your posts offline, and that is a boon for people with rotten net connections or those (like me) who haven't got one of those net-connect-usb-thingies that on-the-move kinda guys keep using.
Blogilo 
You will find  many good blog tools online for yourLinux Distro, but the one that caught my eye, was Blogilo. It was formerly called "Bilbo", but I guess they felt the name was too "Hobbitty" (or they got trademark issues :P)
Anyway, its features, from their own website :-
  • A full featured WYSIWYG editor + An HTML editor
  • Previewing your post with your blog style! like when you are visiting it at your blog.
  • Support for Blogger1.0, MetaWeblog, MovableType (WordPress supports All of these!) and Google GData (used on Blogspot.com blogs) APIs!
  • Support for Creating/Modifying/Deleting posts.
  • Support for creating drafts and scheduled posts!
  • Support for uploading media files to your blog (Just on supported APIs e.g. MetaWeblog and MovableType)
  • Support for Fetching your recent blog entries.
  • Support for adding Images to post from your system. It will upload them on Submitting post to blog (Just on supported APIs e.g. MetaWeblog and MovableType)
  • Support for saving local entries before publishing.
  • Saving your writing copy to prevent data loss, at configurable intervals.
  • Internal auto spell checker. (KDE spell checker used so most of languages are supported)

How true is the app to its feature set? Lets see!
Some Screenshots
Blogilo Icon
Configuring Blogilo
The Interface
Saving or publishing
html editor
Preview Pane
My Observations:
  1. Adding a blog to the account is easy for regular blogs. The auto configure option is a godsend, and works out-of-the-box. However, if your blog is hosted privately you might have to get your blog's ID, and set up the account manually.
  2. The interface is pleasing to the eye, and though it is an app for the K Desktop Environment, it runs fine in Gnome 3. 
  3. As soon as you link your blog with blogilo, you find the list of previous blogs on the right pane. you can open those posts on a browser from within blogilo itself.
  4. If you want to save your post as a Draft, but on the blog server, instead of locally, you can do that by clicking on "submit" and ticking on "save entry in Drafts" checkbox. I'd do that if I were you, untill the local-save option is smoothened out.
  5. The local saving option works, but is a bit erratic sometimes, as it creates multiple entries sometimes instead of overwriting the old saves. I also found that it does not save the modifications sometimes. I hope this will be corrected soon. It could just be a issue with gnome 3 though.
  6. The link and image adding options are great, and work well. Its a breeze to resize the images as needed and you can even provide link backs for courtesy!
  7. The text editor really is WYSIWYG, and I couldnt be more happy with the options on hand. The shortcuts work, except for the "tab" button, which puts focus on to the next fields. For languages that go right-to-left, you have an option to set the text that way!
  8. Multiple Blogs can be added, and posting options are also pretty good.
  9. The HTML editor and Preview pane work excellently, as you can see!
  10. The tool does run aground sometimes. Posts with multimedia content may cause issues but rarely so. 
 All in all, the tool is good, but needs to improve a lot! So give it a shot, and let us in on your take. Realise, however, that there are some other blogging tools available that may prove too be better in the long run.

RIP SOPA

Hi everyone!



A big hurrah to you!!!!! We’ve won for now -- SOPA and PIPA were dropped by Congress today -- the votes we’ve been scrambling to mobilize against have been cancelled.




The largest online protest in history has fundamentally changed the game.  You were heard.

On January 18th, 13 million of us took the time to tell Congress to protect free speech rights on the internet. Hundreds of millions, maybe a billion, people all around the world saw what we did on Wednesday.  See the amazing numbers here and tell everyone what you did.

This was unprecedented. Your activism may have changed the way people fight for the public interest and basic rights forever.

The MPAA (the lobby for big movie studios which created these terrible bills) was shocked and seemingly humbled.  “‘This was a whole new different game all of a sudden,’ MPAA Chairman and former Senator Chris Dodd told the New York Times. ‘[PIPA and SOPA were] considered by many to be a slam dunk.’”

“'This is altogether a new effect,' Mr. Dodd said, comparing the online movement to the Arab Spring. He could not remember seeing 'an effort that was moving with this degree of support change this dramatically' in the last four decades, he added."  

Tweet with us, shout on the internet with us, let's celebrate: Round of applause to the 13 million people who stood up  - #PIPA and #SOPA are tabled 4 now. #13millionapplause
We're indebted to everyone who helped in the beginning of this movement -- you, and all the sites that went out on a limb to protest in November -- Boing Boing and Mozilla Foundation (and thank you Tumblr, 4chan)! And the grassroots groups -- Public Knowledge, Electronic Frontier Foundation, Demand Progress, CDT, and many more.
#SOPA and #PIPA will likely return in some form.  But when they do, we'll be ready.  Can you make a donation to Fight for the Future, to help us keep this fire going? 

We changed the game this fall, and we're not gonna stop.  $8, $20, every little bit helps. 
13 million strong,
Tiffiniy, Holmes, Joshua, Phil, CJ, Donny, Douglas, Nicholas, Dean, David S. and Moore... Fight for the Future!


P.S.  China's internet censorship system reminds us why the fight for democratic principles is so important:

In the New Yorker:  "Fittingly, perhaps, the discussion has unfolded on Weibo, the Twitter-like micro-blogging site that has a team of censors on staff to trim posts with sensitive political content. That is the arrangement that opponents of the bill have suggested would be required of American sites if they are compelled to police their users’ content for copyright violations. On Weibo, joking about SOPA’s similarities to Chinese censorship was sensitive enough that some posts on the subject were almost certainly deleted (though it can be hard to know).
...
After Chinese Web users got over the strangeness of hearing Americans debate the merits of screening the Web for objectionable content, they marvelled at the American response. Commentator Liu Qingyan wrote:

‘We should learn something from the way these American Internet companies protested against SOPA and PIPA. A free and democratic society depends on every one of us caring about politics and fighting for our rights. We will not achieve it by avoiding talk about politics.’"

#######
(press release is here: https://fightfortheftr.wordpress.com/press-releases/)

How to create this "Leaf Energy" wallpaper


My fourth video wallpaper tutorial here. It about the striking looking "Leaf Energy" wallpaper shown above.
You get download the video from the link bellow:
http://ubuntuone.com/1UUYfpw34TH18CV1yYk4z5
If you are having issues with watching it online just use the command bellow to download it and watch it:
wget http://ubuntuone.com/1UUYfpw34TH18CV1yYk4z5
As usual everything you need to know is described in the tutorial, so all you have to do is follow it and get those two images (I've tarballed them in the archive bellow), which you'll have to use in later stage in the game.
http://ubuntuone.com/0TcxR5LbUzv57R2jFmRwAB
My 2560x1600 PNG can be downloaded from Picasa:
https://picasaweb.google.com/100530892038948253747/MyFirstAlbum#5695281953712193314
And my XCF from UbuntuOne:
http://ubuntuone.com/4tDCwZ5kg9ntOMvmBfkUg6

How to create this "Agnetha" wallpaper

My third video wallpaper tutorial here. It about the wallpaper above (obviously).
The video is downloadable from the link below:
If you are having issues with watching it online just use:
wget http://ubuntuone.com/3zpgMHF6IK4yGXlIMtjJW0
Everything you need to know is explained in the video, but before you start you will need to get my brushes pack and extract it to ~/.gimp-2.6/brushes:
There should only be files and not folders in that directory!
You will also need to download the image below, which you'll have to use on later stage:
My XCF file can be downloaded from below:
And here is my 1366x768 PNG:


Take your short films to a new height with Firefox Flicks





Firefox Flicks, a campaign giving everyone an opportunity to produce short films that highlight what makes Mozilla Firefox different, that ff is non-profit organization helping keep the power of the Web in people’s hands. They're encouraging users, fans, filmmakers, animators everywhere to submit high-quality videos that will help more mainstream Internet users learn about the issues that affect their online lives and, more importantly, how Firefox addresses these issues.

Submissions for Firefox Flicks will be accepted February–April 2012 and are divided into three regions: US & Canada, Latin America and Europe (you can enter no matter where you live and you’ll be associated with the closest region). Anyone can enter —all you need is creativity and a love of Firefox and our philosophy of openness and improving everyone’s online experience.
The short films can be entered into any of four categories:
  • Best :30 Spot
  • Best Use of New Open Technology (e.g. Popcorn.js, HTML5, etc.)
  • Best Animation
  • Best Public Service Announcement
They’ll be sharing more details over the coming months, including Hollywood judges, events and prizes for our winning submissions. You can visit www.firefoxflicks.org for more details and be sure to follow our blog and Twitter for upcoming announcements. Check out the videos from the previous Firefox Flicks for some inspiration!

Week 8 – Memory management by C routines


Last week we concluded the series of discussions on generic functions and data types in C. All this while we intended to know more and more about the C language, the low level system mechanics and the relation between the two. Today, we begin the start to the next phase : implementation of C routines like malloc(), realloc() and free().
Before we try to know about malloc() and the other functions, its important to know about the portion of memory called the stack and likewise the heap memory. The two portions have resemblance with the respective data structures, but here only their purpose it relevent to us - as of now.


The Stack memory, or better known as the program stack, is the place where the local variables and the parameters of the functions are stored. Say we have a program like this :

int main()
{
int a,b;
foo1(a,b); //Do not bother about the values of a and b
return 0;
}

And implementation of foo1..

void foo1(int a, int b)
{
int x,y;
foo2(x,y);
}

and foo2...
void foo2()
{
int l,m;
.
.
.
}


When foo1() is called in the main(), its not that the variables 'a' and 'b' simply go away. They are simply disabled. These parameters must be saved such that the next called functions doesn't get mess up its local variables because of the caller functions variables. This is ensured by the program stack. The stack pushes in the variables of the last function and pops them only after the function ends – last function variables in, get out first.


In the coming weeks, we get more in detail about the stack as we write assembly codes and try to understand how the compiler works. Lets move on to the heap memory.


The Heap memory is where all the dynamically allocated memory comes from. It is this heap memory which we will be talking mostly about as malloc(),realloc() and free() use this portion of memory.
 


So what really happens when malloc() is called?
Say we have a statement like this :
void *ptr = malloc(40);
After all these weeks programming, we'd say that malloc() gets us 40 bytes memory for us and returns the pointer to us for a reason as simple as this : how else do we access the memory assigned to us?
In reality, there's more. Actually more than 40 bytes of memory is set aside or us. This amount could be any number close to 40 (in our example) but remember - always greater than 40.Just before the this block, it reserves a few bytes, depending on the compiler, to store some information about this block of memory. Usually this happens to be the size of the block.
Note that when we talk of the internals of these functions, there umpteen number ways to do this and manage the memory. What we discuss here are the popular ones.




This header serves in freeing the memory. When free() is called to free the memory, it jumps to the header which is just behind the starting address. Here it reads the value and assumes that so many bytes had been allocated earlier and hence frees only so many bytes. If this value were to be altered, consequences could be serious as C doesnot do any internal checking if the value at the header is a legal value or not. Consider the following code :


int *Arr = (int*)malloc(10*4);
Arr[-1] = 5;
free(Arr);


free() in this case would be able to free only 5 bytes.
Futhermore, consider the following :


int I;
int *ptr = (int*) malloc(100*4);
for( I = 0; I < 100; ++I)
{
ptr[I] = 10;
}


Simple as it is, all the elements of the array is assigned an initial value of 10. Now...


ptr = ptr + 100;
free(ptr);


What do you think happens? Well, free() is given the address of the 25th element of the array. free() checks one block behind (24th element) and finds the value 10. It thinks only 10 bytes were allocated previously when malloc() was called. Hence, it frees just 10 bytes.


Allocation of new nodes: how does the system do this?
Well to understand this, we need to know what a linked list is.
A linked list is a data structure, first of all. In detail what a data structure is cannot been covered here – hit the search engine if you are really curious or mail me. A linked list is basically a collection of nodes that are linked together using pointers. We access linked lists using the address of the first node. Linked list are of many types and for now we just need to know about the singly linked lists – the other types do not concern us at this moment.
A singly linked list is a collection of nodes that are linked only in one direction. If you are wondering what nodes are, nodes are nothing but a block of memory (in terms of C its a structure).





What the system does is, it maintains a linked list of all the free memory blocks in the memory – each of its own size. Whenever a request is made, the malloc() traverses this linked list to find the best fit. As we know it now, malloc() always chooses a block bigger than the required amount. This help realloc(). When realloc() is called, first thing it does it to check the header to see if theres enough space to occupy the new request. If no, then a new block is searched for in the linked list of free memory blocks and on finding one, all the data is copied there. Then the older block is freed. If the current block can occupy the new request, then, only the header is updated.


Well thats it! This should suffice to lead us to system programming. Today it was mostly about the heap memory. Next week on, it will be more about the program stack. We will be working at the assembly language level, trying to understand how the C codes we write are converted to machine code. Time and again all these concepts about the program stack, Heap memory etc. will be re-visited. Stay tuned!

Android 4.X ICS Awesomeness! with its version history.



Hello Everybody ! Have you heard about Milestone? The milestone depends upon numbers or  by it's Awesomeness! Everybody wanted see the SachineTendulkar's 100th century milestone? Look at hear Android does its Milestone before Sachine's milestone!! Just kidding!! 
i. e Android 4.x Ice Cream Sandwich  by its plenty of  awesome features.  Google announced  it's new Android 4.x ver on October 19, 2011, the source code of Android 4.0.1 was released on November 14, 2011. it is a major platform/ver release that adds a variety of new features for users and app developers with its new features and APIs  many more.

Ice Cream Sandwich a new version of the platform that brings a refined, unified user experience for phones, tablets, and more. Android 4.0 builds on the things people love most about Android efficient multitasking, rich notifications, customizable home screens, resizable widgets, and deep interactivity and adds powerful new ways of communicating and sharing.
It includes many great features for users, including social and sharing integration, network data usage control, innovative connectivity and camera options, and an updated set of standard apps.Lets have a look at android version history before going to the ICS.  
skip this/scroll down for ICS if u don't want ver history

Android has seen a number of updates since its original release, each fixing bugs and adding new features. Each version is named in alphabetical order with a dessert name. 

1.x Beta,Cupcake,Donut:The Android beta was released on 5 November 2007, while the software developer's kit (SDK) was released on 12 November 2007.This starter version contains all basic features of normal mobile phone and almost basic Google services like Google sync,calender,basic browser search etc.
2..X Eclair,Froyo: It contains optimized Google services with increase in speed of OS applications and JIT compilation and optimized wifi etc are added. It is the stable version 35% of android devices running this OS.
2.3 Gingerbread: refined the user interface, improved the soft keyboard and copy/paste features, improved gaming performance, addedSIP support (VoIP calls), and added support for Near Field Communication.About 50% of android devices running on this version because of many devices 2.X devices getting 2.3 update  
3.X Honeycomb: It was a tablet-oriented release which supports larger screen devices and introduces many new user interface features, and supports multi-core processors and hardware acceleration for graphics. The first device featuring this version, the Motorola Xoom tablet, went on sale in February 2011. Its updated version includes added support for extra input devices, USB host mode for transferring information directly from cameras and other devices, and the Google Movies and Books apps. optimization for a broader range of screen sizes, new "zoom-to-fill" screen compatibility mode, loading media files directly from SD card, and an extended screen support API.

All above mentioned version disadvantages bugs are removed, all features are very much improved, added many more awesome features added, Over all improvement  in all concept of OS..!!,  hear comes Android 4.x Ice Cream Sandwich!

4.0 Ice Cream Sandwich:It is announced on October 19, 2011, brought Honeycomb features to smartphones with its Gingerbread features and added new features including facial recognition unlock, network data usage monitoring and control, unified social networking contacts, photography enhancements, offline email searching, app folders, and information sharing using NFC and  very refined, unified UI for phones and tablets and introduces innovative features for both users and developers.
Android 4.X  builds on the things people love most about Android efficient multitasking, rich notifications, customizable home screens, resizable widgets, and deep interactivity and adds powerful new ways of communicating and sharing. It includes many great features for users, including social and sharing integration, network data usage control, innovative connectivity and camera options, very much faster browser and an updated set of standard apps. 

For developers, Android 4.0 introduces many new capabilities and APIs. Very importantly it is a single platform and unified API framework that enables you to develop and publish your application with a single APK that provides an optimized user experience for handsets, tablets, and more, when running the same version of Android—Android 4.0 (API level 14) or greater.

Finally the bottom line is this,new feature in ICS can be described by taking developer perspective and user perspective but major thing are the New UX improvements, Under-hood improvements
Go through this diagram which contains all ICS  user perspective changes,new features!!
(For best view please download and view by adjusting the zoom or scroll right left )

By above picture we can compare any older OS view to ICS views to feel the real difference!! and order new ICS!!!!.
All the devices manufacturers now putting efforts on getting updates on their current compatible hardware version, may be after few months few devices getting ICS updates and many new devices ready to release with its new features.  

Some quick notes on features, 
  • Enhanced speed and performance
  • Virtual buttons in the UI, in place of capacitive or physical buttons
  • Separation of widgets in a new tab, listed in a similar manner to apps
  • Easier-to-create folders, with a drag-and-drop style
  • A customizable launcher
  • Improved visual voicemail with the ability to speed up or slow down voicemail messages
  • Pinch-to-zoom functionality in the calendar
  • Offline search, a two-line preview, and new action bar at the bottom of the Gmail app
  • Ability to swipe left or right to switch between Gmail conversations
  • Integrated screenshot capture (accomplished by holding down the Power and Volume-Down buttons)
  • Improved error correction on the keyboard
  • Ability to access apps directly from lock screen (similar to HTC Sense 3.x)
  • Improved copy and paste functionality
  • Better voice integration and continuous, real-time speech to text dictation
  • Face Unlock, a feature that allows users to unlock handsets using facial recognition software
  • New tabbed web browser, allowing up to 16 tabs
  • Automatic syncing of browser with users' Chrome bookmarks
  • Modern Roboto font
  • Data Usage section in settings that lets users set warnings when they approach a certain usage limit, and disable data use when the limit is exceeded
  • Ability to shut down apps that are using data in the background
  • Improved camera app with zero shutter lag, time lapse settings, panorama mode, and the ability to zoom while recording
  • Built-in photo editor
  • New gallery layout, organized by location and person
  • Refreshed 'People' app with social network integration, status updates and hi-res images
  • Android Beam, a near-field communication feature allowing the rapid short-range exchange of web bookmarks, contact info, directions, YouTube videos and other data
  • Hardware acceleration of the UI
  • Resizeable widgets – already part of Android 3.1 for tablets, but new for cellphones
Wi-Fi Direct and Bluetooth HDP new wireless features gives more communication option,
Support for Wi-Fi Direct lets users connect directly to nearby peer devices over Wi-Fi, for more reliable, higher-speed communication. No internet connection or tethering is needed. Through third-party apps, users can connect to compatible devices to take advantage of new features such as instant sharing of files, photos, or other media; streaming video or audio from another device; or connecting to compatible printers or other devices.

Android 4.0 also introduces built-in support for connecting to Bluetooth Health Device Profile (HDP) devices. With support from third-party apps, users can connect to wireless medical devices and sensors in hospitals, fitness centers, homes, and elsewhere. In addition, for connecting to higher quality Bluetooth audio devices, Android 4.0 adds support for Bluetooth Hands Free Profile (HFP) 1.6.

So finally ICS provides plenty of awesomeness with its user experience, in my next post I will try to provide ICS features in developer  perspective.


WikiProject Offline Wikipedia for Indian Schools

ANNOUNCING A NEW WIKIPROJECT
(WikiProject Offline Wikipedia for Indian Schools)




This is to announce the beginning of a new project for WikiProject India - WikiProject Offline Wikipedia for Indian Schools (OWIS). For quite some time now, there has been a need for an offline wikipedia compilation suitable to Indian schools. There are, and have always been, a whole lot of Indian schools and students out there who do not have access to an English encyclopedia. The web has killed off a whole range of printed encyclopedias and factbooks besides paid encyclopedia packages such as Encarta. If the school does not provide wide-spread, regular and dependable access to the web. then the students have zilch. So, keeping in mind that English Wikipedia has been around for more than a decade and has more than enough material for an encyclopedia, we began this project so that all interested people could pitch in and collectively prepare such offline compilations which are the need of the hour.

About the Wikiproject
To do this, we began a new WikiProject in English Wikipedia, daughter to WikiProject India. Titled WikiProject Offline Wikipedia for Indian Schools (OWIS), it is intended to be the umbrella WikiProject for all Indian versions of offline English language wikipedias for students and communities. The WikiProject will concentrate on content issues and leave the production to a team of technically oriented guys from the community (to be decided later).

You can read about the WikiProject page here:

http://en.wikipedia.org/wiki/Wikipedia:WikiProject_Offline_Wikipedia_for_Indian_Schools

Under this WikiProject, it is proposed to provide a variety of compilations suitable for various needs, such as a full offline encyclopedia, single disc collations on topics related to India etc.

The first project

To begin with, we felt it is best to create a single DVD compilation with all subjects covered in sufficient detail. We have named it as Offline Wikipedia for Indian Schools (Full version) or OWIS-FULL (in short).

It is based on and will be similar to the SOS Children’s Village Offline Wikipedia for School which you can checkout for yourself at this link:


The project page for this first project is here:

en.wikipedia.org/wiki/Wikipedia:WikiProject_Offline_Wikipedia_for_Indian_Schools/Offline_Full

The SOS village compilation is CD based with approximately 6500 articles based on the British educational syllabus. Naturally, it contains a large number of topics relevant only to the UK and has a distinct Western flavour in its overall choice too, which is only natural.

To make this compilation suitable for our environment, we will have to not only add a whole host of new articles on Indian topics to the compilation but also remove topics/articles irrelevant to Indian students. In addition, the SOS Children’s Encyclopaedia, being in existence for the last few years, is designed to fit on a CD with the consequence that the number of articles on a subject cover a subject satisfactorily but skimpily. Since we plan our compilation to be on a DVD, there is scope to improve coverage on all subjects as well. Hence it is planned to have in the region of around 9000 articles.

So where are we now? As a first step we have established the framework in the form of the WikiProject and pages where one can work. The list of topics from the SOS compilation has been prepared subjectwise. These lists need to be vetted/improved/extended and then finalised.

As of now, six subjects have been opened up for topic selection - Art, IT, Maths, Physics, Biology and Chemistry. We need motivated editors to join the teams and pitch in. The selection of topics needs to be completed in ten days time so that we can move on to other subjects, other tasks.

So, if this venture interests you, if you want to do something really important with us, if you agree with our proposition that this is critical for delivering the potential of Wikipedia to digitally-challenged communities, sign up here:


All the best to all of us to successfully complete this vital project.

This email is being reflected on Wikimedia India list for information. But If you would like to respond to this, please respond to on the  English Wikipedia for India mailing list -


Everyone is welcome to subscribe to it.

Note: This mail was sent to various mailing list by Ashwin Baindur to make the announcement. we take forward to put this up and spread it.