Archive | January, 2011

Getting started with cake php in 10 minutes

31 Jan

so you got 10 minutes.. learn how to use cake php :)

http://blip.tv/play/huAogqCZEwA

Best wordpress themes to display your online portfolio.

30 Jan

Blue Bubble

Blue-bubble-free-portfolio-wordpress-themes

View Demo

Linquist

Linquist-free-portfolio-wordpress-themes

View Demo

Work-a-holic

Work-a-holic is a free minimalistic two and three column WordPress theme that focuses mainly on showcasing portfolios for artists, web designers, photographers and illustrators. Work-a-holic separates your portfolio from your blog, enabling easy navigation for clients in a clean, intuitive fashion. It also has a separate sidebar for portfolio (shows recent projects) and a separate widgetized sidebar for the blog and pages.

Workaholic-free-portfolio-wordpress-themes

Fotofolio WordPress Theme

Fotofolio-free-portfolio-wordpress-themes

View Demo

Portfolio WordPress Theme

“Portfolio WordPress Theme” is a wordpress theme designed for web portfolios and (for now) just for web portfolios. It is coming with an Administrative Panel from where you can edit the head quote text, you can edit all theme colors, font families, font sizes and you can fill a curriculum vitae and display it into a special page.

Portfolio1-free-portfolio-wordpress-themes

View Demo

Irresistable

Use as a standard blog or use the customized homepage layout, as shown in our demo, that you can activate via our options panel

Irresistable-free-portfolio-wordpress-themes

View Demo

Sharpfolio: WordPress Portfolio Theme

Sharpfolio is a WordPress theme designed to enable Web Designers, Graphic Designers, Photographers, Motion Designers, Artists or any creative professional to showcase their work in a simple, clean, beautiful portfolio. Sharpfolio aims to focus primarily on your work, because after all, this is what’s most important.

Sharpfolio-free-portfolio-wordpress-themes

View Demo

Portfolio Press

This is a dark-colored theme suitable for anyone who wants to create a quick portfolio or wants to showcase his work through WordPress. The theme is fully CSS/XHTML validated, WordPress 2.6+ ready and comes with easy to modify code.

Portfolio-press-free-portfolio-wordpress-themes

View Demo

Desk Space

Deskspace-free-portfolio-wordpress-themes

View Demo

Snapshot

Snapshot-free-portfolio-wordpress-themes

View Demo

WP Coda

Wp-coda-free-portfolio-wordpress-themes

View Demo

Infinity

Infinity-free-portfolio-wordpress-themes

View Demo

AutoFocus

AutoFocus is a WordPress theme specifically for photographers looking for a simple and elegant way to display their work online.

Autofocus-free-portfolio-wordpress-themes

View Demo

FotoLog

Fotolog-free-portfolio-wordpress-themes

View Demo

Free Photo Gallery

Photo-gallery-free-portfolio-wordpress-themes

View Demo

Grace Photoblog

Grace-photoblog-free-portfolio-wordpress-themes

View Demo

Vivee WordPress Theme

Vivee-free-portfolio-wordpress-themes

View Demo

Nishita – Free Photo Blog WordPress Theme

Clip-photoblog-free-portfolio-wordpress-themes

View Demo

Fhi-Zin

Fhi-zin-free-portfolio-wordpress-themes

View Demo

ViewPort

Viewport, a free WordPress theme created by Paul Bennett is focused around a clean and simple, content based layout. The aim is to grab the user’s attention and draw them straight into the content.

Viewport-free-portfolio-wordpress-themes

View Demo

How to create your portfolio using wordpress.

30 Jan

Setting up a portfolio is very easy. You just need to be selective. People think that its a technical stuff.. but with wordpress it is much more easier. Just follow these steps and you can create your portfolio in just 5 steps.

An example of portfolio website is http://www.cssjockey.com

Get webspace and book a domain

Having a personal webspace and domain is very important. Its just about branding. Brand yourself, Branding yourself is the best thing to promote yourself.

Install wordpress

WordPress is the one of the best open source publishing platform. Its simple and easy to manage and easy to post and publish. The best thing is that it have a lot of free features available. With lot of free plugins and themes, it is easy to manage wordpress.

Install a Free theme

There are lot of free themes available, these themes can be used to create your personal portfolio, that can be used to display your work easily.

Some of the sample wordpress themes are here

Upload your work.

Upload your work, if you are a photographer, you can upload your photos to flickr and display them in wordpress, this helps you save the space. You can upload your videos to any other website and embed them in wordpress.

Rock on!!

Request for new facebook message system

28 Jan

If you want to have your own messaging system on facebook. You can go and request one here.

http://www.facebook.com/about/messages/

10 Freelancing tips

28 Jan

Freelancing is best way for earning from home. Its about showing off your skills, its not only about earning money ,  but also about driving your passion. Doing thing that you like to do the most. Most of the freelancers are creative and are passionate about what they do, but they dont know how to sell themeselves. These tips are best to sell their work. I will be writing a step by step guide to have a successful freelancing career.

  1. Have a portfolio. – Make an online portfolio to showcase your work. To create a portfolion follow these steps
  2. Network out your way –  Networking is key to success. Use social networking websites effectively.
  3. Work for your passion – Always work for your passion , because if you like what you do, there is no stopping.
  4. Don’t leave your day job – Your day job, provides you financial security.
  5. Earn and Invest – If you earn from freelancing, give it back to the process.
  6. Open different accounts – keep your balance sheet separate , use different bank accounts.
  7. Don’t Over- load – Work less, but work good.
  8. Look for overseas projects – If you are in India, Off-shoring definitely helps
  9. Provide support – Maintain your customers, maintaining your customers is effective than making new customers
  10. Help the community – A freelancer always works for community, so share as much as you can.

Stay tuned for more resources to come.

Model – view – controller architecture

25 Jan

The model- view – controller architecture (MVC as it is generally termed), is the basis of many applications and development frameworks. We can say its a software architecture. The idea is simple. Divide any logic into three different sets or domains.

Model –

The model manages the behavior and data of the application domain, responds to requests for information about its state (usually from the view), and responds to instructions to change state (usually from the controller). In event-driven systems, the model notifies observers (usually views) when the information changes so that they can react.

View –

The view renders the model into a form suitable for interaction, typically a user interface element. Multiple views can exist for a single model for different purposes. A viewport typically has a one to one correspondence with a display surface and knows how to render to it.

controller –

The controller receives input and initiates a response by making calls on model objects. A controller accepts input from the user and instructs the model and viewport to perform actions based on that input.


As a simple analogy (derived from http://nuts-and-bolts-of-cakephp.com/2009/01/06/another-way-to-think-about-mvc/)

So, let’s imagine a bank.

The safe is the Database this is where all the most important goodies are stored, and are nicely protected from the outside world.
Then we have the bankers or in programmatic terms the Models. The bankers are the only ones who have access to the safe (the DB). They are generally fat, old and lazy, which follows quite nicely with one of the rules of MVC: *fat models, skinny controllers*. We’ll see why and how this analogy applies a little later.

Now we’ve got our average bank workers, the gophers, the runners, the Controllers. Controllers or gophers do all the running around, that’s why they have to be fit and skinny. They take the loot or information from the bankers (the Models) and bring it to the bank customers the Views.

The bankers (Models) have been at the job for a while, therefore they make all the important decisions. Which brings us to another rule: *keep as much business logic in the model as possible*. The controllers, our average workers, should not be making such decisions, they ask the banker for details, get the info, and pass it on to the customer (the View). Hence, we continue to follow the rule of *fat models, skinny controllers*. The gophers do not make important decisions, but they cannot be plain dumb (thus a little business logic in the controller is OK). However, as soon as the gopher begins to think too much the banker gets upset and your bank (or you app) goes out of business. So again, always remember to offload as much business logic (or decision making) to the model.

Now, the bankers sure as hell aren’t going to talk to the customers (the View) directly, they are way too important in their cushy chairs for that. Thus another rule is followed: *Models should not talk to Views*. This communication between the banker and the customer (the Model and the View) is always handled by the gopher (the Controller).
(Yes, there are some exception to this rule for super VIP customers, but let’s stick to basics for the time being).

It also happens that a single worker (Controller) has to get information from more than one banker, and that’s perfectly acceptable. However, if the bankers are related (otherwise how else would they land such nice jobs?)… the bankers (Models) will communicate with each other first, and then pass cumulative information to their gopher, who will happily deliver it to the customer (View). So here’s another rule: *Related models provide information to the controller via their association (relation)*.

What is Cocoa??-an Introduction!!

23 Jan

No I am not talking about the regular chocolate that u add in your coffee and ice creams, this is something more interesting and it doesn’t have any side-effects such as obesity but it is surely addictive. What i am talking about is the Cocoa and Cocoa touch framework from the Mac OSx. Cocoa is a framework which is used as a dvelopment layer in all of the Mac OSx development. The development could be for anything including Mac desktops, Laptops, Iphones and IPads too. Thats the sort of power this framework has.

The Power of Objective-C

Much of Cocoa is implemented in Objective-C, an object-oriented language that is compiled to run at incredible speed, yet employes a truly dynamic runtime making it uniquely flexible. Because Objective-C is a superset of C, it is easy to mix C and even C++ into your Cocoa applications.

Cocoa Uses the Model-View-Controller Design Pattern

Cocoa uses the Model-View-Controller (MVC) design pattern throughout. Models encapsulate application data, Views display and edit that data, and Controllers mediate the logic between the two. By separating responsibilities in this manner, you end up with an application that is easier to design, implement, and maintain.

That was a brief intro of what is cocoa and what is it based on. Next time i am going to post about its features and what it could it do that makes it so special.

Unix Shell Scripting

22 Jan

Shell Scripting Introduction:

Unix uses shells to accept commands given by the user, there are quite a few different shells available. The most commonly used
shells are SH(Bourne SHell) CSH(C SHell) and KSH(Korn SHell), most of the other shells you encounter will be variants of these
shells and will share the same syntax, KSH is based on SH and so is BASH(Bourne again shell). TCSH(Extended C SHell) is
based on CSH.
The various shells all have built in functions which allow for the creation of shell scripts, that is, the stringing together of shell
commands and constructs to automate what can be automated in order to make life easier for the user.

One is not required to use a specific shell in order to exploit its features because we can specify the shell we want to interpret our shell script within the script itself by including the following in the first line.
#!/path/to/shell

Note:Usually anything following (#) is interpreted as a comment and ignored but if it occurs on the first line with a (!) following it is treated as being special and the filename following the (!) is considered to point to the location of the shell that should interpret the script.

Basic commands in Unix:

  • ls — lists your files
    ls -l — lists your files in ‘long format’, which contains lots of useful information, e.g. the exact size of the file, who owns the file and who has the right to look at it, and when it was last modified.
    ls -a — lists all files, including the ones whose filenames begin in a dot, which you do not always want to see.
  • more filename — shows the first part of a file, just as much as will fit on one screen. Just hit the space bar to see more or q to quit. You can use /pattern to search for a pattern.
  • mv filename1 filename2 — moves a file (i.e. gives it a different name, or moves it into a different directory
  • cp filename1 filename2 — copies a file
  • rm filename — removes a file
  • diff filename1 filename2 — compares files, and shows where they differ
  • wc filename — tells you how many lines, words, and characters there are in a file
  • chmod options filename — lets you change the read, write, and execute permissions on your files. The default is that only you can look at them and change them, but you may sometimes want to change these permissions. For example, chmod o+r filename will make the file readable for everyone, and chmod o-r filename will make it unreadable for others again

File Compression :

  • gzip filename — compresses files, so that they take up much less space
  • gunzip filename — uncompresses files compressed by gzip
  • gzcat filename — lets you look at a gzipped file without actually having to gunzip it

Directories:

  • mkdir dirname — make a new directory
  • cd dirname — change directory
  • pwd — tells you where you currently are

Finding Things:

  • grep string filename(s) — looks for the string in the filesThis can be useful a lot of purposes, e.g. finding the right file among many, figuring out which is the right version of something, and even doing serious corpus work. grep comes in several varieties (grep, egrep, and fgrep) and has a lot of very flexible options.

Connecting to the outside world:

  • rlogin hostname — lets you connect to a remote host
  • telnet hostname — also lets you connect to a remote host.
  • ftp hostname — lets you download files from a remote host which is set up as an ftp-server. The most important commands within ftp are get for getting files from the remote machine, and put for putting them there (mget and mput let you specify more than one file at once).

You can find out more about these commands by looking up their manpages:
man commandname — shows you the manual page for the command

  • We use > to redirect stdout to a file, for instance, if we wanted to redirect a directory listing generated by the ls we could do the following:
    ls > file
  • We use < to specify that we want the command immediately before the redirection symbol to get its input from the source specified immediately after the symbol, for instance, we could redirect the input to grep(which searches for strings within files) so that it comes from a file like this:
    grep searchterm < file
  • We use >> to append stdout to a file, for instance, if we wanted to append the date to the end of a file we could redirect the output from date like so:
    date >> file

Pipelines are another form of redirection that are used to chain commands so that powerful composite commands can be constructed, the pipe symbol ‘|’ takes the stdout from the command preceding it and redirects it to the command following it.

eg. ls -ltr  | grep searchword | sort

The example above firsts requests a long (-l directory listing of the current directory using the ls command, the output from this is then piped to grep which filters out all the listings containing the searchword and then finally pipes this through to sort.

Variables:

When a script starts all environment variables are turned into shell variables. New variables can be instantiated like this:

name=value

Variables are referenced like this: $name, here is an example:

eg1. #!/bin/sh
msg1=Unix
msg2=Scripts
echo $msg1 $msg2
This would echo “Unix Scripts” to the console display..

Note: If a string has to be assigned to a variable and the string  contains spaces , string must be enclosed within double quotes(“).One can still use $ within a (“) quoted string to include variables.

eg2. #!/bin/sh

msg 1=”I”;

msg2=”$msg1 LOVE”

msg3=”$msg2 UNIX”

echo $msg3

Output: “I LOVE UNIX”

Difference b/w CAP and INAP

22 Jan

Both INAP as well as CAP are signalling protocols which are used in Intelligent Networks but the differrence b/w the two is that INAP is for fixed netwoks whereas CAP is extended version of INAP and is used  for mobile networks.

*Remember the calling cards which were used for  landlines were using INAP

Mobile number portability .. The whats and howtos.

20 Jan

MNP rolled out in INDIA on 2oth January 2011. Lets see how it is done and some other tit bits regarding it.

The Process…

1. Send the following SMS to 1900 – PORT <Your Mobile Number> – eg. PORT 9123456789

2. You will get an SMS with your unique porting code. This is a unique number that will be maintained along with your mobile number with a third party called  MNP Service Provider (Selected companies for this service in India- Syniverse Technologies and Telcordia). The unique code has a expiry time. You need to apply to the new preferred operator with that code within the stipulated time.

3. The new operator will communicate with existing operator and ask for permission. If approved the new operator will set a time for porting and communicate this to MNP provider and existing operator.

4. On the set date and time, the current operator will disconnect the number and pass the message to MNP provider.

5. The new operator will now claim that number and MNP would maintain a central database with the new details.


How it works (the technical side)

The idea behind mobile number portability is based on call routing.Network operator makes copies of CDB[central database of ported numbers] and queries it to find out which network to send a call to.This is also known as All Call Query (ACQ) and is highly efficient and scalable.

Basic glossary and terms used in MNP:
Ported out – If a subscriber moves to new service provider, for the old service provider, he is a “ported out” subscriber.

Ported in – If a subscriber moves to new service provider, for the new service provider, he is a “ported in” subscriber.
Donor – The service provider left by the subscriber is termed as “donor”

Recipient – The service provider joined by the subscriber is termed as “recipient”

CDB – Central Database

ACQ – All Call Query

Concept and Implementation:

In terms of concept, the MNP functionality is used only in MT(mobile terminated)transactions of voice and messaging. For MO(mobile originated) transactions, the current flow scenario remains unchanged Only for the MT functionalities, the mobile number has to be identified and the corresponding service provider has to be interrogated for optimal routing of the service.

Case 1 – With less number of operators , each one setting up its own database

Each provider will have a dedicated setup and comprehensive database of ported out and ported in subscribers. As the number of service providers increases, the bilateral approach becomes a great burden to all service providers involved in terms of time, cost and resources. FNR (Flexible Number Register) will help the service providers have the ported database in addition to the original HLR database.

Case 2 – with more number of operators and a central database.

In direct routing, the concept of CDB comes into picture. This central database or Central clearing house will handle all activities related to porting of subscribers between service providers. This model is suited for markets with several service providers and this model is currently used almost in all MNP implementations. Two options are available with this model with all the service providers updating the ported number database in  synchronization with the CDB and the other is to query the CDB for all call interrogation to get proper routing procedure. After obtaining the rules, rest of the call is handled normally.

This type of model is followed for MNP in INDIA.

The master database will be managed by a third party firm. For zone I, Syniverse has been appointed with the MNP and related issues while for zone II, it is Telcordia.

FAQ’s

1. What is the cost of switching an operator through MNP?
The max. charge can be Rs.19. This has to be paid to the new operator. The operator can choose to charge you lesser.

2. Can i change operator multiple times using MNP?
Yes. Though there is a limitation of how frequently you can change the operator. Once switched you cannot change the operator for the next 90 days.

3. Will my mobile number be disconnected during porting?
Yes. During disconnection from old and connecting to new operator you number will be dead for about 2 hours. Fortunately, this will happen only between 10PM to 5AM.

4. How much time will the whole process take?
According to rules set by TRAI, it shouldn’t take more than 4 days for the complete process from the time of applying to new operator.

5. Can i carry forward my prepaid balance to the new operator after MNP?
No.

6. Can a postpaid user apply for MNP?
Yes. The old operator will approve only after all dues are cleared.

7. Can i switch circle through MNP?
No. The inter-circle portability has not been implemented yet.

8. Can i switch from prepaid to postpaid or vice-versa with MNP?
Yes. You can do that even without MNP.

9. Do i need to have a new SIM from new operator?
Yes. You will need to change your SIM. Apart from number retention everything is same as getting a new connection.

10. Can i Switch from CDMA to GSM thorugh MNP?
Yes.