Google and the 101 Domain Names

The other day I came across this article about Google’s applications for new generic Top-Level Domains (gTLDs). Now, all of these gTLD names are applied for by the company “Charleston Road Registry Inc.,” but it is wholly owned by Google.  Ergo, these are Google’s applications.

The article focuses on the .dev domain, which is used to indicate something that is in development. The domain that Google applied for was intended to be a “closed” domain, in which it was to be “for the sole use of Google.” It appears that Google has applied for 101 domain names. Some of those were for the “closed” domains like .dev, and the rest varied from limited to only Google to ones available to the public.

I dove in and looked around.  After reading through, OK skimming through, all 101 applications, I decided to divide up the domain names that Google applied for into 7 access categories across 3 sections:

Continue reading

Pound, SSL, and real Certificates, redux

This is a follow-up to my original Pound, SSL, and real Certificates post from some time ago.

Well, the time came around for me to not only replace the certificate we had, but upgrade both from 1024bit to 2048bit, and from SHA1 to SHA2 (aka: SHA256).  So, what follows is the instructions to get Pound up and running with SSL, updated for 2048bit and SHA2.

Continue reading

Kindle Burned?

Unless you have been hiding in a cave with no Internet access, then you have heard about Amazon’s new Kindle Fire. Then again, if you have been hiding in a cave without Internet access, how did you get this page?

Well, most people are making comparisons between it and the iPad, so I am going to also. Please note, that I am aware that the two are very different, but if other people get to make wild comparisons, then I do also.
Continue reading

VB vs PERL

I have had to support VB Script for a while now. While I would rather not use it, I really don’t have many options. It is needed to run actions on Windows servers and desktops, it is readily supported out of the box, and it kinda works.

Recently, we needed a script that would run at startup that would replace a configuration line in a settings file with an updated line. Basically, we needed to search the file for a the string that stated that the line was a certain config parameter, then replace that entire line with the new version of that parameter. Since this is running on everyone’s desktops, I would have to write it in VB Script.

Let me tell you, this is no easy task. I finally found a way to do it, here is the code for it.

strComputer="."

Set RegularExpressionObject = New RegExp
With RegularExpressionObject
  .Pattern = "StringToLookFor"
  .IgnoreCase = False
  .Global = True
End With

strReplace = "StringToInsert"

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\SomeFile.txt",1)

Do Until objFile.AtEndOfStream
  strLineText = objFile.Readline
  expressionmatch = RegularExpressionObject.Test(strLineText)
  If expressionmatch Then
    strNewText = strNewText & strReplace & vbCrLf
  Else
    strNewText = strNewText & strLineText & vbCrLf
  End If
  Set expressionmatch = Nothing
Loop

objFile.Close

Set objFile = objFSO.OpenTextFile("C:\SomeFile.txt",2)
objFile.WriteLine strNewText
objFile.Close

Set objFile = Nothing

That was not the easiest thing to figure out. Just for fun, I wrote the same thing in PERL.

open (TXTFILE, "C:\SomeFile.txt") || die "Read error for $!\n";

while ($temp_line = ) {
	chomp ($temp_line);
	if ($temp_line =~ /.*(StringToLookFor).*/) 
	{ $txt_line = "StringToInsert"; } else
	{ $txt_line = $temp_line; }
	$output .= $txt_line . "\n";
}

close (TXTFILE);

open (TXTFILE, ">C:\SomeFile.txt") || die "Write error for $!\n";
print TXTFILE $output;
close (TXTFILE);

exit (0); 

Without blank lines for spacing, or any comments, there are 25 lines of VB Script and 12 for PERL. Now, I did cheat a little with the PERL script. I usually like the make it a little neater, and using strict variable declarations. Switching to strict variables adds 5 lines, and then my usual layout adds another 4, for a total of 21 lines.

Now, I know that comparing raw lines of code is not a valid comparison of two languages. So what is? I like to look at how, in this case, each handles Regular Expressions.

VB: You have to declare an object as a regular expression object. Then, you define each aspect of it, and then you have to call it with .Test(variable) to test against the string in the variable. Don’t get me started on that damn Hungarian Notation of putting str before every string, or obj before objects. Oddly, I couldn’t find the notation for a regular expression object.

PERL: You simply call the variable with a =~, then you can use // to basic pattern match. If you wanted to actually replace the string in that line, you could use tr///, or if you wanted to just return part of the original string, s//.

Actually, the calls to open and close to files are very similar in length. Therefore, the real difference is the code to do the string comparison. It is just weirdly convoluted in VB. Not ass backwards, just convoluted. Hell, ass backwards would have been bad enough, the convoluted just makes it weird.

What is acceptable and what is not? Does a facebook status differ from a twitter tweet?

I starting thinking about this when I thought of a humorous little comment, that I was going to post as a facebook status. When I then thought “wow, I have coworkers on here. While they may be friends also, is this something I wanted them to see me doing while within the 8-5 time range?”

Yes, I had this humorous comment come to me during work time; and yes, one of the first ideas that came into my head was to share it with people I know. That would be either tell it to them, email it to them, or post it to facebook.

The first idea would not work, because I am at work, and some humerous comments are not acceptable. The second idea, while working, would have been hard to fully convey. The third would work, because people do not mind having only part of the joke and filling in the rest.

However, I am at work. Some of the people I work with are on facebook, and are my friends. So, in a way, options 1 and 3 start blurring together. Then I thought, “what if I had a twitter account, would that be different?”

That has led me to wondering, is there a difference between facebook status updates and twitter tweets? If so, what is the rationale for such a difference? While everyone who is your friend sees your status updates, unless they have chosen to hide you, people who have chosen to follow you on twitter see all of your tweets. So, where is the difference, at least in what is, or is not, acceptable?

A response to Jason Calacanis

Just a few days ago, Jason Calacanis wrote an article called The Case Against Apple-in Five Parts, in which he laid out his reasons for disliking Apple. Now, I don’t begrudge anyone hating any company just because, but when you start making up bull-shit to support your feelings, I get a little perturbed. However, many other have responded already, so he has written another missive, Apple’s Master Plan (and why even fanboys should be scared) which raises the bar on bullshit.

First, I want to say from the bottom of my heart, Fuck You Jason Calacanis! I am not saying this because of your bullshit reasons, but for your god damned use of non-black for your text color. And not only that, but hexadecimal 999, which is somewhere around middle gray. Oh fuck you! Thank damn Opera lets me turn off Author-mode style sheets.
Continue reading

A beautiful confidentiality notice

I just received an ad, and this was the included Confidentiality Notice. While it contains the usual violations of common sense and legal theory, I really love the last line. Go ahead and read it.

Confidentiality Notice: The information contained in this e-mail transmission is intended only for use of the individual or entity named above. This e-mail transmission, and any documents, files, previous e-mail transmissions or other information attached to it, may contain confidential information that is legally privileged. If you are not the intended recipient of this e-mail transmission, or the employee or agent responsible for delivering it to the intended recipient, you are hereby notified that any disclosure, dissemination, distribution, copying or other use of this transmission or any of the information contained in or attached to it is strictly prohibited. If you have received this e-mail transmission in error, or you do not wish to receive any further communications from us, please immediately notify us by return e-mail transmission or by telephone at the number above or at the address above, and destroy the original e-mail transmission and its attachments without reading or saving it in any manner.

So, if I do not wish to receive any further communications from them, then I can reply to the email and request to be left alone, or I can call their phone number (which was not included in the email, contrary to the notice), and all is good. But wait! I also have to destroy the email, without reading it. Huh? How the hell am I expected to get this far in the email and follow the instructions, without reading it?

I just love this stuff sometimes.

Pound, SSL, and real Certificates

I have written an update for this at Pound, SSL, and real Certificates, redux.

Recently, I have been working with setting up some web servers, using Pound as the front-end. The idea is that there are multiple back-end servers, and the single front-end that controls which server requests go to. One of the problems is using SSL for HTTPS pages. All of the documentation I can find online covered creating a self-signed certificate.

But if anyone has followed the self signed certificate problem knows that this is not a great idea, especially if the site is to be used by anyone.

Poking around, I finally found my answer, partly through an older post on the Pound mailing list.
Continue reading

My SAN, let me show it to you…

I HAVE A SAN! Wait, I have 2 SANs, 3 Data servers, 2 Metadata servers, and 2 load balancers! BWAH HAH HAH!
Continue reading