The Trinity: Visualized

Over the past couple of months, there have been a series of changes that have caused me to seriously reconsider many aspects of my faith. Some of these changes were depressing, others solemn, and yet some were joyous and causes for celebration. I don’t mean to get off topic, but only put this so that this change might be put into perspective. More and more, I’ve come to learn about glory, our chief end in this life, and what it means to be a part of Christ. It’s like having a new set of eyes and ears by which the world looks and sounds totally different.

At any rate, during one of the times when discussing the trinity and trying to figure out exactly the trinity relates to in this world… something interesting caught my eye. It’s no secret that things come in threes:

So we have the trinity, the Father, the Son, and the Holy Spirit. All three are clearly defined in the bible. Three in one. What else is like this? Genesis 1:3. God creates light.

What is light? More specifically, what is white light?

From Wikipedia (White):

White is a color, the perception which is evoked by light that stimulates all three types of color sensitive cone cells in the human eye in nearly equal amounts and with high brightness compared to the surroundings. A white visual stimulation will be void of hue and grayness.

The human eye has 3 types of cone receptors and 1 type of rod receptor (Trichromacy). Those 3 cone receptors are what give us the ability to perceive color by responding to red, green, and blue light. In other words, every time we white light, we see a simultaneous trio of equal portions red, green, and blue light… a trinity if you will. Each plays it’s own role in forming that white light. They are all required in order to produce it, too.

I believe in the same way that God made our eyes to take the three wavelengths of light so that we could see white light, He made our hearts receptive to the trinity so that we could see Him. Or at least, attempt to see Him. Staring too long at a bright light can make you go blind. :)

My point is this: Look no further than your own computer monitor to understand how three can make one. As you read this blog post, it is happening right in front of you. I pray that if you have a problem understanding the trinity, you will seek the word to know more and perhaps this illustration might be useful.

Thoughts on An Interfaith Dialogue

I wanted to expand on a comment I made and get some feedback regarding a video on Vimeo entitled An Interfaith Dialog. The whole video is worth watching, but the part I’m really talking about is from 16:05 to 17:34. Here is a transcript of that section:

When she was a student at Carlton College in Minnesota, there was a mosque that was burned down in an arson attack in Minneapolis. And she was taught in her Evangelical Christian tradition you help your neighbor. It’s basic. You love your neighbor. You love your neighbor. So the Imam of that mosque said, “Will you help us rebuild?” Will you help us rebuild? [She] said “yes.” I want to love my neighbor. And there were people in her Christian group that said, “How can you help these devil worshippers? How can you help these people who worship the wrong thing?” [She] said, “I disagree with their worship, but they are my neighbor. I want to help them.” Kicked her out of the Christian group. And [she] had a choice. “Am I going to be a Christian the way that some of these people view Christianity? In a way where I secretly applaud the burning down of a mosque? Or am I going to follow that ethic in my heart that says ‘Help your neighbor?’”

After listening to Eboo’s thoughts, the story about the young Christian woman who was ostracized from her church stuck with me. My initial reaction was to feel sorry for her. But after considering this story, and re-reading the Parable of the Good Samaritan I feel there is an aspect of this conversation missing. And this anecdote provides a good basis to relate how I feel.

First, I know very little about the “Jesus Ethic.” From the context and meaning of the words, I would guess that it means something to the effect of… the moral and ethical teachings of Christ devoid of soul-saving faith in Him. If this is incorrect or incomplete, please let me know! But running with this, it would seem that Eboo puts much weight in works, but we need faith: “And without faith it is impossible to please God”. If that is the case, then it makes his message very weak. But I digress.

“Love thy neighbors as yourself” is Jesus’s greatest commandment. It was a command in the old testament. It is also important to know that our chief end is to glorify God. We do that by following in Jesus’ foot steps. This is where the “Jesus Ethic” seems to come in.

Okay, so let’s break it down:

Neighbor’s ProblemJesus Ethic says HelpBible says Help
Neighbor when he gets burned.YesYes
Neighbor’s house gets burned down.YesYes
Neighbor’s place of worship where a god besides the triune God of the bible is worshipped burns downYes???



While the act of helping to rebuild a mosque is definitely loving your neighbors, I don’t think that it glorifies Jesus. It is one thing to achieve a common purpose which glorifies God with others from disparate (or even disagreeing faiths). It is another to commend a Christian rebuilding a mosque. Aren’t mosques places of worship for Allah? The god of Islam and the god of Christianity are two different Gods. They must be since Jesus was “the way, the truth, and the light” and Muslims don’t follow Christ. It would follow that she was essentially helping to rebuild a temple to a false God. That, in my mind, is pretty good grounds for making someone leave your church.

To respond, I would ask another question, “If your friend didn’t know Christ, and he/she was addicted to drugs.. and let’s say that they are a nice person, too. If that person’s stash disappeared… would you help them buy some more to replace it with?” Call my crazy, but I think that is a fair analogy. To help someone get something back which the desire, but draws them further from the truth of Jesus Christ is to say, in essence, that it is okay for them to go to hell. There is no Universalism.

One last thought: there is a great difference between, say, helping a person of any color or creed on a personal level and helping a group that follows a different creed. We must love our brothers and sisters… But worshipping Allah/Mohammed, to me, is a sin. Love the sinner, hate the sin. It is cliche, but that is the point: Love the individual, not the religion. Rebuilding a temple of worship is not loving an individual, it’s loving another religion.

I applaud Eboo’s generosity and his openness to discuss these things. As a Muslim, it seems as though there are not enough of them that want to have dialogue. However, I get the feeling that he is talking about some sort of inclusive unitarianism. I mean no disrespect to Eboo, but I think his liberal Islam would give him a firm foundation for being a Christian. He understands what it means to give glory to God (and lots of Chrisitians have a problem with this, including me.) But ultimately, all of the good works will amount to nothing unless each and every one of us pick up our cross and follow Jesus Christ!

Haiti: Do's and Don'ts

As part of writing down my thoughts and experience on the recent mission trip on Haiti, there were many feelings and experiences that I was not prepared to handle. Others, were adequately identified and met. The purpose of this post is to answer questions for those of you who are going or thinking of going to Haiti in the future and to help give you a more complete idea and hopefully answer some of these questions: “What should I bring?” “What should I leave at home?” “What should I expect when I get there?”

Some of these answers are personal experience. Some of them are suggestions and hints from people who live there. Others are observations garnered from other visitors’ experiences and suggestions.

So I present to you a list of Do’s and Don’ts. Things to expect and general observations. If you have been to Haiti, please leave feedback. Hopefully this page will be useful for someone else traveling to Haiti.

Note: these aren’t in any particular order.
Also note: this list is not exhaustive.
Also also note: Understand that there are certain sites or sources of information like Wikipedia, for instance, that appear to be misleading or misinformed1. Take what you read about Haiti with a grain of salt. Err on the side of caution.

Don’t expect electricity.

During our stay in Port-au-Prince, the hotel we stayed at had a generator. About every night between 10:00 and 10:30, the power to the city gets shut off. One of our companions told us that it’s because the city can’t meet the needs of the power consumption at night. At any rate, many places do have generators and may run them at night. Ask whomever is hosting you if they have generators or if you can expect to have power at night.

Don’t expect hot water.

Yeah, don’t expect to get hot water from a faucet. Anywhere. If you want hot water, someone will either have to boil it, or run it through a coffee pot. So, if you bring a bunch of ramen or need to shave, remember that you’ll have to find or make your hot water. Again, the hotel we stayed at was happy to accommodate the needs of people who wanted hot water. I can’t imagine anyone else wouldn’t either.

Don’t expect… water.

This one is a little tougher. Don’t expect water even from the cold faucet. Almost every house in Haiti has a water tank on top of the house that provides water to the house. These tanks require the water to be pumped up to tank. Those pumps require electricity. Catch my drift? This normally happened because the tank would be empty after a night of people taking showers after the pump was turned off. Occasionally there was water, but there was not enough pressure because people downstairs were showering. Keeping a small bottle of hand sanitizer on you will help!

Don’t expect air conditioning.

Our (the guys of our group) first 3 nights in Haiti were without A/C. Luckily, our hotel had them and we got to move to another room. They ran all night on the generator. Depending on where you stay, you may or may not be so lucky. You may want to bring a small fan. Even most of the tents we saw had outlets that allowed for fans to run, especially during the night. One group mentioned that their tents didn’t have fans or outlets. Ask whomever is hosting you. If you are staying in tents, a power strip and extension cord may come in handy to run a power line into your tent. In Haiti, anything goes.

Don’t flush toilet paper.

The sewer systems here don’t handle toilet paper for some reason. There are going to be small waste baskets beside you. Yeah, it’s a little gross, but you’ll get used to it. For latrines, they may just tell you to throw it in. But if there is an actual toilet in the city, just don’t do it!

Don’t throw away glass (or plastic) bottles.

Haitians, for better or for worse, recycle a lot. You wouldn’t tell it from all the trash in the street, but the glass bottles you’ll get when you buy a coke or beer will be recycled again and and again. Don’t throw them away. Most places will have a spot for you to put them. Same for the plastic bottles. Fill those up with water and keep a few of them on you. It’ll waste less and you’ll have extra water. Now that’s win-win!

Do keep lots of water on you at all times.

Not all of the water in Haiti is safe to drink. We drank “bottled” water while we were there. Many of the places buy water in the large 5-gallon water-cooler size bottles and then have coolers scattered. Make sure you keep your bottles filled. The climate in Haiti is warm and humid. You will sweat just sitting outside and you need to keep hydrated.

Don’t expect the internet to work.

Again, our hotel provided this for us. Most places we visited had internet — and it seemed that every one of them was satellite. It was slow but it usually worked. Usually. The point is: don’t make promises about sending e-mail or keeping up with stuff while you are away. Between the lack of electricity and storms it may not work.

Do expect to be overwhelmed.

Haiti is a 3rd world country. Some parts of Haiti are great: sandy beaches, restaurants, decent hotels. Port-au-prince is nothing like that. It is: streets in disrepair, reeking of sewage and decomposing garbage, rubble and collapsed buildings everywhere. Babies crying. Children begging. Guys will cat-call the ladies. Few people speak english. Vendors will crowd you and shove their wares into your face. Babies will poop and pee on you. Flies and mosquitos are everywhere. Animals run through the streets. Naked people sometimes do too. People urinate in the streets. People bathe in the ditches.

At one point while we were just on the outside of City Soleil near the red market, the smell of rotten food and decomposing garbage was enough to make me gag. I’ve got a pretty strong stomach for that stuff. It was intense. If you are visiting an orphanage, you’ll probably smell feces, urine and vomit. Be ready for it!

Bring stuff to read or a deck of cards.

Depending on where you are going in Haiti, you will spend quite a bit of time traveling. If you are going with a group and you are not a group leader, you will have plenty of time during travel and down-time to read a book or play cards with others. During a 9 day stay, I finished 3 books. Most of that before bed and traveling. You will want something to do to help you unwind. Some people wrote, some people slept, many read books, and others played cards.

Bring extras.

People lose things. Sometimes you’ll end up giving items away. It’s better to pack a few extra pairs of socks, t-shirts, work gloves, or snacks and give them away than to need them and not have them.

Bring snacks.

Your host may or may not cook for you. The hotel we stayed at served breakfast and dinner. No lunch was served. Bring plenty of nutritious, energy dense foods: nuts, granola, etc. Being in the heat will drain your energy out of you as you sweat.

Pack light.

Getting through customs can be a pain. When we arrived, we had a fairly long walk from customs and immigration to where the car was parked. If you are going to be moving around remember that you’ll have to carry what you bring. Pack light, especially if you are going to be moving around frequently.

Another reason to pack light is if you intend to bring stuff with you. This is a topic that will require more discussion. The gist of it is this: there really isn’t a reliable and affordable way to get items to and from Haiti. FedEx and UPS do not make deliveries there. If you want to ensure someone gets something, you’ll have to pack it and deliver it yourself. Split it between people. Utilize the 2nd checked bag. Heck, buy a cheap suitcase and leave it there. It will get used.

Wear sandals.

Everybody wears them. Boots are nice, and shoes are okay. We didn’t walk around on the streets much, but between boots and sandals, I’d have to say that sandals are the best choice. Not only are they light but they are cooler than regular shoes. I wore my Keens every day while I was there. Those (in my humble opinion) are the best choice. Make sure you bring stuff you can be active in: running, climbing, etc. Don’t wear flip-flops.

Bring surge protection.

Lighting was common while we were here. If you do decide to bring a laptop or other sensitive equipment, then make sure you bring a surge protector to make sure it doesn’t get damaged the next time lightning strikes a block or two away from where you are staying.

Bring rain gear.

I’m fairly certain that whomever came up with the saying “When it rains it pours” had visited Haiti. It truly does here. I’m not sure if it’s how it normally is or if it only did this during our visit, but the last 4 nights we were here… like clockwork around 6 p.m. came lightning, thunder, and rain. Heavy rain. Coming through the corrugated roofing rain. It also wouldn’t hurt to have a waterproof pack and/or a couple of trash bags to protect your gear.

Bring small bills.

This could read: Don’t expect exact change. If you haggle with a street vendor and get him to come down to $5 on something he wanted to sell you for $20, don’t hand the guy a $20 bill. Give him $5. These guys are going to try to make as much as they can off of you. Even if they are honest, don’t expect them to be able to give you exact change. We had several businesses that weren’t able to give us change or break a $20 US bill.

Do expect to get everything dirty.

My wife washed my t-shirts this morning. She is currently washing them again. I’m not certain what exactly caused them to change color, but my white t-shirts are now a dingy brown. So are my shorts. As is my backpack and everything else I took with me when venturing out on a tap-tap. There is so much smoke, dust, dirt and sweat that everything you wear will get amazingly dirty. Some people bought packs of very inexpensive t-shirts. Don’t wear expensive clothes! They will get messed up.

Do carry some form of protection on you if you travel in small (less than 5 person) groups.

As far as I know, it is illegal to bring a gun into Haiti without proper documentation. I’m not sure what is required to do this, but it brings me to a discussion I had with one of our travel companions: a gun would be useless in Haiti. If you (God forbid) ever find yourself in a situation where you are fearing for your life, run away. Do not try to fight people off. Their sheer numbers will overwhelm you. This is the primary reason that even if you could carry a firearm, it wouldn’t help. You couldn’t carry enough bullets! One guy suggested carrying a metal water bottle on a carabiner. Another suggested a pair of knives. Only do this if you are prepared to use them, though. Otherwise they will taken and used against you. But seriously. Check with your host. Make sure where you are going is safe. Don’t go anywhere alone. Ever. Many places will be able to set you up with security if you need it. Don’t assume you can take care of yourself if you have not been trained.

1 I note this because the Religion section of Haiti’s Wikipedia page says makes note of Haitian Vodou. What it does not tell you is that many take this very seriously. First-hand reports of run-ins with Vodou “priests” in Haiti reveal a practice that is not as benign as some of these websites would have you believe. There is a reason why Christian evangelical missionaries say what they say (Wikipedia uses the word defame) about Vodou. Let there be no mistake: Satan definitely has a hold on Haiti.

I Love the HP Officejet H470

A couple of years ago, while doing research for a class my boss was teaching our agents for CE credit, I helped present a “mobile” office. My presentation showed a fully mobile office that had a:

  • printer,
  • laptop,
  • internet

All working without the need for an outlet.

The printer I chose was the HP H470wbt Officejet Mobile Printer.

So two years ago, I bought the printer, set it up, printed 2 pages, stored it for a year, printed 2 more pages, and never touched it again until 2 days ago. I half-expected the ink to be dry and gunky, or something to have busted on this little guy since he traveled 400+ miles in the bed of a truck.

This thing prints like a color laser: sharp, fast, and no smudges! I am impressed. Truly a fine piece of mobile printing machinery.

Mission Trip!

It has been one of my dreams for the longest time to go on a mission trip to another country. I’m happy that prayer has finally been answered! At the end of July, we’re going to Haiti with a group out of Kansas City, Missouri.

The goal is to work with an established project there: Joshua’s Village, a village for abandoned, orphaned and neglected special needs and at-risk children.

The cost of the trip is $1,400, not including all of the required medicines and vaccinations or the travel fees since we don’t live in Missouri. If you’d like to help, with financial stuff, please let me know. I am taking donations!

Also, prayer support is really needed. It seems like after our first visit to the doctor to get shots, questions really started to pop up after we started reading the travel guidelines. It’s definitely outside of my comfort zone! Being away from home for more than 3 days has always made me feel uneasy, but in a country where diseases are running rampant, kidnappings are common, and a curfew is the law… gosh. However, the need is greater than my fear — pray it stays that way!

My mentor at church has said that the enemy will throw all sorts of nasty things to discourage us especially when doing something like this. I can definitely feel it already.

So I hope that even if you are unable to provide financially, you will pray for me, Jessa, and our entire group, as we embark on this journey together.

Limits on Powder & Primers

At my boss’s direction, I called the City Attorney’s office and inquired about the maximum amount of powder & primers that one might possess at home.

According to the city attorney Temple, TX adopted the 2006 ICC Fire Code and you are limited to:

  • 1 pound of black powder
  • 20 pounds of smokeless powder
  • 10,000 small arms primers

He wasn’t sure if this was ‘per person’ or if this was a limit based on the location. The exact wording is tough to get ahold of because the law is copyrighted and it is not freely available online.

I can’t imagine if you had some stored in a another building or offsite (legally) there would be a problem with possessing more than that. But honestly, 20 pounds of powder is a lot of powder. (25k+ rounds of 9mm, for instance depending on load).

There are probably similar limits in most areas, so please be sure check before stocking up!

Theming Local Task Tabs in Drupal 6

In one of the primary applications on our intranet, we use small icons in the process to help our Agents and Home office users through the process.

Agents see something like this:

While our employees see something more along the lines of this:

There are various combinations but the point that I’d like to impress is that a use-case exists for theming Drupal’s MENU_LOCAL_TASK tabs.

In Drupal 5, you could get away with doing stuff like this in hook_menu?:

    $items[] = array(
      ‘path’ => ‘node/’.arg(1).‘/reject’,
      ‘title’ => ‘Reject’,
      ‘type’ => MENU_LOCAL_TASK, 
      ‘callback’ => ‘drupal_get_form’,
      ‘callback arguments’ => array(‘pcf_casetracker_form_reject’,$node),
      ‘access’ => $finish_access,
      ‘weight’ => 3,
      ‘class’ => ‘hasicon reject’); // Special class for my my tab.

Then, a simple theme override:

function garland_menu_local_task($mid, $active, $primary) {
  $item = menu_get_item($mid);
  if ($active) {
    return ‘<li class="active’.($item[‘class’]?‘ ‘.$item[‘class’]:‘’).‘">’. menu_item_link($mid) ."</li>\n";
  }
  else {
    return ‘<li’.($item[‘class’]?‘ class="’.$item[‘class’].‘"’:‘’).‘>’. menu_item_link($mid) ."</li>\n";
  }
}

Would give you the intended results.

This, however, does not work in Drupal 6. There are two reasons:

Firstly, in Drupal 6, two theme functions are used to build links to menu tabs:

 theme(‘menu_item_link’, $link)
 theme(‘menu_local_task’, $link, $active = FALSE)

menu_item_link takes the actual menu router item as a parameter. It returns an HTML link. menu_local_task takes just the link, wraps it with an <li> tag, and adds the appropriate class if it is $active. At no time does the $menu_router item get passed to the function where it could affect the display of the <li> tag.

Secondly, the menu router system stores all of its values in a table called… menu_router. Writing entries to this table strips them of any values which are not in the table to begin with. So adding  ‘class’ => ‘css_class’ in the menu’s item in hook_menu() does nothing.

So how do we do this? I’ve got a hack, and a possible “fix.”

The Hack

In the menu system,  ‘page arguments’ and  ‘access arguments’ can be utilized to pass extra parameters to your page and access callbacks. These arguments get serialized before they get sent to the database. So you can actually stick a bunch of stuff in here. So, if you write your own access callback to only utilize the first param, you can stick extra information on those callback arguments like so:

  $items[‘node/%pcf_node/reject’] = array(
    ‘title’ => ‘Reject’,
    ‘type’ => MENU_LOCAL_TASK,
    ...
    ‘access callback’ => ‘pcf_casetracker_can_finish’,
    ‘access arguments’ => array(1, array(‘class’ => ‘hasicon reject’)),
  );

And then simply override your theme callbacks to do some trickery. Basically, test for that extra set of classes and build the link and the item entry in theme(‘menu_item_link’) instead of building it in theme(‘menu_local_task’). Then, if menu_local_task detects the ‘<li’ at the beginning, it will just let it pass through. Now your <li> tags can have extra css or attributes passed to them.

function garland_menu_local_task($link, $active = FALSE) {
  if (substr($link, 0, 3) != ‘<li’)
    return ‘<li ‘. ($active ? ‘class="active" ‘ : ‘’) .‘>’. $link ."</li>\n";
 
  return $active ? str_replace(‘class="’, ‘class="active ‘, $link) : $link;
}
 
function garland_menu_item_link($link) {
  if (empty($link[‘localized_options’])) {
    $link[‘localized_options’] = array();
  }
 
  if ($link[‘access_arguments’] && ($stuff = unserialize($link[‘access_arguments’])) && is_array($stuff) && ($b = array_pop($stuff)) && is_array($b)) {
    if ($b[‘class’]) {
      $link[‘class’] = $b[‘class’];
    }
  }
 
  if ($link[‘class’]) {
    return ‘<li class="’.($link[‘class’] ? ‘ ‘.$link[‘class’] : ‘’).‘">’. l($link[‘title’], $link[‘href’], $link[‘localized_options’]) ."</li>\n";
  }
 
  return l($link[‘title’], $link[‘href’], $link[‘localized_options’]);
}

The “Fix”

Since Drupal 6 isn’t taking any new features, it is highly unlikely that this will get fixed. At any rate, by modifying core to add two fields ‘theme callback’ and ‘theme arguments’, the menu system can be modified to add support for theming the individual items as they come out. From there, it is easy. One particular function, menu_local_tasks is responsible for actually rendering the links.

By modifying the function to look for the theme function and call it if it exits, we can do all sorts of cool things. The patch is down a the bottom of this post. If there is no  ‘theme callback’, it will fall back to the current method it uses.

It might be more worthwhile to split the actual rendering and collection of the tab information into two separate functions. This is probably the better way to do it. Also, there might be a better way to do it in D7.

Also, if you are using the Chaos tool suite you’d need to patch it as well (if you are using Garland).

There is also probably a way to do this that involves overriding the menu theme function just like ctools does it. The only problem that still remains is making sure that the menu tabs get the proper data associated with it. There doesn’t seem to be a no-brainer to attach that data after the fact. Could be wrong, though!

This is what the code in the new solution looks like (in your module, that is.)

The menu item itself:

  $items[‘node/%pcf_node/void’] = array(
    ‘title’ => ‘Void’,
    ‘type’ => MENU_LOCAL_TASK,
    ‘page callback’ => ‘drupal_get_form’,
    ‘page arguments’ => array(‘pcf_casetracker_form_void’, 1),
    ‘access callback’ => ‘pcf_casetracker_can_void’,
    ‘access arguments’ => array(1, array(‘class’ => ‘hasicon void’,)),
    ‘theme callback’ => ‘pcf_casetracker_tab’,
    ‘theme arguments’ => array(‘class’ => ‘hasicon void’),
    ‘weight’ => 9,);

The callback, which is basically theme(‘menu_item_link’) embedded in a tweaked copy of theme(‘menu_local_task’).

function theme_pcf_casetracker_tab($menu_item, $options, $active = FALSE) {
  if (empty($menu_item[‘localized_options’])) {
    $menu_item[‘localized_options’] = array();
  }
 
  $classes = array();
 
  if ($active)
    $classes[] = ‘active’;
 
  if (is_string($options[‘class’]))
    $classes[] = $options[‘class’];
 
  return ‘<li’. (count($classes) > 0 ? ‘ class="’. implode(‘ ‘, $classes) .‘"’ : ‘’) .‘>’. l($menu_item[‘title’], $menu_item[‘href’], $menu_item[‘localized_options’]) ."</li>\n";
}

Anyway, hope this helps someone.

Panic's Checkout Form

Just bought the Transmit 4 upgrade. Having used Transmit 3 for several years, the UI improvements are a big deal. It seems like some of the nit-picky stuff irked me was fixed and overall the app feels worth the $19 upgrade.

Panic has always been detailed oriented. Their site has always been easy to use and a pleasure to navigate. One thing that caught my eye while purchasing Transmit 4 was the checkout button:

My only complaint after having gone through the process was that this button is mislabeled. But it looks like a normal button, right? Well, it’s not. Because as you fill out the form:

The button transforms:

Continue filling out the form:

And it fills out more.

Until you’ve filled out every required field:

Very cool!

dgo.to: A URL shortener (and smartener) for drupal.org

The last day of DrupalCon, after talking to several people about drupal.org URLs, dgo.to was born. It’s goal is to make drupal.org URLs easy and smarter. For instance, where else can see someone’s profile by just typing their name?

dgo.to/@nvahalik

Anyhoo, check out the site itself: dgo.to or this post on d.o for more information.

Any comments & suggestions are welcome!

A Thought On Immigration & Illegal Aliens

Rep. Debbie Riddle of Tomball is going to introduce immigration-check legislation in Texas that is similar to Arizona’s newly passed law requiring law enforcement to question people about their immigration status. Even people in Ohio are thinking about implementing it.

Aside: Yahoo! News, of course, would have you believe that these bills are “anti-immigration.” However, their editors forgot the “illegal” part of the phrase (anti-illegal immigration, for the curious). Should be expected from them, but it’s frustrating nonetheless. After all, if you put the phrase out there like it should, be, their whining seems a little silly.

First off, while I am in favor of this for several reasons, it seems that it could be possible for some harassment of legal immigrants (or even citizens) to occur under this law. It can be hard to tell what exactly who is and isn’t an illegal alien just by looking at them. Most legal aliens, though, know that illegal immigration hurts them just as much as it does this. So they might very well be willing to put up with this. Which leads me to my thought…

Why not just require English from everyone? Why not make that the litmus test of being American. Speak english. For purposes of stopping illegal immigration, it would probably be very effective. If you want to work in this country, learn English. Indians, Chinese, Thai, Vietnamese, Arabs… they all come here to go to college and they know English. Would it really be that bad?

Remembering Kole

Back in October 2008, my wife started working at Texas Motorsports in Killeen. I met most of her co-workers at the Christmas party that December. That was the first time I met Kole:

Floyd, Erin’s husband, was deployed in Iraq for most of 2009. As a result, Erin & my wife, Sarah, got to spend a lot of time together. And usually where Erin came, Kole came as well.

Kole died in an accident March 7th, 2010. The details don’t matter, but most it is believed he died in his sleep.

Floyd and Erin managed to, above everything in this world, love Kole more than you could possibly imagine. From the countless photos on Facebook, to the toys scattered all over the floor you didn’t have to ask if they loved their child, it was apparent from the very moment you saw them.

Kole will be sorely missed not only by his mother and father, but by anyone and everyone who knew him.

Sarah and I made this video for them and we’d like to share it to remember him by:

Ultrasonic Cleaning of Brass Rocks!

After reading Jason Baney’s article on ultrasonic brass cleaning, it’s hard not to try it out. Cabela’s cheapest brass tumbler kit costs $63. I was able to find an inexpensive ultrasonic jewelry cleaner on Amazon for under $30.

I’ll be honest, it’s not the best little thing. It only runs for 3 minutes at a time (so you have to keep pressing the button) but luckily I don’t need it to run that long and since I’m mainly doing 9mm and .380 at the moment, I can fit a lot more brass in a much smaller container.

In his article, Baney cleaned 8x fired brass cases. I’m pretty sure mine are only 1x or 2x fired. After about 9 minutes in the first cycle, the first batch was done. I skipped the tap and distilled water cycles, too, opting instead to just rinse them under the tap. The results are below:

Before

After


Needless to say, my results were exactly in line with his! Many, many thanks to Mr. Baney for his wonderful article and the time it took him to research and test it all.

Now to scour eBay for a larger (or at least time-programmable) ultrasonic cleaner!

Update: I wanted to add that after cleaning a few more rounds that the results are not always as amazing as the ones I took pictures of. The first batch was small (~38 rounds) and with larger batches not all of the brass looks this pretty after 9 minutes of the vinegar bath and 6 minutes of the baking-soda + water bath. The outsides still look very clean, but the insides are still little dirty around the flash hole. However, it’s not dirty enough to warrant cleaning them again.

Finally: Drupal 5 to Drupal 6 Upgrade of our Production Intranet

Since getting to RVOS, a lot of my focus has been on improving things. Improving the network (new APs, redundant switches), infrastructure downtime (40+ hours a week to <2hrs a week), improving applications (bugfixes on custom apps), and in general, the way business is done.

Our intranet went live in Q3 of 2007, when Drupal 6 was still -beta1. Right after we went live, I tried to upgrade and failed miserably. Ultimately, the idea got pushed to the back burner over and over for several years until roughly 2 weeks ago.

I figured this would be somewhat easy since most of the modules now have 6.x counterparts. This assumption probably would have been true if I was updating a simple Drupal site. However, Views, Panels, and all of our custom modules have been throwing me for a loop.

Here’s just a snapshot of what I’ve found so far:

  1. Upgraded Panels that had views had to be rebuilt after cough manually converting the Views. This doesn’t bother me so much, but it’s still painful on over 40 custom views.
  2. All of my blocks were automatically disabled after the upgrade.
  3. The groups part of LDAP integration module doesn’t upgrade properly. The names of the columns in 5.x start with ldap_groups_ but in 6.x they start with ldapgroups_. I’d work on a patch, but I’m just not sure how to actually ‘rename’ a column with the whole Schema API in Drupal 6.
  4. LDAP integration also breaks customizations. To do custom mapping of OUs to Roles, you had to edit a config file in the 5.x version. In 6.x, it’s a configuration parameter in the admin area. That’s actually great, but pretty much ruins any chance of automating it besides writing a custom module to stick that value in there (which I’m doing.)
  5. Errors, errors everywhere. Most of them appeared to be benign, but seeing several hundred errors flood out of an update script can be very unnerving.
  6. Running the update script felt like Windows Update. Had to re-run it five or six times before it finally got everything. Probably due to the above.

Anyhoo, now that I’ve vented, let the progress commence again!

Intricacies of the Lee Press

Got my Lee Challenger Breech Lock Single Stage Press Anniversary Kit this week.

Here is a comixed version of my experience:

What really happened…

I didn’t read the directions

My buddy uses the Hornady Handbook of Cartridge Reloading and their kit to do his reloading. A lot of my experience and workflow was based off of my experience with his gear. This doesn’t exactly apply to the Lee kit.

Read all of the instructions. Twice. This will solve most of your problems and save you some time.

Handgun reloaders are second-class citizens with this kit

The aforementioned kit comes with “everything” you need to reload… minus the dies. In practice, however, it doesn’t seem that statement applies to 9mm, .380, and any other round that has an extremely short case:

  1. The chamfer & deburring tool doesn’t work for handgun rounds. Perhaps it would work for .38 special since the shell is quite a bit longer. The problem is that you can’t hold onto the round, it goes all the way into the tool. Go get an RCBS Chamfer & Deburring tool. It works much better.
  2. The powder funnel is also not very friendly to the smaller cases1. If you put the case on the table (or in a loading block) and put the funnel over the case and pour the powder, the powder gets all over the place. Not very usable at all. This one is a bit easier to resolve. Simply cut about about 3/8 in. of the bottom of the funnel off, sand it off with 300 and then 600 grit sandpaper… and it should work much better.

I didn’t take my time

An Impact Bullet Puller is awesome. It’s the reloading “undo” tool. In my rush to get some ammo loaded, I forgot to calibrate the scale. As a result, those rounds are probably a grain or two too hot. A couple extra grains in a rifle round might not hurt if you are loading starting loads. But an extra grain even at a starting load for a handgun could damage your gun… or your hand.

Trying to get the powder measure to the right setting for a 4.6 grain load took probably 5 or 6 minutes. Measure, weight, dump, repeat. You can’t rush this folks. It’s no wonder my friend bought himself an electronic scale.

1 You can sort of get around this by using the powder-through-sizing die, but that adds an extra step to an already tedious process.

Praise for the Lee Kit

Let’s talk about the good stuff. In fact, now that it’s all set up the way it needs to be, it feels much faster than the other kit.

Perfect Powder Measure

The powder measure does seem to be very accurate. I went from measuring every load to every 5 (and as the trust grows) every 10 to 20 rounds. It can take a while to get it calibrated (resorting to trial and error), but once it’s set… well… it’s set.

Safety Prime

The dual-action de-prime/full length size/re-prime on a single stroke is very nice. On my buddy’s Hornady kit, this is a two step process… de-prime on the press then prime by hand. The press also has a funnel for spent primers where they go through a tube to a trash can (or they collect in the tube.)

Also, the “shake to upright the primers” on the safety prime really works. Very quick and easy, that thing.

Overall construction

No problems with the dies. The kit feels very solid. The wooden handle is very nice. Doesn’t feel cheap. Some of the plastic components do feel a little cheap, but they nonetheless perform well.

Anyway. These are my thoughts on it now. Let’s see where we are in… oh… 2 or 3 months.

Final result (click for fun):

How To Stop Your Shoei Helmet's Whistling Problem

I finally replaced a ZAMP helmet that I had received when purchasing my old bike with a Shoei RF 1100 Firestrike.

This is a great helmet. The only problem was that it whistled at 60+ mph. Turns out that all you have to do is make a couple of adjustments to make it stop.

  1. Push against these clips on both sides to remove the face shield.
  2. Loosen (do not remove!) these screws. About a half-turn is all you need.
  3. Push the whole shield assembly towards the back of the helmet.
  4. Hold the assembly and tighten the screws in step 2.

That's it! The shield should be held against the gasket properly and there should be no more whistling.


Theme & Icons by N.Design Studio
© 2010 Nicholas Vahalik
Syndicate content