Setup Apache on Mac OS X for Multiple Sites

I have actually been working on this tip for quite a while but only today actually wrote it up. This shows you how to create a multi-site Apache 2 configuration on Mac OS X. This is great for testing as you can setup as many sites as you want.

Setup Apache 2 on Mac OS X to support Multiple Web Sites

A Couple of Quick Atom Tips

I ran across a couple of quick tips today for the atom.io editor. I have been having trouble seeing the mouse pointer on my Mac wheen I use the Cobalt syntax theme. The mouse pointer stays black and sort of blends in. Turns out, if you use the Kobalt theme for your code, the mouse pointer turns white. Very helpful.

Also, the less-than-slash package adds the ability to automatically close HTML tags when you have open ones. A feature I really like.

And finally, I recently have been using the Seti UI theme. It really makes the editor look cool. Definitely worth checking out.

Suicide Squad Quick Review

Rating (3/5)

Suicide Squad is a DC comics movie about coercing bad people into doing something good. You get a bunch of criminals, inject a bomb in their neck, and then make them do what you want. Probably the most highly promoted movie to come along in some time.

So thoughts. I think the movie is good, but not great. I will elaborate in a second. The acting was very good and the casting choices were excellent. All the actors really fit their roles well. Special effects are good and the action scenes didn’t go on too long.

So what are the issues? There are a few.

  • The film’s edit is a mess. There are a number of timing and continuity issues and two slow/boring sections in the middle of the movie. Attempts at humor seemed off. Normally, I would blame the script, but not this time. Two examples stand out.
    • One of the squads helicopters gets shot down. But you never see who was shooting at the copter.
    • A big baddie in the film gets blown up with explosives. But earlier in the film, physical attacks have no effect on this God like badass. In addition, the whole process to make the attack happen is convoluted and silly.
  • There are too many squad members. The film needs about 2 or 3 characters removed from the squad. There is not enough character development or interaction. This leads to a distinct lack of witty banter.
  • Not enough Joker. The movie promoted the heck out of the Joker being in this film. But he hardly appears. Bad move by DC. Frustrating. Seemed like so much potential there.

To sum up, I think this could have been a great movie. But now it’s just an example of a wasted opportunity, but what’s left is still enjoyable.

Brave Browser from the Folks that Brought you JavaScript

Brenden Eich, creator JavaScript and Mozilla alumni is creating a privacy focused browser called Brave. The idea is to provide a faster and better browsing experience. Also, Brave is looking to include a micropayment system to provide income to content creators.

Sounds great. This is a browser I am definitely gonna try out.

A $49 Handheld Linux Machine PocketChip

PCWorld has this story on a $49 Linux hand held machine for just $49 each. This is a Raspberry PI like kick starter project. The web site make this thing look pretty interesting. I ordered one, so we will see.

Warcraft Movie Quick Review

Rating(4/5)

Warcraft is a movie based on the game World of Warcraft (WOW). The story follows the lore contained in early versions of the game. The peaceful world of Azeroth is invaded by large green humanoid creatures called Orcs. The orcs arrive via magical means and immediately begin attacking human communities. With that as the backdrop, the movie explores the main characters involved in these events.

The portrayal of the orcs is quite good. The actors are able to convey a lot of emotion through all that CGI. In addition, they have a lot of really good dialog throughout the movie. And if you play the game for the Horde side I think you will really like this part of the movie. My only complaint would be the Orcs seem a little too tall, large. They aren’t giants in the game, just more muscular.

My main complaint about the movie would be the geography of the fighting. It doesn’t really make much sense. The humans seems to just ride outside the castle and then suddenly they are fighting orcs. It would have been better if the writers had simply selected a town as the base for the orcs. Then you could clearly see where the humans were attacking and where the orcs were defending.

From a game players perspective I was a little disappointed there weren’t more WOW classes in the game. Basically, they just had the warrior class and a few mages. That was it. There is a lot more magical stuff in the game and I would have like to see that in the movie. Also, almost no dwarves or elves in the movie.

Overall a good movie worth seeing. I think most folks will be able to follow the story without playing the game. Hopefully there will be more movies because the back story for the game is really good.

Opera Browser gets some Cool Stuff

Remember the Opera Browser? It used to be that odd little browser that was really fast, but was kinda weird. Well, the company has made a lot of improvements recently that make the browser worth another look. The changes include:

  • Switched to the WebKit engine for rendering. This is the same engine that is in iOS and Mac Safari. So no more rending weirdness.
  • Ad blocker support at a standard similar to iOS. Turn this feature on and no more nasty ads. At all!
  • New mobile battery saving features. For example, the Chrome browser works great on a desktop, but when it comes to battery life, it is a pig. Safari on the Mac already has these features, but now you have a browser that can do the same on Windows or Linux.

Why install an extra browser? Here is my use case. When do you need ad blocking the most? When you search of course. Because you have no idea where you will be sent. And a lot of these no name sites have the most browser slowing crap. So when I research something, I fire up Opera and search.

I can configure Chrome or Safari to let a few ads through on my favorite sites.

Opera is free. You should check it out.

Blogging Again - Updates to Blog Software

Sorry for the 6 months off. The blog needed some work and I was busy with my real job. So I kind of fell out of practice.

Anyway, over the Memorial Day holiday, I took some time to start fixing things up. So here are the results. The main thing was to make fixes to the the CSS. The site didn’t work right on iOS or Android. So I had to really dig in to figure things out. This is what I learned.

  • Be careful what you include in a page. I was using a third party CSS feed reader to display links of interest. Turns out that was messing up my CSS.
  • Android and Chrome do not like wide <pre> tags. You have to set both white-space and word-wrap values to get things to work right.

Anyway, the site should look much better on phones now. Enjoy!

Cut, Copy, and Paste text from a Web Page to Clipboard

Want to make it easy to copy and paste some random piece of text to the clipboard? Well this can be accomplished using HTML with surprising ease. All you need to do is add a little JavaScript. Here are two examples, one with text box and one with a text area.

This trick can be used for any bit of text you want to copy to the clipboard a lot. Very useful for storing an e-mail address or user name that you need to copy and paste repeatedly.

Examples

These examples copy a command line for the Maven build tool.

Text Box Example

Source

<input onclick="this.select();" type='text' size="40" value='mvn archetype:generate -DgroupId=com.example -DartifactId=app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false' />

Text Area Example

Source

<textarea cols="50" rows="4" onclick="this.select();">mvn archetype:generate -DgroupId=com.example -DartifactId=app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false</textarea>

Windows 10 Start Button Stops Working

Problem: For no apparent reason, the Windows 10 start button has stopped working. Clicking on the button does nothing. In addition, the Cortana search box may also be frozen.

In my case, I could right click the button. But a single click did nothing.

Solution: I found my answer on the British Telecom (bt.com) site. Option 2 worked for me. Just reinstalling all my apps seemed to do the trick.

It does make one wonder what makes this sort of thing happen. At least there is a fix!

Expanse TV Show

I wanted to give a quick shout out for “The Expanse” tv show on the SyFy channel. Basically it is a somewhat realistic space adventure sometime in the not too distant future. The human race has colonized Mars and the asteroid belt.

The show consists of three story threads.

  1. Ice miners from the belt. Their routine mining run turns into quite an adventure. (Really like this thread.)
  2. A detective from the belt searching for missing girl. (Like this thread a lot too.)
  3. Political happenings on Earth as the other stories take place. (This thread confuses me a bit. I am not sure what it going on.)

Anyway, a very well done show. Check it out if you get a chance.

Java 8 Permanent Generation and Metaspace

In Java 8, the JVM’s Permanent Generation has been replaced. But with what? Turns out it is called the Metaspace. It serves the same purpose as the Permanent Generation, but it is not a fixed sized. It is stored in the native heap, so you are only limited by the amount of memory on your system. This should eliminate any of those nasty out of memory errors generated by the Perm gen.

Here are a few good links to read up further on the subject.

Ruby Bundler Throws an Encoding::CompatibilityError

When you run bundle install to store the ruby gems for your application bundler throws the following error message:

bundle install Encoding::CompatibilityError: incompatible encodings: UTF-8 and ASCII-8BIT

This is a really weird error and seemed to come out of nowhere for me.

Solution: Delete your Gemfile and retype it. Apparently an illegal character got pasted into my Gemfile. After creating a new file, the error message disappeared.

Install Cygwin Packages from the Command Line Using Setup

Cygwin is program that lets you run Linux/Unix utilties on windows. One problem with Cygwin is you always forget to install something. What are you options? There are a couple of package managers for Cygwin with confusing names: apt-cyg and cyg-apt. One of this works well, but I can never remember which one.

Turns out there is an easier option. Do the following:

  1. Copy the Cygwin setup program to your Cygwin directory.
    • For 32 bit, copy setup-x86.exe to C:\cygwin.
    • For 64 bit, copy setup-x86_64.exe to C:\cygwin64.
  2. Use the setup program to install new packages from the command line. Just navigate to your cygwin directory and type (use 32 bit or 64 bit command depending on your Windows version):

     setup-x86.exe -q -P Package1,Package2,Package3
    

This launches the setup program which downloads the package and any required dependencies. No packaging software required.

You can get a complete list of available Cygwin packages at: https://cygwin.com/packages/package_list.html

Links added to the Right Column

I updated the home page so that my recommended list of links appears at the top of the page. They were at the bottom before, but I guess most folks were not able to see them. This list is updated more often than the main blog.

Upgrading to Windows 10 Facts

Over the last couple of weeks I have tried to upgrade a few systems to Windows 10. In the process I learned a few things that are worth sharing.

  1. If you request an update through the normal process, it take about 2 days to for the download and upgrade to start. Not bad, but I don’t like to wait.
  2. You can download the Windows 10 ISO from Microsoft and upgrade that way. No waiting at all. Just put the image on a thumb drive and start the upgrade from the mounted image.

Note: If you need to make a bootable ISO, you can do that using the Rufus ISO utility for Windows.

What about a Clean Install?

I use a number of virtual machines for testing and I wanted a couple to be Windows 10. It seems like I read or heard from multiple places that you could do a clean install from the ISO as long as you had a Windows 7 or Windows 8 license key. Wrong!!!!

You cannot do a clean install with just a license key from Windows 7 or 8. In fact, here is the word direct from Microsoft.

Can I perform a clean install using the Free upgrade?
No, it will require that you are running a previous qualifying version and start the upgrade from within the qualifying version. You can initiate a clean install after completing the Upgrade.
Source: Windows 10 FAQ

Translation, if you are using a VM, you have to install the old version first. Then upgrade it. I can confirm the upgrade works if you use this method. Just install the old version. Patch it. Then run the install from the Windows 10 ISO. Windows 10 installs just fine.

I have not tested if I can do a clean install after upgrading from a license key. In other words, after I have upgraded a version of Windows with a particular license key, can I do a clean install of Windows 10 with that license key? I don’t know yet. I will give this a try this week and let you know.

Suppressing Output from a Linux Command

After executing a Linux command have you ever wanted to suppress all of the output? I have and I finally found the answer. Turns out the answer is pretty straightforward.

Here is a typical example. I execute gedit and send the output to the bit bucket.

gedit > /dev/null

The command sends standard output to the null device. However, any output that would be sent to standard error still appears in the terminal window.

To turn off standard error, you can pass a modifier to the expression. Here is the list of options.

  • > /dev/null redirects stout to the null device
  • 1> /dev/null same result as the previous command
  • 2> /dev/null redirects sterr to the null device
  • &> /dev/null redirects sterr and stout to the null device

So to prevent any output in the terminal window the following command would be used:

gedit &> /dev/null

So to start the command as a background process would be:

gedit &> /dev/null &

And finally, to execute a command in the background without making it a child process of the terminal use this.

(gedit &> /dev/null &)

This command will launch gedit in its own process and prevent any output from appearing in the terminal.

Resizing Windows on Xubuntu 14.04

Resizing Windows on Xubuntu Linux 14.04 can be really difficult as the default theme sets the window border to 1px. This is very difficult to grab with a mouse. So how to fix this? There are two easy solutions.

  1. Go to Settings –> Windows Manager and select Daloa. This theme looks good and has thicker borders.
  2. When grabbing a border hold down the Alt key and right click the corner. This should make it easy to grab.

Creating a Basic REST Web Service using Grizzly, Jersey, and Maven

My latest Java tutorial is now up on Oracle.com. This tutorial covers how to make a basic REST application using Grizzly, Jersey, and Maven. If you are new to any if these tools, this tutorial is a great way to try them out. You can launch the tutorial from here:

Java SE 8: Creating a Basic REST Web Service using Grizzly, Jersey, and Maven

In the tutorial you create an application using the open source Grizzly web server and the Apache Jersey library to create a RESTful web service. The Jersey library is the reference implementation of the JAX-RS Java REST web service API. Jersey makes creating RESTful web services really easy and the tutorial takes you through the process step by step.

Finally, Apache Maven is a Java build tool that makes it really easy to create and manage projects. It also allows you to create new projects using well known tools and templates and automates the process of downloading required libraries. Finally, you use Maven to create create an uber jar file which stores all the required libraries for an application in a single file.

Windows 10 Update in 2 days

My Windows 10 upgrades have shown up 2 days after I requested them. Yay! That is not too bad, but I still thing there must be some way Microsoft could be more definitive on when your update will show up.

Also, I need to point out you can download a Windows 10 ISO from here. You just need a valid Windows license key to install. The only caveat is the image only does clean installs. So if you are ok with wiping your disk, you can install right away. So I hope you saved your old boxes or wrote down the numbers someplace, because now they become very useful.