Categories
main mozilla po polsku tech

Dawno was tu nie było…

Microsoft wydaje IE8 … i nie chciałby, żeby ktokolwiek tego nie zauważył.

Microsoft ma też dużo pieniędzy na marketing… i nie chciałby…

nasza klasa, onet, gazeta.pl, allegro… – czekam na plakaty na Pałacu Kultury.

Może to specyficzne dla mnie, ale polubiłem branżę przeglądarek bez takich akcji. Zobaczymy czy w każdy problem można rzucić workiem pieniędzy, żeby się rozwiązał…

Categories
main mozilla po polsku

MozCamp w Polsce? – szukamy organizatorów!

Jednym z najważniejszych, jeśli nie najważniejszym celem projektu Mozilla jest budowanie świadomości użytkowników na temat Internetu.

Tych początkujących, którzy szukają informacji o tym jak bezpiecznie poruszać się po nim, jakie narzędzia są w nim dostępne i jakie zagrożenia istnieją w sieci; jak i tych zaawansowanych, którzy mają dużą wiedzę na jego temat, korzystają z “netu” codziennie, ale z tych lub innych przyczyn nie biorą udziału w dyskusji na temat aktualnego stanu i przyszłości sieci.

Chcąc w Internecie budować społeczeństwo, zwłaszcza społeczeństwo obywatelskie, świadomość “obywateli” oraz ich aktywność jest kluczowym elementem, bez którego każdy system będzie podatny na dobrowolne oddanie swej przyszłości w ręcę jednej lub drugiej firmy.

Dlatego też w obu tych przestrzeniach chcemy istnieć i wspierać tych, którzy chcą dzielić się wiedzą i budzić aktywność Internautów wokół siebie.

Pomyśl ilu znasz ludzi, którzy choć mają dostęp nie korzystają z Wikipedii. Nie umieją szukać w wyszukiwarkach, boją się bankowości elektronicznej, nie wiedzą jak korzystać z księgarni internetowych, sieci społecznościowych, nie umieją dodawać zakładek, nie wiedzą jak uniknąć phishingu…

A może sam pracujesz przy Internecie i znasz ludzi, którzy tak jak Ty pasjonują się rozwojem Internetu, tworzą strony WWW, mają pomysły na nowe projekty, denerwują się gdy brakuje im narzędzi, rozumieją dynamikę Internetu. Tacy ludzie właśnie jak Ty i oni macie szansę zmieniać i rozwijać Internet.

Budzenie świadomości obywatelskiej i pomaganie ludziom korzystać z Internetu wygodniej i bezpieczniej jest niezwykle trudnym do osiągnięcia celem. I tak jak we wszystkim co robi projekt Mozilla, nie może odbywać się w wyniku pracy małej grupy ludzi. Potrzebna jest współpraca i współudział ludzi z różnych projektów i społeczności. Na początek, zajęliśmy się tworzeniem platformy…

Platforma nazywa się MozCamp (celowe skojarzenie z BarCamp) i ma za zadanie wypracować optymalny a jednocześnie elastyczny model budowania małych lub średnich spotkań (15 do 50 osób) poświęconych wykładom i dyskusjom związanym z Internetem. Idea wzięła się z połączenia projektu RepRap – robota, który potrafi replikować sam siebie, idei BarCampu oraz manifestu Mozilli.

Jest również próbą odpowiedzi jak wykorzystać potencjał który zbudowaliśmy przez te lata. Co możemy zrobić teraz, jako Mozilla, czym możemy się zająć gdy w niektórych krajach (takich jak Polska) zbliżamy się do 50% udziału w rynku. Co oznacza ten sukces i jak wykorzystać go do realizacji wizji Internetu w którą wierzymy.

MozCamp to w tym momencie koncept rozwijany za pośrednictwem wiki.mozilla.org. Zbieramy tam informacje, poradniki, pomysły na prelekcje, przykłady dobrych i ciekawych prelekcji oraz doświadczenia z poprzednich MozCampów, które mają pomóc kolejnym osobom chcącym zorganizować podobny event. Na wiele pytań odpowiedzi znajedziesz w FAQ.

W rozwoju projektu pomagają takie osoby jak Mark Surman, Jane Finette, Tristan Nitot czy Zak Greant, którzy mogą podzielić się doświadczeniami i pomóc chętnym zorganizować takie spotkanie. Dzięki wsparciu Mozilla Foundation jest także możliwość otrzymania wsparcia finansowego zatem wszystko czego trzeba to pomysł i chęci 🙂

Ja ze swojej strony chcę pomóc rozwijać ten projekt w Polsce. Szukam osób, które chciałyby zorganizować coś takiego na swojej uczelni, w swoim mieście, firmie czy wśród znajomych.

Jeśli podoba wam się pomysł, dajcie znać! Załóżcie stronę na wiki, napiszcie w komentarzach albo odezwijcie się do mnie na mail 🙂

Categories
main mozilla po polsku tech

Samoświadomość przeglądarkowa – living on the edge

Są takie dni kiedy człowiek musi spojrzeć sobie prosto w oczy i przyznać się, sam przed sobą, jak używa przeglądarek.

browser geek

taka już pewnie natura tego co robię, ale mam… sporo… przeglądarek. Ile pytasz? No… jakby to…

iCab, Opera 10a, Amaya 11.1, Camino 2.0b2, Seamonkey 2.0 nightly, Flock 2.1 nightly, Firefox trunk nightly, Fennec nightly, WebKit nightly, Shiira, Arora nightly, Chromium nightly, Safari 4 alpha…Czy to normalne panie doktorze?

Co ciekawe, właściwe wszystkie obsługują nowoczesne standardy (tylko Amaya jakoś tak inaczej  ;)), wszystkie są szybkie rozwijają się dynamicznie i każda posiada jakieś unikalne cechy, których nie ma inna.

rozszerzenia

Podstawową przeglądarką jest dla mnie Firefox, aktualnie używam czegoś co nazywa się Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2a1pre) Gecko/20090306 Minefield/3.2a1pre ale pewnie zmieni nazwę w związku z planowaną zmianą Fx 3.1 na 3.5.

Powyższe daje mi dużo miłych udogodnień i powodów do dumy (jak ostatnie nowości w TraceMonkey, interfejsy do <video/>, acid3 na 94% etc.) , ale skutkiem ubocznym jest ograniczona możliwość korzystania z rozszerzeń.

To czyni mnie mało aktywnym ich użytkownikiem, i jak na browser geeka, plasuję się pewnie na dość dalekiej pozycji z moimi 4 rozszerzeniami:

  • Ubiquity – na razie to dla mnie troche jak gesty myszy. Wiem, że są przydatne, ale ciągle zapominam korzystać. Jak sobie przypomne, to pomaga 🙂
  • Weave – długo używałem jedynie eksperymentalnie ale od powrotu do domu mam desktop i laptop (i na obu różne systemy) więc zacząłem korzystać masowo.
  • Firebug – zmienia sposób tworzenia stron
  • About:tab – najnowsze nabytek. Eksperyment w stronę rozwiązań z Opery, Chrome i Safari ale w połączeniu z podejściem znanym z Ubiquity

Dużo? Mało? Nie wiem… oczywiście wszystkie w wersji nightly.

Jednym z ciekawych efektów takiego używania przeglądarek (i nie tylko, testuje MacOS Snow Leopard, KDE4.3, Android nightly, Thunderbirda 3 nightly, Ubuntu 9.04, Windows 7…) jest to, że wszystko wydaje mi się stare. Kumpela używa “najnowszej” wersji? heh… Firefox 3? Heh… Ubuntu 8.10? Heh… wszystko jakieś takie

stare? 🙂

Ten typ tak ma. Ale jakby ktoś szukał czegoś do potestowania to polecam eksperyment z About:Tab.

Categories
main mozilla po polsku tech

Mozilla nie chce wyrzucać IE z Windows!

W ostatnim czasie nabrała tempa dyskusja na temat IE i Windows. Przyczyną było wystosowanie przez Komisję Europejską wstępnego Stanowiska Obiekcji  (Statement of Objection).

Poniższy post ma na celu sprostowanie pewnych nieścisłości które pojawiły się w polskiej blogosferze w związku z tym wydarzeniem.

1) Gracze

Komisja nie “oskarżyła” Microsoftu, a jedynie wysłała do firmy Microsoft list w którym opisała swoje wstępne stanowisko. To jeszcze bardzo daleko do postawienia zarzutów.

Teza Komisji brzmi: “Złączenie przez Microsoft Internet Explorera z systemem operacyjnym Windows szkodzi konkurencji między przeglądarkami internetowymi, osłabia innowacyjność produktu oraz redukuje wybór użytkownika”. (“Microsoft’s tying of Internet Explorer to the Windows operating system harms competition between web browsers, undermines product innovation and ultimately reduces consumer choice.”). Wybaczcie tak surowe tłumaczenie, chodzi mi tylko o podstawowe brzmienie wypowiedzi.

Jak wiecie pewnie, kilka organizacji zdecydowało się poprzeć stanowisko Komisji – takie firmy jak Google i Opera (która zgłosiła temat do KE w zeszłym roku) oraz Mozilla Foundation. Oznacza to, że trzej producenci przeglądarek internetowych konkurencyjnych wobec Microsoft Internet Explorera, trzy firmy żywotnie zainteresowane rynkiem internetowym wsparły stanowisko KE w tej kwestii.

Nie oznacza to jednak, że wszyscy zgadzamy się co do natury problemu czy też, że będziemy naciskać na KE z jakimś wspólnym rozwiązaniem. Na dzień dzisiejszy w powyższym zagadnieniu występuje przynajmniej 5 podmiotów – KE, Microsoft, Opera, Google i Mozilla.

Każde z tych pięciu podmiotów reprezentuje swoje stanowisko. Nie ma stanowiska wspólnego i obawiam się, że jeszcze troche potrwa zanim (jeśli) wypracujemy je. Trudno mi wypowiadać się w imieniu któregokolwiek z podmiotów, mogę jedynie opisać jak wygląda dyskusja wewnątrz samego projektu Mozilla, choć i to co dzieje się wewnątrz projektu jest niejednorodne.

2) Jest źle

Zacznijmy od tezy stawianej przez Komisję.

“Złączenie przez Microsoft Internet Explorera z systemem operacyjnym Windows szkodzi konkurencji między przeglądarkami internetowymi, osłabia innowacyjność produktu oraz redukuje wybór użytkownika”

Wszystko co wydażyło się do tej pory, to to, że Opera, Google i Mozilla zgodziły się z powyższą tezą. Nic więcej. To bardzo, bardzo ważne, dla zrozumienia aktualnej sytuacji. Trzech graczy zgadza się, że złączenie IE oraz Windows szkodzi rynkowi.

Dowód empiryczny jest taki, że w efekcie tego złączenia nie istnieje dziś rynek przeglądarek, który moglibyśmy nazwać zdrowym. Istnieje jedna przeglądarka, która ze wszech miar powinna utrzymywać około 90-95% rynku światowego. Powodem dla którego tak nie jest, jest to, że jej producent przez 6 lat zignorował wydawanie nowych wersji, a nowe wydania rażą katastrofalną wydajnością, stabilnością i wygodą użytkownika. Jednocześnie pojawił się otwarty projekt, który stworzył przeglądarkę i dzięki pracy setek tysięcy wolontariuszy wypromował ją do takiego momentu, że zdobyła 20% rynku światowego.

Wiele udało się dzięki temu odblokować. Jest jasne, że dzięki temu, że Firefox ma 20% łatwiej jest innym graczom – Chrome, Safari czy Opera mogą względnie łatwo oferować wysokie UX ponieważ serwisy internetowe nie mogą być już “IE only”. Oczywiście niektóre stają się “IE&Firefox only” ale to raczej dotyczy tych, które wcześniej były “IE only” więc nie pogarsza to sytuacji pozostałych. Natomiast wiele innych staje się zgodna ze standardami i otwarta. Ba! Stworzenie dziś przeglądarki jest po prostu łatwe dzięki Mozilli. Bierzesz Gecko czy Firefoksa i tworzysz K-Meleona, Galeona, Epiphany, Flocka, Seamonkey… możesz wziąść też WebKit (czy istniałby gdyby nie Gecko? Czy byłby otwarty?) – jest łatwo.

Jednak nie oznacza to, że rynek jest dziś normalny. Co by się stało gdyby Mozilla wycofała się z rynku przeglądarek i skupiła na, np. edukacji czy komunikacji? Co by się stało gdyby Microsoft wypuścił nie wspaniałą, ale “normalną” przeglądarkę nie odstającą 5 lat za innymi w standardach, prędkości itp?

Twierdzę, że w ciągu 2-3 lat IE znów osiągnęłoby 90-95% rynku. I osiągnełoby go nawet będąc “przeciętnym” produktem. Czy to jest normalny rynek? Czy normalna, zdrowa konkurencja polega na tym, że jeden gracz ma 95% choć nie posiada żadnych atutów czy przewag nad, np. Operą?

Powtórze więc, obecne złudzenie, jakoby rynek przeglądarek był “normalny” wynika z reakcyjnych wysiłków ogromnej społeczności oraz niskiej jakości produktu dominującego. I usunięcie jednego z tych czynników ustawicznie “normalizujących” rynek przywróciłoby absolutnie nienaturalny i niebezpieczny stan. Stan, w którym “oknem na świat” kieruje i które kontroluje jedna firma, której interesem jest zysk akcjonariuszy.

Mozilla jest projektem organicznym. Istniejemy tak długo jak długo mamy sens istnienia i udaje nam się zorganizować wewnętrznie. Chcemy istnieć i mieć wpływ na Internet za 50 lat, wierzymy, że będziemy za te 50 lat potrzebni, ale nie wiemy czy akurat w przeglądarkach. Nie wiemy jak za 50 lat będzie wyglądał świat, nie wiemy jak będziemy realizowali naszą misję, ale uważamy, że mamy obowiązek pracować nad tym, aby Internet był zdrowy. Rynek przeglądarek nie jest i diagnoza KE jest naszym zdaniem absolutnie słuszna.

Rynek przeglądarek jest niezdrowy i złączenie IE z Windows jest jedną z najważniejszych przyczyn tego stanu”.

3) Nie znamy rozwiązania

Teraz, zupełnie czym innym jest określenie problemu, a czym innym jest znalezienie rozwiązania. Ludzie lubią tworzyć skróty, dziennikarze lubią chwytne tytuły. Niestety świat nie jest prosty, a operowanie na rynku, który staje się coraz ważniejszym środkiem edukacji, komunikacji i prowadzenia biznesu jest niezwykle złożonym tematem w którym nie istnieją łatwe rozwiązania.

W tym konkretnym przypadku trudno nawet o stanowisko “Mozilli” gdyż jako projekt jesteśmy wewnętrznie różnorodni i niejednomyślni. Spróbuje więc opisać kilka z zagadnień, które wyłaniają się z dyskusji na ten temat.

a) Primum non nocere

Absolutnie nie zgadzamy się z “prostymi rozwiązaniami” typu – “usunąć IE z Windows” czy “zmusić Microsoft, by dołączył kilka przeglądarek i dał wybór podczas instalacji”. To byłoby chore. Jesteśmy przekonani, że usuwanie przeglądarki z systemu operacyjnego byłoby kaleczeniem doświadczenia korzystania z komputera przez użytkowników i jako takie byłoby ruchem wymierzonym przeciwko użytkownikom.

Mamy też bardzo poważne wątpliwości co do implikacji włączania przez Microsoft jakichkolwiek produktów poza własnymi. Wiązałoby to cykle wydawnicze, tworzyło precedensy w zakresie bezpieczeństwa, praw patentowych, szkodziłoby wreszcie samemu użytkownikowi zmuszając go do kolejnego wyboru.

b) Rząd nie powinien ingerować w technologie i wybory technologiczne prywatnej firmy

Nawet jeśli techniczne możliwe jest, aby KE zmusiła Microsoft do jakiegkolwiek ruchu w zakresie oferty systemowej (jak zrobiła to z odtwarzaczem muzycznym), to byłby to ruch niebezpieczny i ryzykowny. Po pierwsze sam zamysł, jakoby rząd mógł jakąś odgórną dyrektywą dotyczącą wyborów technologicznych uzdrowić konkurencyjność rynku jest bardzo wątpliwy, po drugie zaś tworzy niesamowite pole do nadużyć z obydwu stron. Nie wierzę, aby Microsoft wykonał ruch zgodny z literą decyzji KE w sposób, który będzie wspierał konkurencyjność rynku. Jeśli Microsoft nie będzie partnerem w tej dyskusji to raczej spodziewam się “ogrywania systemu”, sztuczek i obchodzenia decyzji.

c) Czy Mozilla powinna być stroną?

Zażalenie złożyła Opera, podjęła je KE i wystosowała list do Microsoftu. Na ile racjonalne jest włączanie się Mozilli w to? Wierzę, że jest. Mozilla stawia sobie za cel realizację wizji otwartego i konkurencyjnego Internetu jako miejsca do pracy, nauki, zabawy i rozwoju. Nie możemy stać z boku i biernie czekać na decyzje Komisji. Na dodatek, mamy prawo uznawać się za jednych z większych ekspertów w dziedzinie przeglądarek i rynku przeglądarek. Problemem wewnętrznym jest jak zapewnić, że cała społeczność Mozilli ma wpływ na nasze stanowisko. Czy każdy kto ma opinię na ten temat bloguje o tym? Czy każdy komentuje posty Mitchell, Tristana, Marka? Czy każdy bierze udział w spotkaniach Mozilli Foundation gdzie dyskutuje się ten temat?

d) Czy jest już za późno?

Czy ma sens budowanie jakichkolwiek rozwiązań, gdy rynek jest od co najmniej 10 lat skażony taką sytuacją i sam, powolnie i nieudolnie próbuje reagować?

e) Czy firma traci jakieś wolności lub prawa stając się monopolistą?

W nawiązaniu do punktu b), pojawia się pytanie czy Microsoft mający swój system (jak Apple, Red Hat, Canonical itp.) staje się kimś innym tylko dlatego, że jest monopolistą na rynku przeglądarek? Czy powinien musieć zachowywać się inaczej? Czy powinien musieć stosować się do standardów (i czy standardy wówczas nie stają się przedmiotem gier politycznych – patrz ISO i OOXML), czy powinien odpowiadać za rynek którego jest monoopolistą jeśli nie widzi w tym celu biznesowego?

Czy można mówić o “nieodpowiedzialnym liderze”, który nie umie lub nie chce przyjąć na siebie pewnego kontraktu społecznego związanego z dominacją na takim rynku i czy brak tej woli powinien wiązać się z penalizacją? Czy zachowanie Microsoftu w związku z przeglądarkami w latach 2001-2007 powinno być nielegalne? Czy w ten sposób myśląc nie tworzymy paradoksu monopolu w którym dominacja na rynku wiąże się z obowiązkami szkodzenia własnej pozycji?

f) Czy istnieje rozwiązanie?

Czy warto zmuszać Microsoft do stosowania standardów poprzez prawo a nie rynek? Czy to zadziała? Co się stanie gdy w prawie będzie wymóg stosowania CSS2 a wyjdzie CSS3? Co jeśli wyjdzie XHTML2.0 oraz HTML5? Kto decyduje? Co jeśli pojawią sie niezgodności między decyzjami KE a na przykład rządami azjatyckimi?

Czy można zażądać od Microsoftu, aby nie wiązał możliwości korzystania z Windows z IE (np. aby można było aktualizować system bez użycia IE, albo zakazać mieszania użycia IE w celach związanych z systemem operacyjnym z celami przeglądania sieci)

Czy można zażądać od Microsftu, aby zagwarantował, że w przypadku korzystania z innej przeglądarki, wygoda i funkcjonalność systemu nie będą ograniczone?

Czy można zabronić Microsoftowi ukrywania elementów API wyłącznie dla swojej przeglądarki?

Czy ma sens zobowiązanie Microsoftu, aby prezentował inne przeglądarki podczas instalacji systemu lub aktualizacji wersji przeglądarki domyślnej?

Czy IE powinno oferować zostanie zastąpienie domyślnej przeglądarki jeśli został zainstalowany z systemem?

Czy Microsoft powinien być zobowiązany do zapewnienia neutralności technologicznej swoich narzędzi deweloperskich (tak, aby wynikowe programy działały w innych przeglądarkach?)

Czy można zobowiązać Microsoft do edukacji użytkowników o innych przeglądarkach i ewentualne kary za nierealizacje przeznaczyć na promocję wolnych standardów i edukację użytkowników?

4) Podsumowanie

Microsoft ma wszystkie atuty, by w krótkim czasie odzyskać swój monopol. Może to zrobić na setki sposóbów i jedną z najważniejszych przyczyn dla których to się nie stało teraz jest brak motywacji, a nie brak możliwości. Rynek w takiej sytuacji jest w nieustającym napięciu i nie ma dziś najmniejszych szans, aby 3-5 dużych graczy dzieliło się równo rynkiem i mogło zdrowo konkurować w długiej perspektywie.

Poruszony przez KE temat wywołuje dyskusje, dyskusja ta tworzy nowe pomysły na rozwiążania, ale jesteśmy bardzo daleko od konsensusu i jedno co wiemy to to, że musimy być niezwykle ostrożni, aby nie zepsuć bardziej.

Nie wiemy czy którekolwiek z tych działań mają sens. Nie wiemy jak mogą pomóc, a jak zaszkodzić. Wielu z nas ma obawy przed długofalowymi destrukcyjnymi konsekwencjami krótkowzrocznych działań i zastanawiamy się, czy KE w ogóle ma możliwość zrobienia czegoś co nie zaszkodzi rynkowi. Zgadzamy się, że problem istnieje. Zgadzamy się, że powinniśmy znaleźć rozwiązanie. Jakie? Czy istnieje?

Jeśli ten temat jest dla Ciebie ważny, przyłącz się do dyskusji, w komentarzach tutaj, na blogu Mitchell, albo swoim!

Categories
main tech

User interface of rm is broken

I know, I know. It’s so much easier to discover major flaws in design of things just after you made something wrong, but… here it goes.

So yesterday I’ve been playing around with ISO images of several linux distros on my hard drive. Organize, complete torrent download, etc. For that reason, at some point I moved everything to another directory and removed the main directory I use for them using rm -rf ./Downloads/iso.

Then, I switched to working on silme, reviewing ta-LK localization and trying to install SoftPhone. At some point I tried to figure out why I cannot reach the server and launched another terminal window where I pinged the server with no result. I fixed a few things in my connection and wanted to re-ping the server.

In order to select the right window from the background, I swap my mouse to top-right corner of my screen which enables expose mode in macos or linux and presents all the windows for me to select from. How much easier it can be?

Well, in this case I had to select terminal window, which, comparing to others, is pretty much indistinguishable from each other and of course already forgot I have another terminal window at all. The lightning fast auto combination I did was – select terminal, activate, arrow up, enter.

In some universe this probably caused another me to ping softphone server successfully. But in this particular one (that I created with my choice and dragged you into it with me – no offense) I deleted around 30 gB of iso images before I force-closed the tab (ctrl+c did not work).

The tragedy is not devastating. I can live with that. Sure it’s a lesson for me on what not to do, and when not to assume too much, but the biggest outcome (except of launching a few iso downloads instantly) is that it got me thinking about broken design of rm command in shell.

First of all, there are two different models of me using rm command.

1) When I want to clean up unimportant structure that is either empty or almost empty

2) When I want to remove a big chunk of data that I don’t use anymore

First case is when I’m removing directories that were used in the past and have no value, or, weight. Like, nested directory structure with no files, or just a few, or test directory with some test objects inside. Latter case is when I’m deleting directory with Firefox 2.0 localizations, or application I no longer use.

The current behavior of rm is fundamentally broken (I’m so smart once it failed for me, heh…).

Basic operation would be to use rm OBJECT.

This operation will work on any file no matter of:

  • how old it is
  • how often did you use it
  • when did you use it for the last time
  • what apps use it

In other words deleting a file that you used 90 times in last 3 hours, you had on your drive since 2007, was often launched a few times per week because it contains your thesis has exactly the same UI as deleting an empty test.dtd file from data directory.

I call it broken. It ignores all the context that is available to it and assumes a person made a conscious choice, but we all know that using terminal is not all about making conscious choices. It’s about making some actions much faster. Faster equals less conscious.

But what’s even more scary is when we get to directories. Deleting a directory is not that easy. rm dir1 will refuse to work overall just because (comparing to previous case) dir1 is a directory. It’s harder to delete an empty directory than your thesis!

rm offers us a nice argument -d which makes rm threat directories like files, but does it help much? It does with empty directories. So using rm -d object gives you equal UI for deleting your thesis file and an empty dir which is still broken because empty dir is hardly a data loss! The worst can happen when you delete an empty dir is that you cannot remind yourself the name of it. How scary it can be?

Next level of brokenness comes into play when we start thinking of directories with something inside. Today, it rarely happens that we have less than several thousands of directories. It’s getting so complex that OS systems are trying to abstract file system layer and reduce user interaction with the real file system so that people don’t have to spend hours iterating through directories to find the file. It means that very often operation of deleting empty directory does not mean that the directory is fully empty. It means that there’s hardly anything inside. Maybe 5 directories, maybe two small files…

From the computer point of view, it’s not empty. Period. From the user point of view it’s empty or almost empty, who cares. To cover this difference we memorize a new command – rm -rf object. It means what I said – remove this and all the little things inside and don’t bother me.

It’s important to have this method because otherwise you’d have to enter the dir1, delete each empty directory inside and then enter the one subdirectory that contains the only file in this structure, delete it, get back to main directory and remove dir1. rm -rf dir1 solves it.

Unfortunately the solution to remove big chunk of obsolete data is exactly the same. When I want to remove (consciously, after double verification that I don’t need it) 12 GB of data in some directory structure, the easiest thing I can do is to get into parent directory and do rm -rf dir1.

Of course I could use GUI, but almost every GUI tool will try to stat all files inside to show me a nice progress bar which in case of deleting, for example, mozilla-central clone will take forever, so I prefer to use rm -rf dir1.

There are various patterns to recognize the two different kinds of “delete” operation I’m intended to do. One is related to small amounts of data, and usually does not happen just after scanning the directory (I don’t double test such cases), another is more conscious, verified and relates to big amounts of data.

What’s fundamentally broken is that for both, the best and only command I can use is the command that means, more or less, delete whatever is there and don’t bother showing me anything. I actually did not mean it. I could use a confirmation dialog in case of deleting 6 gb of files. Really. It’s just that rm does not provide confirmation. It’s either go or no-go. If I did not provide -rf arguments it will simply refuse to work so I’m adding them not because I want to avoid getting bugged, but because I want to solve my goal!

So one solution might be to switch rm from “not going to happen” mode to “Are you sure you want to delete big amount of your data?”.

Another might be to use context of what I’m trying to delete. Except of a rather rare case of a super important password written in an otherwise empty file in an empty directory structure, usually when something has 10 nested directories and two files with less than 100 bytes of text inside – it’s safe to go. Deleting it means almost the same as deleting one empty directory or file. I should be able to do this without warning.

But when I’m deleting something big and complex I need a way in between rm saying “no – it’s a dir” and “done”. The way that will notice me about the amount of data I’m trying to delete, number of files, number of directories, maybe some other context data in the future, and either ask me for confirmation or give me 3 seconds before proceeding so that I can react and stop it.

This would improve the UI of rm command drastically and save other people data in the future.

Thoughts? Comments?

Categories
main mozilla tech

Reroute to FOSDEM

Yesterday, after horrible 19 hours of flight (plus 3 hours of ferry from Victoria to Vancouver) I landed in Warsaw.

Now, I’m wrapping up to get on the plane to Brussels for FOSDEM 09!

If all goes well I should regain control over myself from Mr. JetLag soon. Right in time for the most exciting event in the year. I can’t wait for Mark’s keynote! 🙂

Categories
main tech

KDE 4.2 released

kde42Just a short note. KDE team has released KDE 4.2 today. It’s their first release of KDE4 project they consider ready for public audience.

KDE4 is a fascinating project. It is a great topic for a book. Project that started when KDE started loosing ground inside Linux DE to Gnome, when KDE became less active, less motivated and somehow drown in lack of direction they managed to build a vision, action plan, set up a clear direction and follow it.

What’s even more amazing is that they followed it despite massive criticizm they had to face around KDE4.0 release.

The vision was, and still is, extremely challenging. It’s not about “updating to current standards”. It’s about setting up new ones. They do not “follow” Windows or MacOS. They experiment to the scale rarely seen in Open Source projects which tend to choose evolution over revolution usually.

Categories
main mozilla tech

Thoughts on hybrid projects

One of the biggest challenges of all open projects is how to effectively manage the most precious and most crucial resource they have – people. We approach this by building a project cultures that are open and participative,  tools that allow us to operate in this open environment and we make whatever possible to make it easy for new people to learn how to blend in to work with others in the way that matches the culture of the project.

In fact, open project became extremely efficient with managing their projects with all the new tools, like trac, mantis, bugzilla, revision control systems, wikis, forums, blogs, planets, newsgroups. You can manage privileges, discuss in groups, build subgroups, work in a cloud, share code, brainstorm, and do this pretty efficiently. The only trick is that it works well on a smaller scale.

Categories
main mozilla tech

MCS: Source files released!

Another milestone for MCS project has been reached! And its a big one!

If you open http://hg.mozilla.org/webtools/mcs/file/tip/theme/source/ you will find full source PSD files of the theme.

picture-41

What does it mean? Well, this is another step on the way of making sure that we have a really good theme that is open to everyone according to what we understand as Open. And understanding of it is not that common.

Think of it. How many open themes do you know. There are a lot of themes that you can download for free, but that’s not making them open, right? Next, there are themes that may provide sources, even on open licenses, which makes them technically open but does it make it easy to work with. Its almost like opening sources of a software, but not making the sources readable, not helping with hacking them, not providing documentation, and build environment… If you track all open projects out there, they usually take a lot of time to open their projects exactly because re-licensing sources is not enough. Because it will not make people want to use it and contribute to it.

Because in order to get this kind of activity around your project, there’s much more that needs to be done, and the source files for MCS are exactly doing this. It’s not only theme, it’s a theme with PSD files there, and the PSD files are licensed on Creative Commons 3.0 Attribution Share-Alike and it is ready to be modified. The source has all the layers properly grouped to make working on theme sections easy and natural. It has guidelines that help you keep the scheme in shape while modifying and it makes it easy to change colors or elements that you will likely to want to modify. It is a fully open source theme, and we have an example implementations there to show you, but you can change it however you like and come up with your own implementations.

We will provide tutorials on how to do this, and we hope to see people modify it in creative way and upstreaming their changes to make the theme look even better in result of community effort!

I would like to thank Legal Team in Mozilla (Catherine, Harvey), Tara and Seth for making this possible!

I may be wrong, but I think this is the first case ever of opening the theme this way. I would love to see other examples, but it I think we’re just opening a new chapter with both, Mozilla Community Theme and Mozilla Community Sites – since I think no other project is offering such powerful tools for its communities to develop themselves around their own websites.  Mozilla is leading  🙂

p.s. if there’s someone who knows how to port psd file to gimp xcf without loosing… everything in the file, then I’d love to get your help!

Categories
flock flockblog main mozilla tech

SMIL got sr+ !

I just wanted to share my joy with you! SMIL, animation multimedia integration language – a language that allows easy animations with SVG got superreview from roc a few minutes ago!

picture-32What does it mean? SMIL may find its use in UI animations and will be another step on the way from static UI’s to animated UI’s (which are more natural to human eye when made carefully).

What’s amazing about this project in Mozilla is its story. Brian Birtles started this project in May 2005 as a project for his studies, he quickly crafted basic code and first wiki article, and in November 2005 Brian submited initial patch to Bugzilla.

After that Brian worked on the project till the end of December, finished his term, wrote a paper about Animation in Mozilla and took a break. He picked it up around summer 2006 but did not push too much forward.

A year has passed since Brian sent his patch to bugzilla, and everything started to seem rather skeptical for SMIL. No maintainer, obsolete patch not compiling against trunk and no activity around it… At this point, tor, SVG magician, picked up the patch, cleaned it up, updated to trunk and kept updating for the whole 2007!!! Next, in April 2008 Chris Double picked the patch against and updated once again even adding new features!

In May 2008 Daniel Holbert took charge and started working on the patch to finalize the implementation getting gathering a lot of feedback and reviews from Brian and from Robert O’Callahan. The things started to move faster and around December Daniel proposed the patch for review and super-review. This caused several more rounds of reviews and finally, today, roc gave superrevew which means that he agrees for this architecture of this feature to be implemented into our code base.

While there’s still more work to be done, now we can expect SMIL to land on trunk very soon, and we have Brian back to support Daniel with work on SMIL project.

—-

It’s unique to such open project like Mozilla to have a full open access to working environment for an external student who can pick up his project of choice and lead it, get other peoples help to keep it alive while no leader is around and finally get it finalized by another community member with support from original author who additionally gets hired to work more on his project of choice.

There is such a tremendous variety of ways people are interacting with Mozilla project, such a huge flexibility of relations, its impossible to oversee everything and Mozilla could not operate in any top-down model. It’s such a different structure. Momentum, energy management, focus and global organization direction are being build all around the project on many levels, and being a leader in such organization means something very, very different. We have a huge luck that our l e a d e r s not only understand and incorporate it but also experience it together with us all.