Last week I attended the WebKitGTK+ 2010 hackfest. It was a great opportunity to meet up with the other developers, discuss some plans for the future, hack away at WebKitGTK+. But, most importantly, play Street Figher 2 =). Thanks to Collabora and Igalia for sponsoring the hackfest, Igalia for hosting and organizing it (well done!), and the GNOME foundation for having sponsored my trip to Coruña!
Unlike last year we didn’t find any big design issues hurting our work (page cache, I’m looking at you!) on new futures. I also didn’t have any huge plans for new API, although we did manage to get some new stuff in there, like the plugins management API Xan created, and the further work done by Dan in soup. This meant, from my point of view the hackfest has been a great oportunity to look at refactorings that we could do to further simplify understanding the code, changing it, and even sharing it =). Besides pushing the debian packaging of the 1.3.x series a bit further.
Coruña was great as always, and I enjoyed going around, eating and hacking there, although I got a cold on the last days which kinda hindered my ability to stare at the screen for too long, some times. Now that I’m at the hot brazilian summer again I’ll hopefully get better soon =)
Hi, folks. Vino and Vinagre are an one-person projects. Since I hadn’t have been much time to improve them, I decided to look for new blood, new maintainers. Perhaps this will be a hard task, since nobody seems to care much about these two GNOME modules.
Anyway, if you are interested, send me an email.
When I first introduced The Board, I generally described how I envisioned things being added to the pages—have a look at the “Add to The Board” and “Integration with other apps” sections in the intro post. I decided to spend some time implementing a few interesting ways of adding content to The Board so that the app concept gets a bit more clear in practical terms. Click on the image above to see a video demonstrating all features described here. Here’s the user story I have in mind:
Henry is a journalist who writes gadgets reviews. He was assigned to write a review of this new Android phone. He needs to do a bit of research before starting to write. He activates The Board and creates a new page called “Android article”.
He opens the web browser to search for reviews, pages, images, and videos about the product. For each relevant page, image, video or piece of text he finds useful for his article, he simply right-clicks on them and adds them directly to The Board.
He also has a few local documents about competing products which might be a good source for his article. He opens some of those documents, copies the related pieces of text, activates The Board, and pastes them as notes.
He then remembers he had already downloaded a few photos of the phone a few days ago. He opens Nautilus to access the folder containing the images, right-clicks on the images and adds them to The Board as well. He activates The Board again, presses ‘t’ to add a new note, a quickly writes down a few ideas on how the article can be structured.
Henry is now ready to start writing his article.
Browser. I’ve implemented extensions for Chrome and Firefox. The Chrome extension can only add links and text selections as I couldn’t find a good way to handle photo and video downloads—I hope to get this implemented soon. The Firefox extension is more complete and allows you add links, text selections, images, and videos (using HTML’s video tag, not flash) from the browser.
These extensions add a context menu item when right-clicking on the cited web content. In case of images and videos, they automatically download the file to a proper user directory before adding a respective element on The Board’s current page. The extensions communicate with The Board via HTTP. A notification is shown when content is successfully added.
One big missing feature is a toolbar button which intelligently adds the current page to The Board. This means that if you’re in, say, Google Maps, if you hit this toolbar button, it adds the map to The Board. If you hit this button while viewing a photo on Flickr, the photo itself is added to The Board. You got the idea.
File Manager. The Board’s integration with Nautilus is done through an extension. The extension adds a context menu item every time the files can be added to The Board. For now, it only allows adding images. Videos should be coming soon. A notification is also shown when content is successfully added from Nautilus. This was the first time I wrote code based on the new GDBus API. Pretty simple to use.
Clipboard. I added some initial code to handle paste command on The Board’s window. In practice, this means that if you copy text from somewhere, you can just use the usual Ctrl+V keyboard shortcut on The Board to paste it as a label or note. Still need to implement URI and image pasting.
Keyboard shortcuts. It should be simple and fast to add things to The Board while using it directly. The current keyboard shortcuts are ‘l’ for label, ‘t’ for note, ‘p’ for photo, and ‘v’ for video. When something is added to the current page, the new element is activated straight away and you can start typing even before it reaches its final position.
This is all very initial code. It’s definitely a bit buggy and missing features. But it’s in a dogfoodable state—for developers at least. In fact, I’ve been dogfooding The Board full time for a few weeks now. I added this temporary status icon that shows and hides The Board’s main window—you can see it in the video. Works well enough for daily usage.
I still haven’t decided how to integrate The Board with GNOME Shell yet. That means figuring out how the “activate The Board” part of the user story above would actually happen. I’ve been playing with some mockups but nothing solid came up so far. Ideas—especially from GNOME Shell guys—are welcome. Patches for all the missing stuff I mentioned above—or for anything else really—are more than welcome too.
Back in 2008, when we started writing the initial infrastructure for the litl OS UI, Havoc added a way to run the whole thing using uninstalled files in the source tree. Back then, I was so blindly used to the “make → make install → run” cycles that I didn’t think this would be especially useful. I was obviously wrong.
litl’s UI shell is a relatively big component comprising our window and compositing manager, UI shell, plugin framework, a few highly integrated apps—online photos, video chat, settings, friends, etc—among other things. Having to install all that for every change in the code would be time consuming and utterly distracting.
I added support for uninstalled run in The Board a few weeks ago. It’s an separate executable that allows you to run the app using fonts, images, icons, plugins residing in the source tree. The only missing part is being able to use uninstalled translations from the source tree—any good ideas on how to do it? GNOME Shell also allows you to run it from source tree inside Xephyr using a wrapper script.
The bottom line is: any step between a code change and running the software is a distraction. If you can make your app run using only uninstalled files from source tree, do it! This is especially important in complex code bases using lots of different assets—icons, images, UI definition files, translations, fonts, etc. This allows you to test your code changes without much hassle. And it saves you precious time.
A conversa foi sobre software livre, liberdade e copyleft, além de outros assuntos.
Achei interessante direcionarmos o foco da conversa para o copyleft além do mundo do software, o que abrange arte livre, cultura livre, etc. O que seria um pouco mais proveitoso para o projeto, que trabalha com artesanato e moda.
Aspectos interessantes da nossa jam foram as questões levantadas pelos designers sobre a amplitude do licenciamento de uma obra visual, já que o uso de uma obra, não cria, na maioria dos casos, uma obra derivada, mas sim uma outra obra. Além da questão de existência de fontes livres, que nos inspirou a criar um esforço brasileiro para ajudar na tarefa (logo terão notícias sobre).
A conversa foi bastante produtiva e logo as nossas 2 horas se esgotaram.
Conheçam o projeto ASAS!
Ao inserir um bar, que fica na rua X, lembro-me da farmácia Y que fica ao lado, e também do ponto de táxi que fica logo em frente, e por aí vai!
Conclusão: Celular na mão ao andar pelas ruas de BH para anotar ou fotografar o máximo de pontos que puder! O resultado é, BH muito mais completa no OSM.
Ver Mapa Ampliado
Para quer tiver interesse em promover um mapa livre para sua cidade/região. Comece, vai gostar!
Com este plug-in, você pode ver na barra lateral informações presentes no serviço sobre os artistas que você está escutando.
Para ativar, vá em "Editar -> Plug-ins" em marque os plug-ins "Painel de contexto" e "Lastfm". Atenção: É necessário informar dados de login para utilizar o plug-in. Se não tiver, você poderá se cadastrar, é gratuito e rápido.
Depois de ativado, assim que você começar a escutar uma música, as informações do artista vão ser carregadas na lateral direita do player. Conforme imagem abaixo.
Há como ver informações de biografia dos artistas e também da discografia.
É isto! Enjoy!
The GNOME event boxes have been flying all around Europe and North America helping our community to promote the project, demonstrate the beloved desktop, and show off all the cools things that can be done with the GNOME platform in gadgets like the OLPC XO and Nokia N810.
litl is now donating two webbooks, one for each GNOME event box. We’ve already shipped one for the North American box. I’m still waiting for the European box to be found before sending the other one. The litl OS is fully based on the GNOME platform using GObject, GLib, Clutter, GTK+, Gjs, GStreamer, and others. The webbook is a good example of the strength of GNOME’s platform. We hope this is a useful addition to the event boxes. Enjoy!
When I blogged about the new toolbar in The Board, I mentioned that it was part of wider interaction model I would be implementing soon. So, here’s the very initial implementation of what I call context toolbars in The Board. When I started thinking about how I would offer ways to customize the things you add to The Board, I had a few simple goals in mind in terms of UI.
Obvious activation. First, it should be simple and obvious to trigger context actions. I didn’t want to use right clicking or context menus as there is no nice way to make it obvious that they are available. I wanted something that would be triggered by a simple click, nothing else, as this is pretty much the first thing anyone would try.
Clarity. The UI should make it obvious what is active on screen and what are the available actions. It should make interaction context super obvious at any time. This is why when you activate, say, a label element, all other UI elements get dimmed and the only things that are highlighted in the UI are the context toolbar and the active label.
Consistency. The way the available actions are presented should be consistent among different types of elements. I thought showing an options overlay inside the elements would be a nice idea—see the “File” button shown on photos in a previous video. However, this approach has the serious limitation of not being scalable for things with different sizes—how would you show an options overlay inside a tiny text note? Context menus again are not a good choice because I wouldn’t be able to add richer UI controls to it. So, I decided that context actions would always appear in the context toolbars, always on the top corner of the window.
Click on the image above to see a video demonstrating the general behaviour of The Board with the context toolbars. The actual actions are not fully implement at the moment. I added just a few basic actions to be able to show off the new feature. This video also shows the use of labels, the small one-liner text elements that can be used for quick reminders.
I’d appreciate some feedback from UI people, as usual. This is of course just an initial implementation of the design. I’m open for suggestions on how the design can be improved. I’ve been hanging out in #the-board channel on irc.gnome.org. Feel free to join! First 0.1.0 release coming real soon now!
Este ano eu ainda não havia participado, nem como ouvinte, de nenhum evento. E confesso que fiquei muito triste de não poder ter ido principalmente ao FISL.
Felizmente, e também graças a 4LInux, Itaipu PTI, GNOME Foundation, John Wendell e Izabel Valverde, eu pude participar de dois eventos subsequentes e quase colados um no outro, IV ENSL e VII Latinoware.
Como se não bastasse poder fazer parte destes eventos, eu participei como palestrante, e quando eu disse que deveria agradecer as entidades e pessoas no parágrafo acima não foi atoa, eles me ajudaram muito na missão de falar sobre como ajudar de alguma forma o Projeto GNOME nestes eventos, principalmente fornecendo patrocínio e apoio.
O IV ENSL foi especial por hospedar o VII Fórum GNOME, que por sua vez me possibilitou discutir com a equipe que traduz e desenvolve o GNOME algumas ideias que eu tinha principalmente sobre o fluxo de trabalho das traduções.
Foi muito produtivo esta conversa, e já trouxe resultado para a equipe que traduz o GNOME aqui no Brasil.
Tirando isso foi ótimo poder conhecer pessoas que eu só falava através dos meios “internéticos”, e melhor ainda conhecer novas pessoas muito muito bacanas como o Antonio C. Fernandes, Rafael Gomes, Hugo Doria, Alexandro Silva, Fernandes, Marcelo Santana, Everaldo Canuto, Vinicius Depizzol, Lincoln, Krix Apolinário, Izabel Valverte, Luciana Freitas, Tiago Menezes, Frederic Peters e muitos outros outros, mas os citados estão ou já estiveram diretamente envolvidos com o GNOME, contribuindo de alguma forma.
Natal, local do ENSL, é um lugar lindo (tirando o morro que tinha que subir para chegar no hotel) e o povo nordestino me surpreendeu muito, não sabia o quanto eram bacana. Foi uma experiência fantástica.
Foz do Iguaçu, local do Latinoware, não é tão lindo quanto Natal, mas é um lugar bacana também e tem suas belezas naturais que infelizmente não pude visitar, mas fui no Paraguai (NÃO RECOMENDO) e no Duty Free na Argentina (Esse é bom), e em Foz também tive a oportunidade de me reencontrar com o Hugo Doria, Vinicius Depizzol e Everaldo Canuto, que também estavam em Natal na semana anterior ao Latinoware participando do ENSL e Fórum GNOME.
Em resumo foi bom pra caramba todos os dois eventos.
Como não tirei fotos, vou passar o link do album do Hugo Doria que estava nos dois eventos e parecia o Jorge Tadeu, tirava foto até do chão heheh!!! Sacanagem….
Latinoware : http://picasaweb.google.com/hugodoria/ENSL2010#