April 08, 2008

How THE Dan Evans rolls

We use 37Signals' campfire and love it. Occasionally (!?), a LOLcat will show up in our discussions.

Thus, the illustrious Dan Evans presents our new icon (catfire):

catfire

Technorati Tags: , ,

March 26, 2008

GoogleUpdateChecker weird network request

Why is GoogleUpdateChecker trying to connect to host "t" port 80? Is that a bug?

Picture 15

Technorati Tags:

August 30, 2007

Amusing copy of the day

This is the copy that's shown when you choose to configure your cert's options manually.

Advanced Users: Configure Certificate Extensions



Please note that the extension options below are not for the faint of heart. You probably won't trigger a Vogon invasion of Earth if you press the wrong button, but you might cause weird behaviour in some otherwise-normal software. Don't fiddle with this unless you've been told to, or unless you're a born fiddler.

Technorati Tags:

July 14, 2007

Little known, but excellent option to sudoers file


insults

   If set, sudo will insult users when they enter an incorrect password.  This flag is off by default.

May 08, 2007

Flickr's New Slideshow Format

ZOMG hotness

Technorati Tags:

May 01, 2007

bash-completion

If you have MacPorts installed, try this:


sudo port install bash-completion
source /opt/local/etc/bash_completion

There is so much yumminess here that it's hard to know where to begin. Directory commands like pushd will now tab-complete only to directories, user commands like usermod now only complete to usernames, gunzip completes only to files that end in .gz, unalias completes only with current aliases, kill completes with a list of pids, etc., etc., etc. The only danger here is wearing out your tab key.

Obviously, you want to put this in your ~/.profile. Also, since the file takes advantage of features in the latest versions of bash, you may want to sudo port install bash, add /opt/local/bin/bash to /etc/shells, and chsh.

Technorati Tags: , ,

April 30, 2007

Pretexted

Fedex tried to deliver a package for me to the wrong address. So Deep pretexted and found out what was up. I now feel like I'm part of an exclusive club. BTW, is it "pretexted me" or "pretexted for me"? I'm not really sure and no online dictionaries seem to have caught up with the use of pretext as a verb instead of a noun.

Technorati Tags: , ,

April 19, 2007

Mach-O Magic

Probably old humor to many, new to me:


stechert@kirin:~/Repositories/perforce/current/UnixBuild/swig [1140] $ otool -h _splunkswig.so 
_splunkswig.so:
Mach header
      magic cputype cpusubtype   filetype ncmds sizeofcmds      flags
 0xfeedface       7          3          8    16       2264 0x0001a085

Makes me think we missed an opportunity with our magic:


stechert@kirin:~/Scratch/bproblem [1157] $ od -N 7 -a 1143222000-1143220421-21680121.tsidx 
0000000    S   p   l   u   n   k   3

Technorati Tags: ,

January 02, 2007

Out with the old, in with the new

It was nice knowing you, 2006, how colorful you were.

  • You brought one new family member (my daughter Yuna, who was born in San Francisco on April 1), but you also took one away (my uncle Rick who died in Philadelphia on October 21st from lung cancer, may he rest in peace).
  • You saw to it that I moved away from the quasi-intellectual night life sophistication of North Beach to the comfortable bosom of suburbia in Millbrae. That was a good move -- the time was ripe for fruit trees and extra bedrooms to replace stunning views of the bay and adolescents barfing on our front steps.
  • I went to Japan twice, Portland once, Austin once, and Tahoe once. I hurt my back badly enough when we were in Tahoe that I walked funny for over a month afterwards.
  • Many friends and family were there when we needed them. I won't mention everyone individually -- you know who you are and so do we.
  • I started riding the Caltrain this year and riding my bike to get there, so I get at least 30 minutes of aerobic exercise daily now. I lost 25 pounds early in the year, then gained it back after the stress of parenting induced me to eat more ice cream than I used to. OK, it may also be that I just like ice cream.
  • Working at Splunk continues to deliver beyond my highest expectations - the work is interesting, the people challenge you to stretch yourself in new ways everyday (if you work at Splunk you know that this does NOT mean what most people think it means), and management continues to surprise (Erik Swan, in particular, for throwing me a gigantic vacation lifesaver right around the time we were having our baby).

Now, on to reckoning with 2007. Now hear this:

  • Now that we've got many months (and varying styles) of child rearing under our belt, I hereby declare that you will NOT be kicking our butts this year like you did last year. We WILL finish the projects around the house (garage cleaning, sprinklers, and bookshelves: I'm looking at YOU), we WILL eat healthy and not feel bad about how much time it takes to cook and clean, and we will go out to see a movie dammit. I'm THIS close to finishing up the play area in back room just to make my point.
  • With almost a full year of regular exercise under my belt, I'm going to make sure I can actually see my belt more often. This may mean more Wii boxing at work (because we use it to resolve technical disputes, I am currently the undisputed champion), but it probably also requires less ice cream at home. I resolve to make sure that my daughter will never have a reason to ask me why I'm fat nor why my belly button looks different than mommy's. She can't talk yet, so I have time.
  • I borrowed a chapter from my brother-in-law Frank's book and now keep in touch with my parents every weekend. This has been a very good thing, so I'm going to widen the circle.
  • Instead of being annoyingly wistful, and regardless of whether or not I keep my day job, this year I will start an independent venture. All talk and no action makes Jack a dull boy.
  • We need help and we know it. Land a choice housekeeper, accountant, and babysitter. If you know people that can be trusted, send me your recommendation.
  • I was born on March 2, 1971, so I'm a yin metal boar (inoshishi in Japanese, some incorrectly refer to pigs in English). Apparently, we're just leaving the metal cycle and into water, which means that the last three years of extra-good-luck are going to temper into just regular luck. Darn.
  • Oh yeah, blog more and blog better.

Finally, some small predictions, because I can't resist:

  • By the end of the year, it will be far more common for people who use the phrase "web 2.0" to be ridiculed than to be taken seriously. I realize this is already the case in some circles, but I'm thinking it'll be more like how we think of hoop earrings.
  • Someone will solve the non-comparability of the AJAX model with the page views model in a refreshingly simple way, leaving us all wondering why there was so much fuss about this in the first place.
  • The number of small companies trying to compete against Flickr is going to go way, way down. The Wikipedia entry for photo sharing currently lists just over forty competitors.
  • Blu-ray will win out over HD-DVD because of the titles being released and because of the installed base of the PS3.
  • Though the Wii will remain popular on the low end, the PS3 will own the high end. Again, this will largely be because of the content -- Final Fantasy XIII, Gran Turismo 5/HD, etc.

Technorati Tags:

October 03, 2006

Getting the Saved UID of a Process on OS X

If, like me, you were reading Setuid Demystified and thought "Wow, this is great, but it's got to work on OS X too, and there's no getresuid() or /proc/$pid/cred, so how do I use their proposed API?", then this code snippet is for you. It retrieves the saved set-user-id of a process on OS X, letting you populate the read_suid_from_X OS-specific function that's stubbed out in Chen and Wagner's code.

#include <stdio.h>
#include <sys/types.h>
#include <sys/sysctl.h>

int main()
{
        int retval, mib[4];
        struct kinfo_proc kp;
        size_t len;

        len = sizeof(kp);

        mib[0] = CTL_KERN;
        mib[1] = KERN_PROC;
        mib[2] = KERN_PROC_PID;
        mib[3] = getpid();

        retval = sysctl(mib, 4, &kp, &len, NULL, 0);
        if (retval == -1)
                return 1;

        if (len <= 0)
                return 2;

        printf("%u\n", kp.kp_eproc.e_pcred.p_svuid);

        return 0;
}

Technorati Tags: ,

My Photo