Surprise!

Just celebrated my 21st birthday yesterday. I had changed my Facebook status to include 21 in the three alternate number systems used in computing: hexadecimal, binary, and octal. My only problem is that I frequently use the hex representation of 23, the date on which I was born; I mistakenly put down 21 = 0x17 = 0001 0111 = 027. Later in the day I was thinking about it and so changed it to the correct 21 = 0x15 = 0001 0101 = 025.

Even better, I was anticipating having a meeting with the Vice President on campus; I was invited by the Director of Student Life & Development, who was supposed to take me to the meeting. Upon arrival at his office, I found a note directing me to meet him at the pub on campus. When I got there, I was looking for him, but started recognizing familiar people, and then they all shouted, "Surprise!" It was an incredible feat, especially because I had spoken with everyone who attended earlier in the day or last week, letting them know about the big party this coming Saturday, and also seeing if anyone wanted to go out for drinks last night after my meeting - nobody gave it away! It was an awesome party, and quite unexpected.

If you were there or wanted to be - thanks!

Registered Linux User #370740 (http://counter.li.org)

Atrocities


The United Nations proposed 8 Millennium Development Goals, toward which they challenged the world to work. Microsoft's Imagine Cup student competition requires entries to contribute a tech solution that works toward achieving one or more of these goals, at least partially. Numerous charities try to make assisting the neediest in the world an easy part of our daily lives, such as practicing vocabulary or math on the Free Rice website.

Amidst all of this positive development, we still have atrocities committed in what are commonly referred to, passively, as "the most troubled areas of the world." The point is that there is a natural, human right to life and, to a great extent, peace. The current Israeli offensive in Gaza is one of those uses of excessive force that is condemned internationally, and constitutes a tremendous crime against the dignity and natural rights of the people who live there.

The most that most of us can do it raise awareness, to make it known that these actions are not tolerated by the rest of the world, and if enough people are talking about it, the government which we have put in place and empowered for ourselves will take notice and respond in the power it has at the international level.

Registered Linux User #370740 (http://counter.li.org)

Modern Information Security

I recently read about the FireGPG extension for Firefox. This extension allows one to interact with encrypted or digitally-signed data included on web pages, using a separately-installed GnuPG installation on the local machine. It also provides tight integration with Gmail, adding a drop-down box that provides digital signature and encryption options for email messages and automatically verifying any signatures that it encounters in viewed messages.

Presently, this extension is a great step toward ease of use for the GPG tool set to allow ordinary computing users to add some security to their communications. It is possible to sign or encrypt a message on the side, and then copy or attach that secured message to the email, but this is a very clumsy process and requires knowledge of many different tools, which is often impractical for the masses.

It is always a concern to look for security leaks in this type of software, but since FireGPG basically provides a parameterized interface to the GPG installed on the user's system, and uses the system keyrings, and prompts the user for the key's passphrase, there is really very little room for a breach of this kind. Personally, I do not let FireGPG cache my passphrase, even for the session, because that is one piece of data in memory that should not see the light of day, and I would prefer it to be overwritten and discarded immediately after it is no longer needed by the encrypting or signing function.

The other element of security in this particular application is open source. FireGPG is open source; the developers provide Subversion repository access to it directly, and provide snapshot tarballs, all cryptographically signed, of course. The point is that you can verify that FireGPG only references the system utilities and does not leak any information back to its creators or other hackers. The possibility of a utility such as this one doing that is reason enough to verify with absolute certainty that the version one installs is authentic, which is why it is imperative that the download be re-hashed on the end-user's system to check it against its md5sum and also the digital signature; any alteration can be fatal.

What the world needs now, with regard to information technology, is strong and easy-to-use security solutions. It turns out that security is never something we can take lightly. The user is the weakest link in the developer-marketer-user chain, and unless the user is strengthened (average people know about how their security works), no method of security will ever be good enough. Currently, the AES encryption algorithms, the GnuPG encryption and digital signature algorithms (RSA/DSA), and the United States National Security Agency's SHA-256/384/512 hashes make the technology strong enough, though it will take some very careful planning to integrate security based on these technologies into the daily lives of individuals.

See Wikipedia for more information on any topic listed here; the information there is very accurate and current.

Registered Linux User #370740 (http://counter.li.org)

A Slacker Building from Source

It's a Slackware user's style to compile from source. The only hitch is satisfying dependencies (hmm, not unlike registering for classes). Unfortunately this can be much more than "a hitch" and consume entire days grabbing dependencies. There should be some sort of open project that maps the dependencies of projects upon one another, because as nice as the GTK is for building graphical applications (like Pidgin, in my most recent experience), it can really be a drag to build, and it has so little documentation on its dependencies and their dependencies that it is a stab in the dark and a waste of time to run that configure script only to find out that aaa-x.y is not present or is too old for this version of the application you are trying to build. And once you satisfy that one, bbb-x.y is also needed! Try telling the average guy on the street if he has his pango, cairo, freetype, fontconfig, pkgconfig, glib, and gtk built together. Nonsense!

For a linux user, no big deal, though, but some documentation could really help. Perhaps someone can start an extensible and open way to wiki some of this data together, so others can learn from our experiences. I understand that software changes, and that data could become stale very quickly, but if it became a popular site, hopefully it would be a great start, if not a complete start to building software from scratch.

I must point out that there is such a thing as SlackBuilds, which lets you compile source code directly to a Slackware package (.tgz) for your system. This could greatly aid in compiling software with its dependencies for Slackware, and would also remove the hassle of stale libraries (with the /usr and /usr/local package prefix disparity).

Anyway, long live open source and Slackware!

Registered Linux User #370740 (http://counter.li.org)

Dvorak Keyboard

Well, folks, it's about time I posted again. This time I would like to cover the Dvorak Keyboard layout. This layout is a re-mapping of the keys on the keyboard that was designed to improve typing efficiency. It accomplishes this in several ways, the primary way being the strategic placement of letters of high occurrence in the home row and under the strongest fingers and furthermore increased alternation of hands, which increases speed and reduces typing fatigue. It is also easier to learn, and having practiced now for a few hours, I have already begun to instinctively press the Dvorak key correctly. Nevertheless, I will be practicing for some time before I will be truly proficient.

In any case, try it out - you might like it!

Registered Linux User #370740 (http://counter.li.org)

Facebook

Paul Nguyen's Facebook profile

Nerd Test

v1.0:
I am nerdier than 94% of all people. Are you a nerd? Click here to take the Nerd Test, get nerdy images and jokes, and talk on the nerd forum!
v2.0:
NerdTests.com says I'm an Uber Cool High Nerd.  Click here to take the Nerd Test, get nerdy images and jokes, and write on the nerd forum!

Bloggers' Rights

Bloggers' Rights at EFF