Saturday, November 24, 2007

PowerShell DSLs: Using hashtables and scriptblocks together

Previously I presented the use of hashtables and scriptblocks as DSL input formats. You can also convert between them, with processing in between. I tried that out, and I think the result is interesting enough to post. Again, here is the input:

class MyClass {

    field ([string]) S

}

The previous code would use the 'field' function to manipulate the class object as appropriate:

    function field

    {

        param (

            [Type] $type,

            [String] $name

        )

        

        # add the field declaration

        $field = New-Object System.CodeDom.CodeMemberField($type, $name)

        $field.Attributes = [System.CodeDom.MemberAttributes]::Public

        $class.Members.Add( $field )

        

        # add the ctor parameter

        $ctorParameter = New-Object System.CodeDom.CodeParameterDeclarationExpression($type, $name)

        $constructor.Parameters.Add($ctorParameter)


 

        # add the ctor initializer

        $fieldReference = New-Object System.CodeDom.CodeFieldReferenceExpression(

            (New-Object System.CodeDom.CodeThisReferenceExpression),

            $name

        )

        

        $ctorInitializer = New-Object System.CodeDom.CodeAssignStatement(

            $fieldReference,

            (New-Object System.CodeDom.CodeVariableReferenceExpression $name)

        )

        

        $constructor.Statements.Add( $ctorInitializer )

    }

    

    & $memberScriptBlock | Out-Null


 

But another idea is to have the 'field' function produce a collection of CodeDom objects that can be assembled later.

    # return a hash of the CodeDom objects related to

    # this field

    function field

    {

        param (

            [Type] $type,

            [String] $name

        )

        

        @{

            fieldDeclaration = $(

                $field = New-Object System.CodeDom.CodeMemberField($type, $name)

                $field.Attributes = [System.CodeDom.MemberAttributes]::Public

                $field

                )

            parameter = New-Object System.CodeDom.CodeParameterDeclarationExpression($type, $name)

            fieldReference = New-Object System.CodeDom.CodeFieldReferenceExpression(

                (New-Object System.CodeDom.CodeThisReferenceExpression),

                $name

            )

            parameterReference = New-Object System.CodeDom.CodeVariableReferenceExpression $name

        }                

    }

    

    & $memberScriptBlock | foreach {

        $class.Members.Add( $_.fieldDeclaration )

        

        $constructor.Parameters.Add( $_.parameter )


 

        $constructor.Statements.Add(

            $(New-Object System.CodeDom.CodeAssignStatement( $_.fieldReference, $_.parameterReference ))

        )

    } | Out-Null

I suspect that the latter model is a little better because it separates concerns. Consider if I were to add other statements to my language, such as 'property'. The 'foreach' at the end could probably be written in a way that works for both fields and properties. However, the hashtable is slightly concerning, because it's not typed – if I get the key names wrong somewhere, I'm screwed.

I find that I'm spending quite a lot of time on this, but it's important that I find a way to create DSLs quickly. I figured that right now I'm just learning the techniques, and then if I master them, then I can do it more quickly when the time comes.

Friday, November 23, 2007

Immutable data class generator: Skeleton implementation

I've made a little progress on my PowerShell DSL for data classes, and figured it's a good time to show it off.

Here's the input format at this point:

class MyClass {

field ([string]) S

}

(I'm using the ScriptBlock approach.) I generally like the syntax, except for the need to add parentheses around the type. The alternative is to use a fully-qualified string:

class MyClass {

field System.String S

}

I'm not sure which is better, but I'm going with the first one for now, because it allows a more specific type than string.

The basis of the implementation is to write methods named 'class' and 'field'. 'class' is simple; here's an excerpt of the important bits:

$class = New-Object System.CodeDom.CodeTypeDeclaration $name

$class.TypeAttributes = [System.Reflection.TypeAttributes]::NotPublic

$class.IsPartial = $true

$constructor = New-Object System.CodeDom.CodeConstructor

$class.Members.Add( $constructor ) Out-Null

$class

The implementation of 'field' could go in several different ways. For now, I've written it to manipulate the class as appropriate, e.g.:

$field = New-Object System.CodeDom.CodeMemberField($type, $name)

$class.Members.Add( $field )


$ctorParameter = New-Object System.CodeDom.CodeParameterDeclarationExpression($type, $name)

$constructor.Parameters.Add($ctorParameter)


$fieldReference = New-Object System.CodeDom.CodeFieldReferenceExpression(

(New-Object System.CodeDom.CodeThisReferenceExpression),

$name

)


$ctorInitializer = New-Object System.CodeDom.CodeAssignStatement(

$fieldReference,

(New-Object System.CodeDom.CodeVariableReferenceExpression $name)

)


$constructor.Statements.Add( $ctorInitializer )


(I'd like to attach the full script, but I don't see a way to do that in blogspot). It generates this output:

internal partial class MyClass

{

public string S;

private MyClass(string S)

{

this.S = S;

}

}



EDIT: See PowerShell DSLs: Using hashtables and scriptblocks together for a different view of this code.

Immutable data class generator

I'm working on a DSL implementation for defining "data classes" with certain properties in C# (see http://blogs.gotdotnet.com/ericlippert/archive/2007/11/13/immutability-in-c-part-one-kinds-of-immutability.aspx for an example of the output).

Table of Contents

  1. Goals
  2. Skeleton implementation
  3. ???

PowerShell DSLs: Script block input

As an alternative to using a hashtable for input, you can use a script block. Here's a script-block-way of doing the same thing as before:

class MyClass -accessibilty:public {

member string S

}


and here's one of many ways of handling it

function class {

param (

[String] $name = $( throw
"name is required" ),

[String] $accessibilty,

[ScriptBlock] $memberScriptBlock = $( throw
"member script block is require" )

)


" $accessibilty class $name {"


& $memberScriptBlock % { " public $($_.declaration)" }


" }"

}


function member {

param (

[String] $type = $( throw
"type is required" ),

[String] $name = $( throw
"name is required" )

)


@{

declaration = "$type $name;"


}

}


What's happening here is that the first word on any line becomes a function, and the remaining words are parameters to that function. So, you're now creating an "internal DSL" in PowerShell. This lets you work in a more idoimatic PowerShell manner.


PowerShell DSLs: Hash table input

lassOne way to take PowerShell DSL input is in the form of a hash table. Taking from the Data Type with Builder example, you could write input as:

@{
kind = 'class'
name = 'MyClass'
accessibilty = 'public'
members = @{
type = 'string'
name = 'S'
}
}


How do you consume this input? Here's an example. (Note that the code generation side is not the focal point here -- the way that we interpet the input is what matters.)


if ($input.kind = 'class') {
" $($input.accessibilty) class $($input.name) {"

$input.members | foreach {
" public $($_.type) $($_.name);"
}

" }"

}


Which generates this output:


public class MyClass {
public System.String S;
}


This approach seems most effective when you need to express a lot of attributes on a single element. The downside is that the input seems a bit verbose and unnatural in some cases.

PowerShell DSLs

I've written before about my attraction to Domain-Specific Languages and my curiosity about using PowerShell to handle them, but I only recently got any time to think about it more. I'm working on a DSL implementation for defining "data classes" with certain properties in C# (see http://blogs.gotdotnet.com/ericlippert/archive/2007/11/13/immutability-in-c-part-one-kinds-of-immutability.aspx#comments for an example).

I have only 3 examples of PowerShell DSLs to work from, and I don't see any guidance in this area, so I figured I'd write about what I find.

Table of Contents

  1. Prior art
  2. Why PowerShell?
  3. Custom invocation w/ a library
  4. DSL tool invocation
  5. Hash table input
  6. Script block input
  7. Using hashtables and scriptblocks together

Warning: technical content ahead

While working at Microsoft, I had a blog for work-related issues at blogs.msdn.com. Now I need a new place to write these things, so this blog will now include technical content, along with the food, politics, family, etc. that have come before.

Friday, November 09, 2007

Reid's Journal Entry: Making Apple Crisp

Today Reid made apple crisp. I wanted to know more about it, so I asked him some questions.

J: How many oranges did you use?
R: Zero oranges. It only takes apples and a few other ingredients, which are kind of like spices. Butter,

J: Oranges?
R: No... I mean, yes

J: What else?
R: Weeds. Then we milk and cereal. This is going to be so funny! Don't write that.

J: After you mixed it up, what did you do?
R: I baked it for 2000 hours. What zee doh.

J: How did it taste?
R: It's not ready for that part yet. We added 2000 drops of stevia in. Time for what it tasted like. It tasted like... stevia. Of course it would.

Friday, October 19, 2007

A new adventure

Today I announced broadly that I'm leaving Microsoft.

I sent 3 emails. Two went to the discussion groups of tools that I own, to announce the change of ownership of these tools. Strictly for business reasons, but then the news started flowing, and I was starting to get questions. So I sent out the third - to basically every person I've worked with in the last 11 years.

What's next?

I'm going to be a stay-at-home dad. The twins are 20 months old. Reid is 6. We want to homeschool Reid, and eventually the twins.

Living off savings will require that we spend a lot less. We currently live 1.9 miles from Microsoft campus, which is a damn expensive place to be. With me not working there, it doesn't make sense to live here, so we're moving away.

We've picked Port Townsend as our new home. It's such a cool city. 8000 people. 25mph speed limits. Hopefully we can bike & walk just about everywhere.

It's also a good choice because I love old, wooden boats, and PT has plenty of them. But that's for the future - right now, our attention will be on the family. Catching up on rest, taking good care of ourselves, being together.

I'm trying to leave Microsoft on good terms, and that includes trying to wrap things up on my current project so that it will succeed when I'm gone.

There's also a lot of work to do to get the house ready, purge our stuff some more, find a new home, pack, and move. Whew!

Thursday, September 06, 2007

Great music you haven't heard before: Mindless Self Induglence

Electronic punk. Real punk - they actually step outside of what's acceptable. Good for them.

They're starting to get known, it seems. I wonder how that will change them?

The track that got me was Panty Shot. Somehow this live verson is so much better than the studio recording.

Great music you haven't heard before: Emergency Broadcast Network

Here are some bits of music that I think are really great, but that aren't widely known. Maybe I'll do a few posts.

Emergency Broadcast Network

Industrial + electronica + video. I found these by accident. I was in the record shop, flipping through the industrial section, and picked out Telecommunication Breakdown because it had an interesting cover.

3:7:8 is particularly catchy.


Sunday, July 01, 2007

Tuesday, May 29, 2007

The difficulty of purging toys

My friend over at Confessions of a Hoarder talks about her difficulty decluttering kids' toys.

I have a hard, hard time dealing with toys, too.

I have been able to purge just about every group of things I call "mine": my hair, my computers, my motorcycles, my tools, my clothes, my books.

Once my wife got the bug, she started purging her stuff, too. That has been going well, and we work on it together.

One of the reasons I find toys difficult is that I'm making the decision for someone else. I know that, by getting rid of 1/2 of my books, I lose something (the opportunity to read that book at a moment's notice, the status symbol of books that define "me" to visitors) and gain something in return (space on the shelf, ease of managing my stuff, order in my home, money that I don't have to spend on more storage). I can decide if that trade-off is the right choice for me.

However, with the kids toys, I know that most of the gain is the parents' (for it is our feet that hurt when we step on a marble; we are the ones that separate the blocks, trains, wedgits, and legos) and most of the loss is kids' (they don't have access to a toy that they might enjoy).

What I remind myself of is how much the kids gain, too:

- Their parents are slightly less cranky.

- Their parents have more free time to spend with the kids, to cook nutritious meals, to take care of themselves so they can take care of the kids.

- Kids, too, like a clear, open space to engage in play.

- Clear, open spaces are particularly good for wrestling with Dad.

- Being able to clearly see a small number of toys works better than being surrounded by a plethora. It gives kids a chance to really focus their play in one area, and to not be overwhelmed when considering what play to do next.

- Kids play with non-toy things as often as toy things. Wooden spoons and sofa cushions are current favorites. Those items serve double-duty (yes, you can stir with a wooden spoon), thereby increasing their "density" in the home.

I've noticed recently that even the babies (16 months on Saturday) will often not think of playing with something until someone points it out to them. So, providing them with bucket upon bucket of toys won't really help them find fun. Having just 1 toy can meet their needs, if there's someone to help them get engaged.

In January I put a bunch of kids' toys in storage. It was a really good choice -- the kids haven't missed the toys, and life has been a bit easier since.

Saturday, May 26, 2007

Date Night



As parents of 3 small children, it's rare that Julie & I get to spend time together, just the two of us. Luckily for us, we found someone who was willing to babysit all 3, and we went out on a date.



We went for sushi.

As you can see, this is a happy thing.

Tuesday, May 15, 2007

How little do we really need?

Reading http://confessionsofahoarder.blogspot.com/2007/04/off-topic-guest-post-over-at-happy-jet.html got me thinking.

Every Thanksgiving my extended family rents a large house at the beach. There are usually about 16 people there, of which I contribute 5. For those 5, we only bring 2 suitcases, 2 backpacks, and carseats. There are only a few toys, unlike the hundreds of overflowing toys at home.

There are clearly some things missing, like clothes for the other weather, but still, we do very well with very little.

One important factor is the help we get. For example, with other adults around, we have time to keep up on laundry, washing every day, so we only need 3 days worth of clothes.

It's something we think about often when working on decluttering and pondering how much we really need for our happiness.

-Jay on a Pocket PC phone

Saturday, May 12, 2007

This just seen

It fills my heart with corporate pride.

-Jay on a Pocket PC phone

Board games on the computer

It's nice to sit down at a table to play a board game. You get some real human interaction that is missing from, say, television. But when it's time for dinner, you have to end the game. Or the peices get distributed -- under the sofa, behind the dresser, into a baby's digestive tract.

These problems go away when you play on a PC. No losing virtual chess peices. Go works well on the computer, too. Dominoes doesn't as well, since you can't hide your peices from your opponent, but having two PCs can do the trick.

But I'm still trying to figure how to get an online version of Twister.

Tuesday, May 01, 2007

How dumb do phishers think I am?

I just got a mail with this contents:

Dear Customer, jbasuki.

You are receiving this message, due to you protection, Our Online Technical Security Service Foreign IP Spy recently detected that your online account was recently logged on from am 88.30.167.175 without am International Access Code (I.A.C) and from an unregistered computer, which was not verified by the Our Online Service Department.

If you last logged in you online account on Thursday April 5th 2007, by the time 6:45 pm from an Foreign Ip their is no need for you to panic, but if you did log in your account on the above Date and Time, kindly take 2-3 minute of your online
banking experince to verify and register your computer now to avoid identity
theft, your protection is our future medal.


Verification Link
(removed)

Notice: You can acess your account from a foreign IP or
country by getting am (I.A.C) International Access Code, by contacting our local
brances close to you.

Do people really fall for such badd speling and gramer?

Thursday, April 26, 2007

Twins spin me around

My first youtube upload. The camera was upside-down, and I don't know how to flip the video. *sigh*.

Monday, April 16, 2007

Plant walk

On Sunday Reid & I went on a plant walk in Discovery Park. It turned out we were the only people who showed (besides the leader).


I met a lot of plants that I hope to meet again, including Stinging nettle, Plantain, and Horsetail. I'm pretty sure I've seen plantain around my neighboorhood; I am looking forward to finding it & adding it to my local snacking menu, which currently includes chickweed, dandelion, and blackberries.


I'd like to find something close to home that will make a tasty tea.

At the right is a snap of horsetail that I took.

Friday, March 09, 2007

mead bottling

When we drank mead in December, we decided that making a lot more was a good idea.

Bottling underway

Rinsing the bottles (so they're not sticky)


A full complement

A change in drinkware

The babies have broken a lot of glasses recently. Luckily they haven't gotten cut, but we still needed to find something to drink out of.


Goals:


- Sturdy, so babies can't break them easily

- 12-20oz seems like the right size

- fits comfortably in the dishwasher

- Not plastic, for reasons I described before.

- Cheap, ideally something that we can get used.


This turned out to be an easy one: we're using pint, regular-mouth mason jars. The meet all of the above, plus they can take a secure lid, so babies won't spill my pint of milk on the carpet.


I'm wondering how well they would work for tea and coffee, especially since you can get them with a handle. Will they cope with the thermal stress?


Storing leftovers

The babies are getting better at opening drawers and unloading the contents on to the floor. That means that all the things stored down low are now stacked on top of the things that are already stored up high. It's a mess.

The lowest drawer contained the plastic food storage containers. Even before the babies, this drawer was my nemesis - hard to keep organized, difficult to put things away, hard to get out what you need, and impossible to find a lid & container that match.

Now, those items are stored on a shelf that really didn't have the room to spare. (The picture on the right is the result of a dedicated organizing effort on that shelf; many of the items are either holding food in the fridge, or scattered around the house.) Frustrated by the chaos I can't control, I'm looking for something better.

Today I use mason jars for liquids (kombucha, milk, yogurt, kefir, and low-viscosity soups), as well as for fermentation, but they don't work well for, say, cheese. They're also a bit heavy and fragile for carrying in a backpack to a festival or something, and of course, they don't stack.

nesting. Nesting keeps things compact. You can often buy sets of plastic food storage containers that nest, but they only nest in one way. I want a set where each item nests in another of the same size & shape.

stacking lids. I need lids that have a sensible home, too. They should stack.

only a few sizes. Instead of a set of 20 items, each one of them different, I want only two or three sizes/shapes. This way it's easy to find a lid & a container that match, and I don't have to think very hard to select a container for the job. If I had two sizes, I'm guessing they'd need to be about one cup and one quart.

transparent. I want to be able to see what's inside without opening the lid.

durable with secure lid. Putting the container in my backpack shouldn't mean that everything else gets a taste of the contents. On a related note, removing the lid shouldn't be so hard that the contents go flying.

no sharp edges. I'm surprised I even have to write this, but my "disposable" Glad containers have rough edges, as a consequence of being made out of minimal materials.

glass or ceramic. I find that hand-washing plastic is hard - it never really feels clean. I am concerned about the chemical reactions between acidic foods and plastics, as well as the leeching of plastic compounds. I don't own a microwave, but I've heard concerns that microwaving in plastic can be dangerous, too.

Looking at my list, I don't think it's possible to find one item that can meet all of these needs. Right now, the best plan I can think of is a composite one:


  • Mason jars continue to do what they're doing today.


  • Keep a few of the plastic Tupperware-style containers for the backpack, in various sizes.


  • A set of glass 1c and 1qt containers with good lids, similar to:

    That's the best that I can come up with. What do you recommend?

Food storage of the past

Thinking about food storage lately, I want to write what I know about how people did things before refridgeration:

Fermentation. Fermentation produces acids and alchohols that inhibit spoilage, thereby increasing the useful life of food. The classic example is sauerkraut (and cousins such as kim-chee) which, if made in the late fall, can keep all winter long, supplying the dinner table with tasty vegetables. It's not just about veggies - salamis and cheeses have been a big part of the European diet for a long time.

The cellar (and related spaces - stored winter ice, cool stream houses, etc.). The cool food cellar was important in the summer, when everywhere else was warm. But even in the winter, they allowed produce to keep longer in closer to ideal conditions.

Heartier crops. The fruits and vegetables we eat today are not the same strains that people ate a century ago. With the commercialization of the food supply, it made economic sense to pick foods for their shelf lives, durability, and appearance, vs. flavor and nutrition. One obvious example comes from apples:
in the 1970s, you could either get red "delicious" or golden "delicious". The "delicious" brand apples were chosen (and subsequently bred) not for their flavor, but for their color and their ability to last in cold storage until the next fall, providing "fresh" apples all year round.
When I switched to organic produce a few years ago I noticed a similar change - the food didn't look as smooth, uniform, shiny, and perfect, but it tasted so much better.

While the "delicious" strains had a long shelf life in cold storage, we also see that today's fresh produce doesn't last as long because of our farming practices. Healthy crops grown in rich soil are able to resist spoilage longer. I keep thinking of a blue-water sailing book from the 1970's, where the author suggested carrying produce on board in well-ventilated space, because it would last for months. That's unusual today.

On the shelf. I've seen a couple historical examples of keeping foods right on the shelf at room temperature, instead of refridgerating. One comes from the movie Big Night - in the last scene, Secundo picks up a bowl of eggs that were just sitting out, and makes breakfast. Another comes from the Aubrey/Maturin novels I've been reading, where a character will often pick up a peice of meat that sat out all night (or longer), put it in his pocket, go for a long hike, and eat the meat for lunch.

I'm not sure what to make of these examples, other than a suspicion that our ideas about what is required for safe food storage may be a bit overzealous.

Dump the fridge? I've been looking at listings for houses built in the 1920's and before. I find them beautiful. I also see that the fridge never fits. It sticks out in to the middle of the kitchen, or it's in the next room. I think it would be interesting to move towards fridgelessness one day. For the meantime, I'll try to take comfort in the thought that I only need 1/5th of a fridge, since I share mine with 4 others.

Monday, February 19, 2007

Decluttering the study

Another sign our house is too big - we found another space full of clutter that we hadn't though of before. This time it was the "study". This is a bedroom that once held all the computers and some desks, and we spend nearly all our waking hours in there, pre-children.

Today it's Reid's bedroom, but still full of stuff from those days. We thought he might like to put his clothes in there

- A big box of VHS and print porn and in storage there. Gone.
- Julie's old SLR camera. 9+ years unused. Given.
- Blank paper. In notebooks, pads, loose, etc. What is this for? Donated.
- A whiteboard w/ markers, eraser, and cleaner. Given.
- Dozens of "home improvement" magazines. Recycled.
- 7 milk crates that were holding all this and more. Only 2 are holding anything any more.
- PC speakers with subwoofer that may or may not work. Need to find a home for these.
- Family photographs. Saved.
- random CDs that were missing their cases, and cases that were missing their CDs. Matched & ripped; ready for storage.
- and much, much more!

Now the closet is almost completely empty. I'm not sure where the milk crates will go.

I also decided to get rid of about 1/2 of the books I own. That's not a huge difference, as previously all my books fit on one shelf. Now they share a shelf with other books.

Damn, it feels good.

Next up:
- the "cat room" was the victim of random accumulations ahead of the babies' birthday party. Need to clear that out.
- Still a few "junk boxes" that need to be sorted out

Sunday, February 18, 2007

Birthday walk


On the babies' first birthday, I took them for a walk. The idea was that they would fall asleep in the stroller, and then be well-rested when the guests started arriving.

Wednesday, February 14, 2007

Great journalism of 2007: Women living alone


Check out this article entitled Watch out, men! More women opt to live alone. It says that 51% of US women are not married.


Let's temporarily assume that we live in a world where everyone is heterosexual, and where the population is evenly split between men and women. Bear with me.


I have to ask, "to whom are these women not married?" Close to 1/2 of men are not married, too, right? Why is the fact that many men are not married unworthy of a headline warning women?


And why are women chosing it? Isn't marriage a mutual decision? If 99% of men made the choice to stay single, then just as many women are going to be single, without having made a choice to that effect.


And why is it a problem for men? Am I supposed be disappointed that women are choosing not to get married? If I were single & looking, I might be glad that women aren't expecting me to commit to a life-time.


And what's with this "living alone" bit? Don't unmarried couples often live together? Don't married couples sometimes choose to live separately? Don't people live together when not in a marriage, as roommates?


And back to by original assumption: isn't this article a bit absurd when you consider that not every woman can legally marry her partner of choice, even if they're both willing?


So it's valentines day. By tradition, today we buy sugar for our sweeties, as well as roses, which often create serious health risks for the people who grow them (due to the chemicals used). I think I need something romantic that still aligns with my values.


How 'bout: drop me a line if you want to get horizontal. Boobs preferred.


That should do the trick.

Friday, February 02, 2007

I want Wiki! (Part 2)

The more time I spend on wikis, the more I wish wiki-like functionality was available elsewhere. 
 
For example, I've been reading through the Q and A section on the Ishmael site.  People have sent Quinn a lot of questions, and the questions with answeres are posted on his site.  I read a question, try to formulate an answer in my head, and then see what Quinn has to say.  I'm not just checking if I have the "right answer", but instead trying to understand what the differences in our answers mean.
 
In some cases, I feel like I could provide a richer answer than what is there - an answer that would be helpful to readers.  In those cases, I wish for Wiki.
 
 
Q: My chosen profession has begun to look like "part of the problem" rather than "part of the solution." I'm beginning to feel obliged to abandon it, as a matter of conscience. Do you see it this way?
 
A: You're wondering if we wouldn't be better off if your chosen profession didn't exist at all. A young film maker once expressed the same reservation to me (unknown to the general public, film-making is a tremendously pollutive business). I told him what I'll tell you: WHERE WOULD WE BE IF EVERYONE WITH A CONSCIENCE GOT OUT OF HIS CHOSEN PROFESSION?

We MUST HAVE film makers like him---and people like you in your profession! We must NOT cede key professions to people who care about nothing but profits.

This happens in plenty of other contexts, not just filmmakers who have been infected with Quinn's ideas.  For example, a few years ago when the debate about gay marriage was reaching a crescendo in the news media, I remember a lot of folks who were feeling frustrated talk about moving to Canada.  Similar to the case that Quinn describes, fleeing the USA because of politics you disagree with will just allow the politics to move further from what you're wanting.
 
But if I had wiki-like functionality on this page, what I would add is this:
 
 Don't assume that DQ is telling you to keep doing exactly the same job you're doing today.  You can change how you do your job, to address these concerns.  You can also change jobs in the same profession.
 
To consider the filmmaker example, you could direct your efforts to support making films that help your audience ask questions about Mother Culture.  You could help reduce the waste produced by the film projects you work on.  You could quit your job (but not your profession) and start a new film studio, organized as a tribal business (as suggested in Beyond Civilization).  You could do all three!
 
On the other hand, if you picked your current profession because it would bring you money and power, even though you hate the work, then switching professions may make good sense.  Trade money and power or something much better.
 

 

I want wiki! (Part 1)

I've been exploring the writing on Wikipedia regarding Daniel Quinn.  These are complex topics, so it's not a given that the writing there would be on target.  So far, it seems to be in reasonably good shape.
 
A particularly interesting article to me is New Tribalists.  It has twice as much content in the Criticism section as in the rest of the page.  It appears that a Criticism section is an important part of Wikipedia's attempt to produce a " Neutral Point of View".  What you'll often see is a paragraph describing a critcism, followed by a paragraph of response. 
 
That's good news in this case.  When you don't understand what a sensible person is saying, it will usually seem like nonsense.  You criticise, and then the speaker has a chance to respond with clarification.  It's a dialog that is somewhat similar to much of the dialog in Ishmael and My Ishmael
 
I'd like to make a few minor contributies to this article, to hopefully improve its value, but apparently I've been blocked!  It looks like someone with an IP address close to mine did something damaging on Wikipedia, and an admin has blocked an IP range in an attempt to stop them.  Unfortunately, they got me, as well.
 
I'm new to Wikipedia, so I'm still figuring out what's going on, but I don't see my IP in http://en.wikipedia.org/wiki/Special:Ipblocklist .  *sigh*

Thursday, February 01, 2007

Someone who gets me...

Apparently The Lacatvist is being sued by the pork industry for a T-Shirt. Some people's priorities are clearly backwards ("let's make more money by abusing pigs, at the cost of children's health"). Must suck to be them.

Her Cafe Press store includes this fine example.

Monday, January 29, 2007

Evolution has halted

In one of his books (The Story of B maybe?), Quinn said that we have halted evolution.  He only mentioned the idea in passing, and it hasn't reappeared in other books, so I'm guessing he doesn't consider it a key element of his ideas.  Still, it is one that caught my attention. What does he mean?
 
Modern medicine and friends
 
I've heard people say something like this before, but usually it turns out that they just don't understand what evolution is.  They typically mean something like 
 
In the 'wild', people who (can't see / can't walk / have regular seizures / have acute ashma / have low sperm counts / etc.) would not survive to reproduce, thus the human species would tend to select for the opposite traits.  Thanks to modern medicine we allow these traits to continue to occur, and potentially proliferate in our gene pool, resulting in a weaker human population over time.

Or to put it colloquially, "our technology means that the human species is getting worse."  (The problem with that statement, of course, is that evolution doesn't say anything about "better" or "worse" but merely about "more fit" and "less fit" to survive in a given niche.)
 
I don't disagree that this occurs.  In fact, I have an example that is close to home.  My English grandfather was not sent off to fight in World War II, because he had asthma.  While his healthier peers went off & died, he stayed home and had 3 children, all of whom had some breathing issues.  I have some of those traits, albeit mild ones.  The decision to select non-asthmatics as soldiers meant that we selected for asthma in the next generation of the English.
 
However, this doesn't mean that evolution has halted.  It means that the mechanism of selection has changed.  In a hunter-gatherer tribe, the ability to, well, hunt and gather, is clearly critical to survival, so characteristics that interfere with the ability to do those things ( e.g. blindness) are likely to reduce reproduction, and hence their representation in the gene pool.  In modern, civilized society, the criteria are different, but they still exist.  For example, physical attractiveness is still a factor in sexual selection; the ability to eliminate or tolerate certain toxins (e.g., cadmium, mercury) or radiation is more important today than it was 10,000 years ago.  So, evolution of humans still occurs today, and will always occur.
 
Similarly, the characteristics that are selected for in other species have been dramatically affected by the world-wide dominance of human civilization.  The traits of cows are desirable to humans as a food source, so we increase their opportunity to proliferate.  Meanwhile, predators of cows, such as wolves, have traits that interfere with cow's proliferation, so we reduce their opportunity to proliferate.  In these ways, we have a dramatic impact on the gene pools of both cows and wolves on the earth.
 
Now, I don't know for sure what Quinn meant, but I'm guessing this isn't it.  He clearly has a deep understanding of evolution and natural selection -- probably much deeper than mine -- so he probably wouldn't make such a simple error.
 
Food supply limitations
 
Perhaps what Quinn meant was:
 
Consider that civilized humans transform available land from its wild state to a food-producing state.  We do this rapidly and efficiently, thereby allowing us to produce corresponding increases in food supply.  Whereas non-civilized peoples have allowed food supply to limit their numbers ("living in the hands of the gods"), we have effectively removed the limits on food availability for nearly all humans on earth.  In this way, a limited food supply is not a significant factor in the gene selection of civilized people.
 
That seems much more reasonable, and in line with a lot of what Quinn has to say elsewhere, but I still have trouble believing that's what he meant.  Saying that you have "stopped evolution" seems to be a much stronger statement than saying that you have "removed food supply limitations as an environmental selector".
 
Who lives and who dies?
 
Or perhaps he meant:
 
Consider that civilized humans will, without hestiation, obliterate obstacles to increasing food supply for humans.  Cows like to graze pasture, so we'll destroy rain forests extremely rapidly ( 100 acres / minute!), destorying the "inconsequential" life in that area, so that our cows may graze.  If wolves show interest in our cows, we won't just defend the cows when the wolves approach.  We systematically seek out and destroy all wolves, nearly eliminating them as a species, on purpose.  We make the decisions about which species thrive and which are decimated.  For millions of years, the selection was made by a complex mix of natural forces; for the past 10,000 years, we have taken that decision in to our own hands.  We decide who lives and who dies.
 
The gods love diversity
 
Or perhaps even:
 
The universe if full of diversity.  Each blade of grass is unique.  Each plant is unique.  Each mammal is unique.  Each species is unique.  Just as the Law of Gravity is written in every particle of matter, the Law of Life is written in every living thing.  Diversity of life is at the essense of that law.  Diversity of life is at the essense of the theory of natural selection.  Civilized man has dramatically reduced the diversity of life on the earth, by driving some species to extinction, while we allow others to proliferate almost unchecked.  The result dismantles the normal functioning of evolution by natural selection.
 
It's just selection
 
Maybe it's something much simpler.  Wikipedia's summary of Darwin's theory is "populations evolve over the course of generations through a process of natural selection".  Under natural selection, it says:

Natural selection is the process by which favorable traits that are heritable propagate throughout a reproductive population: individual organisms with favorable traits are more likely to survive and reproduce than those with unfavorable traits. If these traits have a genetic basis, then the genotypes associated with the favored traits will increase in frequency in the next generation. Given enough time, this passive process results in adaptations and speciation (see evolution). Natural selection explains why living creatures seem to match their environmental niches so well.

Natural selection is one of the cornerstones of modern biology. The term was introduced by Charles Darwin in his groundbreaking 1859 book The Origin of Species, [1] by analogy with artificial selection, by which a farmer selects his breeding stock.

So, maybe Quinn means "we've stopped evolution by replacing natural selection with artificial selection".
 
Hmm.  This last one seems the most plausible -- it's the one that holds together, and the one that you'd expect from someone who had studied evolution carefully.
 
 

Finding hope in criticism

The Ismael article on Wikipedia says this under "Criticism of population claims":
 
Recent population trends indicate a dropoff in fertility rates in most regions in the globe; many demographers claim that increased women's autonomy and access to reproductive technology is responsible for the decrease, and that such trends actually bring fertility below the " replacement rate" in many industrialized nations. Some argue that people in industrial societies have less of an incentive to "over-reproduce," as children are a net economic drain, unlike in agrarian societies. In this view, it is possible that population levels will become self-limiting if high rates of reproduction become irrational and avoidable.
 
It's an understandable criticism, and Quinn's response is described in that article.  However, there's something else here.
 
It is true that in industrialized nations aren't growing their population the way other parts of the world are.  While the potential reasons are concerning
  • too busy conusming products and media to breed
  • too busy working to pay off the debt from the former
  • exposed to polutants that interfere with fertility or libido
there is some hope.  You see, people in these countries aren't sitting around mourning their lack of reproduction.  They aren't crying in the streets because they didn't have any kids.  For the most part, they're perfectly content to not be reproducing so much.
 
That's where the good news lies: there is a way to get civilized people to avoid reproducing in such large numbers.  Something in their life is pushing a button that gets them to choose not to reproduce so verbosely..  Now all we need to do is find another way to push that same button -- a way that doesn't involve the incredible consumption of natural resources and production of pollutants.
 
(Flash-forward: In Beyond Civilization, Quinn has a proposal for a way to address the ills he describes in his earlier books.  Perhaps that proposal can succeed because it is able to push this "don't reproduce so much" button, without the undeseriable consequences that Quinn points out in response to the criticism above.)
 

Is mass starvation the answer?

When I first read Ishmael, it took me a lot of contemplation to make sense of what he was saying. These are ideas that conflict directly with what we hear every day, everywhere we go. I'd heard the same message since I was very young. Anything else was difficult to understand at first.

Today, I think I have gotten past the initial hump, and can at least articulate what I believe Quinn is saying. Most of what he said in Ishmael seemed pretty reasonable to me. The ideas are not complex, even if they are outside my normal arena of thought.

However, there was one bit that I got stuck on.

He talks about the relationship between food supply an population. That for any population of a given species, if you increase the food supply, the population will grow to match, and if you decrease the food supply the population will shrink to match. He says this is true for all species, and that includes humans. What our culture has done, via Tolitarian Agriculture, is to continually, and dramatically increase our food supply for 10,000 years.

He also makes a strong case that this behavior is a problem - that it's not sustainable. In fact, we have long since past the point of sustainabilty. To attempt to maintain current behavior will result in our extinction, and soon -- Quinn says 100 years if we keep going the way we're going.

When I read this, I thought it sounded like Quinn was saying we should reduce the food supply available to humanity, which would in turn reduce the human population. That is, people need to get busy starving to death .

Well, that's not something I can accept very easily, for a number of reasons:

Starving hurts. Really, it's a terrible way to go. I hate it when dinner is late; I can't imagine the agony of dying of hunger.

Who decides? Some will go hungry, while others eat enough. Who chooses? Judging by our past behaviors, it will be the elite that chooses, and they will choose themselves & their friends to eat. That is, the haves will have food, and the have-nots will not have food. The fact that I would almost certainly be in the 'haves' is no comfort to me. Anyway, this is something that no one has the right to choose. As Quinn says, "who lives and who dies" is a matter for the gods; the fact that we think we are wise enough to make that choice is the reason we ended up here in the first place.

The system would be abused. Duh. No matter how fair the system could be, someone will use their power to abuse it.

Still, perhaps we can convince ourselves that it's OK for mass starvation to happen, because:
a) today lots of people are already starving
b) the result would be "better for humanity"

But then I consider:

It's only temporary. If we could reduce the human population by 90% this way, the remaining 10% would have little motivation to stick with the program, and our numbers would grow again. We're doubling every 37 years, so it would take a bit over a century to restore the current population.

Then I consider what I think I know about Quinn. He is not trying to deliver a doomsday message, but instead a message of hope. It just doesn't seem to fit him to say that he's suggesting we starve 90% of the population. He must have a better idea in mind.

Sunday, January 28, 2007

more Quinn

After reading Quinn's Ishmael trilogy, I was looking for more content. I put a hold on the rest of Quinn's work at the library. 2 items appeared right away, and of course I consumed them in short order.


The first was Tales of Adam, a series of short parables about a man in a hunter-gatherer tribe, teaching his son the lessons of life.


The second, entitled An Anamist Testament was a pair of cassette tapes of Quinn reading his work. The first tape was Tales of Adam. The second was The Book of the Damned.


It was interesting listening. They reflect many of the same ideas that appeared in Ishmael, but from a different perspective. Where Ishmael is written for someone civilized who is new to these ideas, these tapes seem more appropriate with someone who has already digested Ishmael.


Now that I have consumed 6 titles of Quinn's work, am I an expert? Far from it. I'm working hard to probe his ideas, and re-evaluate my thinking with this new perpective. It's slow going. Luckily, my wife has also read some of his work and is interested in talking through this stuff.


I hope to have a little time to blog about my thoughts.

Wednesday, January 24, 2007

Tips for living simply #4 - if you get stuck, cheat

When I first started getting rid of stuff, it went quickly.  There was lots of trash collected everywhere.  Just putting it in the trash can made a big difference.
 
Then I started getting rid of things that I knew I didn't need.  For example, I had 3 motorcycles but rarely rode, and 2 of them didn't even run.  I gave the broken down bikes to a high school auto shop class.
 
More recently, I got stuck.  I could see that there was plenty of stuff to filter through and discard, but the real reason I was stuck is that there was even more stuff in the house that I didn't know what to do with, specifically kids stuff - toys, books, etc.  I know how to deal with my stuff, and am willing to make the decision to deny myself an item I might want to have on hand (say, a spare hard drive) in exchange for the clarity, simplicity, and comfort that come with having an uncluttered, managable home.  However, I was not comfortable making that same decision on behalf of my kids.  How can you take away your kids toys?
 
At the same time, I knew the toys were a problem.  The twins are nearly a year old, and are more than capable of putting out every toy in the house in just a few minutes.  They are, of course, completely unable to put them away.  It then takes me 20+ minutes to put all those toys away, assuming I sort them out properly - legos in this box, blocks in that box.  (If I don't sort them, instead just tossing them in to a huge bin, then there's no way anyone can find a complete set of somethign to play with.)
 
I knew that we had too many toys, but how few is too few? For most of human history - millions of years -- children grew up without any toys to speak of, and presumably they still had fulfilling childhoods, and became well-functioning adults with fulfulling adulthoods.  Even today, I see that my children use play to learn about the world around them, but they often use items that are not specifically designed to be "toys" but have some other purpose.  This makes sense, as what children are trying to do is learn about being a person by mimicing their parents, and their parents are using hammers and forks and pillows and cars, not legos and dolls and blocks and marbles. 
 
In fact, this is the essense of unschooling - that children learn because that's what children do, not because someone teaches them.  This is the natural way of things.  You don't have to fight it, or force it.  You also don't have to ignore it - you can facilitate it.  You can make sure that children have opportunities to explore what they want to learn about, and trust that they will learn, and enjoy that learning.
 
So, it seems that the minimum number of toys for a healthy childhood is zero. (Can you see my reasoning?)
 
I started grabbing complete toys and removing them from the scene.  I prioritized toys that were not completely age appropriate for our kids today, and toys that were in complete sets in their own containers.  These I carried out to the shed.  I did this until I got tired of it.  
 
Suddenly there's a lot more room in the house, especialy in the rooms we use the most.  The toys we still have around are well-used.  After the kids have played in a room, I can still walk through it without breaking something underfoot.  I can clean up after them in a reasonable amout of time.
 
The title of this post suggest cheating, which is exactly what I've done.  We still own a lot of things we don't need, and we're perhaps ignoring the problem by putting them in the shed.  That's still better than keeping them in the main living areas.  It means we're acutally a step closer to getting rid of those toys entirely, if we decide that we like the way things are now better than before.
 
 
 
 

Monday, January 22, 2007

Reid likes pizza


Yesterday Reid & I went on one of our adventures. Before the twins were born, we used to do this pretty often. We'd pick a museum or something and catch a couple busses to get there. Good parent/child time.

Yesterday's involved a long ferry ride. I didn't let him eat on the boat because he was experiencing some motion sickness. When we arrived we decided to eat at a pizza joint. Reid ate a large slice, and insisted he was still hungry. The second slice was even bigger, so I grabbed this snapshot.

Friday, January 12, 2007

OK, I'll write

Lee also says:

You solve problems all day. Even if it’s a relatively simple solution
(script, house repair tip, way to get better gas mileage,) write about it
anyways. Those looking to solve that same problem in the future will thank
you.

OK, here I go:

script

My PowerShell prompt:

function prompt{
Write-Host ("PS " + $(get-location) +">") -nonewline -foregroundcolor Magenta
return " "
}

house repair tip

If you decide to run new low-voltage wiring (like ethernet), go ahead and pull way, way more than you think you need. The work to pull the first wire is huge. The additional cost to pull a bundle is small. I recently pulled:

  • Cat-5e (ethernet)
  • Cat-5e (phone)
  • Cat-5e (spare)
  • RG-6 (video)

Now I think I should have pulled another RG-6, which people seem to like for satellite.

I'm wondering if I can use the spare Cat-5e to run line-level audio for whole-house music.

(Great thanks to my brother for doing the messy under-house work.)

way to get better gas mileage

Don't drive. Walk, bike, bus, or don't go in the first place. This is so much more effective than anything else I can offer.

When I do drive, I've picked up the following highly annoying habit: I go really slowly up hills. Specifically, I try to take it easy on the gas up a hill, even if that means I gradually lose speed. With an automatic transmission, I try to keep as much throttle on as I can without it downshifting. This does seem to annoy other drivers, so I try to do it when there's no one right behind me.

When I approach a red light, I get off the gas way, way early, which saves some gas. I'll even brake a little, from far away, in order to still have some momentum when the light goes green and other traffic starts to move. This doesn't make me any later, but somehow it still pisses off the other drivers, who then drive harder to get past me. So it may be a net loss.

Lee on Writer's Block

I just read Lee Holmes' post entitled Break your Writer's Block. He's right, and I think his suggestions can help me get blogging again.

My favorite quote:
you’ll find that you can produce more random junk in a minute than you could
have imagined.

It's true!

I read Lee's blog because he works on PowerShell, which I just mentioned. Neat.

I am B

Years ago I read some Daniel Quinn. I could tell he was saying something important, but I couldn't figure out what it meant or what to do with it. I'm not sure why, but I just wasn't ready for it, I guess.

In November I read Providence, which touches on a bunch of his ideas in a shorter space. This time it really clicked, and I decided it was time try again.

For Christmas, I asked my wife to get me. Two by Daniel Quinn: Ishmael and The Story of B . Two by Patrick O'Brian: HMS Surprise and The Mauritius Command . However, I hate the way that the Christmas giving obligation drives us to spend, consume natural resources, create trash, etc. So I asked her to get them from the library if possible, or used otherwise.

So, in the last 3 weeks I have read Ishmael, the Story of B, and My Ishmael (which I already had a copy of from my previous experience). I hadn't read B before, because someone told me it was about religion, and discussion religion usually bores me to tears.

Ishmael struck me again. I came away with one big question: if we need to quickly, drastically reduce human population in order to make room for some other life on the planet, and we assume that population is directly linked to food supply, then we must reduce the amount of food humans are consuming, just as quickly and drastically. This makes perfect sense at the species level, but I have trouble with it on the individual level. I'm not willing to let someone I care about starve just because I think there are too many people. Furthermore, I'm not willing to decide that the people I care about shall be well-fed, while the have-nots go hungry, even if I do believe it's somehow for the good of the species and the whole planet.

What I'm really run in to here is the one of the fundemental issues that Quinn is pointing to: the fact that I, as a "Taker" think that the decision of who lives and who dies belongs in the hands of man. I read him as saying that I must make that decision, but I sense that he's not saying that at all.

The Story of B was much better than I expected. The religious aspects did not bore me at all, and the story was damn interesting. In that way it kept my attention better than any of his other books that I've read. The message that changed minds are required is important. I may not know how to change the way we live, but perhaps I can spread the understanding that a change is necessary, and why.

My Ishmael was fine for me, until the narrative at the end. I think I understand why it was important for some people, but for me I was not so interested in that part. I was looking for insights, and the story involved characters I didn't care about very much, since we hadn't really met them as people in the first part of the book.
The increased focus on "moving forward" and on tribal, not hierarchical structures for humanity is clearly important, and something I can lean on to help me in the future.

The next book to read is Beyond Civilization, which I read 2 years ago. You can see the impact it had on me in the Christmas Spirit post I linked to above. I don't have my copy any more (loaned it out, I think). Time to find another copy. After that, it's on to his latest book, If They Give You Lined Paper, Write Sideways, which is very, very new. I think I'll read it, too.

PowerShell is awesome

I want to declare my love of PowerShell to the world.
 
Done.

What is the Yoga of Stretching?


A while back I read The Yoga of Eating. It has had a lasting affect on my. Not just on my way of thinking about food, but on my understanding of Yoga itself.

One example of my learning: I realized that if I'm going to get physically fit, I need to find a way to do it without it being work. Going to the gym for an hour and doing the stairmaster just doesn't work for me. I know I won't do it. What I've done instead is integrate activity in to my life in a way that meets other needs as well. For example, I bike my son to school. I enjoy our time together, and I like the oddness of it.

One aspect of my physical health that is pretty far from where I want it to be is my flexibility. I can't remember ever having been able to touch my toes without bending my knees. Heck, I can't remember being able to reach my ankles.

I find that I don't really enjoy stretching. I've taken yoga classes, but they are more like aerobics classes with a different set of movements. The Yoga of it seems lost. Instead, I'm trying to find an activity that is interesting for some other reason, and will improve my flexibilty.

The only thing can think of so far is swimming, but I'm not sure. Does swimming make you more flexible?

Any other suggestions?

Edit: This page: http://www.thefactsaboutfitness.com/research/oldstretch.htm seems to suggest that they know something interesting, but they aren't saying what unless you pay. And I ain't paying.

Edit 2: When I imagine "flexible", I think of the opening scenes in the Firefly episode Objects in Space. River walks in to the cargo area, and bends over to consider an object on the ground. She could probably put her forhead on her shins.

Thursday, January 04, 2007

recent ferments

The folks that came to visit us in December were fermentation-friendly.  They were willing to try anything I had made.  Seemed like a good time to break out the things that were hiding in the corners.
 
wild blackberry wine
 
Last summer my brother and I picked about 2 quarts of wild blackberries on the side of the road.  I ran them through the blender to make a juicy mush, about 1 quart.  Added 3 quarts of water.  I probably dumped in a cup of some other ferment that was already going in the kitchen, but I don't remember.  Let it ferment in a jar for a week or two, then moved to a narrow-mouthed jug with an airlock.  Put that in the back of a closet until last week.
 
It was good, but not great.  Biggest problem is that there was too much water.  I probably should not have added any, and just gone with the juice.
 
mead
 
Water & honey, in a 4:1 ratio.  Stir often until fermentation gets active.  Once it settles down, bottle.  Let it sit in the back of closet.
 
Excellent.  Each bottle is a little different.  Some are dry, some are sweet.  All are very fizzy, with tiny champaign-like bubbles.  Everyone loves it.
 
I've decided to make lots more of this, and make it more often.  I have a quart of it sitting on the counter now, which I stir often, trying to get a good culture.  It doesn't seem to be going well, so I think I'll need to start over.  Once I have a good bubbly mix, I'll be making a bunch.
 
I'm thinking of a two-week cycle.  Every other weekend I bottle what I have, saving a little to start another batch.
 
I may need more bottles.
 
sauerkraut
 
Before my thanksgiving trip I started some kraut.  I had 3 heads of cabbage sitting in the fridge that I couldn't find time to make.  With the trip coming, I decided to take shortcuts.  I cut the heads in to big peices, no where near the shredding that is common with commercial sauerkraut.  Salt, in to crocks, add some water to cover.  As an experiement, I kept the heads intact and put them on the bottom.  It's like a prize. :-)
 
They turned out really well; the kraut is very crisp.  Plenty of people are enjoying it. I look forward to having a generous cellar one day, where I can keep gallons of kraut around all winter.


--
-Jay

Seattle Storm

Mid-december there was a big windstorm in the Seattle area.  Lots of people had it pretty bad.  Power out for a week, no heat, and the weather was cold.  Or trees fell through their homes.  Stuff like that.
 
We didn't have power for about 2 days, which sucked while it happened, but seems mild by comparison now.  We didn't really have a good source of backup heat.  We have a fireplace that we hadn't used ever, even though we've been in the house 9 years.  We collected scraps of dead branches and some old rotten logs, and tried our best to bring in some heat.  It made a difference, but damn it was cold.
 
The next day we heard that friends in the next county had power, and invited ourselves to go visit.  Thanks Kevin!  That evening we got power back, and headed home.  The house was a total mess, as we hadn't done any cleaning for 2 days, and there were wood chips everywhere.
 
The next day we heard that some friends were hiding out in Canada, because their home didn't have power yet.  We invited them to come join us, which they did.  They stayed with us for 2 nights, and I really enjoyed having the company.  Then my brother-in-law and his fiance arrived, for the holidays.  A few days later my sister-, mother-, and father-in-law arrived.  We had 10 in the house for a while, wow!  The last of them left on the 31st.  Now the house is pretty quiet, and empty.  The full load of parenting is back on our shoulders, but we're doing OK. 
 
One tree fell in our yard.  It was about 100 ft. tall, but only 50 years old.  Fast-growing, I guess.  The folks I talked to said it was a "theadora", which I've never heard of.  The tree fell leaning up against the neighbor's tree, knocking the top off that tree, which then crashed to the ground with a big thud.  The only real damage was a bit of fencing.
 
We paid a small fortune to get the leaning tree taken down, so it wouldn't fall further and create more damage.  Now our backyard is a big mess, with enormous logs that I can barely move and a deep covering of branches.
 
I'm waiting for insurance stuff to work out, in the hopes that they'll pay for the cleanup.

Gee, I wish I was blogging

I haven't been posting much over that last year, for two reasons. If you're a parent, I'm sure you understand how much work it is to have an infant in the house.

If you're not a parent of twins, consider this: with a single baby, there's usually one parent busy with a baby, and one that has both hands free for other activities. When the busy one needs both hands free, they can trade.

With two babies, both parents are usually busy with a baby. If one needs both hands free, the other parent has to take both babies, which they can only do for so long.

It's certainly not as hard as it was when 6 months ago. Today the babies like to play on their own (emptying kitchen cupboards, for example) and that gives us time to do other things (yay, a shower!).

I know that some people have an even harder time of it than we do. Some people have triplets, or more. We have friends that had two sets of twins. Some people parent alone. Some don't have the option to have a parent stay at home with the kids. Many struggle just to get enough money to get by.

I'm very greatful to all the family that has come to visit & help. My wife's parents have come out 3 times in the last year. My brother & his girlfriend moved in with us for 16 weeks! My dad, my siblings-in-law, and my wife's high school friend have all come out for a week or so. It has made a huge difference. I wish my mom could have.

Well, I have plenty of things I want to blog about, but not enough time to write them the way I want to. I think I"ll try just whipping them out quickly, and see how that goes.
 
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.