Communication is the hardest job

First off, I've got to say that it is difficult for me to keep track
of what I say on these pages.  I might end up repeating myself, in
the same way as I often do in life, unfortunately.  This would be
less likely if I was writing every day, since I would be sure that
the context is built incrementally.  I don't always have time or
energy left, so you'll have to bear with me.

With that being said, today is one of those days.  I'm a little
upset.

It is now about two months since I've started to work on the new
project, the _new and revolutionary_ thing that my company is working
on (you should see the wiki pages! So much hype).  Nothing changed
though: there's a lot of confusion everywhere.  Many teams are
involved, and nobody seems to know what the others are doing.

The various teams work on different parts of the same architecture.
From the software perspective we are talking about asynchronous
multi-processing, where each core runs a different system, managed
by a different team.

Since the SoC is in common, though, I've been assigned to the tiny
task of making "their" device tree entries available to "our" side.
The task itself should be trivial, but it took forever, since I
really want to understand what I'm doing.  That's my curse.

My project manager is OK with me taking my time, and I could not
be more grateful.  This the good part of it.

I proposed him to test my work with a little program that should
use the UIO device exposed via device tree.  He gave me thumbs up,
and I started to work on it.

In a few days I wrote a little tool.  Writing it was not that hard,
since I know my POSIX programming, but making it available on the
target system, with a broken SDK and all, took a considerable amount
of effort.  It is complicated itself, but Yocto is in fact a cryptic
beast, with lots of things that one should know.  Asking questions
on IRC and on the mailing lists is often the only way out.

Today it turned out that nothing I did so far is going to be useful.
My testing tool is worthless, since we already have a piece of
software that does what I was working on.  I'm a little pissed off
because nobody thought of mentioning it.  I'm also a little embarrassed
because I didn't think of asking it: I should have known better!

Moreover, I'm a little horrified by *how* things have been done,
with tons of nested sub-modules (I'm no longer that happy with it!)
that result in something like 2 gigabytes of source material.  On
the top of it, they're abusing CMake in any possible way.

I'm trying to focus on the good parts: I'm now more familiar with
yocto, and I can effectively write, package, install and debug
software.  I'm trying to disregard the fact that I'm back to square
one.

I'm also a little afraid of forgetting these hardly earned knowledge
bits.  Sometimes I feel like I should publish them on these pages.
Other times I can't do anything like that, since it exposes private
details that I shouldn't probably disclose.

For those wisdom bits that I can publish, I decided to have a new
jotter.  Brief pills of general wisdom, with as little context as
I can get away with.

The jotter is available here: gopher://dacav.org/0/textfiles/til.txt