Marking Your Cyber Territory?
NoOnesMessiah asks: "I recently finished a relatively major webmail install for a large company and it all went very, very well. I left a '/.cornerstone' file for posterity (with names, dates the disks started spinning, 'asbuilt' notes for apache, php, etc) so that future generations would know who to blame (or call) in 3 to 5 years. I have also done this in various and sundry places within my network infrastructure while I wore the mantel of Senior Systems Engineer and even in bits of a major mp3 player's website while it was growing up on our network. Hell, even the concept of the 'asbuilt' is more than 14 years old to me. How was PHP built? Look at the "asbuilt" file for configure or compile-time options... This got me to wondering; How do Slashdot readers mark their territory so future generations know they were there? Certainly I'm not the only one who does this. I would think that most people do, even in some small way. Do you mark your own personal mailer, web server or desktops in the same fashion as you might for your employers or clients?"
It also helps cool the processors in the summer.
After a bitter parting is obviously named text files in obvious places stating things like "h@x0red by l337 crEw, mad pr0ps to the hole in the firewall"
;)
Keep em on their feet
Photos.
I created a web page for a historic hotel a few years back(2000). It was up still unchanged until late last year. In the code, I put my name and email indicating that I wrote it and also put my name at the bottom of the visable page. Whoever changed it left the code mostly unchanged except for removing my info from the site.
Now you'll never know it was me!
But they kept the same images that were edited using GIMP!(My name is still in the comments within the pictures)
gt
Yeah, sure! I put a checkin comment every time I modify code, along with my name and date. Future generations will know the exact time I introduced a bug just by looking at the source!
:)
</smartass>
(Okay, so I'm a programmer, not a sysadmin. I guess your question doesn't really apply to me, unless you call uninstalling Clippy "leaving my mark"....
Make it Intrinsic
For example; if you have ever seen my code, knowing what it looks like, you would never be able to miss the muddy footprints I stomp all over anything I touch.
Immortality through Mediocrity!! Do something right, or well, and you will soon be forgotten.
Do it really half assed, or fsck it up, and you will surely be remembered.
On any machine that I work on, I create a directory similar to '/-Build/' or 'C:\-Build\'. In this folder I keep subdirectories w/ drivers, software, updates, configs, etc. One other thing I include is a file called build.txt. In this file I put some nice information to have:
---
foo.bar.com
Built on 6/20/2003
Built by
Installation notes:
Updates:
6/26/2003 -
---
I am a big fan of making sure everybody knows "who-dun-it" and how to do it again.
First I build most servers from an autoinstall image like Redhat's Kickstart. I'm sure to include the kickstart config in /root. Everything else is built using package management tools and the source rpms/debs are kept on the machine for future generations to easily reproduce the exact same machine. Then finally keep /etc in CVS.
:)
For things that I may not want to take credit for, or not want some people to know who did this work[1] I put a seemingly random string in somewhere, usually out of sight, but visible to anyone who looks for it which is the md5sum of some string. If I want to prove that I wrote it, I can produce the string which generates the same md5sum, nobody else can. Also, if you put the string somewhere out of the way later coders ignore it and/or believe that it's important in some way they don't understand and leave it alone
[1]: I do a lot of work on IRC, you really don't want to put "Trojan detector 2002 By Isomer" all over it coz the kiddies whose trojans it detects will DDoS you instead...
How do Slashdot readers mark their territory so future generations know they were there?
well, i usually piss around the servers...
I just endorse the fuckin' check
... the fuckin' box is gonna get hacked or broken down within 12 months anyway, I'm gone by then.
.cornerstone file, I'd probably just say to myself "eh, some leftover cruft from the build process, better delete it".
:-).
What the hell
Like I really give a shit about Web Admin System #134 or Database Front End #2435 or Mail Server #1266
If I found your
As for my own computer, well my NAME all over the damn thing would probably clue somebody in that it's mine (in the files I mean, I don't actually write my name all over the box
try {
...
;
} catch (VeryBadException e) {
if (DateTime.Now.year > 2003) {
MessageBox.Show("ee WAS here. Not anymore! Nelson: ha-ha ");
} else {
}
}
Antiquated competence won't be a job skill forever.
The HTML I type for websites sometimes has a <!-- --> comment, but usually something funny rather than my own name or address. I never leave ad advertising mark unlike many admins with my name websites and other information. Usually the webmaster or postmaster@whatever.tld points to my common but spam-filled free email (yahoo/hotmail) and people can still contact me with a quick reply latency.
Oh yeah, C++ source code is a different game...
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
I wondered how that got there. I'm suing.
I don't mark things, I don't put my names on programs, and I don't leave files around on servers so others can see who done what.
I do computer work because it's fun and it pleases me. I don't care what others think of it.
If tits were wings it'd be flying around.
One job I was not particularly happy one day, so I pasted a copy of The Story of Mel into a comment in one particularly annoying part of the code. I wonder if it's still there.
I have directories for HOWOTOs, package install documentation, projects, standards & conventions, and official policies. Although most of the documentation up there is mine, I'm working on getting the rest of the admin team to use the site, too. It has already proven very helpful as an adjunct to my own memory, and as a source of "RTFM" URLs when others ask the same question over and over :-)
I mark my territory by making sure everything breaks regularly. My employers know who to call. When the police arrive, though, things get really confusing.
Lots and lots of Easter Eggs. One program I wrote had an egg in it where if you typed in "UP YOURS", or any string containing those two words into the password field, the mouse cursor would give you the middlle finger until you rebooted. Of course, most users would never come across that, but I'm hopeful that developers maintaining the code did.
-
Whenever I modify a system file, say
/etc/ntp.conf, I leave a copy of the original as /etc/ntp.conf.orig. This allows people to trace what's been changed.
-
Build trees are always left in
/usr/local/src, sometimes with explanatory notes.
-
Updates/changes to the system that users might notice are logged in
/var/adm/ChangeLog.
-
The base system comes from an install script, which is available to admins. I also have been known to generate a
.ps file documenting the system. (This came from a perl script that generated a TeX file.)
-
Modifications to code always include my last name so they're easy to find.
-
I'm currently learning troff so I can write manpages documenting the local system.
Anyway, mostly standard stuff. The hard part is documenting the documentation. It's amazing how much documentation I have, that nobody would ever find!I've installed quite a few dedicated communications systems that, while controlled by computers, leave little room for creative configuration in the "OS". I still find my ways..
On one system, I'd configure the IP address and netmask for an interface that was never enabled, with the ASCII numbers for my initials and the date, 255.78.74.66 / 6.28.20.3 for today, for instance.
On another, it was possible to create files with arbitrary names but not put anything in them. A few zero-length files with a hello-message did the trick.
My favorite machine allows hand-editing of an ARP-like table for an obscure routing protocol. Handily enough, this entire interface is never enabled, so I can stuff the table with things like "INSTALLEDBY-00:00:DE:AD:BE:EF NJBANDCREW-00:00:00:00:00:00 JAN01FEB01-00:00:00:00:00:00".
Even on dumb equipment like wiring blocks, I always scratch my initials into the backside before closing the block, so later when the system is tested and mistakes are found, I can defend myself. I've tried to make it standard protocol among the installers I've trained, since it saves everyone grief and encourages responsibility.
More than once, I've jotted notes on the bottom of steel equipment frames before bolting them to the floor, to be seen by the crew that tears them out in 30 years. Anything from "Kilroy was here" with the accompanying graphic, to "Help! I'm trapped under the rack!".
I've been responsible for installing some things I'm not always proud of. Personalization can also be a way of disclaiming responsibility.
Wiring junction boxes frequently contain notes jotted on gray electrical tape. "Approved by engineer Larry 5/22/01; says the NEC doesn't apply here. Black:Hot White:Neutral Green:Ground BlackW/tape:Messenger WhiteW/tape:Magic. If this box is smokey, check the one at the other end of the aisle too!"
My favorite thing is finding notes and doodles left by previous generations. Once I saw a pile of boards torn out and waiting for material reclamation (gold chipleads and stuff), so I dug through the pile admiring yesteryear's design. One controller board had a profusion of "green wire", added by a field tech to update the board to a new revision. In some unused space in the corner, a little smiley face had been elegantly needlepointed into the perfboard.
Makes you wonder how much personalization goes undetected in the products we use every day! Spend some time in the Silicon Zoo checking out the art inside chips themselves.
except for documentation I've written; and places where I've built/repackaged installers that I *had* to put my name on; I've left as little behind as possible. Two good reasons: the environments I worked in left little room for originality and often wanted to make sure that you could not be directly linked to the project(s) or would be relied upon in the future for it; and I also wanted to leave as little behind that might incriminate me in some shape or form in the future. Better to be forgotten than to have someone go; "that... whatisname... oh yeah, Kevin... what a jerk..." etc.
I think with the interesting people, their lives can't possibly be wrapped up into a nice little package.
Typically anything I write has "~mikeg" or "mikeg: [some date/time stamp] - watever I changed" or my email address (mikeg@whatever-company.com) stuck in a comment somewhere.
/usr/local/*, excepting "biggies" like a database server or web server (web servers go in /home/web or /home/www, database servers usually reside in /usr/local/[db_software_name]). A /usr/local/src directory with the source code for EVERYTHING I've installed, as well as a "bigmake" script which rebuilds it all the way I had it stays on the machine for future generations.
Often something of that nature will appear if you do a "strings" on the executable if the language I was working in is a compiled one, typically my email address works its way into the code somehow (help screens, version info, etc.)
For systems hardware, a large cursive MG in green or black marker on an inside surface, usually under the motherboard or on the bottom of drive bays, indicates that I built the system. Smaller MGs (in blue or black), usually with dates, indicate service done (these are sometimes on a frame bar or even a removable panel). When a machine finally reaches the end of its life, I initial it with red marker and leave it open until it is stripped and disposed of.
I understand the signing practice used to be quite common with mainframe service techs but has become less so with PCs and cheap servers - I for one would love to see it revived as it makes it easy to know who was the last person to work on machine X.
For an OS build, my footprints are unmistakeable - anything outside of the OS goes in
This script is used when upgrading software, or when rebuilding from scratch, and usually has a whole load of variables in it to turn off/on various parts of the build (for example, on my FreeBSD systems the first stage of this script is to cvsup and rebuild the OS/kernel - probably not something you want to do if you're just upgrading apache).
/~mikeg
This got me to wondering; How do Slashdot readers mark their territory so future generations know they were there?
/etc/passwd.
I write an impossible to find bug in thier critical software that will cause thier servers to shut down should my name be removed from
I always stake my territory by signing the back of the checks from the people that are paying me to do the work. Sure, an info file with compile options, versions of libs, and contact info (only to be used if they want me to sign more checks).
Documenting what you did and why is the best kind of proof that A> you were thinking and B> you were actually doing something. In addition, everyone loves documentation. As a wise man once said, documentation is like sex. When it's good, it's great. When it's bad, it's still better than nothing.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
Certainly I'm not the only one who does this.
Yes. Yes you are.
I'd rather be a conservative nutjob than a liberal with no nuts and no job.
For a project I did last summer, I put a little easter egg into each php script, so that if I pass any page the variable author=show, it shows my name and contact info. It'll be interesting to see how long it lasts...