Category Archives: Technology

LetsEncrypt, Certbot, and Lightsail

Although not directly supported, it’s quite possible to use the LetsEncrypt certbot client on Amazon Lightsail Linux.

First of all … what is LetsEncrypt?

Let’s Encrypt is a free service that offers basic SSL certificates any web site.  The certificates are good for 90 days but can be renewed indefinitely. With the proper software, the installation & renewal of the certificates can be fully automated.

There are a few things to be aware of and workarounds that need to be done.

First, download the certbot-auto client itself…

Continue reading

Amazon Lightsail


Ha! I’ll be you thought this blog was dead.

Well, truth be told, it was pretty close … but you never know when inspiration will strike.

So a little while ago I had a hardware failure on one my servers. This incident has given me the incentive to try and move some of the servers I host to other machines … where I don’t have to worry about the hardware end of things.

To that end, I started looking at hosting providers.  One of the providers I’m looking at is Amazon Lightsail.

Amazon Lightsail provides micro instances of their AWS compute service at very good prices.

A 512mb / 20gb Linux instance only costs $5 / month and the first month is free.

So I’ve been playing around with that and like it a lot.

I’ve currently got a handful of sites moved over to Lightsail.

I have encountered a few gotcha’s though …

Continue reading

Confirming cancel in a ProgressMonitorDialog

I’m working on a routine that downloads content from a host to the users desktop.

As the content is being downloaded, a progress dialog is displayed (implemented as ProgressMonitorDialog).

In the progress monitor, the cancel button is enabled.

In the default implementation, if the cancel button is pressed on the ProgressMonitorDialog, the cancel button is disabled.

I wanted to be able to ask the user if they really want to cancel the operation. If they don’t, then continue on with the operation. If they do, then perform the cancellation as usual.

I couldn’t find a straight forward way to implement this with the default operation, so I came up with my own solution…

Continue reading

Mailbait Threats

Back in October of 2012 I devised a way of blocking abuse of my mailing list server by detecting mailbait abusers (mailbait.info offers a ‘service’ to fill your, or someone else, mailbox with unwanted mailing list subscriptions). In June of 2013 I refined the technique.

Basically I detected if someone was visiting the mailing list subscribe page from mailbait.info and sent them to a special page that also annoyed them by popping up hundreds of javascript alerts about not spamming people.

Regardless of the popups, people still try to use mailbait to involuntarily subscribe people to my lists (well, try at least, my lists require a closed loop confirmation system).

Today I received the following threat from a mailbait.info user ..

threat.

I’m inclined to ignore the ‘warning’ … but I find it somewhat satisfying that my approach has annoyed someone sufficiently.

As an added measure, I’ve updated my system security mechanism to block any IP that attempts to use the mailbait service more than once.

Dynamically populating a Combo based on shift key

In a recent project I had a combo box that I wanted to add additional entries to if they clicked on it with the shift key pressed.

This is to allow to select entries that would not normally be displayed (for example, out dated values that could actually be selected).

To do this, I added key-up & key-down listeners on the Display object and populated the Combo based on the shift key state.
Continue reading

Nexus 7

androidYesterday I bought a new tablet … the Google Nexus 7.

Initially I liked it … it had a nice form factor, it’s light, has a nice display, and a powerful CPU.

I played around with it yesterday and today … but  I’ve decided that I’m going to return it.

My intention was to use it as a smaller tablet for traveling (so I don’t have to haul around my laptop AND iPad).

Continue reading

Text On Splash Screen

You may have heard a variation of this at some point …

A lazy programmer is not necessarily a good programmer … but a good programmer is a lazy programmer.

I fully subscribe to that statement … good programmers are always looking for ways to make their jobs easier.  Either by automating some repetitive function or making some functionality easier to change in the future.

Recently I had to do some re-branding on one of my eclipse based applications.  One thing that I had to do was update the splash screen that was displayed in the Eclipse RCP to display different text.

We had the basic graphic and all we needed was to have our designer update the text that was displayed on the bottom.  I sent the graphic over and the new text and the designer sent it back to me.

The problem was, I got the text wrong.  I knew I was going to have to go back to the designer and ask her to redo the graphic.  Luckily she’s a very nice person and never had a problem with this.

Continue reading

mailbait redux

For anyone who runs a mailing list and has gotten pummeled recently with a rash of subscription attempts, they may be coming from mailbait.info.

A while ago I blogged on how to block mailbait, but it appears they have changed their host.

Their new host is ‘themailbait.bitbucket.org’.

I suggest you update your web server configuration to block any referrer that references the word ‘mailbait’ in the URL.

Here’s my new httpd.conf entry to block mailbait…

SetEnvIf Referer mailbait mailbait
Deny from env=mailbait