# Beta Testers Needed. Now!



## serving2masters (Feb 21, 2002)

Hey, some may remember I had a spreadsheet program a few weeks ago. Well, it's back and it's beefed up. Huge-like.

Anyway, I'm hoping to get it done in time to submit it for Apple's Student Developer Design Awards thing on the first of March, so I could use some help testing it.

What do you get out of it, you ask? Well, damn little except a hearty handshake should I ever meet you in real life, and the joy of screwing around with this:

http://homepage.mac.com/gotterdamn/BCSpreadsheet.dmg.gz

Current features:
fully(?) functional spreadsheet which handles trig functions, standard *+/-^, sums, products, etc.

copy/cutting/pasting cells works now. I think flawlessly.

undo/redo works

insert/delete row/column

copy's as tiff for kickass pasting of a table into TextEdit and the like.

Copy as HTML code, to give you the selected cells as an html page.

Cell Info window showing the web of dependencies between cells.

Font/color changing for selected cells. (look at sample.sps for example)

Prints pretty well, but I haven't figured out how to find out if the user wants a landscape or a portrait yet.


Functions I'm hoping to do in the next five days:
Graphs. Hopefully line,scatter, and bar graphs.


----------



## seb2 (Feb 22, 2002)

looks nice.

the only two things i've discovered so far are: in the "save as" dialog, don't use helvetica for "File Format" and make the popup menu the same size as the one above.

and: in the application menu, rename "hide newapplication"


----------



## martinatkinson (Feb 22, 2002)

Hello!

I downloaded it and willl play around with it tonight, what kind of programming language are you using to make this?  I am assuming Cocoa but correct me if I am wrong.

Have a great day!

Albert


----------



## martinatkinson (Feb 22, 2002)

Hello!

I quickly looked at your application and looks good, I will point one thing out.  Your interface style (the black whit and grey) of the cells should probably look more like an Aqua application.  Especially since you are submitting this in the design awards.  I *think* that Apple will be looking for something that compliments the Mac OS X interface.

Sorry if this seems harsh just wanted to point that thing out.  If you make it more Aqua-like it will be alot better in my opinion.  Your features are totally awesome though and I have not found any bugs not mentioned by "seb2"

Have a great day!

Albert


----------



## serving2masters (Feb 22, 2002)

First, thanks to both of you for looking at it.

seb2:  The save as menu is the one apple designed - I just overrode the datarepresentationoftype method, so to get rid of that part, I'd have to tell it to only save-as in .sps and do .csv in some separate import/export thing. That might be better though, since .csv doesn't actually save everything.

Thanks for catching the newapplication thing!

martinatkinson: Yep, pure cocoa. First thing I've ever written in it.

I started out with a more aqua design, using the tableheadercell's instead of the black ones, but it looked kind of weird stacking them on the left. I'll see if I can find a better looking cell though.


----------



## seb2 (Feb 22, 2002)

> _Originally posted by serving2masters _
> *First, thanks to both of you for looking at it.
> 
> seb2:  The save as menu is the one apple designed - I just overrode the datarepresentationoftype method, so to get rid of that part, I'd have to tell it to only save-as in .sps and do .csv in some separate import/export thing. That might be better though, since .csv doesn't actually save everything. *



no, sorry, i meant the label for the popup menu. since i couldn't find it in your nib, i guess you construct this at runtime. use something like [NSFont systemFontOfSize:[NSFont systemFontSize]], if that helps...


----------



## whitesaint (Feb 23, 2002)

Have you read the Aqua Human Interface Guidelines?    I suggest a new Icon as well.  Try making the colors (the black) customizable, i know this is very easy to implement.  Also make it cool by adding transprency!  I know this is also very easy to implement.  Other than that, yes follow the Aqua Human Interface Guidelines, especially if you are going for an award such as that.  It could use a little bit of optimizing too.

-whitesaint


----------



## serving2masters (Feb 23, 2002)

Whitesaint:
I got through about a page of the human interface guidelines before I decided, "screw it man, I've been using computers my whole life - I know what stuff's supposed to look like". It appears I may have been optimistic though 

Customizable coloring sounds good, and I'll implement that sometime this weekend.

Where would you suggest transparency? I had the cell info window transparent when I first made it, but for me at least, transparency just makes everything hard to read.

seb2:
is this what you were talking about?
http://homepage.mac.com/gotterdamn/savesheet.jpg



I changed the color scheme today, and more importantly found where most of my performance troubles were coming from, which I'll explain at the bottom of this, in case anyone is interested in learning from my experience. The interface looks a lot more "aqua" now, I think.

I also fixed one bug where the font got screwed up when loading a file.


Anyway, if anyone's interested in taking a look at the change (minimal thought it is) It's at the same link. 


--------performance trouble experience---------
The cells I was using for column/row markers (the black ones) were set to be disabled. This was because I didn't want people to be able to select them, and (despite what the api says) disabling a cell is the only way to stop selection.

The performance issues came from the fact that disabled cells are partly transparent. Transparency is pretty and all when it's in the right place, but when there's a whole bunch of them being drawn, it slows everything down horribly. So, the way I got around all this was to override the isEnabled method to always return false. This way, even though my cell was still enabled (meaning it redrew itself normally), when the NSMatrix checked to see if it was allowed to be selected, it was told it wasn't.

Anyway, net result for me was it cut down on the delay when using the command-arrow commands by about 80%


----------



## whitesaint (Feb 23, 2002)

Okay - serving2masters.  Since you helped me out alot, I am more than happy to help you out as best as I can.  I suggest letting the user to be able to specify the transparency of the window.  Since it is soo easy to implement and every application gets it for free, every application should do it.

Here's what you have to do:

1.	Create an Outlet in IB to your main Window.
2.	Drag a Slider out.
3.	Create an Action for the slider and connect it to the same class that you made the Outlet for.
4.  Now here's the code:

- (IBAction)myActionid)sender 
{
	[mywindow setAlphaValue:[sender floatValue]];
}

I'm sorry if you already know how to do that.

-whitesaint


----------



## whitesaint (Feb 23, 2002)

Aqua Human Interface Guidelines:

- Metaphors
- Direct Manipulation
- See and Point
- Consistency
- Forgiveness
- Perceived Stability
- Aesthetic Integrity
- Modelessness
- Feedback and Dialog
- User Control

Actually, the AHIG  are actually very very important.

Hey.  Give me your e-mail address and ill send you  2 streaming videos from World Wide Developer Conference 2001, explaining how to implement to AHIG.  They are somewhere around an hour long each.  Just to show you how important it is!


----------



## serving2masters (Feb 23, 2002)

I made the coloring and transparency adjustable this afternoon. 

Here's a screenshot:
http://homepage.mac.com/gotterdamn/transp.jpg

The one in the upper left is the default appearance.

there's now preferences for a default appearance, and appearance can be adjusted for the individual files and is saved/loaded correctly.

Transparency is separate for the main window and the cell info window.

Again, if you want to take a look at it, it's at the same link. Hopefully by tomorrow night I'll have some primitive graphing working though, so you might as well wait until then.


whitesaint: I sent you and email through the "send user an email" link. let me know if you don't get it.


----------



## seb2 (Feb 23, 2002)

whitesaint, i'd also be interested in the videos, i assume they're just urls of streaming qt videos?

haha, i'm also thinking about taking part in the competition... completely different app, probably not as advanced, but nice, too.

leave me the ibook, ok?


----------



## serving2masters (Feb 24, 2002)

Hey whitesaint, those videos rocked. The icon one was really good.

Seb2: I hope you win, man - flying you in from germany would be such a better use of the scholarship. My parents live in Cupertino and I go down there every month or two anyway. What's your app do?

Anyway, BC Spreadsheet is now pretty much feature complete. There's a couple other things I had thought I was going to add, but I am completely burned out.

So, if you guys could download it and take a look at the graphs, and specifically tell me how unituitive you think the interface is for them, I'd be mighty grateful. to me, they feel like they're completely hacked on top of everything else (because they are).

Screenshot with graphs:
http://homepage.mac.com/gotterdamn/graphs.jpg

Download link:
http://homepage.mac.com/gotterdamn/BCSpreadsheet.dmg.gz

Thanks all!


----------



## seb2 (Feb 24, 2002)

> Originally posted by serving2masters
> Seb2: I hope you win, man - flying you in from germany would be such a better use of the scholarship. My parents live in Cupertino and I go down there every month or two anyway. What's your app do?


agree. 

well, it does nothing too special, have a look: http://www.sebastian-krauss.de/locator

i tweaked the indexing of removable media, now works nicely in the background and indexed media can be grouped in "categories", so you can have your collection of picture cds and a collections of mp3 cds and all that, i'd release the new version anyway sometime next week.



> So, if you guys could download it and take a look at the graphs, and specifically tell me how unituitive you think the interface is for them, I'd be mighty grateful. to me, they feel like they're completely hacked on top of everything else (because they are).


wow, those screenshots look nice! i'll donwload it and tell you what i think!

any idea about the "competitors"?

i know of one other: my brother; he's hard to beat. he wrote the only existing driver for usb webcams for os x which now supports several cams, and he's working on new ones right now...


----------



## serving2masters (Feb 24, 2002)

seb2: Dude, your app rocks! Takes 1/10 the time of sherlock. My only suggestion would be opening a little information window the first time it gets started on a machine to suggest to people that they update their database - first time I ran it mine wasn't updated and I couldn't figure out why I wasn't seeing everything. I'm sure you say something about updating in the documentation, but most people don't read the documentation before they start using stuff. Or maybe even set it up to open a window suggesting they update if it's more than a couple weeks out of date.

About competition, I have no idea. The only other major app I've seen was in the Developer Student Showcase, 
http://developer.apple.com/students/showcase/
that StevePerfect app has an unbelievable number of features. None of them by itself seems  terribly impressive from what I've seen, but the guy packed half the API into that thing.


----------



## seb2 (Feb 24, 2002)

> [Originally posted by serving2masters seb2: Dude, your app rocks! Takes 1/10 the time of sherlock. My only suggestion would be opening a little information window the first time it gets started on a machine to suggest to people that they update their database - first time I ran it mine wasn't updated and I couldn't figure out why I wasn't seeing everything. I'm sure you say something about updating in the documentation, but most people don't read the documentation before they start using stuff. Or maybe even set it up to open a window suggesting they update if it's more than a couple weeks out of date.


wow, one of the best suggestions in a long time. i'll deffinetely do that, thanks!

well, the real work is done by "locate", it's very underestimated, i use it very regularly and have absolutely no idea how i could live without that in os 9.

might lose it's justification for existence as soon as apple implements a journaling file system (which they're supposedly working on), but until then...

and yes, you're right about people not reading the documentation. once you have your app out, be ready to answer everything you wrote the faq for.


> About competition, I have no idea. The only other major app I've seen was in the Developer Student Showcase,
> http://developer.apple.com/students/showcase/
> that StevePerfect app has an unbelievable number of features. None of them by itself seems  terribly impressive from what I've seen, but the guy packed half the API into that thing.


very good description. 
the link is down, but judging from the abstract, your description seems quite exact...


----------



## serving2masters (Feb 24, 2002)

Hey everybody. I just changed the icon for my app!  Huzzah!

I'm not much of an artist. Except drawing robot monkeys - but I do that by hand, this whole computer drawing thing is beyond me. Anyway, same link as before:
http://homepage.mac.com/gotterdamn/BCSpreadsheet.dmg.gz

and I also fixed one bug with the drawing of scatter plots - they were failing to draw the last point before.


----------



## serving2masters (Feb 25, 2002)

Well everybody, I'm planning to submit this for the design awards tomorrow night, as after a month of giving up hours of sleep to this, I want to make sure everything goes okay.

So, any final feedback would be greatly appreciated.

Same link, and thanks a lot for all the help everybody's given me already.

This is the final product, except for the readme, so if anything looks off, please let me know.
http://homepage.mac.com/gotterdamn/BCSpreadsheet.dmg.gz


----------



## seb2 (Feb 25, 2002)

still in the process of testing. the only thing i found so far is that on a few sheets, you didn't set return as key equivalent for "ok" and that the "at cell" textfield is case sensitive; entering "B4" works, "b4" not -- and as you can see in my postings, i rarely use the shift key...


----------

