Eric Andrew Lewis

Freelance Devel-au-pair

January 12, 2014

Facebook Indifference: Remove the like functionality

Today I release Facebook Indifference. It is a Chrome browser extension that removes the “Like” functionality from our grand social network. Also available on Github.

On social networks, we’re typically offered a means of free speech, but lack freedom over interpersonal behavior. On Facebook, your virtual being consists of a mouth, a camera, a finger to poke people, a thumb to thumb-up others’ content. You are limited to performing these actions and manipulating your digital appendages in ways that the network allows you to.

I am interested in a network that doesn’t provide top-down choices about how we should interact with each other, especially in an arena as open as the web. Although an exodus from Facebook is an obvious option, I am more inclined to subvert from within, at least to begin with.

Liking is acutely psychological; it is approval, empathy, positive reinforcement. It is the most-performed action by users on Facebook. I’m sure that liking increases site traffic and activity, as that is to Facebook’s obvious interest. But what does it do to our interactions, and to us? I could offer my opinions here, but I’m more immediately concerned about taking control of them and our correlating personal psychological experience.

So here you go. This is an option to take modify your social network. It’s an easy way, as taking something away is a smaller technical challenge than adding, but isn’t destruction always easier than creation?

December 21, 2013

What 2013 sounds like

amygdala

I have never heard
electronic with such a
sense of songwriting.

Volcano-Choir-Repave

I won’t beg for you on acetate

mia_matangi_1385056724

hands up
hands tied

the-range-nonfiction

oneohtrix-point-never-r-plus-seven

why_golden_tickets

Cucko Cooper Conley Currier
called murmurer on okcupid

jai-paul-jasmine

Majical-Cloudz-Impersonator2

see how i’m faking my side of it
i’m a liar, i sing, i make music

disclosure-settle

lately i’ve been thinking if you want to get tough
then let’s play rough

December 16, 2013

Obituary for matte laptop screens

Matte (anti-glare) laptop screens have retired, and we’re now left with glossy, glare-inducing screens. Sloppy seconds if you ask me.

Being a web developer, I’m gazing at my computer screen for about 6-8 hours a day. The amount of glare my screen gives off affects me in a very real way. I can’t work (easily) if there is a light source behind me, or even the sun shining on a wall. Working outside all day is more or less out of the question.

And to top it off when I watch a movie, I get my own reflection in the dark areas of the screen. Cool “cinematic screen” dog.

The reasoning I’ve heard for taking anti-glare off the market is it costs more, and its  producing retina-level graphics on an anti-glare screen is near impossible. I’d be glad  paying more for anti-glare, but I guess this pro-anti-glare population is not a large enough minority to shift industry product offerings.

I finally approached this problem head-on and bought an anti-glare screen protector. Surprisingly pleased with the results.

December 15, 2013

Maintaining element aspect ratios in responsive design (The Percentage Padding Ploy)

Maintaining aspect ratios with some HTML elements is easier than others. Take the <img> element: setting width: 100% and height: auto will scale the image automatically based on its inherent aspect ratio.

However, what if you have a 2×1 aspect ratio map, which is enclosed in a <div>? You would need to set the height explicitly, as there’s no inherent aspect ratio.

You could set up a jQuery-based on window resize event listener to detect the new width of the specific element, multiply by the aspect ratio and set the height accordingly.  I’ve done this before, and it works. But feels janky.

I came across another method Craig Buckler calls the percentage padding ploy, which I really like and will use going forward.

Basically, you set the width to your desired value, the height of the element to 0, and the padding-top to the ratio of the height to the width. So, if your aspect ratio is 2:1, you set padding-top to 50%. Since padding is calculated on the width of an element, and setting height to 0 won’t cause the contents of the container to actually get padded, this works perfectly.

June 12, 2013

My Web Development Contract

I’m not so surprised that discussions of contracts don’t come up more often in the web development community. Who wants to wax on legalese? We’re interested in making beautiful fun things, not confounding phrases.

However, I just put up the boilerplate web development contract I use with clients on Github to spark more discussion and hopefully give a leg-up to anyone looking for a no-nonsense simple contract. Especially of interest to me is the question of rights in the world of software development – who owns code developed for a client? My friend Boone wrote about his contractual approach concerning this, which I’ve folded into my contract to cover this.

Software rights has to be dealt with differently for each client. Most clients are worried that their business model or website is going to be stolen from them, so dealing with that fear in a roundabout way is preferable to relinquishing rights to code you’ve written, which you would (legally) never be able to use again. I prefer to appease clients by adding a specific non-compete clause. This keeps all the code I develop in my control, while addressing the concerns of business-model theft for my client.

May 20, 2013

Make GIFs from video files

With ffmpeg and imagemagick installed, open up command line.

Use ffmpeg to extract images from the video file (replace [stuff] with actual values):

ffmpeg -ss [time to start recording from(hh:mm:ss format)] -i [inputfile] -t [time to record in seconds] -r [framerate to use - integer ] -sameq image-%5d.jpg

Use imagemagick to convert the sequence of images to a gif:

convert -delay [time between frames in hundredths of a second] -resize[percentage to resize to]% *.jpg output.gif

bears playing after hours

 

Cutting down GIF size will depend on your Imagemagick options, but here’s an example with suggestions:

convert -delay 12 -resize “[percentage-number-here]%” -dither none -deconstruct -layers optimize -colors 50 *.jpg output.gif

March 30, 2013

Mac Tune-up Guide

A compilation of housekeeping tasks to get your mac running faster.

Verify & Repair Disk/Disk Permissions

Open up Disk Utility (hidden in Applications > Utilities). First run “Verify Disk,” which will check a multitude of low-level directory and file issues. Then fix all disk permissions.

Run maintenance scripts and clear font cache

To run the maintenance scripts, open up Terminal and enter:

sudo periodic daily weekly monthly

You’ll have to enter your user account password. Also, clear your font cache by entering:

atsutil databases -remove

Restart your web browser and clear its cache

Whatever browser you have will have a file cache; empty it out, and check that the caching settings look slim enough for the future.

Check login items

Open up System Preferences > Accounts > Login items, and review any applications launching at start that may be affecting performance.

Clear unused language packs

With Monolingual, you can easily remove all unnecessary files related to language packs you probably never use.

 

March 22, 2013

Launched: Photon

Photon-SF

Today I launched a redesign for Photon, a video production house in San Francisco. It’s a child theme of Ink, which we decked out a bit with some custom functionality on various pages.

February 5, 2013

33 ⅓: In the Aeroplane Over the Sea

album-covers-in-the-aeroplane-over-the-sea-HD-Wallpapers

33 ⅓ is a series of books; in each a journalist takes on writing about the creation an album. I read one on Neutral Milk Hotel’s Aeroplane recently, by Kim Cooper.

The first time I heard anything from the record was at an open mic night in high school, where a ginger-singer-songwriter belted out the title track. I thought it was alright, but I didn’t even get to the rest of the album until college, I was probably too busy listening to Quadrophenia. Even then, it never “clicked” too hard for me.

That being said, I’ve given it some legitimate listens while reading the companion book, and enjoyed myself. The musicians and scene surrounding NMH created a nurturing music culture I appreciated reading about.

They would start bands, write songs, record “albums,” dub them onto cassettes, draw cover art and then circulate these little objects within their own small world. They didn’t seek outside approval by sending copies to record labels, and the few copies that did sneak out into the greater world were probably baffling.

A side-effect of globalization is a notion of everything needing to be shared and connected; food you make is an Instagram opportunity,  the application you record music with has a Facebook share button built into it. Its refreshing to imagine and participate in situations where there is no expectation of success past the here-and-now; art for art’s sake.

Which also explains why Jeff Mangum left the band after their first tour in support of the album, in part because he didn’t know how to deal with the attention of overzealous fans’ idolatry.

It is a bit peculiar. I’ve met my fair share of people who love this album, and I’ve always thought it a bit surprising. Kids who would put on Holland 1945 at a house party and start some kind of faux mosh pit. Hey I probably danced with them, I can’t hate. Well, there’s the overtly religious and historical sentiments which other songwriters barely touch, while Jeff Mangum whisks from World War II through the afterlife with ease.

There’s also that turn-of-the-century aesthetic: brass-heavy, accordion-laden tracks with whimsical lyrical content belted out with the fervor you’d imagine a vaudeville musician would bring. Not to mention the cover art. It was a compelling suggestion that this aesthetic was an influence for bands like the Decemberists and the Arcade Fire.

It’s probably what Pinkerton was for me, for these people that fell for this record. Maybe I didn’t have the personality type to fall for it. But I like it.

Older Posts