Running Eclipse Che Easily on Fedora 25

Running Fedora 25 and want to give Eclipse Che a test spin? It’s far easier than you may think.

  1. Install Docker
  2. Install Che
  3. Run Che

The steps are simple but quite important they are followed closely. Best to always follow the official process, right? In that spirit, the instructions for getting Docker running on Fedora were quite straightforward. Use those to make sure you’re running Docker smoothly.

As advertised on its homepage, getting Che installed is as simple as a single command: docker run eclipse/che start

Next comes the simple but tricky part. On Fedora 25 I figured out that I couldn’t use the shortened Docker command – I needed to run the full explicit one specifying paths. I didn’t want to have to remember this, and I also wanted to make sure Docker was running whenever I needed to run Che, so I created the following bash alias to use:

alias che='sudo systemctl start docker && sudo docker run -it --rm -v /var/run/docker.sock:/var/run/docker.sock -v /home/ennenine/Development:/data eclipse/che start'

Now whenever I want to spin up Che and start working, I simply have to type che into the nearest terminal.

Fixing Elementary OS Slow Boots

For the past 6 months or so I’ve been running Elementary OS Loki on a 2015 Macbook Pro. Recently I noticed my laptop intermittently booting more and more slowly. With some downtime today I did some searching and found a few solutions that helped me get everything back to normal.

The first thing I did was clean up my /etc/xdg/autostart folder. I found this article with others reporting similar slow boot issues. I opted for moving the files to my home folder in case I needed them back. At one point I had installed a cpu indicator that I later removed that looks like it left an entry behind I so cleaned that up also:

I then realized that a screen reader (Gnome Orca) was being loaded that I didn’t need so I decided to clean that up as well:

That made a huge difference to the speed my desktop loaded after logging in but I still had some issues getting to the login screen quickly in the first place. I found this cool trick on the Elementary Stack Exchange:

That creates a file that you can view with Firefox showing you what is happening during boot and how much time it’s all taking.

boot activity

Right away you can see that docker.service and rc-local.service are taking significantly longer than anything else. What’s more interesting is that I’m no longer running docker. That was an easy one to identify and fix:

When I looked at what was in /etc/rc.local I noticed only one thing: powertop --auto-tune

I haven’t been thrilled with my power handling to begin with so I commented that out until I can spend more time digging in to that and getting it running more smoothly.

Now things are running great, and I notice even going in and out of sleep (closing the lid) works better!

Hiding Application Icons in Wingpanel on Elementary

Elementary OS Loki looks beautiful, though I do find myself annoyed with the extra application icons that show up in wingpanel in the upper-right of the screen:

Before

In order to get rid of them you need to edit ayatana.blacklist to include the Id of the applications you want to restrict from showing up there. To start with, take a look at what is already in yout blacklist. To see its contents run the following Terminal command:

Mine originally looked like this:

Next, we’ll find the Id of applications you want to restrict. Be sure they are not already running. We’re going to start dbus-monitor and launch our apps, watching for when they register with dbus. Because there is a lot of text output, save it to a file you can search afterwards.

In the Terminal enter the following command:

This will create a text file called dbus-monitor.txt and stream all of the output from the dbus-monitor command in to it.

Next, launch your application. When it is finished launching, go back to the terminal and type control-c to cancel the dbus-monitor command. Then launch a text editor and load the dbus-monitor.txt file.

Search for string "Id". The first result that comes up should be the entry for your application. In this case, you can see from the screenshot that the Id for the OwnCloud sync client I launched is ownCloud. The Id is case sensitive so be sure to pay close attention.

dbus-monitor.txt

Edit your ayatana.blacklist and place the Id values for any applications you want to restrict in a new line of the file. I added an entry for the OwnCloud sync client and f.lux so now my file looks like this:

Save the file, and log out. Next time you log in your restricted applications will no longer be displayed in wingpanel. Sometimes it takes a few trials to get this right as there may be a few different Ids in use by the application. If it doesn’t work, try searching the dbus-monitor.txt file again and see if there are other Id values you could try.

After

Googling in the Woods

As Douglas Adams effectivley pointed out, 42 is “the answer to the ultimate question of life, the universe and everything” but is valueless if we don’t know what the question is.

The internet can answer almost any question if you know what to ask. Filter bubbles aside, how can you expand your understanding and gain knowledge if you only ever optimize for the same question being asked over and over? I was struck by this thought recently while on a walk in the woods with my family.

While walking down a trail we saw an older gentleman on the side of the trail looking intently at some of the trees there. As we were about to pass him, we must have looked intrigued because he began telling us what he was looking at. Over the course of five quick minutes he proceeded to teach us about about the Hemlock Wooly Adelgid.

He told us how the Hemlock Wooly Adelgid is not native to the region, but an aphid originating in Asia. It has spread throughout the southern states and has now worked its way north into Pennsylvania and even New York. The aphid is spreads quite prolifically and decimates hemlock populations. 

He then showed is how to identify them by looking at the underside of hemlock branches for these white spots.

The gentleman then told us how on his walk that morning he had seen them on most of the hemlocks in those woods. He pointed out the many hemlocks that were already mostly dead and said most of the rest would be gone in the coming years. There is treatment but it is quite expensive. Historically the cold Pennsylvania winters helped control the aphid population and spread but recent winters haven’t been cold enough to continue that natural control. 

As we were about to continue on or way, the man pointed out how beautiful the hemlocks were and encouraged us to enjoy them-not only because of the aphid threat but also because they are our state tree in Pennsylvania. As we continued on our walk we noticed more purposefully both the beautiful hemlocks as well as the proliferation of the Hemlock Wooly Adelgid.

I’ve never heard of this aphid before, despite having instant access to unprecedented amounts of information. Thanks to this kind stranger on the trail who was willing to teach us, our walk was given more appreciation for the park and understanding of the quiet events unfolding in our backyard. I was exposed to a five minute snippet that gave me something to research online for hours. For me, it underscored a balance that I’ve been in search of; firmly placing technology as an incredibly valuable tool used to enhance your life experiences, not to be confused with the value of life experiences itself. Technology requires a driver. Get out and drive.

Weekend Reads – Dec 17, 2016

Joan Didion on Self-Respect

For the past half-century, Joan Didion (b. December 5, 1934) has been dissecting the complexities of cultural chaos with equal parts elegant anxiety, keen criticism, and moral imagination.

No, you’re not entitled to your opinion

…I’m sure you’ve heard the expression ‘everyone is entitled to their opinion.’ Perhaps you’ve even said it yourself, maybe to head off an argument or bring one to a close. Well, as soon as you walk into this room, it’s no longer true. You are not entitled to your opinion. You are only entitled to what you can argue for.

One way to think about talent

Being jealous of talents that are actually skills is a great way to let yourself off the hook and make yourself miserable at the same time.

Arc theme for Slack

I quite enjoy the Arc theme for Linux. Personally, I use the solid version as Electron-based applications don’t leverage transparency and stand out slightly otherwise. I also use Slack almost non-stop every day and wanted to make sure it fit in well so I put together these colors quickly:

To use them, in Slack go to Preferences > Sidebar Theme and at the bottom paste in the following string in to the box you see like this:

For your copying pleasure:
#353945,#666666,#5294e2,#FFFFFF,#000000,#BAC3CF,#99D04A,#DB6668

Weekend Reads – Dec 10, 2016

Attentional Bias: Why You Talk Yourself Into Buying the Thing You’re Obsessing Over in Your Head… and How to Stop It

Attentional bias is the tendency of our perception to be affected by our recurring thoughts. For example, people who frequently think about the clothes they wear pay more attention to the clothes of others.

Opinion: Big-Data Algorithms Are Manipulating Us All

The age of Big Data has generated new tools and ideas on an enormous scale, with applications spreading from marketing to Wall Street, human resources, college admissions, and insurance. At the same time, Big Data has opened opportunities for a whole new class of professional gamers and manipulators, who take advantage of people using the power of statistics.

What Should I Do With My Life?

For most of my life, I’ve just drifted. I would work passionately at one thing for a while, then I’d burn out on that thing and move on to something else. I felt like I had a good grip on what I needed to do today, but in terms of thinking about the big picture of my life, I just didn’t have any idea.

The Science of Stress and How Our Emotions Affect Our Susceptibility to Burnout and Disease

Long before scientists began shedding light on how our minds and bodies actually affect one another, an intuitive understanding of this dialogue between the body and the emotions, or feelings, emerged and permeated our very language: We use “feeling sick” as a grab-bag term for both the sensory symptoms — fever, fatigue, nausea — and the psychological malaise, woven of emotions like sadness and apathy.

A Tale of Two Communities

A few quick important notes before I begin.

  1. I am a huge fan, supporter, and fervent believer in open source. It is not “the only way” but I do firmly believe it is a necessary and good way.
  2. I am intentionally not mentioning any specific people, companies, events or communities in this post despite how obvious it may be to some people who know me.
  3. The intention of this is to draw attention to the impact attitudes can have on a community. Furthermore, it is a focus on the human aspect of these communities, not evaluations of products they produce in any way.
  4. These are personal beliefs and statements about how I will be conducting my personal time and affairs. It is also very tied to my personal experience, which may or may not be the experience others have had.

Over the years I have been involved in a number of technical communities; student groups, meetups, open source projects, etc. Each one has its own unique culture. Each one has strengths and weaknesses. Even when communities struggle with attendance, or volunteers, or conflicts whether they be internal or external, they all have something special that their constituents value and share. That is something that should not be forgotten or diminished. It is something foundational that makes it all possible.

One of the communities I have been involved in, I’ll refer to it as Community A, had some profound impact on my life. It helped me take a few successful leaps of faith in my life. It helped me transition my career, allowed me to grow. It gave me the opportunity to experience a wide variety of people and places, literally all over the world. It has also caused me profound internal conflict, especially over the past few years.

As I became more involved in the community and the companies supporting it I became exposed to some challenging situations:

  • Being told upon starting a job at one of the prominent companies that I should be prepared to take my clients to strip clubs, and later watching it actually happen as part of conference culture, even part of sales expense accounts.
  • Watching misogynistic attitudes and blatant disrepect and bias from senior executives, including C-level.
  • Watching questionable office behavior and fear of nepotism-based justification.
  • Arguments between companies that can only be described as religious-style battles (in public and at conferences) based over who was right without asking end users what they desired or experienced.
  • Being made to feel uncomfortable and have my intentions challenged when I maintained friendly and cordial professional relationships with people from other companies who were all members of the same open source community.
  • Having my employer make an official press release—picked up by official news sources and republished—right after a round of funding about going to an upcoming conference with loads of cash to throw epic parties including references to drugs and strip clubs, apparently as a joke. Clients called me asking what was going on and making it known that this behavior could strain and threaten our professional relationship. C-level execs delayed for quite some time to offer a public clarification, and completely refused to issue an apology. My immediate superviors were concerned by my anger and embarrassment, but senior executives wanted lists of everyone who had issues with this and told us to stop making an issue out of it.
  • Witnessing in the community, personally and through observation of others, numerous accounts of rude, attacking, and destructive behavior towards volunteers looking to contribute or newbies asking honest questions. In some cases this was dealt with, but even in those scenarios it would go on literally for years.
  • Witnessing numerous accounts of “brogrammer”-style attitudes that either you are a hardcore developer or are dumb.
  • Watching prominent community members promote foul and offensive ideals during official conference sessions.

As I make that list, I’m alarmed by the size of it. Frankly, I’m a bit ashamed I waited so long to make a stance after I see it all compiled together. I was not forced to do things I did not want to, and in some cases I even laughed at some of the jokes. In hindsight I wish I had not. I’ve made mistakes that I can not change, but what I can do is focus on what I do moving forward and what I choose to support.

In contrast, Community B feels entirely different. There are similarities amongst individuals in both A and B. Both communities contain wonderfully loving and inclusive people. Passion for the larger mission are present in both places. However, in Community B this seems to be the norm. When you look at the makeup of the community, Community B includes a far wider and diverse makeup; developers, users, designers, business owners, passions in just about every aspect of life. Community A has that, but Community B is that. Community A even has a large representation of these people. The unfortunate part is that it also has another part that rears its head into the mainstream makes me feel as if I simply cannot be a personal participant.

Additionally, there appears to be a distinct compassion for not leaving people behind in Community B. At first glance this appears that it could be a technological handicap, but somehow they’ve turned it into a pragmatic strength and have some staggering stats to prove it.

If there is one way I could sum up a generalization of the two communities, it would be this:

Community A is primarily focused on building a tool. Community B is interested in using the tool they are building to achieve a series of other things out in the world.

The products of these two attitudes came in stark contrast to me recently:

  • Organizers of Community A included a female-objectifying magazine associated with pornography as official conference swag handed out to everyone (Playboy). I want to give credit that an apology was issued, but let me be clear that this does not erase or negate this extremely distasteful and official decision. These organizers only found issue after an outcry against them.
  • I personally observed a company prominent in both communities chose to react to a (potentially legitimate) disagreement by attempting to rally anger and protest against the facilitators in the midst of an event in Community B and then cried foul when they were banned from the event for inappropriate behavior. I then saw numerous members of Community A actively promoting and justifying the company’s misbehavior by saying someone else acted poorly as well.

I am a father of three children. All three of my children, two girls and one boy, are very interested and proud of my professional and personal involvements. They want to be involved and learn what I do. I want to teach them the values of volunteering and believing in things greater than yourself. I want them to learn compassion and empathy.

How on earth can I teach them these things safely, productively, and successfully in Community A where such hostility, toxicity, and misogyny are so prevalent?

This really caused me great grief and anxiety as I know numerous admirable people and efforts in Community A that I think very highly of. What I needed to realize was that it wasn’t about them being part of Community A, it was about everything else that came along with Community A. Over the weekend I realized a simple but intensely black and white fact: I would absolutely not take anyone in my family with me to an event for Community A, while I would happily (and sincerely hope to) take them to numerous events for Community B.

If you are a community builder or even just a community member in any project, I encourage you to remember this comparison. Whether or not you agree with my assessment is irrelevant. It is my experience and not for anyone to say whether or not I experienced those things. I offer this as an encouragement to communities to consider what is accepted, promoted as well as what is abolished and never permitted to grow. Situations like these don’t just spring up overnight they take a long time to grow and spread. Not everyone will agree with each other so it is vital to a vibrant community to have respect and compassion as primary values.

Earlier today, after almost 9 years of official involvement, I deleted my Community A account and performed an extreme purge of my Twitter list. I realized I had been avoiding Twitter for quite some time and so much of my feed was filled with negative and sarcastic rhetoric. When you’re surrounded by that you start to think it’s normal and even start to participate in it. I can’t let that continue for me, life is simply too short.

Your time is limited …

Your time is limited, so don’t waste it living someone else’s life …Don’t let the noise of others’ opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition.

— Steve Jobs