Copyright© 2010-2018 Kapelonis Kostis

Code Pipes Those who can, do and teach!

Collaboration with SemaphoreCI 2016-2017

SemaphoreCI is a hosted continuous integration company similar to Travis. I was already aware of them while researching my mega comparison of hosted CI services.

In 2016 they read my Spock book, liked it and contacted me in order to write articles for their huge library of testing tutorials. I accepted and so far I have written 4 Java tutorials for them! The RestAssured tutorial was actually in the top 10 list of tutorials for 2016.

If you are looking for a hosted CI service, I can highly recommend them. For the full details consult the mega comparison that compares SemaphoreCI with 11 competitors in the same sector.

Collaboration with Manning publications 2014-2015

In 2014, Manning noticed my Spock article and asked me to write a full book on the topic. Of course I accepted! Manning is a legend of technical books and I have learned a lot by their huge collection on Java topics.

My book is titled "Java testing with Spock". It is aimed at Java developers entrenched in JUnit, and it will attempt to convince them that Spock is an one-stop-shop for all testing needs. Unlike JUnit, Spock also has built-in mocking/stubbing support and favours a BDD style when describing test fixtures. Combined with the expressive power of Groovy (and the power assert killer feature), Spock is an explosive package that can replace/augment/accompany existing JUnit tests in a much more concise way

Collaboration with ZeroTurnaround 2013

While working for InfoQ I also covered JRebel and LiveRebel, products of ZeroTurnaround. As part of the process I interviewed Oliver White the marketing guru of the company (at the time). We talked while drinking beers, and I started writing for RebelLabs (the community building part of ZeroTurnaround). I wrote blog posts for any topic I liked and helped with the detailed programming reports.

I really enjoyed my time with ZeroTurnound because of the freedom I had while choosing topics and writing about them. After the rigid structure of InfoQ, I could finally inserts jab and puns in my articles! Here is a full list of my articles:

Collaboration with InfoQ 2011-2013

In 2011 I started working for InfoQ. I already liked the site as a reader because of their objective writing and the no-marketing-crap attitute when covering press releases. At several points in time I simply disregarded the official release of a product and went straight to InfoQ in order to read the actual details. The team at InfoQ are mostly programmers themselves so they can see behind the marketing buzzwords and actually explain the technical facets of various topics.

I too specialized in product releases for Java software. Even though the news posts are not lengthy, writing them was always a challenge because I had to verify/research with no actual documentation at hand (the products were just released). I wrote more than 30 news posts for various topics. Here is a sample selection:

I was so mindblown when researching Chronon that I ended up writing a full featured article on recording debuggers.

Pro Bono writing work

I love explaining complex things with simple language. Sometimes I also think that in todays internet, valuable information is lost in the sea of advertisements and popups. Here is a list of writings I did just for fun

Series of articles in the Greek Linux online Magazine

Really old commentary in Operating System News

Academic work

Tagged Procedure Calls (TPC): Efficient runtime support for task-based parallelism on the Cell Processor (2010) was a paper I co-authored as part of my work in FORTH-ICS. It uses the Cell processor of the Playstation 3 as a core platform for parallel C code. I wrote bare metal code for this project (truly exciting stuff!). Read it in PDF format

Translating formal proofs into English (2004) was my postgraduate thesis in the University of Swansea. Implemented in Scheme it was a module of the Minlog interactive proof system. It used as input mathematical proofs and it produced a human-language explanation of the proof. This is the time I learned about functional programming (an eye-opener experience). Read it in PDF format

Compact Flash Linux Block driver (2003) was my dimploma thesis in the University of Crete. It explains the implementation of a block device driver for the 2.4.x Linux kernel. The driver is for a compact flash disk reader soldered in an embedded Linux board. Read it in PDF format