Syndicate content


Lost SSH key graphical prompt and auto-add to SSH agent

At some point in the past, my system somehow lost the ability to avoid asking me for my key every time I connect to one of my servers. It generally okay, I don't do so much work on that server that I'd have to connect all the time...

However, it is annoying when, once in while, I end up doing a lot of work, back and forth.

The ssh-agent was installed and working. I could add the key manually:

ssh-add ~/.ssh/my-secret-key
ssh-add -l

The ssh-add command allows you to add and remove keys from the ssh-agent. The -l command line option lists the keys currently held by the agent.


Bad move for PHP unpack()! So unpack() stopped working?

Today I noticed many errors on one of my websites. Looking closer into it, I noticed that the code for the mo_references Drupal module stopped working.

It took me some time, especially because the code seemed to work just fine as all the files could easily be displayed.

Actually, that was not the case. The unpack() character 'a', which I used, was transformed from a simple string that gets trimmed, to all the characters, including the NULL characters. Ouch! Now we have to use the 'Z' character instead.

I use it to unpack() a tar file by loading 512 bytes of data in a ...

Console color: dark blue on black unreadable

As I work in consoles every now and then, I run in that one problem:

Some text is written in Dark Blue over the Black background:

This is a good example of what I'm talking about.

And if you can read that text, wow! (without selecting it first.

So... how could you change the color of that blue to make it readable? There is a way by sending some escape command to the console:

echo -e "\\e]R\\e]PC6495ed"

That command changes the color of the blue to a light blue (somewhat "cyan", although not light cyan.)

The "\\e]R" part is to reset the colors to ...

Classes in JavaScript (from complex objects to proper classes)

When creating objects (commonly called JavaScript classes) in your JavaScript code, you want to use the prototype. This is the only clean way of doing it. In JavaScript, you can create objects on the fly, but those are not considered safe.

Quick and Dirty

The quick way is to create an object directly. This works, but it has potential problems with used against a powerful optimized such as the Google Closure Compiler.

All the Quick and Dirty examples can make use of this in their myFunc examples. However, the closure compiler will warning about all of them because it doesn't know for ...

Large scale Linux console

As I am working on our Snap! C++ CMS, I created a set of virtual systems to test the compilation on "clean" system (yeah! my main computers has all sorts of things that I don't even know about...)

In those virtual system, I only install the basic server and then do a sudo apt-get install of anything else the server needs to get compiled. This includes libraries such as libmagic, boost, and Qt and some tools like xmllint. This is pretty cool, but when working in a console, and that console is very small, it makes it a bit difficult, so I looked into making it big.

For this ...

My NVG 510 broadband light is blinking red

Somehow my NVG 510 broadband light started blinking red a couple of time in the last few days. I've been wondering why and I think I have the answer now.

In most cases it may just be that the broadband signal disappears for too long and the modem disconnects.

However, in my case, I think it was because they made an upgrade (a push!) on the modem because a few things do not work as expected anymore. (i.e. I cannot access the nsh shell anymore...)

Whenever software is upgraded, the likelyhood that you have to reset the whole thing is very high. I had to restart twice and even after that, ...

Useful online network tools

I'm starting this page and hope to think about it again at a later time when I find additional tools... but as I have network problems I often need these types of services to make sure I can get the information I need.

For more Network stuff, click on the Network tag!

What is your IP address?

Check your current IP address from your browser: [Super clean version!] [More advance and with ads...]

What is my DNS?

This one is for people who setup a DNS to make sure that it can accessed from all over the world. It ...

Apache log says: client denied by server configuration

I work with Apache a lot. It is a really good web server that has many options and features. Unfortunately, maybe it has too many of them!

I ran in a problem where a notification from one server to another would fail with the following error:

[Fri Oct 11 19:43:50 2013] [error] [client] client denied by server configuration: <path to file>

Looking at the error, I was first thinking that my script was generating the error. The fact is that my script does not generate error 403. It has a 400 and 500 but not 403.

So looking at the error I thought, maybe that's an ...

log4cplus bug in handling %q in older versions

In the last few days I've been trying to find the reason for a slowness in one very specific case in a software. It looks like it crashes and since it includes many try/catch with (...) it certainly captures the fact, but contrary to what it is expected to do, this one does not get logged! In any event, I wanted to prove that the area where we first were looking was not affected, and sure enough it was not. The problem is somewhere else. However, to prove that I needed to have a way to log milli-seconds because things happen very fast and a 1 second decimation is definitively not enough.

Upgrading Ubuntu to use NVidia


These are instructions for Ubuntu 10.10 and these worked in Ubuntu 12.10 (which I have now). It may break in the future though.

I generally install my Ubuntu systems using the Server version of Ubuntu because it tends to works a lot better. The result is that I don't get all the Desktop features installed by the installer. That prevents me from installing the NVidia driver automatically.

The newest drives for make use of some source for the client-side driver and that requires you to install the linux source code and headers. I'm wondering if each time we ...

Syndicate content Syndicate content


Terms of Site Index

Find the page/content you are looking for with our index.

  • billing
  • FreeBSD

    A Unix operating system created by the University of Berkeley.

  • Gibbon
  • number

    All software make use of numbers. Everything is a number. The most basic number in a computer is 0 or 1. This is called a bit. These are represented with electricity. Although in most cases we see it as 0 - Ground and 1 - Voltage (i.e. 1 volt), the bit representation in software and in hardware may be interpreted either way (i.e. a 0 could mean that the voltage is 1V and not 0V.)

    Combining these zeroes and ones we offer end users to handle much larger numbers. With 8 bits, you can have numbers from 0 to 255 (unsigned) or -128 to +127 (signed.) Now a day, computers can handle a much larger number of bits in one cycle. Most processors use 64 bits but they can calculate numbers on 128, 256, and for some 1024 bits at once. Also with parallelism, the size can be viewed as even larger (i.e. handling a 64 bit number in 1,536 threads like on my old nVidra Quadro 600 is equivalent to one large number of 98,304 bits! That would be 2 power 98,304 possibilitie or about 2.8359e+29592 in decimal.)

    Integers are easy to handle. Although when working on math problems you generally see the set of avaialble numbers as equivalent to N although mathematicians know that computers can really only handle a limited set of numbers. For example, on a 64 bit computer, the usual range is -9223372036854775808 to 9223372036854775807, This is generally enough although at times some equations have to be reworked to avoid really large or small intermediate numbers that work fine in math equations, but not so well on computers.

    Now, math also includes other sets of numbers such as D, R, and C. Computers do not offer any way to represent numbers in R or C but they can offer D to some extend. These numbers are called floating point numbers because we do math using an exponent. The exponent makes the decimal point "float" in any location as the number used for the exponent offers. Using a 64 bit floating point, you can have positive and negative numbers with precision varing betwee 10-308 and 10+308. This includes a positive zero (+0) and a negative zero (-0), which is import in a few cases (although +0 = -0 is true, you can get the sign of a number and distinguish both zeroes). Note that at first decimal numbers were going to also have a positive and negative zero, but it was instead decided to have one more negative number (remember, with 8 bits we have signed numbers from -128 to +127, this is because in the positive numbers we have a 0 which we don't have in the negative numbers.)

  • template