Parallels Tools 10 and Linux Kernel 4.2

There seem to a be problem with Parallels Tools 10.3 and recent versions of the Linux kernel (4.2, at least, which is used by recent versions of Fedora 22 and Fedora 23, for example). During the installation tools, the installer fails to compile one of the modules. That can lead to problems booting up your virtual machine.

In Fedora, in order to avoid this problem, you can just add the following line to /etc/dnf/dnf.conf file:

After Parallels release an update, you just remove the line, update the system, and it should be fine. As a final reminder, you should always generate a snapshot before upgrading the system.

VIL: Very Important Links (updated)

Just some important links that might be useful for others.

Ptrace is a linux syscall that allows you to manipulate process. It’s commonly used to implement debuggers, although you can do quite a lot of other interesting stuff with it:

This link shows how to prevent having to enter a password everytime your are managing your Linux VMs. This is pretty handy if you are using vagrant and/or creating/destroying a lot of them:


Fedora Linux 22 on Macbook Pro Retina

I have Late 2013 MacBook Pro Retina (MacBookPro11,1 (13″) (A1502)) and I wanted to run Fedora 22 on it. These are just some tips to solve some common problems about running Linux on it:

1. Configure wireless:

First install kernel-devel:

The follow the steps here (basically: install rpmfusion, then broadcom-wl, then run sudo akmods).

2. How do I switch the Command key and Control key on a MacBook Pro? Check here.

3. Adjust HiDPI settings. If you are running Cinnamon, you can just adjust it in the fonts settings panel. If you are not, you may need to export GDK_SCALE for some applications. You can find additional details in this link.

4. Touch pad: enable the right click on the right bottom area of the touch pad.


You can learn more about tweaking the Macbook touchpad here and here.

5. Bluetooth: does not seem to work yet, sorry.

About Quality Engineering

For the most part of my professional life I worked as an IT Specialist in Brazil. An IT specialist is a professional that designs, develops, employs or maintains information technology systems. It is a pretty broad term that may encompass several different different job roles (from database administrators to software engineers to production support analysts). In my case, I was engaged with 2 primary activities: software development and application architecture.

All of that changed 3 months when I left my IT Specialist job in Brazil and moved to Czech Republic to work as a Software Quality Engineer (aka Quality Engineer) for Middleware Messaging products. Since then, a few friends had come to me to ask: a) what I am doing, b) what exactly a Quality Engineer does and c) do you write code. With that said, I think I have answered question ‘a’. Since question ‘a’ is already answered,  let me explain what is a Software Quality Engineer (SQE) and it does.

A SQE is a specialized type of engineer that works on all phases of development to design, develop and execute tools, process and strategies to ensure that software products meet or exceed desired levels of quality (with quality being defined as the degree of excellence of an item or product).

A SQE usually:

  • Design, develop and maintain tools to perform automated testing
  • Develop and maintain automated test cases
  • Elaborate and implement Continuous Integration (CI) and Continuous Delivery (CD) strategies including its infrastructure and support tools
  • Help to investigate and verify security issues
  • Elaborate and execute test plans
  • Define and implement software quality metrics and design, develop and maintain tools to collect them
  • Review product documentation

Whether an SQE writes code depends on what type of products it works with. For example, in my case I work with tools for messaging and enterprise application integration, therefore I tend to write code quite frequently, as most of these products are used by software developers, IT specialists and IT architects to integrate disparate systems.





Recommended reading

Quick post to share some interesting material I came across the Web:






Axis webservices with Maven overlays

I should have published this months ago, so I hope I am not missing any details … This short post shows how to build an Axis-based webservice, using Maven overlays.

The first step is to add the required Axis dependencies:



Then you can configure the war plugin so that the important part of Axis is exploded and included in the deliverable and the non-important parts are excluded:

And that should do the trick.

Simplifying JMS testing with embeddable brokers

Ever hoped for an easy way to run embed brokers and simulate a full cycle JMS messaging cycle? Well, this pet project of mine may be useful for you (or, at least, give you an idea for an implementation). It works on top of JUnit, by providing a JUnit test runner, a JMS provider, a set of JMS-related annotations that will inject object instances and additional utility classes to simplify dealing with JMS. At the moment it works only with ActiveMQ, but adding additional providers should be fairly easy.

Here’s example of the a test class that sends and receives data through an embeddable ActiveMQ broker:

It’s pretty simple as of now, but I can see some interesting uses for running certain types of tests.

You can find the project page here.

JSON manipulation: reference material

While working on ways to export my backlog in Trello, which I wrote about in this post, I came across the following articles that I think might be useful for those manipulating JSON data:

The titles are speak for themselves. Have fun.