Nanoscale Yagi Antenna

Apparently, nano scale Yagi-Uda antenna can be used to direct optical wave, which makes sense considering light is just high frequency wave, much much higher than radio wave. For those not into radio, antenna optimal for higher frequencies are smaller, so one that can emit or receive optical light would be nanoscale like this.

Naturally, I’d wonder what kind of SWR they were getting. (SWR: Standing Wave Ratio — when you put in energy into antenna from the transmitter, part of energy comes back. 1:1, which means same level of wave coming back to radio is considered optimal, and anything higher than 1.5:1 are generally considered bad. It can potentially destroy the transmitter…)

Wonder if they can make Hentenna version of nano antenna.

When you die…

Not that I’d care so much once I die, but it seems to be people being able to dig into my Gmail account is somewhat disturbing to think about.

I feel Facebook is taking most progressive approach to it.

I think most problematic ones are ones incur charges. When my father died, he left the Google AdWord account open, and I had to send in his death certificate to cancel it. Same goes for his T-mobile account. They both had clear protocol about what to do when it happens. (like T-mobile did not charge early termination fee (ETF) for it.

These days, dying “clean” seems to be hard thing to do…

Memory exhaustion in git garbage collection

Just as I was trying to garbage collect big repository, I started seeing this problem:

# git gc
Counting objects: 2746, done.
Delta compression using up to 2 threads.
fatal: Out of memory, malloc failed2)
error: failed to run repack

Looking for some remedy to this, it seems to be I can specify memory window for repacking process by using –window-memory.

# git repack -adf –window-memory=50m
Counting objects: 2746, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (2672/2672), done.
Writing objects: 100% (2746/2746), done.
Total 2746 (delta 910), reused 0 (delta 0)
Removing duplicate objects: 100% (256/256), done.

I think I have to specify something low for –window-memory as it seems to maximum object size of individual objects, but it looks at number of object as specified in –window, which default is 10. (so window memory of 50MB would still take 500MB) Default for window memory is set to 0, which means unlimited. It perhaps wouldn’t be too much of problem if you have small files in your repository. But if you have huge one, then you’ll have to specify this, or it’ll crash failing to allocate memory, unless you have tons of memory.
If this problem is happening at garbage collection, even after you’ve done above, subsequent garbage collections would fail if you don’t specify the following.

# config pack.windowMemory 50m