El daño que hacen los MBAs
Como el paso siguiente, pensaba en mi ignorancia que el estudiar un MBA era clave para transformarme en un ente de negocios, y menos de ingeniería. Al final del día, a uno le gustan los fierros, pero al mismo tiempo, quiere estar haciendo otras cosas más de la vida real/normal. Además, les tengo una noticia: el dinero no esta realmente en ingeniería, sino en los negocios.
Después vino la conciencia. Vino el ver la realidad. La economía gringa se jodió por la guerra. Pero también por los MBA. Esos que decian "recortar costos, maximizar ganancia", termino por destruir los empleos, migrandoles a otras latitudes. Eso funcionó super bien, mientras el consumo en USA continuaba. Cuando de repente, la gente simplemente freno el consumo porque... no tenía trabajo.
Y si, jovenes, asi es como los MBA son el cancer de esta mala economía.
Hoy platicabamos del caso de famoso gigante tecnologico, que tiene gente de base que son pelmazos y outsourcea profesionales que si resuelven los problemas. La pregunta es: ¿por qué no simplemente sacar a los pelmazos y contratar a los profesionales outsourceados? Es muy sencillo: los MBA. Ellos dicen "mira, nos ahorramos costos". Cuando al mismo tiempo, estan tirando dinero manteniendo a gente idiota.
¿Qué sucede con los negocios? ¿Por qué las compañias, grandes o pequeñas, se mueven más lento que un mamut en pleno desierto a medio día? Si, si alguien se lo pregunta, un mamut en pleno desierto a medio día no se mueve. Se murió desde las 9am, sobrecalentamiento cerebral.
Abur.
Ti Mobile SDK 1.8 Released!
Greek openSUSE community, Translation of openSUSE Weekly news in Greek (issue 206)

Hello everyone!
I am very pleased to announce the new issue (206) of openSUSE Weekly News in Greek.
In this issue you will read about:
* openSUSE Board Election 2011 results
* Kai-Uwe Behrmann: Firefox-8.0 Colour Management
* Finally – GNOME Shell Extensions
* Christmas GRUB
* Phoronix/Michael Larabel: First Release Of Open-Source Blu-Ray Library
As well as many interesting news about openSUSE and useful advice, which can make our lives easier.
Read more at: http://own.opensuse.gr, http://el.opensuse.org/Weekly_news or www.os-el.gr
We are always looking forward to receiving your comments as well as suggestions regarding things you would like to read about in our next issue.
The openSUSE Weekly News is being translated in the Greek language from issue #150. You can read older translated issues here:
http://el.opensuse.org/Κατηγορία:Weekly_news_issues
Enjoy it!
George Bratsos (Etern4L)
openSUSE ARM Port update 21122011
DRBD and Network Restarts
Using drbd as a simple and reliable alternative to distributed block devices is quite common. Especially in primary/primary mode, it provides the possibility to host block devices for virtual machines on two different hosts.
However, there is one annoyance that any active user stumbles over at some point in time. After a network restart, it may happen, that the devices switch to standalone mode and do not even try to reconnect to their peer. The reason for this is, that when doing a network restart, the device is shut down for a short time. DRBD itself has no means to wait for hotplugging devices, and thus just cuts the network connection in that case.
I know of two methods to solve that issue on the operating system side.
- Create a script in /etc/sysconfig/network/scripts/ifup.d that contains the necessary code to reconnect the drbd device to its peer
- The easiest way I know about is to switch the network interface to startmode nfsroot.
To accomplish this, edit the configuration file of the device that is used to connect to the peer, like e.g. /etc/sysconfig/network/ifcfg-eth0 and change the line
STARTMODE='<auto|manual|onboot>'
to
STARTMODE='nfsroot'
This changes the behavior of the networking scripts to not shut down the interface during a network stop or restart event. However, when using this method, I still would recommend monitoring the connection state of drbd in /proc/drbd.
openSUSE Weekly News 205 και στα ελληνικά
Καλησπέρα σε όλους!
Βρίσκομαι στην πολύ ευχάριστη θέση να ανακοινώσω το νέο τεύχος (205) Weekly News του openSUSE εκ μέρους της ελληνικής ομάδας που δούλεψε για τη μετάφρασή του.
Σε αυτό το τεύχος θα διαβάσετε:
* Jos Poortvliet: Calligra…
* Το υποφόρουμ του Tumbleweed
* ITworld/Brian Proffitt: SUSE: Οι δουλειές στο Linux ανθίζουν ανά τον κόσμο
* ITWire/Sam Varghese: Μία ιστορία για δύο διανομές: openSUSE και Linux Mint
* Will Stephenson: openSUSE Board Election – Το Μανιφέστο μου
Και φυσικά πολλά άλλα ενδιαφέροντα νέα σχετικά με το openSUSE καθώς επίσης και χρήσιμους οδηγούς που θα κάνουν τη ζωή σας πιο εύκολη
Πολλά λέω… Καλύτερα διαβάστε το από πρώτο χέρι:
Βρείτε το στις ακόλουθες ιστοσελίδες http://own.opensuse.gr, http://el.opensuse.org/Weekly_news και http://www.os-el.gr
Περιμένουμε τα σχόλιά σας καθώς και τι θα θέλατε να δείτε με περισσότερες λεπτομέρειες στο επόμενο τεύχος.
Το openSUSE Weekly News μεταφράζεται στα ελληνικά από το τεύχος #150. Μπορείτε να διαβάσετε όλα τα παλιότερα τεύχη στα ελληνικά εδώ: http://el.opensuse.org/Κατηγορία:Weekly_news_issues
Greek openSUSE community, Translation of openSUSE Weekly news in Greek (issue 205)

Hello everyone!
I am very pleased to announce the new issue (205) of openSUSE Weekly News in Greek.
In this issue you will read about:
* Jos Poortvliet: Calligra…
* The Tumbleweed subforum
* ITworld/Brian Proffitt: SUSE: Global Linux jobs on the rise
* ITWire/Sam Varghese: A tale of two distros: openSUSE and Linux Mint
* Will Stephenson: openSUSE Board Election – My Manifesto
As well as many interesting news about openSUSE and useful advice, which can make our lives easier.
Enough said though... Read more at: http://own.opensuse.gr, http://el.opensuse.org/Weekly_news or www.os-el.gr
We are always looking forward to receiving your comments as well as suggestions regarding things you would like to read about in our next issue.
The openSUSE Weekly News is being translated in the Greek language from issue #150. You can read older translated issues here: http://el.opensuse.org/Κατηγορία:Weekly_news_issues
Enjoy it!
Efstathios Agrapidis (efagra)
Using direct textures on Android
I’ve been working at Mozilla on Firefox Mobile for a few months now. One of the goals of the new native UI is to have liquid smooth scrolling and panning at all times. Unsurprisingly, we do this by drawing into an OpenGL texture and moving it around on the screen. This is pretty fast until you run out of content in the texture and need to update it. Gecko runs in a separate thread and can draw to a buffer there without blocking us, but uploading that data into the texture is where problems arise. Right now we use just one very large texture (usually 2048x2048), and glTexSubImage2D can take anywhere from 25ms to 60ms. Given that our target is 60fps, we have about 16ms to draw a frame. This means we’re guaranteed to miss at least one frame every time we upload, but likely more than that. What we need is a way of uploading texture data asynchronously (and preferably quicker). This is where direct textures can help.
If you haven’t read Dianne Hackborn’s recent posts on the Android graphics stack, you’re missing out (part 1, part 2). The window compositing system she describes (called SurfaceFlinger) is particularly interesting because it is close to the problem we have in Firefox. One of the pieces Android uses to to draw windows is the gralloc module. As you may have guessed, gralloc is short for ‘graphics alloc’. You can see the short and simple API for it here. Android has a wrapper class that encapsulates access to this called GraphicBuffer. It has an even nicer API, found here. Usage is very straightforward. Simply create the GraphicBuffer with whatever size and pixel format you need, lock it, write your bits, and unlock. One of the major wins here is that you can use the GraphicBuffer instance from any thread. So not only does this reduce a copy of your image, but it also means you can upload it without blocking the rendering loop!
To get it on the screen using OpenGL, you can create an EGLImageKHR from the GraphicBuffer and bind it to a texture:
#define EGL_NATIVE_BUFFER_ANDROID 0x3140
#define EGL_IMAGE_PRESERVED_KHR 0x30D2
GraphicBuffer* buffer = new GraphicBuffer(1024, 1024, PIXEL_FORMAT_RGB_565,
GraphicBuffer::USAGE_SW_WRITE_OFTEN |
GraphicBuffer::USAGE_HW_TEXTURE);
unsigned char* bits = NULL;
buffer->lock(GraphicBuffer::USAGE_SW_WRITE_OFTEN, (void**)&bits);
// Write bitmap data into 'bits' here
buffer->unlock();
// Create the EGLImageKHR from the native buffer
EGLint eglImgAttrs[] = { EGL_IMAGE_PRESERVED_KHR, EGL_TRUE, EGL_NONE, EGL_NONE };
EGLImageKHR img = eglCreateImageKHR(eglGetDisplay(EGL_DEFAULT_DISPLAY), EGL_NO_CONTEXT,
EGL_NATIVE_BUFFER_ANDROID,
(EGLClientBuffer)buffer->getNativeBuffer(),
eglImgAttrs);
// Create GL texture, bind to GL_TEXTURE_2D, etc.
// Attach the EGLImage to whatever texture is bound to GL_TEXTURE_2D
glEGLImageTargetTexture2DOES(GL_TEXTURE_2D, img);The resulting texture can be used as a regular one, with one caveat. Whenever you manipulate pixel data, the changes will be reflected on the screen immediately after unlock. You probably want
to double buffer in order to avoid problems here.
If you’ve ever used the Android NDK, it won’t be surprising that GraphicBuffer (or anything similar) doesn’t exist there. In order to use any of this in your app you’ll need to resort to
dlopen hacks. It’s a pretty depressing situation. Google uses this all over the OS, but doesn’t seem to think that apps need a high performance API. But wait, it gets worse. Even after jumping
through these hoops, some gralloc drivers don’t allow regular apps to play ball. So far, testing indicates that this is the case on Adreno and Mali GPUs. Thankfully, PowerVR and Tegra allow it, which covers a fair number of devices.
With any luck, I’ll land the patches that use this in Firefox Mobile today. The result should be a much smoother panning and zooming experience on devices where gralloc is allowed to work.
Sincronización de bases de datos entre dispositivos
Tips desde la trinchera
:)