sudosocial.me

"sudoSocial is a new experiment in the Mozilla Labs Concept Series aiming to build a stream publishing platform, suitable for a profile page server. sudoSocial was developed by Austin King."

See the video and also do visit sudosocial.me

SudoSocial - An Introduction from Mozilla Labs

README file

VLC 1.1.0 Release Candidate with WebM / VP8

"The WebM project is dedicated to developing a high-quality, open video format for the web that is freely available to everyone."

VLC 1.1.0 now has support for WebM/VP8, read more about the new advancements in VLC ChangeLog

VLC-RC

Getting VLC or x264 source code via Git
$ git clone git://git.videolan.org/vlc.git

Google Chrome is stable for GNU/Linux now

#google define upgrade

The image shows an error which says, google-chrome-beta is conflicting package, so what is upgrade?

Google Chrome is stable true, but when will GNU/Linux users get Google's chat client? Do we really need it!

Notes:

How to get info about all the nodes in the network via SSH ?

Logic:

1. Checking if the host is alive.
2. Getting info about them, via remote commands.

Steps:

1. Prepare password free SSH access.
2. Make a simple script to get host info.

Surfraw - a fast unix command line interface to WWW services

Surfraw provides a fast unix command line interface to a variety of popular WWW search engines and other artifacts of power.It reclaims google, altavista, dejanews,freshmeat, research index, slashdot and many others from the false‐prophet, pox‐infested heathen lands of html‐forms, placing these wonders where they belong, deep in unix heartland, as god loving extensions to the shell.

           ______  _     _  ______   _______  ______   _______  _  _  _
          / _____)(_)   (_)(_____ \ (_______)(_____ \ (_______)(_)(_)(_)
         ( (____   _     _  _____) ) _____    _____) ) _______  _  _  _
          \____ \ | |   | ||  __  / |  ___)  |  __  / |  ___  || || || |
          _____) )| |___| || |  \ \ | |      | |  \ \ | |   | || || || |
         (______/  \_____/ |_|   |_||_|      |_|   |_||_|   |_| \_____/
         Surfraw - Shell Users' Revolutionary Front Rage Against the Web

How Google wave embedding works ?

The flow of embedding a wave to any webpage

The URI will be like : google_wave_domain#Postion!w[Code]

The embed code will be:

DIV => id="waveframe" style="width: 500px; height: 500px"

JavaScript:

google.load("wave", "1");
google.setOnLoadCallback(initialize);
function initialize() {
var waveframe = document.getElementById("waveframe");
var embedOptions = {
target: waveframe,
header: true,
toolbar: true,
footer: true
};

Embedding Google wave

Sample WAVES embedded

RFC finder a desktop app

The idea was to make a desktop application for GNU/Linux where you could make searching Request for Comments (RFC), easier and full, later one the idea is to make a panel app to do the same.
As a open source and free software under GNU GPLV3, indeed the power is of the open source world is 'you' can contribute and help it to improve.

My experience with p2pu

p2pu Learning for everyone, by everyone, about almost anything.
"The Peer 2 Peer University (P2PU) is an online community of open study groups for short university-level courses. Think of it as online book clubs for open educational resources."

Ubuntu family a happy family

Ubuntu family, I made a collage work out of all the pics of ubuntu code names, inspired by nizarus.

Version Code name Release date
4.10 Warty Warthog 2004-10-20
5.04 Hoary Hedgehog 2005-04-08
5.10 Breezy Badger 2005-10-13
6.06 LTS Dapper Drake 2006-06-01
6.10 Edgy Eft 2006-10-26
7.04 Feisty Fawn 2007-04-19
7.10 Gutsy Gibbon 2007-10-18
8.04 LTS Hardy Heron 2008-04-24
8.10 Intrepid Ibex 2008-10-30
9.04 Jaunty Jackalope 2009-04-23
9.10 Karmic Koala 2009-10-29
10.04LTS Lucid Lynx 2010-10-29
10.10 Maverick Meerka 28-10-2010

inspired by nizarus, made this... "Ubuntu Family :O)" on Twitpic

Fixed enabling desktop effects for ATI in Ubuntu lucid

Those with AMD/ATI graphic cards with fglrx drivers would have faced this issue of eye-candy effects not working, let alone the problem here is the straight dope for it :

QuickShot

Take screen shots in your language using an intuitive and semi-automated step-by-step process
Install it:
$ sudo add-apt-repository ppa:quickshotdevs/quickshot-release
$ sudo apt-get update
$ sudo apt-get install quickshot

GCC 4.5.0 released!

Status report form From: Richard Guenther

Status
=======
The GCC 4.5.0 release has been created and the branch is now open for regression and documentation fixes again.The release will be announced once the upload to ftp.gnu.org finished and the mirrors had a chance to catch up.

An ants journey in a planet called IBM

Most of us would have attended many conferences and seminars, with an agenda a topic too and yes indeed lunch and back home, but it was a year back when i read the mail which said , "Come, join this innovative unconference session anchored by IBM developerWorks. Because You Matter. ", it was called Unconference!

Wondering what an Unconference is i asked Mr.Google who had then returned an IBM link to the same event!
But today there are many links, wikis and many other social networking updates on the same, the same is making it clear what impact does an Unconference can have.

Go on ubuntu

Go is a compiled, garbage-collected, concurrent programming language developed by Google Inc.

Below is a simple script to intsall it:

Generate unique random alphanumeric strings ruby

There are many ways to achieve the same, after meddling with different ways and from the help of few ruby clans, I could decide upon the most reliable and the best way to achieve this as below.

Logic:
Given a length 'len', here its 6 generate a series of unique random strings. Makes use of rand() with max value as 36^@len -1
As [a-z] and [0-9] makes 36 chars and to_s(base=10) along with a simple right justification rjust()

From docs :

rand(max=0) => number

Converts max to an integer using max1 = max.to_i.abs. If the result is zero, returns a pseudorandom floating point number greater than or equal to 0.0 and less than 1.0. Otherwise, returns a pseudorandom integer greater than or equal to zero and less than max1. Kernel::srand may be used to ensure repeatable sequences of random numbers between different runs of the program. Ruby currently uses a modified Mersenne Twister with a period of 2**19937-1.

to_s()

fix.to_s( base=10 ) → aString

Returns a string containing the representation of fix radix base (between 2 and 36).

rjust()

str.rjust(integer, padstr=' ') => new_str

If integer is greater than the length of str, returns a new String of length integer with str right justified and padded with padstr; otherwise, returns str.

<b>
class RandomGenerate
  attr_reader :generated
 
  def initialize(len)
    @len = len
    @generated = []
  end
 
  def get
    begin
      rstr = rand(36 ** @len - 1).to_s(36).rjust(@len, "0")
    end while @generated.member? rstr
 
    @generated << rstr
 
    rstr
  end
end
 
if $0 == __FILE__
  rand_string = UniqueGenerator.new(6)
 
  10.times do
    puts rand_string.get
  end
 
  p rand_string.generated
end

Google's web application security scanner

skipfish - web application security scanner
"Skipfish is an active web application security reconnaissance tool. It prepares an interactive sitemap for the targeted site by carrying out a recursive crawl and dictionary-based probes."

Installing skipfish :

<i> Get libidn </i>
wget -qO - "http://ftp.gnu.org/gnu/libidn/libidn-1.18.tar.gz" | tar zxf - && cd cd libidn-1.18 && ./configure && make && sudo make install
<i>Get skifish</i>
wget <a href="http://skipfish.googlecode.com/files/skipfish-1.05b.tgz" title="http://skipfish.googlecode.com/files/skipfish-1.05b.tgz">http://skipfish.googlecode.com/files/skipfish-1.05b.tgz</a> | tar zxf - && cd skipfish && make 

Script to install Oracle

Simple hack to install oracle on Ubuntu

#!/bin/bash
sudo sh -c 'echo "deb <a href="http://oss.oracle.com/debian" title="http://oss.oracle.com/debian">http://oss.oracle.com/debian</a> unstable main non-free" >> /etc/apt/sources.list'
wget <a href="http://oss.oracle.com/el4/RPM-GPG-KEY-oracle" title="http://oss.oracle.com/el4/RPM-GPG-KEY-oracle">http://oss.oracle.com/el4/RPM-GPG-KEY-oracle</a>  -O- | sudo apt-key add -
sudo apt-get update
sudo apt-get install oracle-xe
sudo /etc/init.d/oracle-xe configure
cat >> $HOME/.bashrc << 'EOF'
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_HOME
export ORACLE_SID=XE
EOF

To test if its working fine
Log in as database admin : sqlplus sys as sysdba

Customizing Bespin

Customizing Bespin with syntax and code highlighting
Read the intro to bespin before you continue
Prereq:
Python 2.5 with simplejson or Python 2.6

Peek into dryice.py :

#!/usr/bin/env python
# Simple script to run dryice conveniently in the Customizable package
import sys
import os
mydir = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(mydir, "lib"))
from dryice import tool
tool.main()

Sample json {manifest} :

Bespin the next generation Web code editor

"Bespin is a Mozilla Labs experiment on how to build an extensible Web code editor using HTML 5 technology."

I have tired an experimental embed of Bespin here
Do read more

NS2 on Ubuntu 9.10

To install The Network Simulator - ns-2 we need to bit of circus.

Install dependencies :
$ sudo apt-get install libpcap-dev gcc-4.3 g++-4.3 tcl  tk  tk8.4-dev tcl8.4-dev xorg-dev sgb

By default gcc version is 4.4, but has ns2 compiles well only will 4.3 we need to downgrade gcc !

Backup the current links and update symbolic links :

$ sudo mv gcc gcc.old
$ sudo mv i486-linux-gnu-gcc i486-linux-gnu-gcc.old 
$ sudo ln -s gcc-4.3 gcc 
$ sudo ln -s gcc-4.3 i486-linux-gnu-gcc 

Download and Install ns2:
 

RSS feed as wallpaper

Pre-Req
convert utility :sudo apt-get install imagemagick
curl utility :sudo apt-get install curl
Any wallpaper : it's called rss.jpg here

The idea is pretty native :
Step 1 : Get the rss feed URL
Step 2 : Scrap for the data
Step 3 : Set the data as wallpaper

Code template

AMD ATI Catalyst™ 10.1 Display Driver for GNU/Linux

Dependencies :

   XOrg 6.8, 6.9, 7.0, 7.1, 7.2, 7.3 or 7.4
   Linux kernel 2.6 or above
   glibc version 2.2 or 2.3
   POSIX Shared Memory (/dev/shm) support is required for 3D applications

P.S : uninstall the ATI Proprietary Linux Driver before installing a newer version, if installed.
$ cd /usr/share/ati ; sh ./fglrx-uninstall.sh ; sudo reboot

CAUTION : ATI has contributed packaging scripts to allow creation of other packages, but does not necessarily test, verify or warrant the reliability.

Ground Control on Karmic

Ground control collaboration of launchpad and bazaar branches for easier development for the everyday user!

How to install ground control on karmic?!

From PPA :
$ sudo add-apt-repository ppa:doctormo/groundcontrol
$ sudo apt-get update && sudo apt-get upgrade
$ sudo apt-get install groundcontrol

From source:
$ bzr branch lp:groundcontrol ; cd groundcontrol ; sudo python setup.py install

Set up a Projects directory
$ mkdir ~/Projects

Navigate to : Places -> Home Folder -> Projects folder

Django on Ubuntu

Django | The Web framework for perfectionists with deadlines

Settings it up:
sudo apt-get install django

Check out the options of the command django-admin

Start s project
hemanth@ubuntu:~/django$ django-admin startproject mysite
hemanth@ubuntu:~/django$ cd mysite
hemanth@ubuntu:~/django$ ls
__init__.py manage.py settings.py urls.py
This is the basis of the application

manage.py => application we use to RUN certain commands.

My Google wave ideas

My 55 ideas for Google Wave :{Some are on it's way} :
Go and vote here : You liked any?

1."Alloww grouping in contacts list like Friends,Co-workers,Bots so on. So when i click on Friends all of them in that group must be added to a single wave, so we need not add each of them."

2."Block/Ban/Kick users, sometimes spammers or sometimes from contact list itself!"

3."Ability to drag and drop media from hard-disk to wave"

Firefox 3.6 with full HTML 5 API support

As the latest firfox came up was were happy to read the below in there site :

"Currently, an entirely new spec is being drafted for file objects and handling within HTML5. It will provide a much more robust interface for accessing content in local files, in addition to extending functionality for file objects within Javascript/DOM. The primary additions include:

* Drag n' drop of local files into a web page.
* Asynchronous file data access via callback methods.
* Sending file objects via XMLHttpRequest.

MySQL DB Synchronization.

DB replication/reflection is on the most import process while achieving a distributed system, which helps in the DB synchronization between remote hosts.

The concept is pretty simple :

1.Setting up the Master.

2.Setting up the Slave.

3.Let the Slave receive events from master and update DB.

Synchronizing SVN with an HTTPS URL

Creating a read-only mirror of a repository from a HTTPS which is in sync helps to maintain an local repo which is in sync with the global and is much faster and reliable for a group working locally.
Achieving this is pretty simple,svnsync - Subversion repository synchronization tool which makes the job easier.

The idea is pretty simple, the steps followed are :

1.Setting up a mirror repository.
2.Initialize (init) the sync.
3.Synchronizing the data.
4.Making a sync job.

Setting up a mirror repository:

#Create a mirror repository

Generic file extracter

Simple but effective and handy utility for people dealing with hell lot of zips.

# Test if the program is installed 
   type -P $1 &>/dev/null || echo $1 not installed! ; exit 1;
# Try to extract 
  Switch for the appropriate case.

Check out the attached file, place it in /usr/bin or any appropriate location with the PATH exported for the same.