The private beta of Zoho Sheet, an online spreadsheet application was launched on Feb 24, 2006. If you want to try your hands on the Beta, provide your email id at http://zoho.com/sheet
and they will send you the invite.
1) Confirm to make public: When I click on "Make Public" link, it immediately turns the current file into a public page!
I expect a confirmation dialogue box since the data might be sensitive.
For e.g. if you are looking at spreadsheet number 177, your URL will be
after turning it into public page it will look like this...
2) No way to use other public spreadsheets as templates and crate my own, based on that structure.
3) Search: you can look for a word within the tag names and not the actual data. I will like to search across all the sheets.
4) Copy Paste: I could import the excel file. But I did not find any way to copy - paste from excel (or from other zoho sheet) as advertised.
5) IE 5.0: You need the latest browser. IE 5.0 doesn't seem to work.
6) Password Change: Once you have registered yourself, there seems to be no way to change the password. The "betauser" login and password does work as additional security, but letting the user change his password is a must!
7) Doesn't scale: I tried the software with around 2000 rows and found that it does not work well with huge data.
Another point I noted is that, it works very well with limited set of records but as the number of rows grows, it becomes difficult to browse the data. I mean the scroll bars just don't appear some times.
None the less, this is very usable spreadsheet application found on the net.
Note: Check out http://www.zohowriter.com/
for an online word processor.
The CSS based technique by Dan Cederholm allows you to change a color of a .gif file. He has created a transparent .gif file and applied different background colors to it. (blue in this case) Simple but very powerful technique.
img src="http://images.fastcompany.com/icon/riskfree.gif" alt="*"
style="background: blue none repeat scroll 0%;
1) Completely private wiki. (Just like your yahoo account!)
No one can read or edit any page unless he has logged in. No one can create an account so he can't log in!
Add the following 4 lines to the LocalSettings.php file found in the root directory after this line...
require_once( "includes/DefaultSettings.php" );
$wgWhitelistRead = array( "Main Page", "Special:Userlogin" );
$wgGroupPermissions['*' ]['createaccount'] = false;
$wgGroupPermissions['*' ]['read'] = false;
$wgGroupPermissions['*' ]['edit'] = false;
The first line declares that everyone can still read the Main Page and Login page.
Users can't create account, nor read or edit pages.
2) Read by everyone, but edited by only admins. (just like website!)
Change the third line ['read'] to true. No one can create an account though.
3) Read by everyone, but edited by registered users (just like message boards!)
Change the second line ['createaccount'] and third line ['read'] to true. Users can create an account and then participate.
4) Completely open wiki (just like wikipedia!)
(default setting) Don't add any of the four lines mentioned above to the LocalSettings.php file! :)http://www.mediawiki.org/wiki/Download
Group by and unexpected results
Consider the following table structure:
CREATE TABLE `test` (
`id` bigint(20) NOT NULL auto_increment,
`data` varchar(13) NOT NULL default '',
`name` varchar(25) NOT NULL default '',
`descr` varchar(25) NOT NULL default '',
`version_tag` tinyint(3) NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `PUI` (`PUI`)
Consider the following data:
INSERT INTO test(data, name, descr, version_tag) VALUES('001', 'Command 1', 'huhu', 1);
INSERT INTO test(data, name, descr, version_tag) VALUES('002', 'Command 2', 'hehe', 1);
INSERT INTO test(data, name, descr, version_tag) VALUES('003', 'Command 3', 'haha', 1);
INSERT INTO test(data, name, descr, version_tag) VALUES('001', 'Command 1', 'huhuhu', 2);
INSERT INTO test(data, name, descr, version_tag) VALUES('001', 'Command 1', 'DELETED', 3);
Basically, I need to find a way to SELECT the latest Command version for every existing command. Different commands are identified by the value in the data column, and the latest version is the highest number in the version_tag column.
To retrieve the set of commands as of version #2, I have been trying the following command:
SELECT * FROM test WHERE version_tag <= 2 GROUP BY data ORDER BY version_tag DESC
but I end up with the rows with ID 2, 3 and 1 instead of the expected: 2, 3 and 4.
If you are on MySQL 5.0 it's very easy to find the date of last Thursday. For e.g. 23rd February 06 is the last Thursday for Feb-06
Here is how to create a table and add a few random dates.
CREATE TABLE `test1` (
`mydate` date NOT NULL
-- Dumping data for table `test1`
INSERT INTO `test1` VALUES ('2006-02-02');
INSERT INTO `test1` VALUES ('2006-01-27');
INSERT INTO `test1` VALUES ('2006-04-15');
The query that will return the last Thursday for each month will be....
SELECT mydate, mydate1, case
when weekday(mydate1) = 3 then mydate
when weekday(mydate1) = 2 then date_sub(mydate1, interval 6 day)
when weekday(mydate1) = 1 then date_sub(mydate1, interval 5 day)
when weekday(mydate1) = 0 then date_sub(mydate1, interval 4 day)
when weekday(mydate1) = 4 then date_sub(mydate1, interval 1 day)
when weekday(mydate1) = 5 then date_sub(mydate1, interval 2 day)
when weekday(mydate1) = 6 then date_sub(mydate1, interval 3 day)
end as last_thursday
from (select mydate, LAST_DAY(mydate) as mydate1 from test1) as x
mydate mydate1 last_thursday
2006-02-02 2006-02-28 2006-02-23
2006-01-27 2006-01-31 2006-01-26
2006-04-15 2006-04-30 2006-04-27
mydate1 is nothing but the last day of that month.
weekday function will return the day of the date in the numeric form.
The standard numbers for each day are as follows:
0 = Monday - 4
1 = Tuesday -5
2 = Wed -6
3 = Thursday = 0
4 = friday -1
5 = Saturday -2
6 = Sunday -3
If the last date of the month is AFTER the last thursday in the same week,
you have to go back 1,2 or 3 days.
If it is BEFORE the last thursday, you have to look into the previous week.
And therefore deduct 4, 5 or 6 days.