wtorek, marca 23, 2010

Jednoczesna edycja pliku.... a jakby to tak........ i nowy ePubGenerator v0.0.4

Disclaimer: to są tylko domysły i pomysły i wcale nie mówię, że to się da dodać do OOo2GD, a nawet jeżeli się da to nie mówię, że to dodam.Przyglądałem się jak działa wspólna praca 2 osób nad tym samym dokumentem w Google Docs, moje przyglądanie było głównie pod kątem tego jak to działa od strony technicznej, czy może logicznej.I wnioski są takie, że poszczególne przeglądarki robią update tego co mają na podstawie wersji. Jeżeli 1 osoba napisze w współdzielonym dokumencie "słowo" to druga osoba ujrzy ten napis wtedy gdy jej przeglądarka pobierze kolejną wersję dokumentu w której jest właśnie ten napis "słowo".I teraz pytanie czy to w ogóle można wykorzystać do takiego hackerskiego wpięcia się do zabawy? Czy gdyby pobierać powiedzmy co 10 sekund dokument z Google Docs [albo sprawdzać czy pojawiła się nowa wersja i ją pobierać] i jednocześnie co 10 sekund po stronie klienta sprawdzać czy dokument edytowany w OpenOffice.org się zmienił...... to czy gdyby umiało się jeszcze połączyć, tudzież jeśli ktoś woli zrobić merge'a tych dokumentów i wrzucić wynik jako nową wersje do Google Docs..... to czy zaczęłoby to działać jak wspólne edytowanie tego samego pliku?Zapominamy tutaj o takich "bonusach" jak to, że konwersja ODT -> Google Docs -> ODT nie da na wyjściu takiego samego dokumentu jak był na wejściu ;-)Zapominamy też o tym, że nawet jak konwersja nie będzie problemem to trzeba by jeszcze do OO.org załadować nową wersję dokumentu tak by użytkownik tego nie widział, czyli pewnie trzeba by było operować na zawartości edytora, a nie na plikach.... [To mnie zniechęca i sugeruje, że się nie da zrobić takiego czegoś :-(]Teoretycznie powinno się udać. Algorytm musiałby działać chyba mniej więcej tak:1) czekaj 10 sekund2) czy na serwerze nowa wersja? jeśli nie to idź do 53) pobierz nową wersję i wersję poprzednią4) stwórz zbiór A różnic między nową wersją na serwerze, a poprzednią wersją z serwera5) stwórz zbiór B różnic między poprzednią wersją z serwera, a aktualnym edytowanym dokumentem.......... tu się zaczyna magia, bo trzeba pewnie znaleźć różnicę C = A \ B i nanieść te zmiany na aktualnie edytowany dokument, a następnie wysłać go do serwera......Ciut za dużo domysłów, a "trochę" brak chęci ;-) ale może warto się przyjrzeć.Nie żeby od razu pisać ;-)Bo do pisania to mam nadal ePubGenerator'a który dziś doczekał się wersji 0.0.4, która różni się szczególikami, np. nie wywala się gdy dokument wskazuje na obrazek w sieci, a na dodatek śmieciowe pliki tymczasowe umieszcza w katalogu tymczasowym.


Podobne postybeta
Działa :-)
OOo2GD 2.3.0 - nowe dokumenty i autoupdate w działaniu :-)
Defragmentacja SSD - o tym dlaczego nie należy jej robić
Poszlaki o GDrive... Jak ludzie je znajdują????
Kolczatka ;-) czyli próbujemy zastąpić Dziobaka ;-)