Writer Sujatha Rangarajan - Memory waves

Writer Sujatha Rangarajan - Memory waves



I started reading books written by Sujatha Rangarajan at the age of 12. He is my favorite Writer. He wrote more than 100 Novels, 250+ Short Stories. He has writtern dialogue for many Films including National Award winning Film by Mani Rathnam (ROJA).

Please visit here to view Videos about : In Memory of Writer Sujatha

Please visit the following :

Top 10 Quotes by Sujatha


For Ganesh, Vasanth's Fans

Sujatha Awards an Intro

About Writer Sujatha

Writer Sujatha Still Alive in our Mind

Mediafire link to download Sujatha Stories in Tamil

Disclaimer : I didn't upload any files in mediafire. I found the link in internet.

True story from IIT Bombay ...Batch 1992-96

Who is clever? Teacher or student?

One Night 4 College Students Were Playing Till Late Night and Didn't Study For The Test Which Was Scheduled For The Next Day.

In the morning they thought of a plan. They made themselves look as dirty and weird with grease and dirt. They then went up to the Dean and said that they had gone out to a wedding last night and on their return the tyre of their car burst and they had to push the car all the way back and that they were in no condition to appear for the
test.

So the Dean said they can have the re-test after 3 days. They thanked him and said they will be ready by that time.

On the third day they appeared before the Dean. The Dean said that as this was a Special Condition Test, All four were required to sit in separate classrooms for the test.

They all agreed as they had prepared well in the last 3 days. The Test consisted of 2 questions with the total of 100 Marks.

Q.1. Your Name........ ......... ......... (2 MARKS)
Q.2. Which tyre burst ?........... ....(98 MARKS)
a) Front Left
b) Front Right
c) Back Left
d) Back Right.....!! !

LifeBook 2010 - Awareness Post

LIFE BOOK 2010

Health:

1. Drink plenty of water.
2. Eat breakfast like a king, lunch like a prince and dinner like a beggar.
3. Eat more foods that grow on trees and plants, and eat less food that is
manufactured in plants (factory).
4. Live with the 3 E's -- Energy, Enthusiasm, and Empathy.
5. Make Time for Prayers.
6. Play more games.
7. Read more books than you did in 2009.
8. Sit in silence for at least 10 minutes each day & meditate/pray.
9. Sleep for 7 hours.
10. Take a 10-30 minutes walk every day -- and while you walk, *SMILE !! *

Personality:

11. Don't compare your life to others'. You have no idea what their journey
is all about.
12. Don't have negative thoughts or things you cannot control. Instead invest
your energy in the positive present moment.
13. Don't overdo; keep your limits.
14. Don't take yourself so seriously; no one else does.
15. Don't waste your precious energy on gossip.
16. Dream more while you are awake.
17. Envy is a waste of time. You already have all you need..
18. Forget issues of the past. Don't remind your partner with his/her mistakes
of the past. That will ruin your present happiness.
19. Life is too short to waste time hating anyone. Don't hate others.
20. Make peace with your past so it won't spoil the present.
21. No one is in charge of your happiness except you.
22. Realize that life is a school and you are here to learn.

Problems are simply
part of the curriculum that appear and fade away like algebra class but the
lessons you learn will last a lifetime.
23. Smile and Laugh more often.
24. You don't have to win every argument. Agree to disagree.

Community:

25.. Call your family often.
26. Each day give something good to others.
27. Forgive everyone for everything.
28. Spend time with people over the age of 70 & under the age of 7.
29. Try to make at least three people smile each day.
30. What other people think of you is none of your business.
31. Your job won't take care of you when you are sick. Your family and friends
will. Stay in touch.

Life:

32. Do the right things.
33. Get rid of anything that isn't useful, beautiful or joyful.
34. God heals everything.
35. However good or bad a situation is, it will change.
36. No matter how you feel; Get up, Dress up and Show up!
37. The best is yet to come.
38. When you awake alive in the morning, thank GOD for it.
39. Your inner most is always happy, So be Happy!

Last but not the least :

40. Do forward this to everyone you care about.

The essentials for your resume writing

The evening after one has received a “deep-throat” call from a search firm
exploring interest in some path-breaking career opportunity with a dream
company, I see the beginning of a harrowing plight and frustration of that
otherwise confident, corporate superman.

The source of his trauma: a new career-changing resume that needs to be
written out, career-years into one’s job!

Over the years, I have seen thousands of resumes. Some good ones but most
badly thought out and poorly constructed essays, pouring out reams and reams
of unsolicited self-congratulations.

Let me give you cues from the other side of the table on how a good top
management career-changing resume needs to be crafted. It is a piece of art.

But firstly remember, do not take out that old resume that was written some
decades ago and try to spruce it up by removing the cobwebs of time from it.


Remember, the key thing is that a resume is not your life-story. It is a
selling document. It is more like a Marcom document selling a product to a
customer than a letter of confession sent to a clergyman. It is supposed to
be marketing a brand — YOU.

And the key to the ‘sell’, as Johnson says, is to make your resume speak
that which the prospective employer is looking out for in an employee and
not what you want to say. Badly constructed CVs, at times, resemble a boring
leaf out of the ‘Yellow Pages’ — lots of names, data, figures etc.

What they miss out on big time is the soul and spirit. A resume is a 2-page
— five -minute litmus test... in the first five minutes, the HR honcho takes
a call — whether to meet you or not. Your resume has to do that initial sell
in that amount of time.

Do not commence writing your resume till you have clearly understood the
nature of the assignment being offered, the experience, profile and the
competencies that the employer is looking out for in the prospective
candidate. Integrity is very critical, so do not ever lie in a resume.

Identify your marketable skills and promptly highlight those elements of
your achievements, experiences and competencies that have an appeal and
interest to the prospective employer. Turnovers, markets, span of control,
challenges, leadership, governance can embellish your resume.

Use the right phrases, an interesting format and smart stationary to make
your resume visually interesting. After all, it will have all the virtues a
good packaging has to the sale of a product.

“One size fits all” does not work in a resume, which is the general error
that most applicants tend to make, preferring a general chronological
narration of life-cycle. Uniquely target the resume to the firm. Rifle shots
meet targets, shot-guns don’t.

While you could detail things out a little later, the first page of your
resume should hit the prospective employer between the eyes with five things
about your marketable skills and the relevance of your experience that they
are actually seeking of their prospective candidate, creating the “aha”
effect.

Go through the company website, read business magazines, trade journals,
speak to people who know that company and do your research. Lacing your
resume with a relevant piece of information of the prospective company is
like rum flavouring your plum cake.

Proof your resume before sending; you don’t want typos to be wrongly
perceived as part of your general ‘non-detailing’ nature.

However, remember, the resume is only one part of the process of assessment
and selection.

Aligning the resume to the rest of the assessment process will determine a
favourable closure to that dream job.

MySQL Interview Questions with Answers

What's MySQL ?
MySQL (pronounced "my ess cue el") is an open source relational database management system (RDBMS) that uses Structured Query Language (SQL), the most popular language for adding, accessing, and processing data in a database. Because it is open source, anyone can download MySQL and tailor it to their needs in accordance with the general public license. MySQL is noted mainly for its speed, reliability, and flexibility. ...

What is DDL, DML and DCL ?
If you look at the large variety of SQL commands, they can be divided into three large subgroups. Data Definition Language deals with database schemas and descriptions of how the data should reside in the database, therefore language statements like CREATE TABLE or ALTER TABLE belong to DDL. DML deals with data manipulation, and therefore includes most common SQL statements such SELECT, INSERT, etc. Data Control Language includes commands such as GRANT, and mostly concerns with rights, permissions and other controls of the database system.

How do you get the number of rows affected by query?
SELECT COUNT (user_id) FROM users would only return the number of user_id’s.

If the value in the column is repeatable, how do you find out the unique values?
Use DISTINCT in the query, such as SELECT DISTINCT user_firstname FROM users; You can also ask for a number of distinct values by saying SELECT COUNT (DISTINCT user_firstname) FROM users;

How do you return the a hundred books starting from 25th?
SELECT book_title FROM books LIMIT 25, 100. The first number in LIMIT is the offset, the second is the number.

You wrote a search engine that should retrieve 10 results at a time, but at the same time you’d like to know how many rows there’re total. How do you display that to the user?
SELECT SQL_CALC_FOUND_ROWS page_title FROM web_pages LIMIT 1,10; SELECT FOUND_ROWS(); The second query (not that COUNT() is never used) will tell you how many results there’re total, so you can display a phrase "Found 13,450,600 results, displaying 1-10". Note that FOUND_ROWS does not pay attention to the LIMITs you specified and always returns the total number of rows affected by query.

How would you write a query to select all teams that won either 2, 4, 6 or 8 games?
SELECT team_name FROM teams WHERE team_won IN (2, 4, 6, 8)

How would you select all the users, whose phone number is null?
SELECT user_name FROM users WHERE ISNULL(user_phonenumber);

What does this query mean: SELECT user_name, user_isp FROM users LEFT JOIN isps USING (user_id) ?
It’s equivalent to saying SELECT user_name, user_isp FROM users LEFT JOIN isps WHERE users.user_id=isps.user_id

How do you find out which auto increment was assigned on the last insert?

SELECT LAST_INSERT_ID() will return the last value assigned by the auto_increment function. Note that you don’t have to specify the table name.

What does –i-am-a-dummy flag to do when starting MySQL?
Makes the MySQL engine refuse UPDATE and DELETE commands where the WHERE clause is not present.

On executing the DELETE statement I keep getting the error about foreign key constraint failing. What do I do?
What it means is that so of the data that you’re trying to delete is still alive in another table. Like if you have a table for universities and a table for students, which contains the ID of the university they go to, running a delete on a university table will fail if the students table still contains people enrolled at that university. Proper way to do it would be to delete the offending data first, and then delete the university in question. Quick way would involve running SET foreign_key_checks=0 before the DELETE command, and setting the parameter back to 1 after the DELETE is done. If your foreign key was formulated with ON DELETE CASCADE, the data in dependent tables will be removed automatically.

When would you use ORDER BY in DELETE statement?
When you’re not deleting by row ID. Such as in DELETE FROM techpreparation_com_questions ORDER BY timestamp LIMIT 1. This will delete the most recently posted question in the table techpreparation_com_questions.

How can you see all indexes defined for a table?
SHOW INDEX FROM techpreparation_questions;

How would you change a column from VARCHAR(10) to VARCHAR(50)?
ALTER TABLE techpreparation_questions CHANGE techpreparation_content techpreparation_CONTENT VARCHAR(50).

How would you delete a column?
ALTER TABLE techpreparation_answers DROP answer_user_id.

What's MySQL ?
MySQL (pronounced "my ess cue el") is an open source relational database management system (RDBMS) that uses Structured Query Language (SQL), the most popular language for adding, accessing, and processing data in a database. Because it is open source, anyone can download MySQL and tailor it to their needs in accordance with the general public license. MySQL is noted mainly for its speed, reliability, and flexibility. ...

What is DDL, DML and DCL ?
If you look at the large variety of SQL commands, they can be divided into three large subgroups. Data Definition Language deals with database schemas and descriptions of how the data should reside in the database, therefore language statements like CREATE TABLE or ALTER TABLE belong to DDL. DML deals with data manipulation, and therefore includes most common SQL statements such SELECT, INSERT, etc. Data Control Language includes commands such as GRANT, and mostly concerns with rights, permissions and other controls of the database system.

How do you get the number of rows affected by query?
SELECT COUNT (user_id) FROM users would only return the number of user_id’s.

If the value in the column is repeatable, how do you find out the unique values?
Use DISTINCT in the query, such as SELECT DISTINCT user_firstname FROM users; You can also ask for a number of distinct values by saying SELECT COUNT (DISTINCT user_firstname) FROM users;

How do you return the a hundred books starting from 25th?
SELECT book_title FROM books LIMIT 25, 100. The first number in LIMIT is the offset, the second is the number.

You wrote a search engine that should retrieve 10 results at a time, but at the same time you’d like to know how many rows there’re total. How do you display that to the user?
SELECT SQL_CALC_FOUND_ROWS page_title FROM web_pages LIMIT 1,10; SELECT FOUND_ROWS(); The second query (not that COUNT() is never used) will tell you how many results there’re total, so you can display a phrase "Found 13,450,600 results, displaying 1-10". Note that FOUND_ROWS does not pay attention to the LIMITs you specified and always returns the total number of rows affected by query.

How would you write a query to select all teams that won either 2, 4, 6 or 8 games?
SELECT team_name FROM teams WHERE team_won IN (2, 4, 6, 8)

How would you select all the users, whose phone number is null?
SELECT user_name FROM users WHERE ISNULL(user_phonenumber);

What does this query mean: SELECT user_name, user_isp FROM users LEFT JOIN isps USING (user_id) ?
It’s equivalent to saying SELECT user_name, user_isp FROM users LEFT JOIN isps WHERE users.user_id=isps.user_id

How do you find out which auto increment was assigned on the last insert?

SELECT LAST_INSERT_ID() will return the last value assigned by the auto_increment function. Note that you don’t have to specify the table name.

What does –i-am-a-dummy flag to do when starting MySQL?
Makes the MySQL engine refuse UPDATE and DELETE commands where the WHERE clause is not present.

On executing the DELETE statement I keep getting the error about foreign key constraint failing. What do I do?
What it means is that so of the data that you’re trying to delete is still alive in another table. Like if you have a table for universities and a table for students, which contains the ID of the university they go to, running a delete on a university table will fail if the students table still contains people enrolled at that university. Proper way to do it would be to delete the offending data first, and then delete the university in question. Quick way would involve running SET foreign_key_checks=0 before the DELETE command, and setting the parameter back to 1 after the DELETE is done. If your foreign key was formulated with ON DELETE CASCADE, the data in dependent tables will be removed automatically.

When would you use ORDER BY in DELETE statement?
When you’re not deleting by row ID. Such as in DELETE FROM techpreparation_com_questions ORDER BY timestamp LIMIT 1. This will delete the most recently posted question in the table techpreparation_com_questions.

How can you see all indexes defined for a table?
SHOW INDEX FROM techpreparation_questions;

How would you change a column from VARCHAR(10) to VARCHAR(50)?
ALTER TABLE techpreparation_questions CHANGE techpreparation_content techpreparation_CONTENT VARCHAR(50).

How would you delete a column?
ALTER TABLE techpreparation_answers DROP answer_user_id.


How are ENUMs and SETs represented internally?
As unique integers representing the powers of two, due to storage optimizations.

How do you start and stop MySQL on Windows?
net start MySQL, net stop MySQL

How do you start MySQL on Linux?
/etc/init.d/mysql start

Explain the difference between mysql and mysql interfaces in PHP?
mysqli is the object-oriented version of mysql library functions.

What’s the default port for MySQL Server?
3306

What does tee command do in MySQL?
tee followed by a filename turns on MySQL logging to a specified file. It can be stopped by command note.

Can you save your connection settings to a conf file?
Yes, and name it ~/.my.conf. You might want to change the permissions on the file to 600, so that it’s not readable by others.

How do you change a password for an existing user via mysqladmin?
mysqladmin -u root -p password "newpassword"

Use mysqldump to create a copy of the database?
mysqldump -h mysqlhost -u username -p mydatabasename > dbdump.sql

Have you ever used MySQL Administrator and MySQL Query Browser?
Describe the tasks you accomplished with these tools.

What are some good ideas regarding user security in MySQL?
There is no user without a password. There is no user without a user name. There is no user whose Host column contains % (which here indicates that the user can log in from anywhere in the network or the Internet). There are as few users as possible (in the ideal case only root) who have unrestricted access.

Explain the difference between MyISAM Static and MyISAM Dynamic. ?
In MyISAM static all the fields have fixed width. The Dynamic MyISAM table would include fields such as TEXT, BLOB, etc. to accommodate the data types with various lengths. MyISAM Static would be easier to restore in case of corruption, since even though you might lose some data, you know exactly where to look for the beginning of the next record.

What does myisamchk do?
It compressed the MyISAM tables, which reduces their disk usage.

Explain advantages of InnoDB over MyISAM?
Row-level locking, transactions, foreign key constraints and crash recovery.

Explain advantages of MyISAM over InnoDB?
Much more conservative approach to disk space management - each MyISAM table is stored in a separate file, which could be compressed then with myisamchk if needed. With InnoDB the tables are stored in tablespace, and not much further optimization is possible. All data except for TEXT and BLOB can occupy 8,000 bytes at most. No full text indexing is available for InnoDB. TRhe COUNT(*)s execute slower than in MyISAM due to tablespace complexity.

What are HEAP tables in MySQL?
HEAP tables are in-memory. They are usually used for high-speed temporary storage. No TEXT or BLOB fields are allowed within HEAP tables. You can only use the comparison operators = and <=>. HEAP tables do not support AUTO_INCREMENT. Indexes must be NOT NULL.

How do you control the max size of a HEAP table?
MySQL config variable max_heap_table_size.

What are CSV tables?
Those are the special tables, data for which is saved into comma-separated values files. They cannot be indexed.

Explain federated tables. ?
Introduced in MySQL 5.0, federated tables allow access to the tables located on other databases on other servers.

What is SERIAL data type in MySQL?
BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT

What happens when the column is set to AUTO INCREMENT and you reach the maximum value for that table?
It stops incrementing. It does not overflow to 0 to prevent data losses, but further inserts are going to produce an error, since the key has been used already.

Explain the difference between BOOL, TINYINT and BIT. ?
Prior to MySQL 5.0.3: those are all synonyms. After MySQL 5.0.3: BIT data type can store 8 bytes of data and should be used for binary data.

Explain the difference between FLOAT, DOUBLE and REAL. ?
FLOATs store floating point numbers with 8 place accuracy and take up 4 bytes. DOUBLEs store floating point numbers with 16 place accuracy and take up 8 bytes. REAL is a synonym of FLOAT for now.

If you specify the data type as DECIMAL (5,2), what’s the range of values that can go in this table?
999.99 to -99.99. Note that with the negative number the minus sign is considered one of the digits.

What happens if a table has one column defined as TIMESTAMP?
That field gets the current timestamp whenever the row gets altered.

But what if you really want to store the timestamp data, such as the publication date of the article?
Create two columns of type TIMESTAMP and use the second one for your real data.

Explain data type TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ?
The column exhibits the same behavior as a single timestamp column in a table with no other timestamp columns.

What does TIMESTAMP ON UPDATE CURRENT_TIMESTAMP data type do?
On initialization places a zero in that column, on future updates puts the current value of the timestamp in.

Explain TIMESTAMP DEFAULT ‘2006:09:02 17:38:44? ON UPDATE CURRENT_TIMESTAMP. ?
A default value is used on initialization, a current timestamp is inserted on update of the row.

If I created a column with data type VARCHAR(3), what would I expect to see in MySQL table?
CHAR(3), since MySQL automatically adjusted the data type.

General Information About MySQL
MySQL is a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server.

MySQL is free software. It is licensed with the GNU GENERAL PUBLIC LICENSE http://www.gnu.org/.

What Is MySQL
MySQL, the most popular Open Source SQL database, is provided by MySQL AB. MySQL AB is a commercial company that builds is business providing services around the MySQL database. See section 1.2 What Is MySQL AB.

ySQL is a database management system.
A database is a structured collection of data. It may be anything from a simple shopping list to a picture gallery or the vast amounts of information in a corporate network. To add, access, and process data stored in a computer database, you need a database management system such as MySQL. Since computers are very good at handling large amounts of data, database management plays a central role in computing, as stand-alone utilities, or as parts of other applications.

MySQL is a relational database management system.
A relational database stores data in separate tables rather than putting all the data in one big storeroom. This adds speed and flexibility. The tables are linked by defined relations making it possible to combine data from several tables on request. The SQL part of MySQL stands for "Structured Query Language" - the most common standardized language used to access databases.

MySQL is Open Source Software.
Open source means that it is possible for anyone to use and modify. Anybody can download MySQL from the Internet and use it without paying anything. Anybody so inclined can study the source code and change it to fit their needs. MySQL uses the GPL (GNU General Public License) http://www.gnu.org, to define what you may and may not do with the software in different situations. If you feel uncomfortable with the GPL or need to embed MySQL into a commercial application you can buy a commercially licensed version from us.

Why use MySQL?
MySQL is very fast, reliable, and easy to use. If that is what you are looking for, you should give it a try. MySQL also has a very practical set of features developed in very close cooperation with our users. You can find a performance comparison of MySQL to some other database managers on our benchmark page. See section 12.7 Using Your Own Benchmarks. MySQL was originally developed to handle very large databases much faster than existing solutions and has been successfully used in highly demanding production environments for several years. Though under constant development, MySQL today offers a rich and very useful set of functions. The connectivity, speed, and security make MySQL highly suited for accessing databases on the Internet.

The technical features of MySQL
For advanced technical information, see section 7 MySQL Language Reference. MySQL is a client/server system that consists of a multi-threaded SQL server that supports different backends, several different client programs and libraries, administrative tools, and a programming interface. We also provide MySQL as a multi-threaded library which you can link into your application to get a smaller, faster, easier to manage product. MySQL has a lot of contributed software available.

It is very likely that you will find that your favorite application/language already supports MySQL. The official way to pronounce MySQL is ``My Ess Que Ell'' (not MY-SEQUEL). But we try to avoid correcting people who say MY-SEQUEL.

The Main Features of MySQL
The following list describes some of the important characteristics of MySQL:

Fully multi-threaded using kernel threads. That means it can easily use multiple CPUs if available.
C, C++, Eiffel, Java, Perl, PHP, Python and Tcl APIs.
Works on many different platforms.
Many column types: signed/unsigned integers 1, 2, 3, 4, and 8 bytes long, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET, and ENUM types.
Very fast joins using an optimized one-sweep multi-join.
Full operator and function support in the SELECT and WHERE parts of queries. Example:
mysql> SELECT CONCAT(first_name, " ", last_name) FROM tbl_name
WHERE income/dependents > 10000 AND age > 30;

SQL functions are implemented through a highly optimized class library and should be as fast as they can get! Usually there shouldn't be any memory allocation at all after query initialization.
Full support for SQL GROUP BY and ORDER BY clauses. Support for group functions (COUNT(), COUNT(DISTINCT), AVG(), STD(), SUM(), MAX() and MIN()).
Support for LEFT OUTER JOIN and RIGHT OUTER JOIN with ANSI SQL and ODBC syntax.
You can mix tables from different databases in the same query (as of Version 3.22).
A privilege and password system that is very flexible and secure and allows host-based verification. Passwords are secure because all password traffic is encrypted when you connect to a server.
ODBC (Open-DataBase-Connectivity) support for Win32 (with source). All ODBC 2.5 functions and many others. For example, you can use MS Access to connect to your MySQL server. See section 18 MySQL ODBC Support.
Very fast B-tree disk tables with index compression.
Up to 32 indexes per table are allowed. Each index may consist of 1 to 16 columns or parts of columns. The maximum index length is 500 bytes (this may be changed when compiling MySQL). An index may use a prefix of a CHAR or VARCHAR field. Fixed-length and variable-length records.
In-memory hash tables which are used as temporary tables.
Handles large databases. We are using MySQL with some databases that contain 50,000,000 records and we know of users that uses MySQL with 60,000 tables and about 5,000,000,000 rows
All columns have default values. You can use INSERT to insert a subset of a table's columns; those columns that are not explicitly given values are set to their default values.
Uses GNU Automake, Autoconf, and libtool for portability.
Written in C and C++. Tested with a broad range of different compilers.
A very fast thread-based memory allocation system.
No memory leaks. Tested with a commercial memory leakage detector (purify).
Includes myisamchk, a very fast utility for table checking, optimization, and repair. See section 15 Maintaining a MySQL Installation.
Full support for several different character sets, including ISO-8859-1 (Latin1), big5, ujis, and more. For example, the Scandinavian characters `@ringaccent{a}', `@"a' and `@"o' are allowed in table and column names.
All data are saved in the chosen character set. All comparisons for normal string columns are case insensitive.
Sorting is done according to the chosen character set (the Swedish way by default). It is possible to change this when the MySQL server is started up. To see an example of very advanced sorting, look at the Czech sorting code. MySQL supports many different character sets that can be specified at compile and run time.
Aliases on tables and columns are allowed as in the SQL92 standard.
DELETE, INSERT, REPLACE, and UPDATE return how many rows were changed (affected). It is possible to return the number of rows matched instead by setting a flag when connecting to the server.
Function names do not clash with table or column names. For example, ABS is a valid column name. The only restriction is that for a function call, no spaces are allowed between the function name and the `(' that follows it. See section 7.39 Is MySQL Picky About Reserved Words?.
All MySQL programs can be invoked with the --help or -? options to obtain online assistance.
The server can provide error messages to clients in many languages. See section 10.1 What Languages Are Supported by MySQL?. Clients may connect to the MySQL server using TCP/IP Sockets, Unix Sockets (Unixes), or Named Pipes (NT). The MySQL-specific SHOW command can be used to retrieve information about databases, tables, and indexes. The EXPLAIN command can be used to determine how the optimizer resolves a query.

atabase Basics
Databases are managed by a relational database management system (RDBMS). An RDBMS supports a database language to create and delete databases and to manage and search data. The database language used in almost all DBMSs is SQL, a set of statements that define and manipulate data. After creating a database, the most common SQL statements used are INSERT, UPDATE, DELETE, and SELECT, which add, change, remove, and search data in a database, respectively.

Database
A repository to store data.

Table
The part of a database that stores the data. A table has columns or attributes, and the data stored in rows.

Attributes
The columns in a table. All rows in table entities have the same attributes. For example, a customer table might have the attributes name, address, and city. Each attribute has a data type such as string, integer, or date.

Rows
The data entries in a table. Rows contain values for each attribute. For example, a row in a customer table might contain the values "Matthew Richardson," "Punt Road," and "Richmond." Rows are also known as records.

Relational model
A model that uses tables to store data and manage the relationship between tables.

Relational database management system
A software system that manages data in a database and is based on the relational model. DBMSs have several components described in detail in Chapter 1.

SQL
A query language that interacts with a DBMS. SQL is a set of statements to manage databases, tables, and data.

Constraints
Restrictions or limitations on tables and attributes. For example, a wine can be produced only by one winery, an order for wine can't exist if it isn't associated with a customer, having a name attribute could be mandatory for a customer.

Primary key
One or more attributes that contain values that uniquely identify each row. For example, a customer table might have the primary key of cust ID. The cust ID attribute is then assigned a unique value for each customer. A primary key is a constraint of most tables.

Index
A data structure used for fast access to rows in a table. An index is usually built for the primary key of each table and can then be used to quickly find a particular row. Indexes are also defined and built for other attributes when those attributes are frequently used in queries.

Entity-relationship modeling
A technique used to describe the real-world data in terms of entities, attributes, and relationships.

Normalized database
A correctly designed database that is created from an ER model. There are different types or levels of normalization, and a third-normal form database is generally regarded as being an acceptably designed relational database.

MySQL Command Interpreter
The MySQL command interpreter is commonly used to create databases and tables in web database applications and to test queries. Throughout the remainder of this chapter we discuss the SQL statements for managing a database. All these statements can be directly entered into the command interpreter and executed. The statements can also be included in server-side PHP scripts, as discussed in later chapters.

Once the MySQL DBMS server is running, the command interpreter can be used. The command interpreter can be run using the following command from the shell, assuming you've created a user hugh with a password shhh:

% /usr/local/bin/mysql -uhugh -pshhh The shell prompt is represented here as a percentage character, %.

Running the command interpreter displays the output:

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 36 to server version: 3.22.38

Type 'help' for help.

mysql>
The command interpreter displays a mysql> prompt and, after executing any command or statement, it redisplays the prompt. For example, you might issue the statement:

mysql> SELECT NOW( );
This statement reports the time and date by producing the following output:

+---------------------+
| NOW( ) |
+---------------------+
| 2002-01-01 13:48:07 |
+---------------------+
1 row in set (0.00 sec)

mysql>
After running a statement, the interpreter redisplays the mysql> prompt. We discuss the SELECT statement later in this chapter.

As with all other SQL statements, the SELECT statement ends in a semicolon. Almost all SQL command interpreters permit any amount of whitespace—spaces, tabs, or carriage returns—in SQL statements, and they check syntax and execute statements only after encountering a semicolon that is followed by a press of the Enter key. We have used uppercase for the SQL statements throughout this book. However, any mix of upper- and lowercase is equivalent.

On startup, the command interpreter encourages the use of the help command. Typing help produces a list of commands that are native to the MySQL interpreter and that aren't part of SQL. All non-SQL commands can be entered without the terminating semicolon, but the semicolon can be included without causing an error.

The MySQL command interpreter allows flexible entry of commands and SQL statements:

The up and down arrow keys allow previously entered commands and statements to be browsed and used.

The interpreter has command completion. If you type the first few characters of a string that has previously been entered and press the Tab key, the interpreter automatically completes the command. For example, if wines is typed and the Tab key pressed, the command interpreter outputs winestore, assuming the word winestore has been previously used.

If there's more than one option that begins with the characters entered, or you wish the strings that match the characters to be displayed, press the Tab key twice to show all matches. You can then enter additional characters to remove any ambiguity and press the Tab key again for command completion.

Several common statements and commands are pre-stored, including most of the SQL keywords discussed in this chapter.

To use the default text editor to create SQL statements, enter the command edit in the interpreter. This invokes the editor defined by the EDITOR shell environment variable. When the editor is exited, the MySQL command interpreter reads, parses, and runs the file created in the editor.

When the interpreter is quit and run again later, the history of commands and statements is kept. It is still possible to scroll up using the up arrow and to execute commands and statements that were entered earlier.

You can run commands and SQL statements without actually launching the MySQL command interpreter. For example, to run SELECT now( ) from the Linux shell, enter the following command:

mysql -ppassword -e "SELECT now( );" This is particularly useful for adding SQL commands to shell or other scripts.

Used Vs Loved - Quotes

USED vs. LOVED

While a man was polishing his new car,
his 4 yr old son picked up a stone
and scratched lines on the side of the car.

In anger, the man
took the child’s hand

and hit it many times
no realizing
he was using a wrench.

At the hospital, the child lost all his fingers

due to multiple
fractures.

When the child saw his father…..

with painful eyes he asked,

‘Dad when will my fingers grow back?’


The man was so hurt
and speechless;
he went back to his car

and kicked it a lot of times.

Devastated by his own actions…...

sitting in front of that car

he looked at the scratches;

the child had written
‘LOVE YOU DAD’.
The next day that man
Committed suicide. . .

Anger and Love have no limits;

Choose the latter

to have a beautiful, lovely life

& remember this:

Things are to be used
and people are to be loved.
The problem in today’s world is

That people are used

While things are loved.

Let’s try always to keep

this thought in mind:


“Things are to be used,
People are to be loved…”

Watch your thoughts; they become words.
Watch your words; they become actions.
Watch your actions; they become habits.
Watch your habits; they become character;
Watch your character; it becomes your destiny.

I’m glad a friend
forwarded this to me as a reminder..
I hope you have a good day

no matter what problems you may face…!!!

Blood Donation Facts

  • Person above 18 years of age and over 50 Kgs. in weight can donate blood once in three months.
  • A normal adult has five to six liters of blood in his/her body of which only 300 ml is used during blood donation.
  • This blood is replaced by your body within 24 to 48 hours!
  • No special diet, rest or medicine is required after blood donation.
  • The donor should not have taken any medicine in the last 48 hours.
  • The donor should not have contacted jaundice in the previous three years.
  • Every donor is given a medical checkup prior to donation to see if he/she is medically fit and doesn’t suffer from anemia, high blood pressure etc.
  • The donor cannot contract AIDS or any other disease by donating blood.

ekalappai - an Intro

Now ekalappai open source version now contains 2 keyboards (tamil99 and phonetic).

Its available for download here:
http://code.google.com/p/ekalappai/downloads/list

No installation require, after download, unzip it to a folder and run ekalappai file (or some computers you will see this file as ekalappai.exe). Keyboard loaded can be changed by clicking (left click) on the task bar icon shown when ekalappai is running.

Please test and send your feedback.

Also you can directly enter your bugs here:
http://code.google.com/p/ekalappai/issues/list

How to install and use development version of eKalappai

  1. Download and unzip ekalappaiOSS-dev-latest.zip
  2. Double click on the ekalappai.exe from the eKalappaiOSS folder you got from above step.
  3. Start typing in tamil
  4. To switch off the keyboard or to change the layout of the keyboard, just click on the ekalappai task bar menu (right hand side bottom portion of your desktop)
  5. Currently it supports phonetic & tamil99 keyboards.
  6. Its being actively developed so soon other missing features will be added.
  7. If you find any issue or want any new feature in this software, please feel free create an issue in this page: http://code.google.com/p/ekalappai/issues/list

Keep checking this page for updates.

Features planned for eKalappai 3.0

Features planned later

Charge mobile with peepal leave

Charge mobile with peepal leave



Its very Strange But True Very True.

Now, you do not require any mobile charger to charge your mobiles. Only there is need to use green leaf of peepal tree and after some time your mobile will get charged.

No soon the people came to learn this development, they tested it and found encouraging results. If your mobile has been discharged and you are inside a jungle then you need not to use any charger. You Should pluck two peepal leaves and your work would be done.

It is very good idea and easy to charge your mobile. You would have to open your mobile battery and connect it with peepal leaf. After that without shaking mobile set you should set the battery in your mobile set. After some time your mobile would be charged.

Though it is unbelievable but as soon as the residents of Chitrakoot came to know about the discovery they could not believe the news. But when they saw it practically then the incident proved true. Now hundreds of mobile holders are using this technique and charging their
mobiles.

Several persons including Sushil Kumar Shukla, Santosh Verma, principal of Mahatma Gandhi School, Raj Karan Patel, Shyam Patel, Shekhar Dwivedi, Pramod Gupta, Manager of Gayatri temple, RN Tripathi proved the incident true. Whereas according to the botanists, it is just changing mutual energy into electrical energy power can be saved in battery. Similarly, it is also
possible. They said that it is the subject of research.

Step by Step guide to charge your mobile battery using peepal leaf
  1. Open your mobile cover
  2. Take out your battery
  3. Take two to three fresh leaves of peepal/pipal/ashwattha tree
  4. Touch the stub of these leaves on your mobile battery terminal for a minute
  5. Clean the mobile battery terminal with the soft cloth
  6. Put your battery again in your mobile and switch it on
  7. Now you can see the result
  8. If required repeat the process with fresh leaves


Check your self on this claim!!

PHP - Interview Questions with Answers

1. What are the differences between GET and POST methods in form submitting, give
the case where we can use get and we can use post methods?

On the server side, the main difference between GET and POST is where the
submitted is stored. The $_GET array stores data submitted by the GET method.
The $_POST array stores data submitted by the POST method.
On the browser side, the difference is that data submitted by the GET method will
be displayed in the browser’s address field. Data submitted by the POST method
will not be displayed anywhere on the browser.
GET method is mostly used for submitting a small amount and less sensitive data.
POST method is mostly used for submitting a large amount or sensitive data.

2. Who is the father of php and explain the changes in php versions?

Rasmus Lerdorf for version changes go to http://php.net/
Marco Tabini is the founder and publisher of php|architect.
3. How can we submit from without a submit button?

We can use a simple JavaScript code linked to an event trigger of any form field.
In the JavaScript code, we can call the document.form.submit() function to submit
the form. For example:
4. How many ways we can retrieve the date in result set of mysql Using php?

As individual objects so single record or as a set or arrays.
5. What is the difference between mysql_fetch_object and mysql_fetch_array?

MySQL fetch object will collect first single matching record where
mysql_fetch_array will collect all matching records from the table in an array.
6. What is the difference between $message and $$message?

They are both variables. But $message is a variable with a fixed name. $$message is
a variable who’s name is stored in $message. For example, if $message contains
“var”, $$message is the same as $var.
7. How can we extract string ‘abc.com ‘ from a string
‘http://info@a…’ using regular _expression of php?

We can use the preg_match() function with “/.*@(.*)$/” as
the regular expression pattern. For example:
preg_match(“/.*@(.*)$/”,”http://info@abc.com”,$data);
echo $data[1];
8. How can we create a database using php and mysql?

PHP: mysql_create_db()
Mysql: create database;
9. What are the differences between require and include, include_once?

File will not be included more than once. If we want to include a file once only and
further calling of the file will be ignored then we have to use the PHP function
include_once(). This will prevent problems with function redefinitions, variable
value reassignments, etc.
10. Can we use include (“abc.php”) two times in a php page “makeit.php”?

Yes we can include..
11. What are the different tables present in mysql, which type of table is generated when
we are creating a table in the following
syntax: create table employee(eno int(2),ename varchar(10)) ?

Total 5 types of tables we can create
1. MyISAM
2. Heap
3. Merge
4. InnoDB
5. ISAM
6. BDB
MyISAM is the default storage engine as of MySQL 3.23.
12. Functions in IMAP, POP3 AND LDAP?

Please visit:

http://fi2.php.net/imap

http://uk2.php.net/ldap

13. How can I execute a php script using command line?

Just run the PHP CLI (Command Line Interface) program and provide the PHP
script file name as the command line argument. For example, “php myScript.php”,
assuming “php” is the command to invoke the CLI program.
Be aware that if your PHP script was written for the Web CGI interface, it may not
execute properly in command line environment.

14. Suppose your ZEND engine supports the mode Then how can u configure your
php ZEND engine to support mode ?

If you change the line: short_open_tag = off in php.ini file. Then your php ZEND
engine support only mode.
15. Shopping cart online validation i.e. how can we configure the paypals?
16. What is meant by nl2br()?

nl2br — Inserts HTML line breaks before all newlines in a string
string nl2br (string);
Returns string with ‘
’ inserted before all newlines.
For example: echo nl2br(“god bless\n you”) will output “god bless
\n you” to your browser.
17. Draw the architecture of ZEND engine?

18. What are the current versions of apache, php, and mysql?

PHP: php5.1.2
MySQL: MySQL 5.1
Apache: Apache 2.1
19. What are the reasons for selecting lamp (Linux, apache, mysql, php) instead of
combination of other software programs, servers and operating systems?

All of those are open source resource. Security of linux is very very more than
windows. Apache is a better server that IIS both in functionality and security.
Mysql is world most popular open source database. Php is more faster that asp or
any other scripting language.
20. How can we encrypt and decrypt a data present in a mysql table using mysql?

AES_ENCRYPT () and AES_DECRYPT ()
21. How can we encrypt the username and password using php?

You can encrypt a password with the following Mysql>SET
PASSWORD=PASSWORD(“Password”);
We can encode data using base64_encode($string) and can decode using
base64_decode($string);

22. What are the features and advantages of OBJECT ORIENTED PROGRAMMING?

One of the main advantages of OO programming is its ease of modification; objects
can easily be modified and added to a system there by reducing maintenance costs.
OO programming is also considered to be better at modeling the real world than is
procedural programming. It allows for more complicated and flexible interactions.
OO systems are also easier for non-technical personnel to understand and easier for
them to participate in the maintenance and enhancement of a system because it
appeals to natural human cognition patterns.
For some systems, an OO approach can speed development time since many objects
are standard across systems and can be reused. Components that manage dates,
shipping, shopping carts, etc. can be purchased and easily modified for a specific
system.

23. What are the differences between PROCEDURE ORIENTED LANGUAGES
AND OBJECT ORIENTED LANGUAGES?

Traditional programming has the following characteristics:
Functions are written sequentially, so that a change in programming can affect any
code that follows it.

If a function is used multiple times in a system (i.e., a piece of code that manages the
date), it is often simply cut and pasted into each program (i.e., a change log, order
function, fulfillment system, etc). If a date change is needed (i.e., Y2K when the code
needed to be changed to handle four numerical digits instead of two), all these pieces
of code must be found, modified, and tested.

Code (sequences of computer instructions) and data (information on which the
instructions operates on) are kept separate. Multiple sets of code can access and
modify one set of data. One set of code may rely on data in multiple places. Multiple
sets of code and data are required to work together. Changes made to any of the
code sets and data sets can cause problems through out the system.

Object-Oriented programming takes a radically different approach:
Code and data are merged into one indivisible item – an object (the term
“component” has also been used to describe an object.) An object is an abstraction
of a set of real-world things (for example, an object may be created around “date”)
The object would contain all information and functionality for that thing (A dateobject it may contain labels like January, February, Tuesday, Wednesday. It may
contain functionality that manages leap years, determines if it is a business day or a
holiday, etc., See Fig. 1). Ideally, information about a particular thing should reside
in only one place in a system. The information within an object is encapsulated (or
hidden) from the rest of the system.
A system is composed of multiple objects (i.e., date function, reports, order
processing, etc., See Fig 2). When one object needs information from another object,
a request is sent asking for specific information. (for example, a report object may
need to know what today’s date is and will send a request to the date object) These
requests are called messages and each object has an interface that manages
messages.
OO programming languages include features such as “class”, “instance”,
“inheritance”, and “polymorphism” that increase the power and flexibility of an
object.

24. What is the use of friend function?

Friend functions
Sometimes a function is best shared among a number of different classes. Such
functions can be declared either as member functions of one class or as global
functions. In either case they can be set to be friends of other classes, by using a
friend specifier in the class that is admitting them. Such functions can use all
attributes of the class whichnames them as a friend, as if they were themselves
members of that class.

25. What are the different types of errors in php?

Three are three types of errors:

1. Notices: These are trivial, non-critical errors that PHP encounters while
executing a script – for example, accessing a variable that has not yet been defined.
By default, such errors are not displayed to the user at all – although, as you will see,
you can change this default behaviour.
2. Warnings: These are more serious errors – for example, attempting to include() a
file which does not exist. By default, these errors are displayed to the user, but they
do not result in script termination.
3. Fatal errors: These are critical errors – for example, instantiating an object of a
non-existent class, or calling a non-existent function. These errors cause the
immediate termination of the script, and PHP’s default behaviour is to display them
to the user when they take place.

26. How can we convert asp pages to php pages?

You can download asp2php front-end application from the site

http://asp2php.naken.cc.

27.How can we get second of the current time using date function?

$second = date(“s”);

28. What is the difference between the functions unlink and unset?

unlink() deletes the given file from the file system.
unset() makes a variable undefined.

29. How can we register the variables into a session?

We can use the session_register ($ur_session_var) function.

30. What is the difference between char and varchar data types?

char(M) M bytes 0<=M<=255
varchar(M) L+1 bytes where L<=M & 0<=M<=255
i.e.; char data type allocate memory statically
and varchar data type allocate memory dynamically

31. What is the functionality of md5 function in php?

string md5(string)
Calculate the md5 hash of a string. The hash is a 32-character hexadecimal number.
We can use it to generate keys, which we use to identify users etc. If we add random
no techniques to it the md5 generated now will be totally different for the same
string we are using..

32. How can we know the number of days between two given dates using mysql?

select DIFFDATE( NOW(), ‘yyyy-mm-dd’ );

33. What are the differences between drop a table and truncate a table?

Delete a Table or DatabaseTo delete a table (the table structure, attributes, and
indexes will also be deleted).
What if we only want to get rid of the data inside a table, and not the table itself?
Use the TRUNCATE TABLE command (deletes only the data inside the table).

34. What are the different ways to login to a remote server? Explain the means,
advantages and disadvantages?

There is at least 3 ways to logon to a remote server:
Use ssh or telnet if you concern with security
You can also use rlogin to logon to a remote server.

35. How would you backup and restore a big MySQL database? What are the advantages
of the approach which you have taken over the others?
Use the mysqldump command.
If you have Telnet/SSH access to your MySQL server, log in and issue the following
command for each database you want to back up:
shell> mysqldump -u user -ppassword –opt -full database_name > backupfile.sql

Then move the resulting file(s) to your preferred backup areas. If you require more
information on the mysqldump command, then simply check out this
URL:www.mysql.com/documentation/mysql
Copy all the relevant table files.
If the server isn’t updating anything (or you’ve deliberately killed mysqld for this
purpose) then you can copy all the files with the following extensions in your
MySQL data directory:
*.frm
*.myd
*.myi
Make sure you restart the MySQL daemon once you finish copying and
downloading the files to your preferred backup areas.
TIP: once you’ve completed the backup, restart MySQL with the –log-update
switch. This will allow you to keep track of all modifications done in the MySQL
tables since your last ‘dump’.
To restore your dumps, you should either restore to an existing database or create a
new database using
shell> mysqladmin create database_name
then issue the following command :
shell> mysql -u user -ppassword database_name < backup-file.sql
If you don’t have access to Telnet/SSH and you’re unable to do backups using the
methods described above, you should ask your host if it is possible for them to do a
backup for you and put the backups in a separate directory so that you can easily
FTP your backups to your selected backup areas. Otherwise, if you have access to
phpMyAdmin, you can use the following procedure:
Access phpMyAdmin, and select the database you wish to ‘dump’ (backup).
Scroll down and you will see a bulleted point saying: “View dump (schema) of
database” along with some radio and check boxes. Choose ‘Structure and data’,
then click on ‘Add Drop Table’ and ‘Send’ and click ‘Go’. This will save the ‘dump’
to your hard drive.
To restore a dump using phpMyAdmin, simply insert the file in the correct place
once you have chosen the correct database by doing the following:
Choose the database you will insert your data into, or create a new database.
Insert the appropriate SQL queries you already have, or just paste the name of
the .sql file you have on your hard drive into the text box under ‘Location of the
textfile’, and fire away!
Tip : use a crontab job to schedule backups periodically.
The advantages of this approach is the backup is only a file consisting of SQL query.
So that needs minimum spaces to backup a large database.
36. For the database from the previous question, please give an SQL query which returns
the invoice number of all invoices which contain the article with the number “1234″. The
query should be able to run under a MySQL 4.0 database.

Select invoceNo from invoice where article_id=1234;

37. What is meant by PEAR in php?

PEAR is short for “PHP Extension and Application Repository” and is pronounced
just like the fruit. The purpose of PEAR is to provide:
A structured library of open-sourced code for PHP users
A system for code distribution and package maintenance
A standard style for code written in PHP
The PHP Foundation Classes (PFC),
The PHP Extension Community Library (PECL),
A web site, mailing lists and download mirrors to support the PHP/PEAR
community
PEAR is a community-driven project with the PEAR Group as the governing body.
The project has been founded by Stig S. Bakken in 1999 and quite a lot of people
have joined the project since then.

http://pear.php.net/manual/en/introduction.php

38 How many ways we can give the output to a browser?

HTML output
PHP, ASP, JSP, Servlet Function
Script Language output Function
Different Type of embedded Package to output to a browser

39. How can we know that a session is started or not?

a session starts by session_start()function.
this session_start() is always declared in header portion.it always declares first.then
we write session_register().

40. What is the default session time in php and how can I change it?

The default session time in php is until closing of browser

Microsoft Dot Net 4.0 - Ebooks Download Links

Microsoft Dot Net 4.0 - Ebooks Download Links : MediaFire



Apress.Accelerated.CSharp.2010.Jan.2010.pdf
The fast way to the latest and greatest in C# Programming and .NET 4.0
http://www.mediafire.com/?0bbdnzdmzdz

Introducing Net 4.0 With Visual Studio 2010.pdf
A fast-track introduction to the new features of .NET 4.0, Visual Studio 2010, and their supporting technologies
http://www.mediafire.com/?nzncwznyyvm

Oreilly.CSharp.4.0.in.a.Nutshell.4th.Edition.Jan.2010.pdf
C# 4.0 In a Nutshell - The Definitive Reference
http://www.mediafire.com/?mwdgnxxmdeu

Important Disclaimer: The ebooks provided on this site are just links to files on the internet and NOT a part of this server.

Windows WorkFlow Foundation - Interview Questions with Answers

1. Are there advantages to building workflows using only XAML? Are there disadvantages?
2. What are the pros and cons of using an ExternalDataExchange service versus going directly to the WorkflowQueuingService?
3. When are attached dependency properties useful in WF programming?
4. What behavior does the default scheduling service provide?
5. How can my code participate in a database transaction with a workflow instance?
6. Why would I use a tracking service?
7. Describe a scenario where the WF runtime will cancel an executing activity.
8. Describe a scenario where I'd need to spawn an ActivityExecutionContext.
9. Tell me why I'd use a compensation handler.
10. Tell me about the following activities: Replicator, Parallel, and Policy.
  • What is Windows Workflow Foundation?
  • What is a Workflow?
  • What are different types of Workflow in Windows Workflow foundation?
  • When should we use a sequential workflow and when should we use state machines?
  • How do we create workflows using designer?
  • How do we specify conditions in Work flow?
  • How do you handle exceptions in workflow?
  • What is the use of XOML files?
  • How can we pass parameters to workflow?



What is Windows Workflow Foundation (WF)

WF is a tool for building workflow enabled applications on windows.
The Windows Workflow Foundation namespace in Microsoft .NET Framework is called System.Workflow. Windows Workflow Foundation provides a consistent and familiar development experience with other Microsoft .NET Framework technologies such as ASP.NET, Windows Communication Foundation and Windows Presentation Foundation. Windows Workflow Foundation provides full support for Visual Basic .NET and C, debugging, a graphical workflow designer and the ability to develop your workflow completely in code. Windows Workflow Foundation also provides an extensible model and designer to build custom activities which encapsulate workflow functionality for end-users or for re-use across multiple projects.
WF provides a flexible flow model for various types of workflow:
Sequential workflow in which one task is executed after another
State machine workflow in which external events drive the flow
Rule-driven workflow in which a set of rules in combination with the state of data drive the order of processing.

Please click here to get answers : Windows Workflow Foundation (WWF) Interview Questions

Sharepoint 2010 - Interview Questions with Answers

What is a Run-Time data table?

The test results tree also includes the table-shaped icon that displays the run-time data table-a table that shows the values used to run a test containing data table parameters or the data table output values retrieved from a application under test

What are the two base classes a WebPart you are going to use within SharePoint 2007 can inherit from?

There are two base classes that a WebPart which is going to be consumed by SharePoint can inherit from, either the SharePoint WebPart Base class or the ASP.NET 2.0 WebPart base class. When inheriting from the SharePoint WebPart Base class your derived WebPart class will inherit from Microsoft.SharePoint.WebPartPages.WebPart. When inheriting from the ASP.NET 2.0 WebPart base class your derived WebPart class will inherit from System.Web.UI.WebControls.WebParts.WebPart. It is considered good practice to use the ASP.NET WebPart base class since the old base class is meant for backwards compatibility with previous version of SharePoint, however there are four exception when it is better to leverage functionality from the SharePoint WebPart base class: Cross page connections Connections between Web Parts that are outside of a Web Part zone Client-side connections (Web Part Page Services Component) Data caching infrastructure

What are the differences between the two base classes and what are the inherit benefits of using one over another?

The difference is the Microsoft.SharePoint.WebPartPages.WebPart base class is meant for backward compatibility with previous versions of SharePoint. The benefit of using the SharePoint WebPart base class is it supported: Cross page connections Connections between Web Parts that are outside of a Web Part zone Client-side connections (Web Part Page Services Component) Data caching infrastructure ASP.NET 2.0 WebParts are generally considered better to use because SharePoint is built upon the ASP.NET 2.0 web architecture. Inheriting from the ASP.NET 2.0 base class offers you features that inherit to ASP.NET 2.0, such as embedding resources as opposed to use ClassResources for deployment of said types.

What is the GAC?

The GAC stands for the global assembly cache. It is the machine wide code cache which will give custom binaries place into the full trust code group for SharePoint. Certain SharePoint assets, such as Feature Receivers need full trust to run correctly, and therefore are put into the GAC. You should always try to avoid deployment to the GAC as much as possible since it will possibly allow development code to do more than it was intended to do.

What is strong naming (signing) a WebPart assembly file mean?

Signing an assembly with a strong name (a.k.a strong naming) uses a cryptographic key pair that gives a unique identity to a component that is being built. This identity can then be referred throughout the rest of the environment. In order to install assemblies into the GAC, they must be strongly named. After signing, the binary will have a public key token identifier which can be use to register the component in various other places on the server.
What are safe controls, and what type of information, is placed in that element in a SharePoint web.config file?

When you deploy a WebPart to SharePoint, you must first make it as a safe control to use within SharePoint in the web.config file. Entries made in the safe controls element of SharePoint are encountered by the SharePointHandler object and will be loaded in the SharePoint environment properly, those not will not be loaded and will throw an error. In the generic safe control entry (this is general, there could be more), there is generally the Assembly name, the namespace, the public key token numeric, the typename, and the safe declaration (whether it is safe or not). There are other optional elements.

What is the CreateChildControls() method? How can you use it to do something simple like displaying a Label control?

The CreateChildControls method in WebParts is used to notify the WebPart that there are children controls that should be output for rendering. Basically, it will add any child ASP.NET controls that are called instantiating each control with its relevant properties set, wire any relevant event handlers to the control, etc. Then the add method of the control class will add the control to the controls collection. In the relevant WebPart render method, the EnsureChildControls method can be called (or set to false if no child controls should be called) to ensure that the CreateChildControls method is run. When using CreateChildControls it implies that your WebPart contains a composition of child controls. In order to create something like a label control in Create, you would create a new label control using the new keyword, set the various properties of the control like Visible=True and ForeColor = Color.Red, and then use Controls.Add(myLabelControl) to add the control to the controls collection. Then you can declare EnsureChildControls in the Render method of the WebPart.

What does the RenderContents method do in an ASP.NET 2.0 WebPart?

The render contents method will render the WebPart content to the writer, usually an HtmlTextWriter since WebParts will output to an HTML stream. RenderContents is used to tell how the controls that are going to be displayed in the WebPart should be rendered on the page. *** Side Question: I got asked what the difference between CreateChildControls and the RenderContents method. The CreateChildControls method is used to add controls to the WebPart, and the RenderContents method is used to tell the page framework how to render the control into HTML to display on a page.

What is the WebPartManager sealed class? What is its purpose?

The WebPartManager sealed class is responsible for managing everything occurring on a WebPart page, such as the WebParts (controls), events, and misc. functionality that will occur in WebPartZones. For example, the WebPartManager is responsible for the functionality that is provided when you are working with moving a WebPart from WebPartZone to WebPartZone. It is known as the “the central class of the Web Part Control Set.” *** Side Question: I got asked how many WebPartManager controls should be on a page. In order to have WebParts on a page there has to be just one WebPartManager control to manage all the WebParts on the page.

What is a SPSite and SPWeb object, and what is the difference between each of the objects?

The SPSite object represents a collection of sites (site collection [a top level sites and all its subsites]). The SPWeb object represents an instance SharePoint Web, and SPWeb object contains things like the actual content. A SPSite object contains the various subsites and the information regarding them.

How would you go about getting a reference to a site?

Select For Unformatted Code C#: 1. oSPSite = new SPSite("http:/server"); 2. oSPWeb = oSPSite.OpenWeb();

What does a SPWebApplication object represent?

The SPWebApplication objects represents a SharePoint Web Application, which essentially is an IIS virtual server. Using the class you can instigate high level operations, such as getting all the features of an entire Web Application instance, or doing high level creation operations like creating new Web Applications through code.

Would you use SPWebApplication to get information like the SMTP address of the SharePoint site?

Yes, since this is a Web Application level setting. You would iterate through each SPWebApplication in the SPWebApplication collection, and then use the appropriate property calls (OutboundMailServiceInstance) in order to return settings regarding the mail service such as the SMTP address. Side Question: I got asked if there are other ways to send emails from SharePoint. The answer is yes, there is. You can use the SendMail method from the SPutility class to send simple emails, however it is not as robust as using the System.Net.Mail functionality since it doesn’t allow things like setting priorities on the email.

How do you connect (reference) to a SharePoint list, and how do you insert a new List Item?

Select For Unformatted Code C#: 1. using(SPSite mySite = new SPSite("yourserver")) 2. { 3. using(SPWeb myWeb = mySite.OpenWeb()) 4. { 5. SPList interviewList = myWeb.Lists["listtoinsert"]; 6. SPListItem newItem = interviewList.Items.Add(); 7. 8. newItem["interview"] = "interview"; 9. newItem.Update(); 10. } 11. }
How would you loop using SPList through all SharePont List items, assuming you know the name (in a string value) of the list you want to iterate through, and already have all the site code written?

Select For Unformatted Code C#: 1. SPList interviewList = myWeb.Lists["listtoiterate"]; 2. foreach (SPListItem interview in interviewList) 3. { 4. // Do Something 5. }

Do you return SharePoint List items using SharePoint web services?

In order to retrieve list items from a SharePoint list through Web Services, you should use the lists.asmx web service by establishing a web reference in Visual Studio. The lists.asmx exposes the GetListItems method, which will allow the return of the full content of the list in an XML node. It will take parameters like the GUID of the name of the list you are querying against, the GUID of the view you are going to query, etc. Side Question: I got asked how I built queries with the lists.asmx web service. In order to build queries with this service, one of the parameters that the GetListItems method exposes is the option to build a CAML query. There are other ways to do this as well, but that was how I answered it.

When retrieving List items using SharePoint Web Services, how do you specify explicit credentials to be passed to access the list items?

In order to specify explicit credentials with a Web Service, you generally instantiate the web service, and then using the credentials properties of the Web Service object you use the System.Net.NetworkCredential class to specify the username, password, and domain that you wish to pass when making the web service call and operations. *** Side Question: I got asked when you should state the credentials in code. You must state the credentials you are going to pass to the web service before you call any of the methods of the web service, otherwise the call will fail.

What is CAML, and why would you use it?

CAML stands for Collaborative Application Markup Language. CAML is an XML based language which provides data constructs that build up the SharePoint fields, view, and is used for table definition during site provisioning. CAML is responsible for rending data and the resulting HTML that is output to the user in SharePoint. CAML can be used for a variety of circumstances, overall is used to query, build and customize SharePoint based sites. A general use would be building a CAML query in a SharePoint WebPart in order to retrieve values from a SharePoint list.

What is impersonation, and when would you use impersonation?

Impersonation can basically provide the functionality of executing something in the context of a different identity, for example assigning an account to users with anonymous access. You would use impersonation in order to access resources on behalf of the user with a different account, that normally, that wouldn’t be able to access or execute something.

What is the IDesignTimeHtmlProvider interface, and when can you use it in WebParts?

The IDesignTimeHtmlProvider interface uses the function GetDesignTimeHtml() which can contain your relevant render methods. It was helpful to use in 2003 since it allowed your WebPart to have a preview while a page was edited in FrontPage with the Webpart on it, because the GetDesignTimeHtml() method contains the HTML for the designer to render.

What are WebPart properties, and what are some of the attributes you see when declaring WebPart properties in code?

WebPart properties are just like ASP.NET control properties, they are used to interact with and specify attributes that should be applied to a WebPart by a user. Some of the attributes you see with ASP.NET 2.0 properties are WebDescription, WebDisplayName, Category, Personalizable, and WebBrowsable. Although most of these properties come from the System.Web.UI.WebControls.WebParts class, ones like Category come out of System.ComponentModel namespace.

Why are properties important in WebPart development, and how have you exploited them in past development projects? What must each custom property have?

Properties are important because WebParts allow levels of personalization for each user. WebPart properties make it possible for a user to interact, adjust, and increase overall experience value with the programmatic assets that you develop without having the need to use an external editor or right any code. A very simple example of exploiting a property would be something like allowing the user to change the text on the WebPart design interface so that they can display whatever string of text they desire. Each custom property that you have must have the appropriate get and set accessor methods.

What are ClassResources? How do you reference and deploy resources with an ASP.NET 2.0 WebPart?

ClassResources are used when inheriting from the SharePoint.WebPart.WebPartPages.WebPart base class, and are defined in the SharePoint solution file as things that should be stored in the wpresources directory on the server. It is a helpful directory to use in order to deploy custom images. In ASP.NET 2.0, typically things such as images are referenced by embedding them as resources within an assembly. The good part about ClassResources is they can help to eliminate recompiles to change small interface adjustments or alterations to external JavaScript files.

What is a SharePoint Solution File? How does it differ from WebPart .cab files in legacy development? What does it contain?

A SharePoint solution file is essentially a .cabinet file with all a developers ustom componets suffixed with a .wsp extension that aids in deployment. The big difference with SharePoint solution files is is that a solution: allows deployment to all WFE’s in a farm is highly manageable from the interface allowing deployment, retraction, and versioning Can package all types of assets like site definitions, feature definitions (and associated components), Webparts, etc. Can provide Code Access Security provisioning to avoid GAC deployments Just to name a few things…

What is a .ddf file and what does it have to do with SharePoint Solution creation?

A .ddf file is a data directive file and is used when building the SharePoint solution bundle specifying the source files and their destination locations. The important thing for someone to understand is that the .ddf file will be passed as a parameter to the MAKECAB utility to orchestrate construction of the SharePoint solution file.

What file does a SharePoint solution package use to orchestrate (describe) its packaged contents?

The solution Manifest.XML file.

What deployment mechanism can you use to instigate Code Access Security attributes for your WebParts?

SharePoint solution files can add in order to handle code access security deployment issues. This is done in the element in the SharePoint solution manifest.XML, which makes it easier to get assemblies the appropriate permissions in order to operate in the bin directory of the web application.

What is a SharePoint Feature? What files are used to define a feature?

A SharePoint Feature is a functional component that can be activated and deactivate at various scopes throughout a SharePoint instances, such as at the farm, site collection, web, etc. Features have their own receiver architecture, which allow you to trap events such as when a feature is installing, uninstalling, activated, or deactivated. They are helpful because they allow ease of upgrades and versioning. The two files that are used to define a feature are the feature.xml and manifest file. The feature XML file defines the actual feature and will make SharePoint aware of the installed feature. The manifest file contains details about the feature such as functionality. Side Question: I got asked how the introduction of features has changed the concept of site definitions. SharePoint features are important when understanding the architecture of site definitions, since the ONET.XML file has been vastly truncated since it has several feature stapled on it.

What types of SharePoint assets can be deployed with a SharePoint feature?

Features can do a lot. For example, you could deploy Simple site customizations Custom site navigation WebParts pages list types list instances event handlers workflows custom actions just to name a few….

What are event receivers?

Event receivers are classes that inherit from the SpItemEventReciever or SPListEventReciever base class (both of which derive out of the abstract base class SPEventRecieverBase), and provide the option of responding to events as they occur within SharePoint, such as adding an item or deleting an item.
When would you use an event receiver?

Since event receivers respond to events, you could use a receiver for something as simple as canceling an action, such as deleting a document library by using the Cancel property. This would essentially prevent users from deleting any documents if you wanted to maintain retention of stored data.

What base class do event receivers inherit from?

Event receivers either inherit from the SPListEventReciever base class or the SPItemEventReciever base class, both which derive from the abstract base class SPEventReceiverBase.

If I wanted to not allow people to delete documents from a document library, how would I go about it?

You would on the ItemDeleting event set: properties.Cancel= true.

What is the difference between an asynchronous and synchronous event receivers?

An asynchronous event occurs after an action has taken place, and a synchronous event occurs before an action has take place. For example, an asynchronous event is ItemAdded, and its sister synchronous event is ItemAdding.

could you append a string to the title of a site when it is provisioned?

In the OnActivated event: Select For Unformatted Code C#: 1. SPWeb site = siteCollection.RootWeb; 2. site.Title += "interview"; 3. site.Update();

Can an event receiver be deployed through a SharePoint feature?

Yes.

What is a content type?

A content type is an information blueprint basically that can be re-used throughout a SharePoint environment for defining things like metadata and associated behaviors. It is basically an extension of a SharePoint list, however makes it portable for use throughout an instance regardless of where the instantiation occurs, ergo has location independence. Multiple content types can exist in one document library assuming that the appropriate document library settings are enabled. The content type will contain things like the metadata, listform pages, workflows, templates (if a document content type), and associated custom written functionality.

Can a content type have receivers associated with it?

Yes, a content type can have an event receiver associated with it, either inheriting from the SPListEventReciever base class for list level events, or inheriting from the SPItemEventReciever base class. Whenever the content type is instantiated, it will be subject to the event receivers that are associated with it.

What two files are typically (this is kept generally) included when developing a content type, and what is the purpose of each?

There is generally the main content type file that holds things like the content type ID, name, group, description, and version. There is also the ContentType.Fields file which contains the fields to include in the content type that has the ID, Type, Name, DisplayName, StaticName, Hidden, Required, and Sealed elements. They are related by the FieldRefs element in the main content type file.

What is an ancestral type and what does it have to do with content types?

An ancestral type is the base type that the content type is deriving from, such as Document (0x0101). The ancestral type will define the metadata fields that are included with the custom content type.

Can a list definition be derived from a custom content type?

Yes, a list definition can derive from a content type which can be seen in the schema.XML of the list definition in the element.

When creating a list definition, how can you create an instance of the list?

You can create a new instance of a list by creating an instance.XML file.

What is a Field Control?

Field controls are simple ASP.NET 2.0 server controls that provide the basic field functionality of SharePoint. They provide basic general functionality such as displaying or editing list data as it appears on SharePoint list pages.

What base class do custom Field Controls inherit from?

This varies. Generally, custom field controls inherit from the Microsoft.SharePoint.WebControls.BaseFieldControl namespace, but you can inherit from the default field controls.

What is a SharePoint site definition? What is ghosted (uncustomized) and unghosted (customized)?

SharePoint site definitions are the core set of functionality from which SharePoint site are built from, building from the SiteTemplates directory in the SharePoint 12 hive. Site definitions allow several sites to inherit from a core set of files on the file system, although appear to have unique pages, thereby increasing performance and allowing changes that happen to a site propagate to all sites that inherit from a site definition. Ghosted means that when SharePoint creates a new site it will reference the files in the related site definition upon site provisioning. Unghosted means that the site has been edited with an external editor, and therefore the customizations are instead stored in the database, breaking the inheritance of those files from the file system.

How does one deploy new SharePoint site definitions so that they are made aware to the SharePoint system?

The best way to deploy site definitions in the SharePoint 2007 framework is to use a SharePoint solution file, so that the new site definition is automatically populated to all WFE’s in the SharePoint farm.

How do I make my site non-restricted?

If you want your site to have anonymous access enabled (i.e., you want to treat it like any site on the Internet that does not ask you to provide a user name and password to see the content of the site), follow these simple steps:

1. Login as an administrator
2. Click on site settings
3. Click on Go to Site Administration
4. Click on Manage anonymous access
5. Choose one of the three conditions on what Anonymous users can access:

o Entire Web site
o Lists and libraries
o Nothing

Can I get domain name for my Web site?

Unfortunately, no. At this point, we don't offer domain names for SharePoint sites. But very soon we will be making this available for all our SharePoint site customers. Please keep checking this page for further update on this. Meanwhile, we suggest you go ahead and set up your site and create content for it.

What are picture libraries?

Picture libraries allow you to access a photo album and view it as a slide show or thumbnails or a film strip. You can have separate folder for each event, category, etc

What are the advantages of a hosted SharePoint vs. one that is on an in-house server?

No hardware investment, i.e. lower costs
• No software to download - ready to start from the word go
• No IT resources - Anyone who has used a Web program like Hotmail can use it
• Faster deployment

Can I ask users outside of my organization to participate in my Windows SharePoint Services site?

Yes. You can manage this process using the Administration Site Settings. Simply add users via their e-mail alias and assign permissions such as Reader or Contributor.

Are there any IT requirements or downloads required to set up my SharePoint site?

No. You do not need to download any code or plan for any IT support. Simply complete the on-line signup process and provide us your current and correct email address. Once you have successfully signed up and your site has been provisioned, we will send a confirmation to the email address you provided.

I am located outside of the United States. Are there any restrictions or requirements for accessing the Windows SharePoint Services?

No. There are no system or bandwidth limitations for international trial users. Additionally language packs have been installed which allow users to set up sub-webs in languages other than English. These include: Arabic, Danish, Dutch, Finnish, French, German, Hebrew, Italian, Japanese, Polish, Portuguese (Brazilian), Spanish and Swedish.

Are there any browser recommendations?

Yes. Microsoft recommends using the following browsers for viewing and editing Windows SharePoint Services sites: Microsoft Internet Explorer 5.01 with Service Pack 2, Microsoft Internet Explorer 5.5 with Service Pack 2, Internet Explorer 6, Netscape Navigator 6.2 or later.

What security levels are assigned to users?

Security levels are assigned by the administrator who is adding the user. There are four levels by default and additional levels can be composed as necessary.
• Reader - Has read-only access to the Web site.
• Contributor - Can add content to existing document libraries and lists.
• Web Designer - Can create lists and document libraries and customize pages in the Web site.
• Administrator - Has full control of the Web site.

How secure are Windows SharePoint Services sites hosted by Microsoft?

Microsoft Windows SharePoint Services Technical security measures provide firewall protection, intrusion detection, and web-publishing rules. The Microsoft operation center team tests and deploys software updates in order to maintain the highest level of security and software reliability. Software hot-fixes and service packs are tested and deployed based on their priority and level of risk. Security related hot-fixes are rapidly deployed into the environment to address current threats. A comprehensive software validation activity ensures software stability through regression testing prior to deployment.

What is the difference between an Internet and an intranet site?

An internet site is a normal site that anyone on the internet can access (e.g., www.msn.com, www.microsoft.com, etc.). You can set up a site for your company that can be accessed by anyone without any user name and password. The internet is used for public presence and a primary marketing tool managed typically by web programmers and a system administrator.

An intranet (or internal network), though hosted on a Web site, can only be accessed by people who are members of a specific network. They need to have a login and password that was assigned to them when they were added to the site by the site administrator. The intranet is commonly used as an internal tool for giving employees access to company information. Content is driven by business relevance, business rules and has increasingly become a common tool in larger organizations. An intranet is becoming more and more the preferred method for employees to interact with each other and the central departments in an organization, whether or not the organization has a Web presence.

What is a workspace?

A site or workspace is when you want a new place for collaborating on Web pages, lists and document libraries. For example, you might create a site to manage a new team or project, collaborate on a document or prepare for a meeting.

What are the various kinds of roles the users can have?

A user can be assigned one of the following roles
• Reader - Has read-only access to the Web site.
• Contributor - Can add content to existing document libraries and lists.
• Web Designer - Can create lists and document libraries and customize pages in the Web site.
• Administrator - Has full control of the Web site.

Can more than one person use the same login?

If the users sharing that login will have the same permissions and there is no fear of them sharing a password, then yes. Otherwise, this is discouraged.

How customizable is the user-to-user access?

User permissions apply to an entire Web, not to documents themselves. However, you can have additional sub webs that can optionally have their own permissions. Each user can be given any of four default roles. Additional roles can be defined by the administrator.

Can each user have access to their own calendar?

Yes there are two ways to do this,
• by creating a calendar for each user, or
• by creating a calendar with a view for each user

How many files can I upload?

There is no restriction in place except that any storage consumed beyond that provided by the base offering may have an additional monthly charge associated with them.

What types of files can I upload / post to the site?

The only files restricted are those ending with the following extensions: .asa, .asp, .ida, .idc, .idq. Microsoft reserves the right to add additional file types to this listing at any time. Also, no content that violates the terms of service may be uploaded or posted to the site.

Can SharePoint be linked to an external data source?

SharePoint data can be opened with Access and Excel as an external data source. Thus, SharePoint can be referenced as an external data source. SharePoint itself cannot reference an external data source.

Can SharePoint be linked to a SQL database?

SharePoint 2007 Portal Server (MOSS2K7) allows connections to SQL based datasources via the Business Data Catalog (BDC). The BDC also allows connecting to data via Web Services.