Personal

Just Say No to "No"

I’m a member of NYC Resistor, and while I think we’re a pretty awesome group of people, we’re not without our bikeshed arguments. These kinds of arguments, in any group, can range from mild time-killers to arguments so intense people end up feeling personally hurt.

One of the biggest problems I’ve noticed is when people start shooting other people ideas down. It starts a negative feedback loop, and everything goes downhill from there. But lets face it, some ideas really are terrible, and maybe we think it’s worth a bruise to the person’s ego to save us all from a huge mistake. How do you skirt a bad idea without killing a friendship?

Personally, I’m going to work on shifting away from saying “no” to people. Which is not the same as saying yes. I’m banning “no” from my discussion vocabulary, and replacing it with the phrases “what if, instead/additionally…” and “I’d be OK with that if…, ” followed by an explanation of what would make me more comfortable with the project.

For [an absurd] example, let’s say someone in the group wants to buy an iguana and keep it at the space. I think this is a terrible idea, the space is for people, not animals. Instead of saying, “no, an iguana at the space is a disaster waiting to happen, it will totally die,” I could say “before diving into herpetology, let’s get a few plants for the space and see how that goes.” Or maybe, “I’m worried it will be forgotten and die, what could we do to make sure Iggy is cared for?” This gives people a way out of the stalemate and on to continue the discussion.

It takes less than a second to say no. Yet we spend too much time reciting our many and varied reasons to say no, rather than listening and considering what we could do to find a compromise.

So just like giving up “you should,” cialis cheap I’m giving up “no.”  I invite you to call me out on it when I backslide, and hope you’ll consider ditching “no” too.

Hacking

Unbloating my Macbook Air

I got a Macbook Air a few months back. I have a herniated disc in my neck, and needed a laptop I could both carry to work every day and do development on without further destroying my sad spine. While the Asus EEE line is adorable, they’re a little underpowered for doing real work on, and frankly, the Apple Tax is still cheaper than spine surgery.

Anyway, while the 64 mb drive was twice the size of the 32 drive in my EEE that I never filled, I recently started getting warnings that my drive was full (< 1 gig of space… remember when that was huge?). So I took some time this morning to answer the question: Where the hell did all my space go?

Dropbox, though it has saved me from countless headaches, was unsurprisingly a huge culprit. Giant raw video files for projects were chucked in there on beefier systems, and then the little macbook air cried as it tried to figure out what to do with 24 takes of Katherine and I attempting a mid-air high-five.

Mercifully, Dropbox now has a feature called “selective sync” which allows you to choose which folders are downloaded. You can further tailor things in the advanced settings, cherry picking subfolders to sync. By unchecking a few bloaty files I don’t need on the road, I freed up about a gig of space.

Starcraft II. This is probably an obvious one. I figured SCII was taking up a few gig, but upon inspection it was more like 10. I removed it for the time being, and will reinstall it later on my adorable external hard drive.

Extra Languages. I like to pretend I’ll someday learn another language, but by the time I do we’ll probably all be traveling by hovercraft. I used Monolingual to remove the languages I don’t need, freeing up 1.5 gig.

Now I’m back up to 13 gigs free, hooray! There are some more drastic measures I could do, like uninstalling printer drivers I don’t think I’ll need, or removing applications like Garage Band (which takes up a gig), but for now this is enough space.

Uncategorized

Voting with one's feet

I want to take a moment to talk about something serious: a terrorist organization. Called the TSA, or Transportation Security Administration.

In a country that is so fiercely split along party lines that I sometimes wonder if we’ll make it another 50 years without bursting out into buy cialis a civil war, there is one thing that seems to be a uniting factor: hatred of the TSA. Friends across the political spectrum all seem to share a thorough resentment of the organization. Some people might say I’m being over dramatic; that while the TSA is a inconvenience, calling it a “terrorist organization” is a bit over the top, yes?

No. Not at all. Terrorism is a means of controlling people via fear, and that is exactly what the TSA is doing. I’m not a conspiracy theorist. I’m not an anything-wing nutjob, I by and large stay out of politics. But the TSA has crossed a line, causing rape victims to re-live their trauma, strip-searching 6 year olds, or making cancer survivors detail their medical history to complete strangers… and trying to pass the whole thing off as making us “safer.”

Safer? This is an organization that screens the pilots for crying out loud. News flash: if a pilot wants to hijack an airplane, she doesn’t need any weapons because she’s already the pilot.

Frankly, I’m terrified. I’m trying to figure out how I’ll possibly navigate the choice between trying to make my startup work (a process will undoubtedly require many trips to California) and not wanting to allow a complete stranger to touch my vagina. I feel backed into a corner: comply or fail. I generally prefer to “vote with my feet” and use the power of capitalism to say what my vote often fails to. But in this case, I don’t have that luxury.

We’re all fed up with the TSA’s BS, but no one seems to know what the next step is. What are our options for doing something about it?

Hacking

New Flattr Buttons

Diane from Crafty Pod has spent a lot of time talking about the cost of producing free content, and how we can cultivate a supportive environment for it.

I’ve seen Flattr buttons all over lately, and never really took the time to look into it. I assumed it was yet another micropayment system, and frankly I’m kind of tired of micropayment systems. And while Flattr IS indeed a micropayment system, I think it’s kind of cool.

Instead of randomly deciding to pay for content/things, you decide how much per month total, across all sites you’re willing to spend supporting free content. Then you can go around Flattring things with reckless abandon. At the end of the month, your bounty is split among all the sites you’ve Flattr’d.

I’ve set myself up with it, and it honestly feels pretty nice to use. I can show my support for as much or as little as I like, and not feel like it’s slowly draining all of my savings.

If you think you get $2 / month or more worth of value from all of the free content on the internet, consider signing up for a Flattr account! I’ve added Flattr buttons to my blog; while only a handful of posts are what could be generously considered useful content, there are a few that I know folks have found quite handy. So go forth, and make the internet a more sustainable place for free information!

Hacking

Becoming a Licensed Ham

We have a number of licensed hams at NYC Resistor, but until recently I never quite understood the draw of ham radio. Honestly, I didn’t see what was so exciting about contacting a random person and telling them their signal strength, maybe along with the weather if you had a good signal. And in a world of email, broadband internet it can be hard to understand the appeal of amateur radio.

Admittedly part of my interest is just for the sheer nerd value. We refer to hams as “beardos,” due to the fact that almost everyone using a ham radio sounds like they are a middle aged man with an intense beard.  But lately I’ve been thinking about how our incredibly powerful network of internet and phone lines is also incredibly fragile. Like how an errant backhoe in Massachusetts can kill my connection for hours. Or how my husband and I managed to lose each other, despite being only a few blocks away, when cell phone service was out for an hour. In light of some of the recent natural and man-made disasters, the ability to send a message 1000 miles per watt of power seems a lot less silly.

I’m studying to take the Technician exam, which involves learning a small amount of radio science on top of the basic electricity I already know. By far the hardest part is navigating all the acronyms. Hams love acronyms. Everything written about it is so full of acronyms and jargon it’s pretty much impossible to read without prior study, which can make it a little difficult to get started.
While I usually find the for dummies series painfully oversimplified, I actually found Ham Radio For Dummies to be pretty handy. It’s by no means comprehensive, and a little out of date, but it got me to a point where I could at least navigate the ARRL website.

I’m still not quite passing the practice tests, so I have a little more studying to do, but hopefully I’ll have my ham license in hand by the beginning of next month!

Programming, Software

Bit Depth Problems with RMagick / ImageMagick

I just spent the entire afternoon debugging a problem I couldn’t find elsewhere, so I’m documenting it in the off chance someone else runs into the evil thing.

I’m composing some images on the fly using ImageMagick via RMagic. It grabs one file, floods the image with a given color, and layers another on top of it. Locally, it works great, and gives me “body parts” like this one:

Unfortunately, when I push the code to Heroku, it starts going through a goth phase and filling everything in with BLACK LIKE SOUL:
I spent a very, very long time trying to suss this one out, checking out everything from opacity to gem versions. Finally, I checked the ImageMagick version (Magick::Magick_version).
Local: “ImageMagick 6.6.7-1 2011-02-08 Q8 http://www.imagemagick.org”
Heroku: “ImageMagick 6.6.0-4 2010-06-01 Q16 http://www.imagemagick.org”

Ok, so Heroku’s is a bit older. But that’s not the critical issue. The bigger problem is the Q16, which is reporting the quantum depth. I don’t understand nearly enough about image processing to talk about what that really means. But long story short, it means my images had different default bit depths and it was causing everything to blow up. Or something.

I was able to fix it by changing how I instantiated the Pixel for the fill. Before, I was using

fill_image.colorize(1,1,1,Magick::Pixel.new(r,g,b))

where r, g, and b are integers between 0 and 255.

Conveniently, RMagick has added a from_color method to Pixel, which lets you define a pixel based on a color name. I passed in a hex value, and everything magic(k)ally works normally again:

color = '#ababab'
fill_color = Magick::Pixel.from_color(color.upcase)
fill_image = fill_image.colorize(1,1,1,fill_color)

I wish I understood a few more of the particulars about what is really going on here. But for the time being I need to move on to finishing this up. Any insight is welcome in the comments.

Family

On Death and Grief

In college I took a class called “Death: Myth and Reality.” The course examined death from all angles, from the science of what physically happens after death to how we as humans handle the idea. The variety of ways people cope with death is enormous, even within a single culture or religion. I was raised with the understanding that it was a natural part of life, albeit a very sad one, and never really had difficulty coping with the loss of my grandparents over the years. I consider myself fairly OK with the idea of death. Our foster kittens don’t always make it, which is hard on us, but at least we’re able to provide them warm and loving homes for their abbreviated lives.

A family member, my fiancee’s cousin, passed away unexpectedly this week. He and Chris were very close growing up, and about the same age. We saw him regularly, though not always frequently since he lived a few hours away. It’s been very, very hard for Chris, his family, and myself. And I’m quickly learning that the grief of losing a peer is completely unlike that of losing a grandparent.

When you don’t see someone every day, it takes longer to process what it really means when they’re gone. It’s too abstract to simply know that somewhere, elsewhere, they’ve ceased to be. The first wave of grief was mostly for the other family members, the sadness of knowing people you care about are upset and the grim realization that there’s nothing you can do. I cried because Chris was crying. Chris traveled south to be with his family, and I stayed in New York until we had a better idea of what was happening.

It took a few days to process what was going on. To understand where all the holes were going to be. An empty seat at the “kids” table (who are mostly in their 20s) at family gatherings. A missing guitarist in the ska band we insisted we would form “soon.” An XBox Live ID sitting dormant on our friends list. Each of these revelations came like a fog settling around me. And if this is how I feel about someone I’ve only known since I got together with Chris, the pain his immediate family is in must be unbearable.

I’m grateful for the friends who have buy generic cialis offered support. I’ve learned that the hardest question to answer is “how are you doing?” My reflex is to answer “fine,” because that’s the universally accepted response for the question. But I’m not fine, and it feels incredibly hard to condense how I feel into something that answers what seems like a simple question. I’ve taken to responding with “it’s going.” I’ve also learned that attempting to “be strong” by doing things like going to work instead of going to be with family is unnecessary and unhelpful. There is nothing I do that is so critical it can’t wait until Monday, and simply being around family going through the same thing has made things infinitely more bearable.

When I met up with Chris yesterday he reminded me of a conversation we had with his cousin, whose name is Mike, when we were at the beach this summer. We were watching Pawn Stars, a TV show about a pawn shop. Mike mused that working at a pawn shop would be “a fun job, except for all the ghosts.” We giggled a bit at the idea of haunted pawn shops, and then we realized he was quite serious. This made us laugh a little harder. But Mike seemed pretty certain that people live on after death in the things they own. While I’m not sure that “Ghost Hunter Pawn Stars” will be the next hit reality TV show, I do think people’s possessions can help us keep them alive in memory. And who knows, perhaps if Mike has some free time in the afterlife he will take to haunting a pawn shop.

DIY Lego Wedding Centerpieces
LEGO

Lego Sphere Factory

This weekend was spent at RevolvingDork’s parents’ house, which they kindly let us turn into a Lego sculpture factory.

Basement Spheres

We had a total of 12 people over on Saturday attempting to make 15 Lego spheres. Each sphere is about 25cm (10ish inches) in diameter. They follow a pattern I created using Blender and the techniques/scripts described here and here.

We used a lot of Legos. Approximately 22,000. Most of them were sourced from BrickLink, though we did buy a few sets new from Toys R Us. When build day came we realized we didn’t have enough, so RD made a last-minute trip to the Lego store. He was able to talk the staff into letting him buy a few boxes in bulk.

Legos

In order to make the build process easier, we laser-cut jigs out of foam core for each of the 27 layers. The jigs served as templates for each layer, avoiding the frustrating and time consuming counting I had been doing when building them earlier. We didn’t use a script to output the vector cut paths, RD just traced them by hand in Illustrator.

Building with a jig

To put it plainly: assembling these is hard. There are lots of overhangs and ragged edges where you really need a 1×1, but of course those aren’t very structurally stable. The first few layers are definitely the hardest, and there are a number of tips and tricks we figured out along the way to make things easier. And by easier I mean possible.

The spheres were built mostly hollow, though thicker at the top and bottom for structural support. A few folks incorporated a center column to make placing the top easier. Personally I found it easier to start thickening the walls around the top 1/3rd and using long 2×8 pieces to mesh in the top.

John decided to get fancy with his; rather than a simple mottled pattern he made an artistic swirl.

John and Sphere;

After 12 hours of work on Saturday we had 6 complete spheres and a number of half-finished ones. On Sunday RD, myself, and my soon-to-be mother-in-law finished up the leftovers, for a total of 13 spheres completed this weekend. I’m pretty impressed, and honored to have the sort of friends who would give up their Saturday to assemble these ridiculous sculptures.

These were used as the centerpieces in our wedding, and the ones that survived the evening intact were given to family and friends (with first dibs going to those who made them).

DIY Lego Wedding Centerpieces