How to Add Multiple Elastic IP to EC2 in the AWS for Multiple SSL Certificates

There are a few concepts you should probably understand right off the bat. Firstly, Amazon Web Services only allows five public IP addresses to be associated with a single EC2 instance. This is not necessarily a punishing or truly restrictive move on their part. The truth is that if you are trying to attach more than five public IPs to a single EC2 instance, then you are probably doing something wrong.

ASP.NET C#

Mono not working on Apache Solution

While there are a myriad of reasons why your ASP.NET C# might not be working after a clean install in Linux, there is a very common problem that will prohibit Mono from working because of version 2.0 vs 4.0 issues. Typically this occurs on source code installations as opposed to package installs (particularly in CentOS / RHEL / Amazon Linux, not so much in Debian distributions).

You will see evidence of this crop up in your /var/log/httpd/error_log with an error message that looks like:

Cannot open assembly ‘/usr/lib/mono/2.0/mod-mono-server2.exe’: No such file or directory.

Fortunately there’s an easy fix.

Proteus – a command-line program for radix base conversion

There’s a github project by the name of Proteus that I started recently. It supports the basics such as converting ASCII text ⇒ Binary, or OctalBase64 and so on. While you can find any number of online sites that have webtools which can convert blocks of text (or integers) for you, there’s really no basic tool out there for converting.

Proteus Screenshot
Verbose [and colored] example of binary-to-ascii conversion

List of Things to Check on Live Install of Linux for Laptops

This isn’t going to be a very long or in-depth article, just some thoughts that I’ve had about the subject in the past and a sort of general history about Linux installations on Laptops. I decided to initially put this down for a couple reasons, first and foremost because I use these articles for cataloguing what I’m up to, and notes to act as a reference for things I may check up on again in the future (thus why I post code snippets and mini-howtos on here for the most part).

Database Management Systems

Single Instance Exception in Entity-Relationship Diagram Design

Entities in the ER (Entity Relationship) model are typically nouns, existing physically, digitally, or conceptually. It is often suggested that entities should only exist (particularly in regards to the design phase) if they will contain more than one instance. For example an Employees entity would conceivably have multiple employees. If it is known that there would only ever be one employee, and that the employee would never change, then logically any information about that employee could be kept in the Application domain, outside of the Database altogether.

The idea behind this concept is that executing queries on data which is static in nature is a resource waste.

A Nicer Custom FISH Shell Prompt

Over the past couple years Fish has really become my favorite go to shell. At the end of the day I think most people fall into either the bash, fish, or zsh shell camps. The truth is that while many of the zsh fans argue that any interesting feature eventually makes it into the shell, the honest truth is that all that extensibility actually works against it. Most definitely bash is fine for most things, but fish is clearly superior when it comes to just having an “out-of-the-box” experience. This especially includes the advanced type of completion it offers. Yes you can get anything you want in zsh, just keep it updated and modify it, but that just gets out of hand at times.

As for fish, it suffers from this problem as well when you “want to go off the reservation”. However, thankfully, that’s largely unnecessary for the basic “goodies”. However, one thing I do like is how you can basically “trade” functionality (under which aliases would fall into this category). The prompt for the shell is no different and so you can just copypasta this into a file and drop into your ~/.config/fish/functions/ directory.

Add Functionality to Button or Call Function with Button in Unity 5

With all of the changes to how Unity operates with even basics like Buttons, its easy to read deprecated information that just won’t work in your new Unity 5 (5.5 or 5.6+) projects. It really seems like the major wave of changes started occurring around 4.7, and what happened to how we used to make “buttons” with OnClick() functions or whatever.

However, even now, I still see a lot of misinformation that does actually work, but its the wrong way to do it, and can only lead to confusion or problematic behavior down the road. It is surprisingly easy to do button functionality, and I’ll try to explain each part as I go so you understand the mechanics behind what’s going on.

So we’ll roll with a simple and easy example, doing a step-by-step on how to make make a proper quit button.

1. We’ll be creating a script to attach the button.

2. Then we’ll be adding a call to a function in this script, using the built-in OnClick() list in the inspector.

UI Image Wont Stretch Problem in Unity 5

There’s a common problem that those new to the basic UI system in Unity have when it comes to properly stretching Images or Raw Images across the screen inside the Canvas. This can also happen even with other UI objects like the Panels. While the stretch functionality under Rect Transform in the Inspector is one the absolute greatest things in the UI toolset, it does unfortunately suffer from some un-intuitiveness.

The reason that probably led you here is that you’ve used the stretch mechanism before, perhaps many times before, but for some reason its just not working this time and its driving you crazy, right? Never fear!

Implementing Multiple Canvas Groups in Unity 5

 

There is often confusion about how to implement canvas groups in Unity 5. The documentation makes it fairly plain what canvas groups are, but doesn’t help so much on just how to use them. This confusion leads to people asking about creating multiple canvases (which is actually possible to do in Unity 5+).

The multiple canvas solution is simply the wrong way to go about implementing multiple canvas groups however. It shows a lack of understanding on how you can use this UI feature. Now, I do want to make it clear that I’ve noted others (including myself) managing to use multiple canvases (lightly) in a scene, without any seemingly major detriment to performance. This is keeping in mind that performance is basically the primary reason touted as to why its best sticking to a single Canvas in a scene (the other reason being organization).

So, there are reasons (not relating to Canvas Groups) as to why you’d want to use multiple canvases, but I won’t be covering that here this time.

Distorted or Skewed Screen During Linux Install from Grub

I came across a strange problem when recently installing Linux to an older Laptop model that I hadn’t seen in many, many years. While the installation media would boot up fine into the actual GRUB2 menu, any decision to install the Linux distribution (text or graphical) after that would result in the screen skewing/distorting itself in a way so that I could tell there was text or a window up on the screen, but I couldn’t really see much more than that, with the resolution appearing to be out of control and everything shifted at a severe slant.