New keyboard shortcuts for the spreadsheet

The spreadsheet application can now handle the tab key being used to progress to the next cell to the right. the enter key will select the next cell below the one you were at before you started tabbing. Finally the arrow keys can be used to manipulate the selected cell. There is still one bug with this new feature set, theĀ Keyboard bindings allow for cells to be edited off screen. Hopefully that will be fixed soon, I do not believe it to be a large bug but it is late and I will fix it Tomorrow.

– Asher


Finishing up the year, beginning the summer

Overall this year went pretty well, we became overloaded with work in the past few months but that is all over now. Going into the summer I hope to make applications that are fully featured. I am personally proud of the accomplishments that Beth and I have achieved, and like I say, It’s only going to get better. Looking to the future we will be finishing up the functionality of the spreadsheet and code editor. Live editing will continue to be the top priority and we will be working on making sure the system is solid, secure, and cheap, we would not want processors to be overflowed with benign update calls to the server when the window is not in focus. Also I would like to mention a few other colleague’s programs. BlueMesh: a bluetooth mesh networking library, written by up and coming masters of parallel magic who helped out with some algorithm development for Briefcase. Colin Kubler’s Koala / LDT which provides the base for the syntax hi-lighting in the code editor.

– Asher

Bad code and little documentation

In the past few weeks I have begun writing two new applications for Briefcase: Code editor, and Presentation Editor. The code editor is based off of the LDT syntax highlighter and the presentation editor is meant for use with the BIG presentation system. As I have been rapidly coding there is little to no documentation for these applications and the code base for them is quite horrendous. But that is ok. Why is it ok to have horrendous code? For research, just messing with code to figure out how it works. However, looking back on it I see that it is quite bad. I also tried to see how the LDT would work with a content editable DIV tag. It works, but there are many problems with it. So I am now going to begin working with ranges within text areas in order to implement adding and removing selected text within a text area. If I am able to do that then the entire code editor will be created using a slight derivation of the LDT. The documentation for Briefcase need to be improved quite a bit before I can consider the program even remotely ready for a release.

Pushing back the version one release date

Originally I had planned to release the first version of briefcase tomorrow, however there are still a few critical features that are not implemented. We are very close to having a fully functional and open beta but not just yet. I will continue working hard to try to finish the functionality as soon as possible. After the first release I will also write about how you can create a test account on the development server if you want to try using it.

– Asher

Progress on the spreadsheet refactor

Progress has been going well. Many of the bugs that were plaguing the program have been removed and overall the spreadsheet looks nicer. The whole thing is still a bit gray but that is ok for now. Not all of the features have be re-implemented but the ones that have are done much better then last time. The spreadsheed has been tested with 5,000,000 datapoints (five million) and it was able to render at a fast enough speed to consider easily usable. the problem will be when those datapoints are all functions and twice the amount of data will need to be stored or more processor time will be used. Ill write more about it later but for now I will leave you with a screen shot!

Rewriting the Spreadsheet Interface

I have begin rewriting the spreadsheet interface. It is very nice to look at some of the old code and say “what the hell is this, that’s stupid” and then make it better. I can only imagine that in the next time I do it I will be looking at the code I am writing now and say the same thing. But sometimes that is just what needs to happen, throw out all the old code and start again from scratch (or almost scratch). After learning about the two statements “loose coupling and high cohesion” I find that loose coupling, making each function not rely on global variables or non argument states and splitting up functions, is much more important when you go back to try to re-factor the code.


– Asher Glick

Undergraduate Research Symposium (UGRS)

On Wednesday, the RPI Undergraduate Research Symposium. Unfortunately they only let on person actually give the oral presentation so Beth decided to not present. I believe that it went well, we used a very similar slide deck to our presentation at university of Albany.
I am going to begin finishing the briefcase fronted re-factor this weekend.

– Asher Glick