It's been 5 years since I last blogged, so I had to delete 500 SPAM
posts when getting started again. Much has happened over the past
years, some of them not so great. When you start to get old like me, you
must deal with the older generation gradually passing on and health
problems, such as coronary re-plumbing, can become an ugly fact of life.
I've been working with itemis for the past 11 years, but that now
draws to a close. I wish to thank them for their generous support over
all these years. Many of you might thank them as well because much of
what I've contributed is thanks to their funding. Though admittedly I
have the nasty habit of working like a maniac, beyond any reasonable
number of working hours, regardless of whether or not there is financial
reward. Cool things are just so compelling. But the worst habit then
is not bothering to document or advertise all these cool new features as
they become available, but rather to dive into the next obsession
because somehow that's more compelling. Compulsion is a bit of a Merks'
family trait, e.g., my sister has more than 20 dogs, though it's easy
to lose count...
In any case, most of my obsession over the last year has been related
to working with Airbus. I don't normally talk about my customers, but
given they were gracious enough to allow me to demo at last year's
EclipseCon the software being developed at Airbus, it's common knowledge
anyway. My goodness but that was a creative and cool project!
Unfortunately that too has, as is the case for all good things, come
to an end.
I immediately dove into generating a quality report for the Eclipse
SimRel p2 repository; there's no rest for the wicked nor for the
compelled. I used EMF's Java Emitter Templates (JET) for implementing
that, just as I did for generating the full site information for
EMF's Update Sites as part of migrating the build to Maven/Tycho.
Speaking of which, did you know that you can make it trivially easy for your contributors to set up a development environment? Just have a look at
EMF' build page. Also, did you know that there exists such a thing for the complete
Eclipse Platform SDK as well? Of course not, because I never bothered to tell you!
What's really supergeil (yes, I live in Germany and speak fluent
Denglish) about the installing an environment with the full Platform
SDK, or some subset there of, is that you can easily see all the Git
history of each source file, so you can see what exactly has changed and
evolved. Also, when developing new applications, you can easily search
for how the Platform implements those things; then you can snarf and
barf out your own solutions, with all due respect for the EPL of
course. You can even find out all the places that a constant is
actually used; you cannot do that against binaries because constants get
in-lined. Also, if you see some label in the IDE, you can search for
where it comes from, some *.properties file somewhere no doubt, and then
you will know the name of that property and can easily find where
that's defined and how that's used in the code. You might even
contribute fixes via Gerrit commits!
But I digress. I was using JET to generate a nice helpful web page
with information about all the problems in the SimRel repo, or in any
arbitrary repo actually, i.e., invalid licenses, unsigned content,
missing pack200 files, duplicate bundles, inappropriate providers, and
so on. But then I got frustrated that JET templates eventually get
really hard to read, especially as they become more complicated. Then,
when you need it the most, all the nice features of JDT are missing
while editing the scriplets and expressions in that template. So as I am
wont to do, I digressed further and spent the better part of the last
two months working on a rich editor for JET. I'm sorry (not!) that I
had to violate a few API rules to do so, but alas, API rights activists
is a topic for another blog because that's a long digression. The good thing is that the JET editor is finished now; it will be in
2019-09's M3. Here's a sneak preview:
Yes, that's content assist, just is if were in a real Java editor! Not only that, this time I wrote documentation for it in EMF's doc bundle. And, to top that off with icing, this time I blog
about it. Perhaps only three people in the world will ever use it, but
I am one of those three people and I love it and I need it even for
working with EMF's code generation templates too. So now I can pop this off
my digression stack and go back to generating that p2 repo quality
report. I've been doing that for the past week, and it's almost ready
for prime-time.
But then at this point, I must ask myself, where is the financial gain
in all this? My local neighborhood fox, I've named him Fergus, might
be trying to tell me something.
Perhaps you should be a little more sly. Perhaps the endless free goodness too must come to an end...