Reduce, Reuse Recycle summary December 2017 – January 2018

(Sounds nicer than saying dumpster diving eh?)

We can learn a lot about a society just from looking what we throw away (see Garbology).

When I lived in Berisso it was really odd to see on the curb something that worked or was fixable.

Here in La Plata and without even trying I stumble upon stuff that is just a little bit broken if not working (albeit a tad old).

This last two months among other things I picked up with my bike basket:

  • A vacuum cleaner, complete with hoses. Only needed a carbon brush replacement.
  • Home audio amplifier. The cd tray is stuck but we feed it from the line in. A bit heavy but very nice sound.
  • Mantle top fan. Works fine as a fan but the pivoting mechanism is acting up. Just needed a thorough cleaning.
  • Leather briefcase. Sold in less than a day as a theater prop.
  • Wooden wine rack. Works fine for other beverages too.

This is not exactly dumpster diving but I also helped the widow of a neighbor silent key to clean up his shop.
Out of the deal I got:

  • Two 100Mbps rackable switches. They work but at that speed I only want them for the chassis and supplies
  • An antique lamp. Already restoring it.
  • A Commodore 1541 dirve and some original CompuServe disks. On their way to a museum.
  • A very old (when telegraphs were the norm) glass insulator and threaded pole made of hardwood. Has the right volume to make a shot glass.
  • A modern medium voltage insulator. It’s quite heavy but in nice condition. I’ll probably make a lamp out of it.
  • Lots of heatsinks and coolers.
  • Old cans of candy and medicines. They don’t have a high monetary value but are collectible and can be traded for something else.

Tooling up

Since I moved back to my childhood neighborhood I reconnected with a lot of people that were part of my developing years and imprinted many memories that I still recall fondly to this day.

One of them is a very nice old man, a bit younger than what my grandfather would be were he be still alive. From time to time I help him with the daily errands and every other week we share a simple lunch. He used to run a hardware store that marveled me every time I went (when I was a child I could be impressed with simple things. Thankfully, now I still do).

Nowadays the store is run by his sons. He comes anyways, sits on a corner drinking mate and welcomes the patrons. Besides knowing almost everyone around he’s also versed in almost any trade I can think of and that skill is quite useful, as many times people come without knowing what they need or how to fix something.

I visited him for new year’s eve and between a glass of wine he said come to the shop once the holiday craze fades, I have something for you.

A couple of days later I go to the store and without a word he carries me to the back into a room I never visited before.

This are all the returned items that we can not send for repair. Some customers are worth keeping and so we just give them a new machine instead of washing our hands because the manufacturer would not take them. Pick what you want, we’ll talk business later .

I got this out of the deal at a very discounted price:

  • A combo tig/stick welder plus plasma cutting with all the standard accessories and an auto darkening mask.
  • A drill press.
  • A miter saw.
  • Small air compressor.

Besides that he sold me safety gear, consumables and a couple of other things like magnetic squares and pressure clamps, air hoses with quick disconnects, a paint gun and a spraying one.

You don’t look at a gifted horse in the mouth but given that these were rejects I had to.

The welder was only banged a couple of times on one side and had some loose connectors. After fixing that it worked flawlessly. It came with all the torches, water tramp and pressure regulator and spares.

The compressor is way loud and one of the connections between the reservoir tanks and the regulator has a leak, I can see oil (or moisture?) bubbling when it’s running. It’s not a big deal and while the fix is easy it involves fumbling with very delicate tubing and I know from experience that a bit too much of torque can easily wreck them. Also it’s not very ergonomic, the handle has sharp edges and if I’m supposed to use it to move it around I have to crouch. As it is not very heavy I just lift it whenever I need to move.

The drill had less than the barely minimum grease on the table lift column (none) but surprisingly the chuck turned smoothly after loosening the belts. However the quill felt strange, like it was scratching something inside, and also the spring was harder than I’d like to. To dismantle it only needed a single screw to be removed and when it was out I swept the innards with a cloth and it came back with what looked like metal (or very thick paint) flakes. After making sure that none of that remained I applied a very generous amount of grease and put it back together.

Runs quite fine but the table has a bit of flex, nothing that a brace wouldn’t fix.

I don’t know what’s wrong with the miter saw. The stock abrasive disk is very soft and flexes, so making square cuts is a difficult task, and it really needs to be bolted on something hard, otherwise the frame tends to distort when applying pressure to the vise (just the necessary to keep things in place, seems like a production defect).

All of this came just in time, as I’m doing a couple of renovations on my parent’s house. (The neighbors are not exactly thrilled, as all of these tools make quite a bit of noise).

Low level fun.

As a wise man said, “low level is easy”.

There aren’t that many things below that can break except for hardware (and compiler!) bugs, they are becoming increasingly common but still the level of pressure and control to keep quality up on processors are orders of magnitude greater than those on the stacks above the OS.

A minor update of Ruby broke everything? The layout is totally wrong when a browser locale is set to Spanish but no in English? Who’s to blame for that? Even if we have most of the sources fixing the problem for everyone but ourselves isn’t that easy.

The other Monday I went to the Uni to take an exam on digital circuits (graded with 9/10) and oh boy, programming in assembler again was refreshing.

The tooling is just as awful as the last time I took that course (not as bad as the first versions of mplab but the assembler is still dumb when it comes to parsing spaces and the integrated editor is notepad in disguise) but the difference is that now they allowed us to use our own notebooks. The only saving grace is that the assembler, debugger and simulator are different executables, they accept a sane set of command line parameters and they run fine under wine.

So I was able to use vim and a simple makefile to streamline the process and finish in almost no time. Sadly the bar to pass has declined a lot in the last years.

Distribution Panel III

Now it’s time to cut the umbilical cord and properly link to the main feed.

I made a hole in the wall to house a small box. I also added another pair of breakers with an rcd to rewire the adjacent room (for other reasons it’s best to keep it apart from the radio panel).

As we couldn’t disconnect the aerial fuse at the power pole we worked on live circuits.

When I’m say I’m alright

… don’t look in my eyes ’cause you’ll see I’m not alright.

But I’m trying.

About a month and half ago I snapped and couldn’t take it anymore. I sought professional help and got myself a Real Shrink and a Therapist (both extremely good and expensive). And I’m on meds now.

For the most part of the last three to four years what I described as “happy” or “fine” was actually different shades of miserable. I had my moments of truly happiness, but those were really few. And there was always that tiny rainy cloud looming above me.

I had a breakdown like this back in 2015 and I almost wanted to give up and get away from programming (I kinda did, I biked many times to the countryside trying to look for a quiet spot).

This time it’s not so bad on its own but compounded with other things happening in my life (one of the biggest is leaving Berisso) it totally wrecked me. The difference now it’s that I asked for help. I still run away from the civilization to take day long bike rides and reflex but I’m trying to get a grip on the problem and fix myself.

Lately I’ve lost interest in most of what my life is/was centered about (technology, engineering) and that bothers me a lot. Not completely, I have many drafts and toy projects that prove otherwise.

The knack it’s there but the thrill is gone. At least for a while.

As Dave Thomas put it, this is supposed to be fun. And it stopped being such for me, instead of an almost daily stream of marvel it gradually turned into a grind with an occasional touch of enjoyment, and not always at work.

I believe that we are defined by what we do (more than what we think / believe), work being a significant part of that. On that reference frame, this is a very tough situation.

So what now? I’m going to spend all the time I need to get better and take care of myself. I’m taking a bit of time off work and going back to uni for real, coming clean of my schedule to not rush things pretending I’m doing something when I’m not (attending lectures and using slack on the phone is awful). I’m saying no instead of hesitating. I’m not committing to do things just to please someone. I take a break when I feel I need it.

I know this stuff (antidepressants) takes time to make effect and it’s not a silver bullet that somehow will make everything fine overnight but I’m anxious, waiting for something to happen.

On a totally unrelated thing, the quote from the beginning is from a Storm Large song (it can be found here). I really miss her days with The Balls, the energy and vocal range from that era reminds me a lot to Skunk Anansie. But her smooth side of nowadays is gorgeous.

What nobody tells

Nobody tells this to people who are beginners, I wish someone told me.

All of us who do creative work, we get into it because we have good taste.

But there is this gap. For the first couple years you make stuff, it’s just not that good.

It’s trying to be good, it has potential, but it’s not. But your taste, the thing that got you into the game, is still killer.
And your taste is why your work disappoints you.

A lot of people never get past this phase, they quit.

Most people I know who do interesting, creative work went through years of this.
We know our work doesn’t have this special thing that we want it to have. We all go through this.

And if you are just starting out or you are still in this phase, you gotta know its normal and the most important thing you can do is do a lot of work. Put yourself on a deadline so that every week you will finish one story.

It is only by going through a volume of work that you will close that gap, and your work will be as good as your ambitions.

And I took longer to figure out how to do this than anyone I’ve ever met.

It’s gonna take awhile.
It’s normal to take awhile. You’ve just gotta fight your way through.

Ira Glass

Also, Andy Hunt used to say:

It is the artistry,
not the art.
It is the process,
not the product.
It is the journey,
not the destination.

Burning down the house

(Watch out)

So many drafts, some stories and pictures from the last PyCon at Bahía Blanca.

I was happily hacking on the kitchen the other Saturday when I hear a strange noise coming from the garden.

To my dismal surprise I see that the shed is on fire and part of the roof collapsed. I went in to take out a propane can to avoid an impending catastrophe and called the firemen (lucky us, they are a few blocks away).

We lost the roof, tools, vinyls and books on an adjacent room but nothing that can’t be replaced. Still fuck.

Some pictures of PyCon at flickr (not mine)

Bike basket

A reclaimed milk crate, some wood leftover from another project and pipe clamps.
Now I can roam freely, it feels so nice to my back not having to carry the backpack. It’s particularly useful when doing errands or picking up “trash” (but for me it’s a treasure).

All it takes it’s asking.

About a month ago I was at the bank.

Despite arriving a quarter before the opening hour there was already a long queue and once inside my ticket was number 29. That more or less means three hours of wait.

I carried on with the daily chores and went back, there was still a lot of people before me and I took a seat to rest for a while.

Next to me there was this couple talking, I didn’t quite listen to them but all of a sudden I catched that they had two tickets and were going to the same teller as me anyways. So I asked if they wanted to give me one.

And they said yes, moving me back to the 16. I was glowing in satisfaction. The rest of the people looked at me like some sort of criminal.

Not totally unrelated, last week we went to another bank to do some paperwork on a shared account. I arrived earlier and grabbed a ticket. The other owner was delayed and so I stepped on the middle of the hall asking if anyone wanted to trade my ticket for theirs. Everybody looked at me in disbelief, like, “what’s this wacko asking?”. Finally one slowly raised his hand, we traded places and everyone was happy.

Fixing a microwave oven with a broken keypad

This is by far one of the most productive things I did this week outside of work (at least the one I can write about here).

A couple of months ago my ex gave it to me, it started with intermittent display issues and one day it stopped completely. I picked it up and stored it.

The other weekend I was in a bit of cleaning frenzy and I remembered that it was using valuable space on the shack doing nothing so I set to see if it had any hope of working again. Otherwise I’d take the transformer and dish motor, the magnetron would go to a friend and the rest sold as scrap.

This is the second time I fix a microwave oven and I’m amazed at the amount of grease and acid stench that accumulates inside them.

I bridged the safety interlock pads on the control board and powered it with an isolation transformer. It kinda turned on but was not responsive and only some digits were dimly lit. It was also very sticky.

After that I cleaned it using lukewarm water, detergent and a toothbrush, a scoop with a hair drier and then another bath with alcohol.

Now it works!

The keypad is a mess, besides being sticky and stenchy too the conductive traces were broken, like dissolved, on the connector side. For some models there are still replacements on the market but they aren’t cheap and also what’s the fun on that?

I peeled away the layers, traced it and make a replacement using tact switches. The decal will be glued on top of that. It works fine, there’s less waste (but I’m short of a spot welder) and off it goes to Radio Futura.


So, I’m facing an issue and the best tools so far (or the ones that are the less worse) seem to involve both php and xslt. And a braindead webservice. Go team.
Not totally unrelated, I’m surprised at the amount of stuff that can be found with “depressed developer”.

Distribution Panel

We are about to make a lot of radical improvements at Futura.

One of them involves redoing the electrical installation. I chose to use separate breakers for lights and sockets per room, both downstream of an rcd. The upfront cost is bigger but the benefits later in flexibility are enormous.

Some of the materials have not arrived yet but to speed up things I built it on a piece of wood with DIN rails. I laced the cables instead of using zip ties just for the sake of it, I like the way it looks with a vintage air.


The other week I felt like cooking.

I made cubes of calabaza in syrup like grandma used to, with ash or lime to harden the outside. About half day sitting in water and lime, a thorough clean and then five hours give or take on the stove with lots of sugar.

After that I roasted a sweet potato and just for kicks I also fried a banana in a mixture of honey and butter. That was really tasty.

Guidelines for C source code auditing and other tales.

The papers and articles at this site are quite interesting, even if a little dated. Somehow I had many of them opened from a couple of days ago but just now took the time to really read them.

Guidelines for C source code auditing:

Syscall Proxying – Simulating remote execution:

An Overview of Unix Rootkits:

Know your Enemy:

…and part the other series: