Feeds:
Posts
Comments

Last week links

I’ve noticed that on most blogs, writers tend to share what they’ve been reading with their readers, that way, I decided to do the same. Interesting stuff floating on the web:

Mary Poppendieck article on people management

Image

Boston.com – 2008 Olympics Opening Ceremony

Image

Wanokoto Labs – Turning new pictures into old ones

Image

IStock Diary – Learn Illustrator CS3 in 30 days

Image

Download Squad – 5 Apps you run that suck

Image

Francesco Mugnai Blog

Image

Coding Horror – Coding Without Comments

Image

Ubuntu Artwork Team

Image

As always, today I was reading the news on Google Reader and came by a nice post from CyberNet News regarding (again) the Intrepid Ibex Dark Theme.

So, quick roundup:

  • Intrepid Ibex new theme is dark
  • 63.88% of everyone who voted on this poll at Ubuntu Forums doesn’t like it
  • It sucks

Now, for the record, neon who is a great contributor for the Ubuntu Development (precisely, the 312th best idea contributor), said:

How many times do we have to remind people, the dark theme was only for testing purposes; in fact, for default it’s been switched back to the light version.

And, Mark Shuttleworth, Canonical‘s founder said:

I think the great task in front of us in the next two years is to lift the experience of the Linux desktop from something stable and usable and not pretty, to something that’s art

This is how all that stuff adds up:

WillWill’s Ubuntu Mockup

Image

Image

Image

That’s just a mockup, but it surely is GREAT!

I don’t know if that GDM is possible, as the GDM is edited through an XML file and I don’t know whether or not one can customize the selector for it to look like that yellow bar. I believe the whole rest may be achieved through a GTK Theme.

I’d only remove the Avant Window Navigator and set the Gnome Do as the default.

I do hope this theme gets official on one of the future Ubuntu releases.

BREAKING NEWS
DanRabbit just implemented some of the GDM Screen. It isn’t like the original yet, but he did an amazing job in there.
Image

I’ve been studying photoshop and its many powers for a while now and yesterday, I decided to test what I learned. The result is the following wallpaper.

Image

After yesterday’s post about Ubuntu 8.10a1 and its screenshots, I decided to take a look at some of the new stuff being developed by the guys who are trying to put it together.

For my surprise, I found out they have a wiki where everyone can see and comment on a lot of new features. There are lots of teams:

The Platform Team cares for a variety of critical components needed for building and running the Ubuntu platform
The Desktop Team handles all of the packages which go into the Ubuntu desktop installation
The Installer Team looks after the Ubuntu installer
The Kernel Team is tasked with maintaining the Linux kernel in Ubuntu

and more.

But one caught my attention: the Artwork Team. On its ongoing branch (the Intrepid Ibex), they post everything associated with the look and feel of the new upcoming version, including wallpapers and themes.

Looking around, I managed to find lots of nice stuff, like some new wallpapers made by Ashton and a very nice theme called Emerald Theme.

Image
Image

I even decided to try out and create a Intrepid Ibex wallpaper myself!

Image

Ubuntu 8.10

The very first alpha version of next Ubuntu Linux is out and guys at PhoroLinux installed, tested and left us with 12 screenshots and some info.

According to them, this version ships with Firefox 3, GNOME 2.23.4, a new NewHuman theme, GIMP 2.4.6 and OpenOffice.org 2.4.1.

The new theme is kinda too dark for me, but let’s see what happens.

What do you think about it?

Image

Fiquei sabendo há alguns instantes pelo Blog do Carlos Henrique que o BR-Linux e o Efetividade estão realizando uma promoção para ajudar a Wikimedia Foundation e outros projetos (no meu caso selecionei o Python Brasil).

Ajude a sustentar a Wikipédia e outros projetos, sem colocar a mão no bolso, e concorra a um Eee PC!
…e também a pen drives, card drives, camisetas geeks, livros e mais! O BR-Linux e o Efetividade lançaram uma campanha para ajudar a Wikimedia Foundation e outros mantenedores de projetos que usamos no dia-a-dia on-line. Se você puder doar diretamente, ou contribuir de outra forma, são sempre melhores opções. Mas se não puder, veja as regras da promoção e participe – quanto mais divulgação, maior será a doação do BR-Linux e do Efetividade, e você ainda concorre a diversos brindes!

Participem e ajudem a ajudar a Wikipedia! 😀

P.S.: Até o momento, mais de 400 Blogs estão participando da campanha!

Download Day!

Everyone, get ready! Firefox will be landing in a few hours from now!!

If you haven’t pledged yet, go on and do it!

Oh, and by the time you download the new stable release of firefox, maybe you will (like me) want to check this nice extension out 😀

Edit: That one turned out to be pretty bad on Linux… Trying the Tab Sidebar now 😀

A brincadeira toda começou depois que me perguntaram como manipular o mouse no Xorg. Uma rápida pesquisada na documentação do python-xlib e encontrei coisas interessantes. Por exemplo, como mover o mouse no X?


from Xlib import X, XK, display
import Xlib.ext.xtest

display = display.Display()
Xlib.ext.xtest.fake_input(display, X.MotionNotify, x, y)
display.sync()

E simular um click ?


from Xlib import X, XK, display
import Xlib.ext.xtest

display = display.Display()
Xlib.ext.xtest.fake_input(display, X.ButtonPress, 1) #1 left, 2 middle, 3 right
Xlib.ext.xtest.fake_input(display, X.ButtonRelease, 1)
display.sync()

Ok, já sabemos como manipular o mouse, e com o teclado, como seria?


from Xlib import X, XK, display
import Xlib.ext.xtest

display = display.Display()
Xlib.ext.xtest.fake_input(display, X.KeyPress, key)
Xlib.ext.xtest.fake_input(display, X.KeyRelease, key)
display.sync()

Diante dessa facilidade surgiu uma idéia, eu poderia fazer um software que monitarasse todos os eventos de mouse e teclado, armazenasse isso e reproduzisse posteriormente.

Esse software poderia ser usado para automatizar testes em interfaces gráficas, assim como páginas Web. O XorgRecord poderia ser usado também para ensinar uma pessoa em outro computador como realizar determinada tarefa. No lugar de assistir um screencast, o usuário baixaria um simples arquivo txt que faria com que seu computador reproduzisse a aula, sem consumir tanta banda ou demorar quanto baixar um vídeo e com o benefício de todas as atividades da aula ficarem gravadas em seu computador. Evidentemente aqui tem uma falha incrível de segurança se mal utilizado.

Outro exemplo seria ensinar alguém a configurar uma impressora apenas enviando um arquivo de reprodução. Além de observar toda a operação necessária, o usuário já teria sua impressora configurada ao fim da aula.

O projeto esta muito simples, os dados são salvos em formato txt limpo, de forma clara e legível, podendo ser reproduzido manualmente caso desejado. Para trafegar na rede uma simples compactação dos arquivos gerados já diminui bastante o seu tamanho.

xorgrecord

O software se integra ao systray do gnome e tem as opções de gravar e reproduzir eventos, assim como salvar e abrir um arquivo de eventos. Ele esta disponível no seguinte link e já pode ser usado pelos interessados. Quem quiser colaborar, comentar ou solicitar algum novo recurso pode entrar em contato.

This is not anymore the most recent version of the API. Please refer to the newest post.
CairoPlot now has a Mailing List! For more information, refer to: this post.

So, a while ago, I’ve decided to code a library to plot some information I had.

The idea was to create simple graphics in a way they would be easy to create, beautiful and good to present to people with no or few backgrounds on math and computers.

For the ease one creation I, obviously, used Python 😀

And, as I was already a PyCairo enthusiast (that began by the time I read Aventuras no cairo by Marcelo Lira and, as pointed out by him, this other one), I decide to use it to draw my graphics.

On this first version, the CairoPlot library provides 3 functions:

dot_line_plot()

Function to plot graphics using dots and lines as seen below.

Image

dot_line_plot (name,
               data,
               width,
               height,
               background = None,
               border = 0,
               axis = False,
               grid = False,
               h_legend = None,
               v_legend = None,
               h_bounds = None,
               v_bounds = None)

name – Name of the desired output file, no need to input the .svg as it will be added at runtim;
data – The list, list of lists or dictionary holding the data to be plotted;
width, height – Dimensions of the output image;
background – A 3 element tuple representing the rgb color expected for the background. If left None, a gray to white gradient will be generated;
border – Distance in pixels of a square border into which the graphics will be drawn;
axis – Whether or not the axis are to be drawn;
grid – Whether or not the gris is to be drawn;
h_legend, v_legend – lists of strings containing the horizontal and vertical legends for the axis;
h_bounds, v_bounds – tuples containing the lower and upper value bounds for the data to be plotted.

Example of Use

teste_data = [0, 1, 3, 8, 9, 0, 10, 10, 2, 1]
CairoPlot.dot_line_plot('teste', teste_data, 400, 300, axis=True)

Result:

dot_line_plot - Example 01

teste_data_2 = {"john" : [10, 10, 10, 10, 30], "mary" : [0, 0, 3, 5, 15], "philip" : [13, 33, 11, 25, 2]}
teste_h_legend = ["jan/2008", "feb/2008", "mar/2008", "apr/2008", "may/2008"]
CairoPlot.dot_line_plot('teste2', teste_data_2, 400, 300, h_legend = teste_h_legend, axis = True, grid = True)

Result:

dot_line_plot - Example 02

pizza_plot()

Function to plot pizza graphics.

Image

pizza_plot(name,
           data,
           width,
           height,
           background = None)

name – Name of the desired output file, no need to input the .svg as it will be added at runtim;
data – The list, list of lists or dictionary holding the data to be plotted;
width, height – Dimensions of the output image;
background – A 3 element tuple representing the rgb color expected for the background. If left None, a gray to white gradient will be generated;

Example of Use

teste_data = {"john" : 123, "mary" : 489, "philip" : 600 , "suzy" : 235}
CairoPlot.pizza_plot("pizza_teste", teste_data, 500, 500)

Result:

Image

gantt_chart()

Function to create Gantt Charts.

Image

Note: the output for this function was based on the graphic seen on this post from wired.

gantt_chart(name,
            pieces,
            width,
            height,
            h_legend,
            v_legend,
            colors)

name – Name of the desired output file, no need to input the .svg as it will be added at runtim;
pieces – A list defining the spaces to be drawn. The user must pass, for each line, the index of its start and the index of its end. If a line must have two or more spaces, they must be passed inside a list;
width, height – Dimensions of the output image;
h_legend – A list of names for each of the vertical lines;
v_legend – A list of names for each of the horizontal spaces;
colors – List containing the colors expected for each of the horizontal spaces.

Example of Use

pieces = [ (0.5,5.5) , [(0,4),(6,8)] , (5.5,7) , (7,8)]
h_legend = [ 'teste01', 'teste02', 'teste03', 'teste04']
v_legend = [ '0001', '0002', '0003', '0004', '0005', '0006', '0007', '0008', '0009', '0010' ]
colors = [ (1.0, 0.0, 0.0), (1.0, 0.7, 0.0), (1.0, 1.0, 0.0), (0.0, 1.0, 0.0) ]
CairoPlot.gantt_chart('gantt_teste', pieces, 600, 300, h_legend, v_legend, colors)

Result:

Image

So, I think it’s ready for you guys to use. CairoPlot Google Code Project
The support is also open :D, whenever you need, feel free to contact at [email protected] or leave a comment.

Maya

Keeping the pace on showing some 3D works I have done using Maya, here goes something more cartoonish.

It’s a Candy Shop I built for some application that never came out of paper… As you can see, I spent more time on detailing some things but forgot to improve some others (as you can see on the cake if you can even find where it is)

Hope you guys enjoy again 😀

Design a site like this with WordPress.com
Get started