Monday, February 6, 2012

Wiredglitz

The Tech Savvy Website

Google acquires EtherPad!

Posted by Max On December - 5 - 2009 ADD COMMENTS

Google, probably the most prominent advocate of moving traditional productivity software such as word processors online, acquired a small company called AppJet whose EtherPad service fits into that agenda.

AppJet announced the Google acquisition Friday. “The EtherPad team will continue its work on real-time collaboration by joining the Google Wave team,” the site said.

AppJet offered free and premium versions of its service, which could import Microsoft Word documents, Web pages, PDFs, and plain text files, and let groups of people edit them collectively on what it called pad. A “time-slider” feature let people look back at earlier incarnations of a pad.

Google Wave has similarities. It’s a sort of hybrid between instant messaging, wikis, and e-mail. Google Chief ExecutiveEric Schmidt sees Google Wave as the future of collaboration, in particular given its intrinsically networked nature and its real-time view of what collaborating people are up to.

That real-time collaboration is a thorny problem. It can be difficult to permit multiple people permission to edit the same document at the same time while ensuring one person’s changes don’t interfere with another’s work. And showing simultaneous work complicates a service’s user interface, too.

Google Docs–the online word processor, spreadsheet, and presentation services–also offers some simultaneous editing abilities. AppJet dings it in its EtherPad FAQ.

“With Google Docs it takes about 5 to 15 seconds for a change to make its way from your keyboard to other people’s screens,” the site said. “Imagine if whiteboards or telephones had this kind of delay!”

Google Wave and Google Docs are perhaps the closest rivals to AppJet, but in the big picture, the rivalry is between cloud computing and the way most people use productivity software today, on their PCs. Notably, though, Microsoft is working on an online version of its dominant Office suite.

Current EtherPad users should brace themselves for the end of the service: “If you are a user of the Free Edition or Professional Edition, you can continue to use and edit your existing pads until March 31, 2010. No new free public pads may be created. Your pads will no longer be accessible after March 31, 2010, at which time your pads and any associated personally identifiable information will be deleted,” AppJet said.

That left one user, JavaScript programmer and jQuery project creator, John Resig, unhappy.

“Super-lame that Etherpad is shutting down. We used it all the time for jQuery planning,” Resig said in a tweet on Friday.

Go: A New Programming Lang. from Google

Posted by Max On November - 11 - 2009 ADD COMMENTS

Google has launched Go, a new systems programming language born with concurrency, simplicity, and performance in mind.

Go is open source and its syntax is similar to C, C++ and Python. It uses an expressive language with pointer but no pointer arithmetic. It is type safe and memory safe. However, one of its main goals is to offer the speed and safety of a static language but with the advantages offered by modern dynamic languages. Go also offers methods for any type, closures and run-time reflection. The syntax is pretty clean and it is garbage collected. It is intended to compete with C and C++ as a systems programming language.

What about multicore programming with Go? It promotes lightweight concurrency allowing developers to create sets of lightweight communicating processes. Go calls them goroutines. This way, you can run many concurrent goroutines and you don’t need to worry about stack overflows. Go promotes sharing memory by communicating. Goroutines aren’t threads, they are functions running in parallel with other goroutines in the same address space. It is very easy to launch parallel functions using the goroutines. This is one of the most interesting features offered by the language. It really simplifies concurrency for systems programming.

Go‘s key features related to concurrency are:

  • Channels.
  • Channels of channels.
  • Goroutines.
  • Leaky buffers.
  • Share by communicating approach.

These features deserve new posts explaining them with more detail. Stay tuned because I’ll be adding new posts about Go soon.

The idea behind Go is to offer a fast compiler to produce fast code. So far, it offers two compilers:

  • Gccgo (GCC is in the back).
  • 8g (x86-32) and 6g (x86-64).

    Copyright © 2009 WiredGlitz.com