Tables are zero-based to be consistent with programming languages like Python.  The first record in a table is index 0, the second record is index 1, and so forth.
Picalo's most powerful feature is its scripting language, Python. Don't write scripting off too quickly -- if you learn even basic scripting as you use Picalo, your analysis ability will increase significantly.
The None type in Picalo represents an empty value.  This is different than a value of 0 or an empty string ('').  The None value means that nothing exists in a cell.  It is similar to the null type in other programs.
You can press Ctrl-Up in the shell to get to previously-run statements?  This makes it easy to correct typos when you make mistakes.
Table (and other object) names can include the letters of the alphabet (A-Za-z), numbers (0-9), and underscores.  Spaces and other characters are not allowed.
Tables (and other objects) in Picalo are global, meaning you can access them from the menu, from the shell, or from scripts.
You can perform ad-hoc calculations in individual cells by right-clicking a cell and selecting 'Calculate in Expression Builder'.  Picalo will run your formula and place the result in the cell.
Strings can be accessed using bracket notation: name[0:5] gets the first five characters, name[1] gets the second character, name[-1] gets the last character, name[2:-2] gets everything except the first and last two characters.
You can edit table cells in a separate dialog by right-clicking a cell.  This gives you more room to see what you are typing (or to see what the existing value is).
Python's regular expression module (re) provides very powerful searching and matching capabilities.  Search the web for "regular expressions python" for more information.
Each menu option in Picalo results in a command getting run in the shell.  These commands can be copied from the history tab into a new script window to help you begin a script.
The Picalo Cookbook is a great resource for task-oriented reading.  It is a great start for those new to Picalo.  You can read it from the Help menu in Picalo.
Columns can be accessed by name using dot or bracket notation, or by index using bracket notation.  For example, if a table has a column named "Age" as its sixth column, use table.Age, table["Age"], or table[5] to access it in the shell or in scripts.
In addition to right-clicking items in the object tree, you can delete any object from memory using 'del objectname'.
An easy way to count the records in a table is to use the len function in the shell, as in len(table).
You can copy part of a table using bracket notation in the shell, as in 'newtable = table[5:20]' to copy records 5-20 to the new table.  This can also be done from the Data | Select | By Record Index... menu option.
Individual tables can be accessed in table lists through bracket notation, as in 'tablelist[5]' to reference the sixth table in the list.  (Table lists are returned from stratification and other functions.)
Calculating descriptives (Analyze | Descriptives) is one of the first analysis routines you should normally run.  It gives you a high-level view of your data and allows you to verify it was imported correctly.
Databases are the best way to store your data.  That's what they were designed to do, and Picalo builds on them rather than replicates their behavior.  Picalo table files (.pco) should only be used for small to medium-sided data sets.  If you have a large data set, install MySQL, PostgreSQL, or another database.
A simple 'for' loop in a script can go through each record of a table.  See the Picalo Cookbook for more information on using this loop in a script or in the shell.
In keeping with most programming languages, Picalo uses the double equals for testing equality (myvar == 5 to test if myvar is 5) and the single equals to assign value (myvar = 5 to set myvar to 5).
Database tables can be accessed directly using dot notation, as in dbname.tablename.  They can be used this way in scripts, formulas, and filters.
Picalo's Upload Table (Data menu) can upload an entire table to a database.  Due to differences between databases, it uses the most common SQL syntax that works with most (but not all) databases.
Picalo's GUID (globally-unique identifier) utility library can create unique numbers.  GUIDs make excellent database keys.