No, Java is NOT Good

There is no excuse ever to use Java. Unless its a beverage.

Ubiquiti EdgeSwitch CLI Reference


Show Running Configuration
    • (ubnt1)# show running-config

Show Saved Configuration
    • (ubnt1)# show startup-config

Save Running Config to Startup Config
    • (ubnt1) # write memory


Create a VLAN
    • (ubnt1) # vlan database
    • (ubnt1) (Vlan)# vlan 10
    • (ubnt1) (Vlan)# vlan name 10 "Voice"

Add Port to VLAN
    • (ubnt1) # configure
    • (ubnt1) (Config)# interface 0/1 
    • (ubnt1) (Interface 0/1)# vlan pvid 10
    • (ubnt1) (Interface 0/1)# vlan participation include 10
    • (ubnt1) (Interface 0/1)# vlan participation exclude 1

Remove Port from VLAN
    • (ubnt1) # configure
    • (ubnt1) (Config)# interface 0/1 
    • (ubnt1) (Interface 0/1)# vlan pvid 1
    • (ubnt1) (Interface 0/1)# vlan participation include 1
    • (ubnt1) (Interface 0/1)# vlan participation exclude 10

Show What Vlan All Ports Are In
    • (ubnt1) # configure
    • (ubnt1) # show vlan port all

Force Vlans To Be Tagged when transmitted on a port
    • (ubnt1) # configure
    • (ubnt1) (Config)# interface 0/1
    • (ubnt1) (Interface 0/1)# vlan tagging 1,2,3,4,5

Force Only Tagged VLANs Allowed Into a Port (HP ~ Trunk)
    • (ubnt1) # configure
    • (ubnt1) (Config)# interface 0/1
    • (ubnt1) (Interface 0/1)# vlan acceptframe vlanonly

Force Only Untagged VLANs Allowed Into a Port (Cisco ~ Access Mode)
    • (ubnt1) # configure
    • (ubnt1) (Config)# interface 0/1
    • (ubnt1) (Interface 0/1)# vlan acceptframe admituntaggedonly

Allow Both Tagged and Untagged VLANs into a port (Cisco ~ Trunk)
    • (ubnt1) # configure
    • (ubnt1) (Config)# interface 0/1
    • (ubnt1) (Interface 0/1)# vlan acceptframe all

Basic Port Commands

Disable Port
    • (ubnt1) (Config)# interface slot/port
    • (ubnt1) (Interface slot/port)# shutdown

Enable Port
    • (ubnt1) (Config)# interface slot/port
    • (ubnt1) (Interface slot/port)# no shutdown

Set Port Description
    • (ubnt1) (Config)# interface slot/port
    • (ubnt1) (Interface slot/port)# description "Office PC"

Show Port Descriptions, State & Status
    • (ubnt1)# show interfaces status

Show Port Status
    • (ubnt1)# show port all

Show Power over Ethernet (PoE) status on all ports
    • (ubnt1)# show poe status all


Show Mac Address forwarding table
    • (ubnt1)# show mac-addr-table

Show port errors and dropped packets
    • (ubnt1)# show interface 0/1

Test Ethernet cable to device
    • (ubnt1)# cablestatus 0/1

Show switch Temperatures and Fan Status
    • (ubnt1)# show environment

Word Origin - Politics

The word politics comes from the word "poly" which means "many" and ticks which are blood-sucking parasites.

Music As Code

One of the greatest songs ever, written as code. Can you guess the song?


Wintergatan Marble Machine

Photo: Samuel Westergren

This is a video of a musical instrument built by Swedish musician Martin Molin. It uses 2000 marbles.

How It Works: Part 1

How It Works: Part 2

The Bank Robber

A man with a gun goes into a bank and demands for money. Once he is given the money, he turns to a customer and asks: “Did you see me rob this bank?”

The man replied, “Yes sir, I did.” The robber shot him in the head, killing him instantly.

He then turned to a couple standing next to him and asked the man, “Did you see me rob this bank?”

The man replied, “No sir, I didn’t, but my wife did!”

Cinderblock Recipe


  • Cinderblock

Serving Size

  • 1 Cinderblock

Recommended Uses

  • Cinderblock wall, Cinderblock planter bed, Cinderblock desk legs, Cinderblock doorstop, Cinderblock gumbo

Not for use in

  • Cinderblock Anvil, Cinderblock Winerack, Cinderblock Crib, Cinderblock Persuasion Device, Cinderblock Legos

Parting remarks

  • Its a cinderblock. Its solid if you pour concrete in it. It cracks if you hit it too hard with a hammer, just like all cinderblocks do. If you have never used a cinderblock before, I highly recommend trying this product.

Generate a Self-Signed SSL Certificate

First, determine the name to be used for the key. For a webserver, use the fully qualified domain name. For a more general key (*, just use the domain. The following example creates a general purpose 2048-bit key for that is valid for 10 years. Generate a private key and secure it with a passphrase. This passphrase will be temporarily.

openssl genrsa -des3 -out 2048

Generate the certificate signing request.

openssl req -new -key -out

Answer the questions as prompted

  • Country Name: US
  • State or Province Name: Michigan
  • Locality Name (eg, city) [Default City]:Detroit
  • Organization Name: Jonathan E. Ross
  • Organizational Unit Name:
  • Common Name: *
  • Email Address:
  • A challenge password: (leave blank)
  • An optional company name: (leave blank)

Remove the temporary passphrase from the private key.


openssl rsa -in -out


Sign the certificate signing request ourselves.

openssl x509 -req -days 3650 -in -signkey -out

Drumline - Basic Warm Ups

These are great for Snare, Tenor, or Bass. I obtained these when I played snare on the 2001-2004 Western Michigan University Drumline.

The patterns are very basic as they are meant to be a framework upon which you would build more complexity. For example, create your own split bass patterns or move things around on the tenors.

Click Here To Download

Drumline - 5-7-10

This is an example of how you can take the basic warm-ups from this post and have some fun. The top lines are verbatim from the warm-ups, but the bottom “split” part is where the real beef is. This sounds much cooler in person and was my favorite at Western.

Click Here To Download