Google Presentations Coming This Summer

April 17, 2007 | Leave a Comment

Google announced today that presentations are coming to Google Docs and Spreadsheets. This was of course rumored a couple months ago, and certainly expected (or eagerly awaited…) by the tech industry.

From the blog:

we want to welcome the team from Tonic Systems to Google. Tonic, which we’ve just acquired, is based in San Francisco and Melbourne, Australia. They have some great technology for presentation creation and document conversion, and it will be a great addition as we add presentation sharing and collaboration capabilities to Google Docs & Spreadsheets.

Looking into Tonic a bit more deeply lead to the FAQ on tonicsystems.com:

“Tonic Systems is a San Francisco-based company that provides Java presentation automation products and solutions for document management - Tonic Systems Builder, Tonic Systems Filter, Tonic Systems Transformer, Tonic Systems Viewer, and JarJar Links. Features of their products included text extraction for indexing documents, presentation creation capabilities and document conversion tools.”

My only fear is that the technology they are buying as part of the Tonic acquisition is Java based. Docs and Spreadsheets is much lighter as pure javascript and xhtml. I trust Google will strike the appropriate balance and get this new application integrated and working nicely. As soon as screenshots begin to emerge, I’ll be sure to post those.

google, google presently, tonic, tonic systems, presentations, presentation, powerpoint, office, docs, documents, spreadsheets, docs and spreadsheets, writely, docs & spreadsheets, java, javascript

Tags: , , , , , , , , , , , , , , ,

Related:

Google Presently?

February 7, 2007 | 3 Comments

Garett Rogers on ZDNet points out an interesting section of the Google language file in Google Docs.

JavaScript:
  1. var MSG_VIEW_PRESENTATION="View presentation";
  2. var MSG_PRESENTATION_SETTINGS="Presentation settings";
  3. var MSG_DOC_TO_PRESENTATION="Convert document to presentation";
  4. var MSG_DOC_TO_PRESENTATION_HINT="Once your document is converted to a presentation, you can insert slide breaks using Insert> Slide from the main menu.";
  5. var MSG_PRESENTATION_TO_DOC="Convert presentation to document";
  6. var MSG_POPUP_BLOCKER="Presently is unable to launch your presentation in full-screen mode. Check your pop-up blocker settings.";
  7. var MSG_NEW_SLIDE_TITLE="New Slide";
  8. var MSG_UNSUPPORTED_BROWSER="Unsupported Browser Presently doesn't support Opera and will not function properly. Would you like to continue anyway?";
  9. var MSG_SLIDE_INDEX="Slide %1 of %2: %3";
  10. var MSG_NEXT="Next";
  11. var MSG_NEXT_HINT="Space, Enter, N";
  12. var MSG_PREV="Previous";
  13. var MSG_PREV_HINT="Backspace, Del, P";
  14. var MSG_ZOOM_IN="Zoom in";
  15. var MSG_ZOOM_OUT="Zoom out";
  16. var MSG_ZOOM_RESET="Zoom reset";
  17. var MSG_TOGGLE_AUTOFIT="Toggle AutoFit";
  18. var MSG_PICK_THEME="Choose theme:";
  19. var MSG_THEME_BLANK="Blank";
  20. var MSG_THEME_GOOGLE="Google";
  21. var MSG_THEME_LIQUID="Liquid";
  22. var MSG_THEME_MONOCHROME="Monochrome";
  23. var MSG_TOGGLE_TOOLBAR="Hide/show toolbar";
  24. var MSG_EXIT_PRESENTATION="Exit presentation";
  25. var MSG_END_OF_PRESENTATION="End of presentation. Are you sure you want to exit?";

This tips the hand and shows they are intending to have an application called "Presently" and it will have theme capabilities. We would assume it will export and import from Microsoft Powerpoint...

On a side note, Google has already reacted to this by pulling the above quoted language from the file.

google, presently, presentation, google docs, google presently, google, powerpoint, microsoft, microsoft powerpoint, javascript, garett rogers, zdnet

Tags: , , , , , , , , , ,

Related:

2006 in Review: Personal Top 10

December 31, 2006 | Leave a Comment

In general I don't directly blog much about my personal life. However, I think it is nice to look back at the year and remember the big things that happened. With that in my mind here is my top 10 list of most significant personal events and whatnot from 2006.

10 - Had a new roof put on our house
We hired Black Ox Roofing to put a standing seam metal roof on our house. They did a fantastic job and I will be much more comfortable this winter knowing we should be free from leaks.

9 - Upgraded our living room
I'm starting small here, but I do spend a lot of time each day in my living room. Early in the year my mother repainted our living room as a favor during her February school break. This lead us to rearranging the furniture in a way that greatly enhances flow and conversation. Later we bought a new Samsung 42" DLP projection TV and a couch, chair, and ottoman set. We also rewired the connectivity between my Mac and the TV so no more wires run across the floor. As a whole all these changes have created a much more habitable and comfortable living room experience. Most of this work was done in preparation for our new baby and the extended time we would be spending hanging around in the living room.

8 - Attended and presented at SunGard HE Northeast Conference in Lake George, NY
I presented on three topics at SunGardHE's brand new northeast regional conference. The topics were: Collecting Luminis Statistics, Extending SSO - CAS in Luminis, and Implement and Deploy Banner Channels. It is always fun to present and I had great attendance at my various sessions. In addition, the sections I attended were informative and generally well presented. This conference should be great for SunGard HE clients.

7 - Attended CAMP Shibboleth in Burlington, VT
Educause puts on a pretty good show and I certainly learned a great deal from this one. Shibboleth and identity management as a whole are important topics for me. I hope to be able to leverage much of what I learned from this conference to get centralized authorization and federated single sign-on in place at Plymouth State University.

6 - Was introduced to JQuery
After attending the Ajax Experience, Matt introduced me to JQuery. This is the ideal JavaScript toolkit for how I like code to be structured. This new technology in my toolkit is already greatly effecting what I am capable of creating and maintaining. As I become more proficient, I expect my love of JQuery to grow even further.

5 - Blog became trafficked and profitable
I now have over 400 posts and my daily numbers according to Bsuite dance around the 20k mark. I am getting a fair number of comments. In general, this blog has become a highly satisfying piece of my life. In addition I am making a reasonable amount of money doing it, allowing me to fund other entertainment like comics, movies, and video games.

4 - Attended and presented at SunGard HE Summit in Orlando, FL
See my previous post for all the details.

3 - Cruised the Caribbean with my wife and my family
In the spring my parents, my brother and his wife, my aunt and uncle, and my wife and I travelled together to the Caribbean on a cruise. We visited Puerto Rico, Saint Thomas, Dominica, Barbados, and Aruba. I could not have asked for a more entertaining group of people to travel with. The things we saw and experiences we had will forever remain significant in my life.

2 - Found out we were having a baby
Early this year we learned my wife was pregnant and we were having our first baby. This is an amazingly significant milestone in our lives. My wife's pregnancy went very well, and you can read her week by week experiences on her blog, Being Sara.

1 - Xander was born
At 6:39 pm on Wednesday September 20th my first born son arrived, Alexander "Xander" Grady Tirrell. He weighed 8 lbs 2 oz and was 20.5" long. After a long labor he was finally born cesarian. He is happy and healthy. As part of his coming into the world, I have not been at work much. I took 6 weeks when he was born followed by a longer leave from November 17th through January 2nd. I have been fortunate to spend a great deal of time with the little guy now when it is so important.

So that's it. There is my year in top 10 summary style. It's been exceptional.

baby, being sara, caribbean, identity management, javascript, jquery, shibboleth, summit

Tags: , , , , , , ,

Related:

jQuery: Form Plugin, Sweet… Almost

November 8, 2006 | 1 Comment

jqueryI am a recent convert to the powers of jQuery ever since Matt fell in love with it at "The Ajax Experience". The syntax and simplicity exceeds the combination of Prototype and Script.aculo.us that I was using.

By far one of the greatest features of jQuery is the ability for the community to create amazingly useful plugins. As I become dependent on many, I will highlight them here (mostly so I don't forget). The plugin I want to talk about right now is the form plugin from malsup.

Basically this plugin allows you to have a form be submitted through an XHR call. It uses the form's defined action URL to determine where to post the values and by default will update a specified div with returned data. It has additional flexibility to get returned data in XML or JSON if you would prefer. Go check out the example on his site, this is extremely simple to implement. This is exactly what I was looking for and I was quite happy, until I found a bug...

There is a problem with the internal formToArray() function when dealing with multi-select lists. If you are pre-selecting values in the list on load with some sort of server side language (PHP in my case), the pre-selected values will be submitted along with the newly selected user values. Obviously this is not what you would want to happen. The problem code occurs around 300 lines in:

JavaScript:
  1. if (t == 'select-multiple') {
  2.     jQuery('option:selected', this).each( function() {
  3.     a.push({name: n, value: this.value});
  4.     });
  5.     return;
  6. }

The jQuery search is finding more than it should. I have two ways in mind to resolve this issue. Most simply, you can add an if statement before the push, like this:

JavaScript:
  1. if (t == 'select-multiple') {
  2.     jQuery('option:selected', this).each( function() {
  3.     if(this.selected == true)
  4.         a.push({name: n, value: this.value});
  5.     });
  6.     return;
  7. }

This makes sense and is simple, yet it feels dirty since you receive more data from the search than necessary. I'm not certain about the efficiency, so here is another option:

JavaScript:
  1. if (t == 'select-multiple') {
  2.     for(var i=0;i<this.options.length;i++) {
  3.         if(this.options[i].selected==true)
  4.             a.push({name: n, value: this.options[i].value});
  5.     }
  6.     return;
  7. }

In this second one, we loop over all the elements in the multi-select to determine which are checked.

Like I said, I'm unsure which would yield the better performance, so hopefully someone will do the benchmarking and it can be rolled into the next version of this sweet plugin.

ajax, ajax experience, ajax form, form plugin, javascript, jquery, jquery form plugin, jquery plugin, jquery plugins, malsup, plugins, xhr

Tags: , , , , , , , , , , ,

Related:

Behaviour, Return of Clean HTML

March 9, 2006 | 1 Comment

Behaviour LogoAs we've begun adopting Ajax, JSON, and similar JavaScript heavy technologies a problem quickly arose. Suddenly our clean HTML was being cluttered with tons of script tags, onclicks, and other various event handling functions. Trying to extract this logic back out of the HTML was a definite desire for us.

Enter Behaviour.

Behaviour uses CSS selectors to specify what elements to apply JS handlers to.

Check out these demos. View the source and you'll see clean markup that is free of logic. This allows us to step back and once again fully separate the presentation layer from the application layer.

ajax, json, javascript, js, behaviour, behavior, functions, web 2.0, web20, programming, html, xhtml, web, web development, css

Tags: , , , , , , , , , , , , , ,

Related:

S5, A Good Start

January 18, 2006 | 2 Comments

I really like the idea of having all my office applications replaced by web based versions. I want to be able to manage any document from where ever I'm sitting on whoevers computer. I then also want to be able to collaborate and share viewing and/or authoring with whomever I like.

Writely does this very well as relates to Microsoft Word. For three months now I have used Writely exclusively for my word processing needs. I no longer have any use for Word.

S5 is billed as "A Simple Standards-Based Slide Show System." Check out this example slideshow. I love what they are accomplishing with their standard, and it is purely XHTML, CSS, and JavaScript in the background.

If someone can take this concept one step further and build a nice WYSIWYG tool to create slideshows and make it web based, PowerPoint may be the next Office application I stop using.

Maybe the Writely developers could add a simple tab to their app that allows creation of presentations on the S5 standard... Whoever does it, I'll be in line for the beta, as I'm sure thousands of other will be as well.

s5, writely, word processing, word, excel, xhtml, html, web2.0, web 20, web 2.0, presentation, presentations, standard, javascript, collaboration

Tags: , , , , , , , , , , , , ,

Related:

Cheat Sheets

August 5, 2005 | 40 Comments

Homestarrunner.com's The CheatI love cheat sheets or euphemistiically, quick references. I find myself becoming quite familiar with something, then not using it for 6 months. After time away from something like that a cheat sheet is the best way of getting back up to speed quickly. Also, good cheat sheets sometimes show me features or functionality I wasn't previously familiar with. Consider this Cliff Notes for technology.

JavaScript, MySQL, mod_rewrite, CSS, and PHP(Thanks Casey)

VI (PDF)

Perl Regular expressions (PDF)

Java (PDF) (Not so quick...)

URL Encode Utility

ASCII

Update 2/20/06:
Prototype JS Library - from BorkWeb.

Still looking for a good one on Oracle and always looking for better ones. Also check this site for some more, though I'm not real excited about most of them.

cheat sheet, cheat sheets, cheatsheet, cheatsheets, cliff notes, css, development, java, javascript, mod_rewrite, mysql, oracle, perl, php, quick guides, quick reference, regular expressions, vi, web, web development

Tags: , , , , , , , , , , , , , , , , , , ,

Related: