Posts tagged ‘open source’


Gratitude Journal 20110101

I am thankful or that

  1. Waking up to a new year.
  2. LEB making the coffee.
  3. LEB cooking  a nice brunch.
  4. Rain.
  5. A warm, dry house.
  6. GAB coming home safely from work in the rain.
  7. Food to eat.
  8. WordPress.
  9. Facebook.
  10. Text/SMS messaging.

I acknowledge myself for

  1. Doing laundry.
  2. Cooking dinner.
  3. Keeping this journal.
  4. Exercising.
  5. Washing dishes.
  6. Watching E.T. with the family.
  7. Interacting with people on twitter.
  8. Getting GAB to put up dinner leftovers and to wash the dinner dishes.
  9. Running the dishwasher.
  10. Putting away dishes & shining my sink.

Gratitude Journal 20101126

I am thankful for or that

  1. Rain.
  2. A parking spot close to the office on a cool, rainy morning.
  3. My unlimited text plan from Verizon.
  4. LEB’s reawakened hotness.
  5. Being able to go back to sleep after taking GAB to work.
  6. Money to buy food.
  7. The ability to walk.
  8. All of the technical documentation available on the web, particularly for NetApps.
  9. A warm, dry house on a cold, damp night.
  10. LEB picking up GAB from work.

I acknowledge myself for

  1. Doing laundry.
  2. Fulfilling my on call responsibilities for work.
  3. Eating leftovers.
  4. Taking several short walks through out the day.
  5. Taking my prescriptions.
  6. Putting off impulse purchases.
  7. Turning off the Alabama vs Auburn football game and going to an AA meeting.
  8. Sharing during the meeting.
  9. Doing personal development reading.
  10. Going to bed early.

Gratitude Journal 20101124

I am thankful for or that

  1. I was able to wake up and drive into work early to fix a problem.
  2. GAB getting home safely late last night.
  3. High speed internet.
  4. My Motorola Droid.
  5. Citrix XenApp.
  6. PuTTY.
  7. A good nights sleep.
  8. Hot, clean water for showers.
  9. A warm, dry house.
  10. Electricity.

I acknowledge myself for

  1. Having a frank, calm discussion w/ GAB.
  2. Working diligently on the job.
  3. Doing laundry.
  4. Walking two miles today.
  5. Walking long routes from & to my parking lot at work.
  6. Going to the library.
  7. Tracking my tasks and the time spent on them w/ the Pomodoro Technique.
  8. Asking for help when I needed it.
  9. Ordering our honey baked ham yesterday.
  10. Sending LEB a $6 off coupon for the ham!

Gratitude Journal 20101119

I am thankful for or that

  1. The Ubuntu Linux distribution.
  2. The human brain, particularly mine!
  3. Free and open source software.
  4. All the food colleagues brought to work to share yesterday.
  5. Sunshine.
  6. My Android phone.
  7. GAB washing dishes.
  8. Medicine for CIB and MJB.
  9. Books and audio books from the library.
  10. Our house.

I acknowledge myself for

  1. Doing my morning routine of chores.
  2. Doing my work morning routine.
  3. Helping colleagues at work.
  4. Taking walks through out the day.
  5. Practicing the Pomodoro Technique.
  6. Reading rather than watching TV.
  7. Taking the trash & recycle out to the street.
  8. Completing my benefits enrollment.
  9. Allowing GAB to use the car.
  10. Picking up MJB from school.

Gratitude Journal 20101112

I am thankful for or that

  1. LEB inviting me to lunch.
  2. Money to buy gas.
  3. GAB getting home safely.
  4. A beautiful autumn day.
  5. Cyanogen Mod for the Droid.
  6. GAB cooking dinner.
  7. A warm house.
  8. My Motorola Droid.
  9. Linux.
  10. All of the various Google apps.

I acknowledge myself for

  1. Going to lunch with LEB.
  2. Leaving work early.
  3. Picking up MJB from the afterschool program.
  4. Doing laundry.
  5. Going to sleep early.
  6. Taking short walks throughout the day.
  7. Keeping this journal.
  8. Waking the kids up for school.
  9. Running the dishwasher.
  10. Brushing me teeth before bed.

Agile Systems Administration

I found the following on /.

To me the word “agile” in programming has come to mean “a renaissance of best practices”. In other words, an excellent programmer is already agile, but a mearly”good” programmer might benefit from having it spelled out.

But by giving it this new name, there’s a risk of backlash. I guess that’s happened already, judging by the utterly vapid responses to this post!

To me, agile means the following things:

* don’t do work until you need to

* do everything in the simplest way you can

* write tests for everything

* make your work relocatable and reusable

* use version control

* communicate with customers

* release your work to the customer as rapidly as practical

Now, I happen to wear both a sysadmin and a programmer hat depending on the time of day. Mostly sysadmin, but since discovering this philosophy of programming, I’ve started doing more coding. It’s a pretty amazing feeling to have 100% code test coverage with everything tucked away in version control, with single-command deployment and distribution to client machines. They never taught me this stuff in school.

So, if you’re a syadmin, and you’re not as cynical as the other slashdotters here today, can you see anything in that list that might help you?

Here’s some things I do as a sysadmin:

* use version control for /etc configs (if you’re using dispatch-conf + RCS on your gentoo box, you’re doing this already .. just start checking YOUR changes in the RCS files too.. this saves my butt at least once a week)

* practice “test-first sysadmin” .. does your machine need a certain config? Write a script that verifies that the config is present. Run it, it will fail. Fix the config, run it again, watch it succeed. Now put the script in cron and forget about it (you might want to build a framework for this if you have a lot of these little scripts puttering around). This too has saved my butt: I have scripts that make sure ports are CLOSED on certain machines.. when the firewall config was accidentally erased I detected it right away.

* do everything in as simple a way as possible: for your next script, use environment variables and the presence/absence of files in a directory to configure it, instead of inventing Yet Another Config File format .. your scripts will be shorter and more robust. Use programs like djb’s daemontools to run daemons, instead of this bizarre thing where they put themselves in the background and you need all this scaffolding to track them down to start/stop/watchdog (wtf is up with that anyway).

Use the filesystem instead of MySQL .. use publicfile instead of Apache .. etc.. just do the simplest thing that can work.

Don’t ever install things by hand. Build a custom package. If your OS doesn’t let you do this easily, switch to one that does (gentoo rocks for this as well).

* document everything: when you do something, make a note of it on a wiki or a text file. Give the other sysadmins access and chide them when they don’t keep the file up to date. lead by example.

* automate: don’t do anything 3 times. anything you do a third time, automate it. (you will appreciate the simplicity of using the filesystem as your config file when you do this, by the way). need to watch something on a box? create an rss feed. you don’t need a web server, just build the rss feed and scp it from your laptop every hour. do whatever it takes for you to work as little as possible yet meet your goals.

Yeah, you probably do a lot of this already, but you’d never think of calling it “agile” or anything else other than “a good job”. Fine, whatever. Agile is more of a mindset than anything else, based around simplicity and being ready for change.

See Also:


Gratitude Journal 20090731

I am thankful for or that

  1. Finally getting NetBackup and the StorageTek L700 all straightened out.
  2. Putting a production Oracle DB on the new Veritas Cluster on Sun M5000s that I helped build.
  3. Money to buy food.
  4. Sysadmin Day!
  5. BD suggesting OJ’s Diner for lunch.
  6. RS giving me a ride to OJ’s.
  7. Elevators.
  8. LEB buying gas for the van.
  9. Air conditioning.
  10. A reasonably quiet on call week.

I acknowledge myself for

  1. Folding three loads of clothes.
  2. Making the bed.
  3. Taking out the garbage.
  4. Putting the garbage and recycling out at the street.
  5. Moving a production DB to the new cluster.
  6. Fixing NetBackup and the L700.
  7. Knowing to set up Nagios/NRPE monitoring of the new cluster.
  8. Answering pages in the middle of the night.
  9. Driving GAB to and from movie night w/ her band members.
  10. Working diligently.

Gratitude Journal 20090316

I am thankful for or that

  1. A rainy day.
  2. Eating lunch with AL and RS from work.
  3. How good it feels to walk now.
  4. LEB picking my up from work.
  5. Money to buy my lunch.
  6. LEB giving me some stamps.
  7. The field techs from Nashville, TN and Charleston, SC sending the hard disks back overnight as requested.
  8. UPS.
  9. The lady in the mail room.
  10. MG for organizing Green Food Day for St. Patrick’s Day.

I acknowledge myself for

  1. Walking over 8K steps.
  2. Cooking a vegetarian dinner.
  3. Washing and drying two loads of laundry.
  4. Going to bed at a decent hour.
  5. Reading 10+ pages of personal development material, Career Renegade.
  6. Reading 10+ pages of personal development material, The Slight Edge.
  7. Keeping this journal.
  8. Burning a copy of Trinity Linux Rescue disk to scan my windows computer for viruses and malware.
  9. Opening mail as soon as it comes in the house.
  10. Paying bills as soon as I open them.

Gratitude Journal 20090314

I am thankful for or that

  1. LEB cooking pancakes and bacon for breakfast.
  2. LEB cooking corned beef and cabbage for dinner.
  3. Turbulence Training.
  4. A rainy day.
  5. The combination of cell phones, high speed internet, and Virtual Private Networking (VPN) that allows me to work from virtually anywhere.
  6. LEB taking the kids to run errands.
  7. An incredible lightness of being that comes from getting more and more in shape.
  8. Hot water for showers.
  9. A warm, dry house on a cold rainy day and night.
  10. Electricity.

I acknowledge myself for

  1. Changing the sheets on the master bedroom’s bed.
  2. Washing a load of clothes.
  3. Folding two loads of clothes.
  4. Keeping this journal.
  5. Reading 10+ pages of personal development material daily.
  6. Listening to 30+ minutes of personal development material daily.
  7. Answering pages and calls from work in a timely fashion.
  8. Helping LEB gather tax materials.
  9. Taking care of Shadow, our dog.
  10. Taking a shower after working out.

Gratitude Journal 20090227

I am thankful for or that

  1. My new glasses.
  2. My ability to quickly learn and implement new technologies.
  3. Google.
  4. That LEB and the kids got home safely from picking up M north of Gaffney.
  5. Money to buy food.
  6. Fresh fruit to eat.
  7. Rain.
  8. WordPress.
  9. The unlimited txt plan on my cell phone.
  10. Nagios.

I acknowledge myself for

  1. Completing numerous tasks at work.
  2. Running the dishwasher.
  3. Washing a load of clothes.
  4. Making up the bed.
  5. Listening to 30+ minutes of personal development material.
  6. Watching The Clone Wars with the boys.
  7. Watching basketball with MJB.
  8. Being assertive about getting a copy of my eyeglass prescription from my doctor.
  9. Looking up online discount sources for eyeglasses.
  10. Answering pages from the monitoring systems at work.