Latest Entries

Install git on shared host

Git is a distributed revision control system developed by Linus Torvalds for Linux kernel development. I have heard a lot about git regarding its speed and flexible workflow and decided to install git on my shared host, just to get a feel of it.

The good news is that git is very easy to install, but before you start, you need ssh access to your shared host.

# Make new directory for git
$mkdir git
$cd git

# Download latest version of git from distribution website
$wget http://kernel.org/pub/software/scm/git/git-1.6.0.4.tar.gz

#Uncompress source
$gunzip git-1.6.0.4.tar.gz, tar -xf git-1.6.0.4.tar

#Configure and compile git
$cd git-1.6.0.4
$./configure –prefix=$HOME/git
$make && make install

# Update .bashrc file by adding following line and source it
export PATH=$HOME/git/bin/:$HOME/git/lib/libexec/git-core/:$PATH
$source ~/.bashrc

Test your installation
$git –version

if there is no error then you are good to go.

Thanks marlio3 for all the instructions

Setting up Eclipse for iPhone development using Titanium

Working as a Java developer, I enjoy the flexibility which the platform offers. It allows me to develop on/for different platforms, using IDE, framework and application server that suits my requirements and I am comfortable with.

Apple on the other hand has a more restrictive system with their own development platform, SDKs and recommend development tools. The advantage of having their own platform means they can change the hardware or add new features which will be directly available to the developers. Although all iPhone apps have their own unique functionality and interface, having one single platform offers a uniformity in the interface and thus a better user experience.

Having different platform is working well for apple but for developers this means learning new programming language and getting familiar with new development tools. This is where platforms like appcelerator comes into play. Appcelerator Titanium is a platform that allows development of cross platform mobile and desktop applications using common web technologies like javascript. Although I still need Mac OS X and iPhone SDK but I can write code in javascript which titanium will compile to work on different platforms including iPhone. All I need is Titanium developer which comes with its own mobile and desktop sdk. Titanium developer can be used to create new projects, edit project details if required and run/deploy projects on the device or phone emulator.

One thing missing in Titanium developer is an integrated IDE, I can create a project but then I have to use my own code editor to write code. However, this also means that I am free to select my own development tool for writing code. One issue with this approach is that I have to switch between applications. I have to use my IDE to write code and then use Titanium developer to run the application. After doing some research online I found some quick ways to solve my problem and give a better development experience.

Solution to my problem was using Eclipse external tools feature. External tools allow us to configure and run external programs, scripts etc. We can save these external tool configurations to run them later when required.
So to run applications from Eclipse, all we need is to add a new external tool configuration to run a program with following details:

Location: /usr/bin/python (Location where python is installed)

Working Directory: ${project_loc} (Use variable to define project location as working directory)

Arguments: “/Library/Application Support/Titanium/mobilesdk/osx/1.3.2/iphone/builder.py” simulator “4.0″ ${project_loc} com.mydomain.${project_name} “${project_name}”

I am using Titanium mobilesdk 1.3.2 and iPhone SDK 4.0, the arguments need to be updated if using different SDKs.  I am using reverse domain name as application id, so if my application is myapp and domain name mydomain.com, my application id is com.mydomain.myapp. I am using variable ${project_name} to construct my application id with com.mydomain as a prefix.

Next thing which I was missing was auto code completion and I found a solution here. We need to install Aptana plugin for eclipse. Aptana is a web development tool for use with programming language like javascript, PHP etc.

Details on how to install Aptana eclipse plugin can be found on this link.

Once aptana plugin is install, switch to aptana perspective in eclipse (Goto Window -> Open perspective -> Aptana).

Next thing needs to be done is change default editor for javascript file (.js) using Eclipse preferences (Preferences -> General -> Editors -> File Associations) .

Now you need to download this javascript file and add into your file references (Goto Window -> Show Aptana View -> References, Create new profile and add file reference).  For more details on how to create this javascript header file on James blog.

Now create a new project and use the project previously created using Titanium developer.

See this video from James David Low for more details:

Eclipe auto code completion for iPhone development using Appecelerator Titanium

Website or Domain History

Yesterday I was trying to finish the about section/page for this website and since I dont have much to write about myself :-) , I thought I will write a little bit about this website (domain name) amitkothari.com . This site is up, on and off, for almost 7 years but I dont remember the exact date when I registered this website for the first time…

As I mentioned in my previous post, I registered this domain for free and then didn’t renew it once the registrar started charging for it. But I was lucky enough to get the same domain name again after 2-3 years.

Anyways, I was looking for the exact date on which I registered this domain for the first time and I couldn’t find any records (no old emails). So I thought why not google it and as usual I found the answer on google. I found this website Internet Archive – archive.org. Internet Archive is like a digital time capsule, an online archive of various digital content. It uses web crawls to take a global snapshot of the web.

Luckily I was able to find some old records of my domain. The first available records for amitkothari.com was of 20th Feb, 2001. So now I’m sure that I registered this domain on or before this date.

On Internet Archive we can even see how a website use to look like a few years ago. Like for my domain, some of the data was missing for year 2001 but I can see how my website use to look like in 2006 and 2007. From the records, I can also see that this domain was inactive for almost 4 years and I think I’m really luckily to get it back after so long.

Try archive.org and see how some of your favorite web sites like hotmail, yahoo or google use to look like in past.

Magazine Style WordPress Theme

Since I re-launched my website, I was planning to create my own wordpress theme. While I was trying new templates and plugins to get some ideas for my first theme, I noticed that the magazine style or premium themes are gaining a lot of popularity both among theme developers and wordpress users. The idea behind magazine style themes is to make the site more content focused by improving its structure and navigation.

The main difference between a normal theme and a magazine style theme is the structure and layout. While the websites using conventional WordPress themes look more like a blog with the home page displaying some of the recent posts, magazine style templates can be customized to show recently added posts from different categories to target different audience.

For example, if you are using a normal theme which displays last three posts on the home page and you have three categories food, movies and travel. If your last three posts are in category food, the home page wont display any post related to movies or travel. On the other hand magazine style themes can be customized to display recent post (or excerpt) from more than one category on the home page. This can be easily achieved by using tabbed menu or featured category. Using the same example, in case of a magazine style theme, a user can see recent post related to food, movies and travel on the same page. This, along with features like related posts and posts in same category are used in magazine style themes to attract more visitors and direct them to more posts related to their area of interest which is beneficial for both site visitors and blogger. Along with tabbed menu, use of featured category can also be used to advertise any selected post on the home page.

Along with improved layout, magazine style themes are easy to customize and provide in-built support for many necessary plugins. Some of the advance magazine style themes come with their own option page from where we can customize the look and content of our website with almost no code changes.

The current theme active on my site is my first attempt to develop my own magazine style theme, it still needs a lot of testing, bug fixing and plugin support, which might take another 2-3 weeks. But once this theme is ready, I might release it on my website for free download.

Free Domain Name

There was a time when some websites use to offer free top level domains. One of them was namezero.com, through which I registered this domain for the first time six-seven years ago. Then after 1-2 years namezero started charging for it.

A lot of websites still offer sub domains and second/third level domains for free. Most of these so called free domain name services only offer basic features like URL redirection, URL cloaking etc. However, I recently found www.co.cc that offers free domain names (third level domain), with support for MX, A, CNAME and NS records.

If you already have a web hosting, you can setup the free co.cc domain by simply pointing its NS records to your host and you can also use Google apps or Microsoft Live for customized email and instant messaging.

If you are looking for free hosting with cpanel support and dont mind small ad links at the bottom of the page try – Jamroll.net. For paid hosting I personal prefer hostmonster.com. They offer unlimited shared hosting space, unlimited bandwidth, unlimited addon domains with a free domain name. what else can we ask for ????? custom SRV records would be nice….

sNews – One page wonder

sNews – No its not a news channel or a news website. sNews is a new open source content management system , similar to wordpress in functionality. It is a PHP and MySQL driven CMS just like wordpress but with only one core engine file and thats not the only unique thing about sNews.

It is very easy to install, all you need to do is upload few files, create a new database and a user with permission to access that database, update the configuration file (snews.php) with database and website information and sNews is ready to run.

More about sNews coming soon ….

eyeOS – Online Operating System

After files hosting websites and online desktop application here comes the Online virtual operating system.

eyeOS is an open source operating system, which can run from a web server and can be accessed using a web browser. It allows to access the desktop and various applications from anywhere with just an Internet connection and web browser.

I have just installed my own virtual operating system ;) (www.amitkothari.com/eyeOS). I will play around with it and will write more about my experience and obersvations ..

Visit eyeOs.org to read more ….

Google Tech Talk – Competing on the basis of speed

An old but interesting google tech talk video about gaining a competitive advantage on the basis of speed and simplicity.

Twitter more than microbloging tool

Twitter

On receiving my invitation to join twitter, some of my friends asked me what the hell is twitter and I think the most simple answer to this question is that twitter is a micro blogging web app, something like a blog but with limited sized post, without images and videos. It is a new way to communicate with the world by updating them with what you are up to….

But twitter can be used more than just a way of updating others about what you are doing, it is more than announce on the internet about what you had in dinner or what TV show you are watching.. I’m not that addicted to blogging and initially I found it not very useful for me because I dont share ever second of my private life on the Internet and I dont have exciting things everyday to announce or update on twitter.But there is something about twitter which makes it different from other similar applications.

One of the main reasons why twitter is gaining so much popularity is that it is accessible via web(twitter website and third-party applications) , Instant messaging and sms. You can send or receive updates via IM notifications or SMS on your mobile. So for someone like me who wont have updates everyday and dont want to login everytime to twitter website to check for any new tweets (twitter updates),twitter can send an sms or IM to keep me posted. So when your friends change their mobile number or new version of your favorite application is released, you directly get a notified.

This easy accessibility can be further exploited …more coming soon .

Amazing Youtube Video



Copyright © 2004–2009. All rights reserved.

RSS Feed. This blog is proudly powered by Wordpress.