Or, How I Learned to Stop Worrying and Love the Blog
A Long and Winding Road
I’ve been blogging since 1999, first via extremely cringe LiveJournal posts and later documenting my experiences from a Rotary exchange program to Japan in 2004 (including a nostalgic return last year). Over the years I’ve used various platforms, but none have felt quite right.
The Tumblr Era: A Love-Hate Relationship
For a long time, Tumblr was my go-to platform. It was easy to use and had a great community. However, as Tumblr evolved, it became clear that it wasn’t the ideal solution for my needs. The lack of HTML support and the platform’s overall instability made it difficult to maintain my blog.
I wanted to add an Age Gate / Age Verification pop…
I wanted to add an Age Gate / Age Verification pop-up for Squarespace. The top search engine result had some code, but it A) didn’t work B) didn’t look very good and C) didn’t have any functionality for tracking cookies. Instead, use this code:
First, put this into the injected code in the Header
<!– Age Verification Pop-up HTML –> <div id=“age-verification-popup”> <div class=“popup-content”> <h2>ARE YOU 21+?<div class=“image-circle-container” style=“margin-bottom: 24px;”> <img src=“https://images.squarespace-cdn.com/content/6788837817ec6330feff09fe/a0416e38-e21f-4f14-88b3-0a8c8589e435/lambi_lamb_black.png” alt=“LAMBI” class=“centered-image” fetchpriority=“high” loading=“eager” decoding=“async” data-loader=“raw”>
It was the first year I got a CD-RW, Netflix launched a DVDs-by-mail service, the Hale-Bopp comet made an appearance, and I learned about California because of a little group called Heaven’s Gate.
There are betrayals in war that are childlike compared with our human betrayals during peace. The new lover enters the habits of the other. Things are smashed, revealed in new light. This is done with nervous or tender sentences, although the heart is an organ of fire.
A love story is not about those who lose their heart but about those who find that sullen inhabitant who, when it is stumbled upon, means the body can fool no one, can fool nothing — not the wisdom of sleep or the habit of social graces. It is a consuming of oneself and the past.
There once was a man from the South
Complements would flow forth from his mouth
“You’re fire” to Pookie
“Your Kelly, your Louie”
Now post it before we go out
“Here lies the strong hidalgo whose bravery exceed…
“Here lies the strong hidalgo whose bravery exceeds so much that even death did not triumph over his life. He experienced all that the world has on his body, and to be sane in such an ordeal, he believed his fortune to be mad and lived as a madman.”
19 years ago I moved from West Virginia to Tamano,…
19 years ago I moved from West Virginia to Tamano, Japan for a year-long high school exchange program through the Rotary club. It was one of the most impactful, perplexing, and exciting experiences of my life. I wrote a blog called Thousands of Miles from Home about my time spent in the country and also published selected writings into a book.
Ethics is a hot topic in technology. In the 80’s nerds were shoved into lockers. In the 90’s and 2000’s they were on the front page of Time. In the 2010’s, algorithmic bias and the negative effects of social media were starting to be felt and the nerds were now testifying in front of congress. Who knows how this decade will unfold as we’re witnessing a never-ending fountain of technological innovation and associated nebulous anxiety.
In college I worked at the Helpdesk answering questions over the phone about different tech problems for professors and my classmates. I found the tricky problems engaging, but there was a lot of repetition to that job. I now work in the field of Conversational AI, building the tools and experiences I wish I had back at the Helpdesk. Contact center automation is a curious space with various ethical dilemmas and “what-if” scenarios that are indicative to generative AI.
Hackers penetrate and ravage delicate public and privately owned computer systems, infecting them with viruses, and stealing materials for their own ends.
“I know from my experience it is up to the working…
“I know from my experience it is up to the working people to save themselves. The only way they can save themselves is by a strong working-class movement.” -Rose Schneiderman
Open Mic Night at our home featuring poetry (acros…
Open Mic Night at our home featuring poetry (acrostic), musical performances (pipa!), Chaucer and juggling (simultaneously), Irish dancing lessons (posture), thoughts on AI (culture), and a whole host of good friends.
Larry Wall, creator of the Perl programming language, offers the following “three great virtues” of a programmer:
Laziness
The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so you don’t have to answer so many questions about it. Hence, the first great virtue of a programmer. See also impatience and hubris.
One of my favorite things about howdoi is the portability - meaning that you can get instant coding answers anywhere (not just on the command line). Contributors have created integrations for howdoi on Slack, Telegram, Discord, Visual Studio Code, and Alfred (just to name a few!).
As an Emacs user, you can use the code snippet below to get instant answers inside Emacs.
(defun howdoi (start end command)
(interactive
(let ((command "xargs -0 howdoi"))
(if (use-region-p)
(list (region-beginning) (region-end) command)
(list (line-beginning-position) (line-end-position) command))))
(let ((response (shell-command-on-region-to-string start end command)))
(kill-new response)
(save-excursion
(end-of-visual-line)
(newline)
(insert (shell-command-on-region-to-string start end command)))))
(defun shell-command-on-region-to-string (start end command)
(with-output-to-string
(shell-command-on-region start end command standard-output)))
Then, when you want to know how to # format a date in bash you can invoke M-x howdoi on that line and voila!
Must everything get worse as it gets old? Is plann…
Must everything get worse as it gets old? Is planned obsolescence the law of the land? As a hacker with a 5 year old laptop, it’s easy to look at those with fancy new models with more than a little envy. However, I enjoy my current computer. Sure the battery life isn’t the greatest, but the only time I truly get hot and bothered is when my machine also gets hot and bothered — and throttled — severely liming the CPU and making your machine crawl.
As usual, I blame digitization. When you had to lug 30 lbs of vinyl up a creaky warehouse stairwell, there was a pretty good chance you were going to play some fire. Serato was alright, because at least you still had the turntablism. With the advent of CDJs and Rekordbox, it was all over.
Ancestral Music from India, Persia, Turkey, and Greece
I had the good fortune of catching Maz Karandish & Alexander Karvelas, along with their tabla player, performing an evening of ancestral music from India, Persia, Turkey, and Greece. This was part of a Groupmuse event in the Oakland hills – notable for being the first event put on by that organization that strayed from the Classical European Chamber Music tradition. The performers were fantastic, including the dancers for many of the Turkish and Greek songs, and I was happy to see an organization like Groupmuse offering a diversity of voices as a direct result of the George Floyd murder and resulting protests.
I’ve been digging into Phillip K. Dick’s back catalog and finding a few wacked-out gems. Much of his work focuses on and draws inspiration from his periods of on-again off-again drug use. They’re difficult and flawed reads at times, but the concepts are just as fresh as they were almost a half century ago.
A few titles I’ve enjoyed are:
The Three Stigmata of Palmer Eldritch - a psychedelic odyssey of hallucinations-within-hallucinations
Ubik - A layered and labyrinthine space opera
A Scanner Darkly - I love me some Keanu but the book is better
Of course, if you haven’t read Do Androids Dream of Electric Sheep that’s not to be missed.
When the Chumash people were the most populous in Santa Barbara, large flocks of wild ungulates roamed the land munching on grasses, wild radishes, and various flora. By reducing the fuel load, goats and sheep helped keep wildfires in check by consuming material before the seasonal fires could.
Today Cuyama Lamb provides grazing services to the area, bringing a large flock to trim the grasses and trees, and give local residents a pop-up petting zoo. They’re pretty much the opposite of Smokey the Bear, and probably much more effective in actually preventing large scale fires.
No stroll through Montecito, once a haven for bandits and highway robbers, would be complete without a visit to the Music Academy Of The West, an “institution of musical learning.”
The well-to-do John Percival and Mary Jefferson, while vacationing in Spain during the Santa Barbara earthquake of 1925, sent back a shipment of tiles depicting the story of Don Quixote, which Mary used to decorate a small courtyard at the Academy.
Back in the day, when you wanted to get some data into Python, it was easy enough to load the whole .csv or .txt file into memory, do the kind of operations you needed, and be done with it. Then came generators and streaming formats for stuff that wouldn’t quite fit into RAM. Nowadays, even lazy iterators can fail you from time to time, especially when dealing with big data and resource constrained machines, like Google Colab.
I am again excited to be participating in the MLH Fellowship, a 12-week program pairing promising young developers with mentors and experts working in the world of open-source software development. It is a fantastic program that has allowed me to work together with talented students all over the world.
This semester’s fellows are assisting with the development of howdoi, a simple tool for finding answers to common programming questions.
The music is always on point and the message is just as crisp as it was all those years ago. The Mental Machine is just the sort of positivity the world needs right now.
Introducing Buggin’ Out: a leftist-not-liberal stream from Turtle Bugg featuring groovy tunes, politricks, and discussions on nightlife, culture, and probably food at some point.
Our inaugural episode, broadcast on the heels of the 2021 inauguration, brought together artists Ciel, TANO, L. Sangre, and Gunnar Haslam in conversation with Turtle Bugg AKA Dr. Bugginstein.
Check out the show below. The first two hours are a DJ set followed by the panel discussion until the end.
The world is constantly shapeshifting, adapting, and evolving. This mix was improvised by popular request on an unexpected Wednesday at a warehouse in the Mission, San Francisco.
The music world is having a reckoning. With musicians and performers being some of the first to be cut and the last to be allowed to go back to work after the pandemic, where do we go from here?
Turtle Bugg (Sublimate), Ash Lauren (Underground & Black), and Matt McDermott (RA) weight in on possible futures.
These days it feels like privacy is at a premium. Data sovereignty is a relatively overlooked concept as we continue to pour our personal data into the well-lined pockets of large companies. Some folks are trying to shift the balance of power but there is a long road ahead.
As I think of my own digital footprint, I was reminded that in addition to not having sovereignty over my data I also don’t have control over the machines that keep and serve it.
A good conversation is like a dance, and we’re teaching machines to groove.
Replicant has found success not only for our technological excellence, but a deep focus on the aesthetics and ethics of Voice AI. We’ve assembled a truly amazing team of artists, scholars, technologists, linguists, musicians, and scientists to craft the future of great conversations.
Every now and again I miss the library. A hall of wisdom, quiet and serene, with stacks and stacks of worlds to explore. Nowadays, the internet has largely replaced the role of trawling through shelves of books and reams of microfilm.
Software development, once a bastion of deep thought and planning, has in the modern era been reduced to the tying together of disparate APIs and the inevitable Quest for the most pertinent StackOverflow page. Howdoi, a simple tool for finding answers to common programming questions, was largely a response to the seemingly never-ending shuffle between the code editor and the web browser. When spending time in the latter, there’s a pretty good chance you might find yourself distracted from the task at hand.
Once upon a time, back when the ‘net was fresh, my best friends and I had a website. It was named after an infamous saying by our AP History teacher, Dr. Seitz. He would wind up into a blustering, lengthy story about the causes of World War I, and finish on a pointed, rhetorical question for the audience.
THE ANSWER (he would say) is CLEARLY NO!
Never thought I’d say it, but I’ve been feelin’ particular pangs of nostalgia for simpler times. So I invite you to grab a pepperoni roll, try to remember your locker combo, and step back into the world of ClearlyNo, a slice of high school circa 2004.
Because you you should blog more.
– Charlotte Brontë
Because there’s no motivation like peer pressure.
– Joseph Stalin
Because doing things for beer is never a bad idea.
– Franz Kafka
Like to write? Want to write more? Enjoy beer and good company?
Join the Iron Blogger Challenge, which has helped me keep writing and building things on a regular basis.
The premise is simple – submit one post or creation a week. Miss a week and put $5 toward an evening of free drinks for the group. Stay innovative and meet cool people.
Quick add shortcut native to macOS. I used to use Todoist (Things also) and that was one of my favorite features. Whatever app I was in I could hit a key command that would bring up the quick add window.
I think desktop notifications, offline access (like the mobile apps), and a global keyboard shortcut for Quick Add (similar to Things) would be my favorite features of a native app if it ever comes on Asana’s roadmap.
This mix is an homage to legendary NYC discotheques Area, Limelight, Visage, Danceteria, Roxy, and the Paradise Garage. Performed on a rather lit Wednesday at a warehouse in the Mission, San Francisco.
Because you you should blog more.
– Charlotte Brontë
Because there’s no motivation like peer pressure.
– Joseph Stalin
Because doing things for beer is never a bad idea.
– Franz Kafka
Like to write? Want to write more? Enjoy beer and good company?
Join the Iron Blogger Challenge, which has helped me keep writing and building things on a regular basis.
The premise is simple – submit one post or creation a week. Miss a week and put $5 toward an evening of free drinks for the group. Stay innovative and meet cool people.
As some of you know I throw a monthly house and techno party in Brooklyn called Sublimate. It’s one of the city’s last proper undergrounds, and we put a huge focus on quality artists and kooky spaces. If you dig my DJ sets, it’s because I’m fortunate enough to be able to meet my favorite artists and shepherd their dope beats back to you.
The process of soap making involves a chemical reaction, called saponification, that converts fat (acid) and lye (base) into soap (salt) and glycerin.
Some commercially made bars are not called soap because they’re actually synthetic detergents with the glycerin removed. The company makes more money by selling the glycerin on its own, I assume to other companies that specialize in extremely large bubbles.
Unlike saponification, emulsification involves a non-chemical process where two or more non-mixable liquids are allowed to be mixed. Milk, vinaigrettes, and mayonnaise all fall into this category. There are different processes, but you can imagine that in an oil and water mixture, the oil surrounds small droplets of water allowing a stabilized suspension.
Last night Michelle, Selene, and I saw the debut performance of Malditoria, an interactive card game that examines stereotypes, stigmas, and identities in Mexican American culture through the mediums of Loteria, performance, and card readings. The show was funny, poignant, and showcased the creativity of the entire crew.
I’ve been working my way through a number of Murakami novels that slipped through the cracks in my earlier reading. The latest is South of the Border, West of the Sun which was short, sweet, and satisfyingly strange.
For those headed to Japan, my friend recently penned a travel guide to Murakami novels that includes the real-life locations from every book. It was quite exciting to discover physical locations featured in the fictional tales.
In the English garden, a person seeks to escape from humanity into a natural space free of artificiality. In a Japanese garden, one tries to express, in a defined space, the totality of mountains and rivers.
For those without a field in which to plant fruit trees or espalier figs, a bonsai is an intriguing way to bring nature into homes, cities, and places otherwise devoid of nature. Omiya, north of Tokyo, has a bonsai tradition dating back hundreds of years.
For those in the Bay area, Katsura has bonsai supplies and the Bonsai Society has a basics class on April 30.
The Infrastructure Observatory organizes tours of factories and large-scale operations that underpin our society. Recent excursions have included the BlackStone Station power plant in Cambridge, the MTA’s Coney Island Yards, an expansive tank museum in Palo Alto, and a banana factory in Jalgaon, India that produces 3% of the world’s bananas.
If you happen to be anywhere near Malaysia on March 3, the newly founded Singapore chapter will be touring the Senoko Waste-to-Energy Plant. With an inflation-adjusted cost of $700 million, the plant occupies 7.5 hectares and burns 2,400 tonnes trash 24/7 producing 56 megawatts of electricity.
It’s widely known that marijuana and hip hop are inextricably linked - just turn on the radio or take your pick of MCs becoming poster-boys of weed culture. However, there’s a more obscure branch of rap references dating back to the early 90’s that have another target in focus: ecstasy. In December of 2000, Simon Reynolds penned an article for the webzine of London-based record label Hyperdub, which now boasts artists such as DJ Rashad, Burial, and Martyn, about the rising trend of MDMA-related references in rap lyrics.
Because you you should blog more.
– Charlotte Brontë
Because there’s no motivation like peer pressure.
– Joseph Stalin
Because doing things for beer is never a bad idea.
– Franz Kafka
Like to write? Want to write more? Enjoy beer and good company?
Join the Iron Blogger Challenge, which has helped me keep writing and building things on a regular basis.
The premise is simple – submit one post or creation a week. Miss a week and put $5 toward an evening of free drinks for the group. Stay innovative and meet cool people.
Following the NYE disco funk set from Old Man Syne, James Fish and I decided it was about time to rinse out the crowd, bumping serious old skool beats till 6 N’ tha Mornin’.
The high priestess Shanza sayeth unto the people: ❝More Twerking!❞
This New Year was spent with good friends in the cozy woodland surroundings of Wonder Valley Ranch in the Sierras. My alter ego, Old Man Syne, cooked up some groovy beats to help ring in 2017.
Folks danced hard, and in the morning I was paid the most excellent complement when one reveler told me that my set was like being inside a “utopian dentist’s office from the 70’s”.
Howdoi is a code search tool that has been used by countless developers, hacker schools, and students to help with common coding tasks. It was a pleasure to write and has dozens of contributors to the codebase on Github.
Recently howdoi was featured in Kenneth Reitz’s Hitchhiker’s Guide to Python published by O’Reilly. There is a section on writing great code that recommends reading others’ work to learn how to craft better code. I’m honored howdoi was chosen as an exemplary project.
The age of the algorithm is upon us and technical knowledge rules the day. However, without proper communication there is no opportunity for teaching and learning. At MIT I taught 6.UAT, an oral communication course that might as well by titled Teaching Nerds to Talk.
Here’s a classic video from a lecture where I explain the specifics behind peer-to-peer file sharing (think BitTorrent, Soulseek, Napster, and Kazaa). I’m surprised how well a 2008 talk holds up today, where P2P is still a large percentage of internet traffic.
The (Almost) Perfect HoloLens Development Environment
In true Microsoft fashion, the HoloLens is an incredibly interesting piece of technology that is hamstrung by a thick layer of jank smeared over the device and development process, especially for those on a Mac. After shaving numerous yaks that I thought I would never have to revisit (DirectX drivers? Really Microsoft??), here’s a relatively sane tutorial on getting your HoloLens environment and emulator up and running.
There are places and events that, through the years, begin to take on special meaning. Few parties more near and dear to my heart than Trip Vest’s once-birthday-now-festival on a secret San Francisco beach. It’s had many names in its history – last year at Edididob (Every Day I Dream I’m Dancing on the Beach) I played a particularly luscious morning mix for the revelers. In fact, sunrise is one of my favorite times to spin because dancers are in such a malleable state you can take them almost anywhere.
This “modern fairy tale” from Xerox Films explores various advances in electronic music, circa 1972, as two enterprising musicians construct increasingly elaborate instruments to compete for the favor of a beautiful lady. The piece explores the various technologies behind the theremin, amplifiers, musique concrete, synthesizers, and multi-track recording. The twist ending is particularly prognostic of modern times.
The film is animated by Stephen Bosustow, who is also responsible for Mr. Magoo, the excellent Freedom River (1972, narrated by Orson Welles) and The Legend of Sleepy Hollow (1972, with the voice of John Carradine).
Understanding the history and artistry of algorithms reveals an interesting vantage point from which to explore the importance and implications of software systems and their associated movements.
Nadia Eghbal has penned a brief yet engaging history of open source and offers a glimpse into the future of what she calls the “Post-Open Source World.” The details reveal a captivating, frothy battle where tyrannical choices alter the adoption and success of budding technologies. A brave new world indeed.
Because you you should blog more.
– Charlotte Brontë
Because there’s no motivation like peer pressure.
– Joseph Stalin
Because doing things for beer is never a bad idea.
– Franz Kafka
Blogging consistently is a challenge, especially when you’re staring at an empty text box and there’s a whole internet full of Seinfeld Cinemagraphs to explore. Luckily we have Iron Blogger, the modern incarnation of the blogring.
The general idea is to write a blog post every week. If you do, that’s great and all the Iron Bloggers will read your insightful post. If not, you put $5 in a pool and when we have enough money the group hits the bar for drinks. I found the $5 fine was enough of a stick to get me to write more regularly about a wide range of topics. This round features folks who blog about technology, photography, zines, startups, yoga, and more. The posts don’t have a be a masterpiece – simply getting the ideas out of your head is enough to make the internet a better place.
As you know, California is currently racked by a drought engineered by the same crooked ‘scientists’ who faked the moon landing. Luckily, Betabrand has a solution: in partnership with SpaceX they’re grinding up used pants and bits of fabric from the cutting room floor to pack inside a rocket that will be detonated above the skies of Mendocino county to induce rainfall.
To raise money for the (rather expensive) pants, not to mention the rocketry equipment, Betabrand held a fundraiser at their offices on Valencia that yielded more than $600 for those effected by the drought and wildfires. Your humble DJ ¢hip$et, né Pup, threw down drippy, wet beats feat. none other than the face-melting cypherpunk Ri¢h Jone$.
A few months ago, I received a nice message from Shivraj Sawant from Pune, India, founder of Vishwamohini, a website promoting Indian Classical Music. He had a number of questions about manipulating soundfonts, specifically inquiring about the use of the tabla (an instrument I had never seen played through MIDI.js. Together we dug up an old tabla.sf2 soundfont (from the frenetic Oslo Laptop Orchestra) and converted it to a format compatible with the browser.
Ten years ago I met a chipper, extremely bright, and enthusiastic kid by the name of Trip Vest. Together we built soccer-playing robots out of drill motors, solenoids, and scavenged spare parts. Through the years, although we didn’t hang in the same circles and Trip moved to California while I bounced between Japan and New York City, we remained good friends and I always saw him with a smile on his face.
Around 1,800 BCE, the world’s first known algorithms were exquisitely impressed on clay tablets by Babylonians living along the Tigris and Euphrates rivers. To mark their novel creation, the earliest algorithmistsstamped their works with the phrase “This is the procedure,” marking a critical turning point in the history of civilization.
Thousands of years later, those seminal algorithms have evolved into beautiful, living works with the ability to reach into our hearts, minds, and bodies. Alongside them, technologists themselves have risen as a powerful new creative class, sculpting imaginative, provocative algorithms expressed in today’s most dynamic and abundant raw material: pure code.
In an era of new friends and funky beats, there are none funkier than the beautiful smiling faces of the Monks of Funk.
The Monks saw fit to call upon the Reverend Gleitz to bless the masses with the Groove, the Altered Ninth, Frankensense, and Myrrh. And it was good – ya dig? Grab the boogie while it’s hot.
The soundtrack to Pup’s Seaside Ranch party calls to mind oceanfront cave oms, fireplace cuddle piles, lazy seal pups, breathtaking hikes, banging beats, and gourmet meals. It does, however, need more barts.
This weekend I caught a real gem of a documentary at the Exploratorium’s Imagine Science Film Festival. Capucine, a chronicle of the first monkey film maker, left me reeling and eager for more from Luis Nieto. Enjoy!
This weekend brought me back to my hometown of Morgantown, West Virginia. It was wonderfully nostalgic to be back and I took note of a couple items I’ve been missing since moving to California:
When deploying pet projects on remote servers, I dislike the extra step of logging into the remote machine to execute a git pull (and perhaps a server reload) every time I push new code. Sure there’s Jenkins and all sorts of bazooka-like solutions, but this is a knife fight. Poking around an old PHP repo, I found a nifty line of code that will update your app via a URL endpoint.
Nestled within the Canyonlands of Utah, The Maze is one of America’s most dangerous hikes. It’s also one of the most gorgeous hiking spots you can find.
If you’re looking to step outside the confines of a modern, clothed lifestyle, look no further than the restorative springs, grounds, and hiking trails of Harbin Hot Springs. Certainly a fine spot to get in touch with your inner goddess and/or spirit animal.
Be sure to check out the hiking trail to the Tea House!
For fans of funk and disco the 70’s are a magical and formative era. For a DJ the 70’s are a smorgasbord of groovy rhythms and deep grooves. This weekend, in celebration with my buddy Bill, his fiancé Jen, and a killer cast of friends and family I put together a musical line-up for their 1974-themed party at Dunton Hot Springs in the mountains of Colorado.
A castle a day keeps the doctor away
– Ancient Greek Saying
Rhodes is one of the easternmost Greek islands, located a stones throw off the Turkish coast. Covered with castles, rocky forests, and brilliant ruins, it’s a wonderful place to lose yourself.
Los Angeles is a remarkably versatile city. While beautiful bodies fill beaches within a stones throw of stars of the silver screen and the towering Hollywood sign, there is a deeper perhaps more historically significant movement underway. A hope for the future that stretches from the wide, sun-burnt California avenues to the coldest depths of space. Fueled by liquid oxygen and kerosene, the new gold rush is here.
Rounding out my world tour was a stop at one of the most beautiful places I’ve been fortunate enough to visit: New Zealand. I spent most of my time on the relatively rural southern island. Click below for an album of shots from a cruise around Milford Sound.
Before departing on the Daisy Yoga retreat, I only knew of Sri Lanka as a country recently gripped by civil war and as the birthplace of female rapper M.I.A. Within hours of landing at Colombo airport and trekking to Kandy I found that the country is amazing, with picturesque views, friendly people, and delicious food. Our group of 14 spent two weeks taking in the sights, sounds, and smells of the country before landing in Unawatuna to help repair a Buddhist temple and school hit hard by recent typhoons.
Winter in Tokyo is a special time as snow is rare and gives the temples an even more peaceful demeanor. Below are a few of my favorites shots from the trip. You can check all the photos on the web album.
The Robot Restaurant, featuring life-size robots who do battle for your pleasure
Five G Synth Shop, you place for everything analog in Harajuku
An even stranger and more complex form of hallucinating oneself occurs in “heautoscopy,” an extremely rare form of autoscopy where there is interaction between the person and his double; the interaction is occasionally amiable but more often hostile. Moreover, there may be deep bewilderment as to who is the “original” and who the “double,” for consciousness and sense of self tend to shift from one to the other. One may see the world first with one’s own eyes, then through the double’s eyes, and this can provoke the thought that he—the other—is the real person. The double is not construed as passively mirroring one’s posture and actions, as with autoscopy; the heautoscopic double can do, within limits, whatever it wants to (or it may lie still, doing nothing at all).
After an absolutely fantastic week in Tokyo I’m headed to ශ්රී ලංකා ප්රජාතාන්ත්රික සමාජවාදී ජනරජය – the Democratic Socialist Republic of Sri Lanka. Kendall and I will be spending the day in Singapore before reaching our final destination.
For now, I leave you with a shot of the Doge sculpture at Tokyo Shibuya station.
On a brisk evening in Oakland, CA I had just finished dinner and was heading to the kitchen for a glass of wine when my phone rang unexpectedly. On the other end was Chris Dixon, the man who had recruited me to Hunch and negotiated the sale of the company to eBay for $80 million. He had a special mission, if I chose to accept it, involving a secretive adventure to Australia with a hand-picked team to re-invent the ailing eBay brand and website. The concept was simple: give users the ability to follow sellers, buyers, and product categories the way you can follow people and brands on Facebook and Twitter.
This week I’m headed back to Japan, a place that is near to my heart after living in Tamano, Osaka, and Tokyo in my younger years. In preparation for the trip it was fun reading through my old blog posts written while I was an exchange student in 2004.
In preparation for my upcoming show in Tokyo with Micah Ginnis (of Chord Memory) I’ve released a promo mix that should get your booty moving. Since I won’t be lugging too much vinyl to Japan this was recorded on Ye Olde CDJ-1000s.
Testing the TSA: Flying Domestic without Identification
Is identification required when flying on a domestic flight? This post is a recap of my experience trying to answer this question.
Our story begins in late 2008 when Nick Semenkovich, then News Editor of MIT’s The Tech, told me that a government issued ID was not required to fly on domestic flights. A bit of research uncovered Gilmore v. Gonzales, a 2007 case involving EFF co-founder John Gilmore that questioned the constitutionality of ID requirements when boarding a domestic flight. The court held that neither the identification policy nor its application to Gilmore violated Gilmore’s constitutional rights since refusing to show identification merely triggered a more thorough “secondary screening.” However, this seemed to suggest that identification is never required for domestic flights as long as you submit to additional screening.
Deep within the brain of a developer, nestled between the gentle folds of the nucleus accumbens, lives a strong and primitive craving for automation. The concept of a function, f(x)=y, and likely algebra itself induces this region of the brain to release a powerful, pleasurable burst of dopamine.
It is from this area of the brain that Grunt, the automation system extraordinaire, was born. Grunt saves you the effort of running repetitive tasks such as concatenation, minification, translation (LESS -> CSS), testing, deployment, code linting, and more. It’s a bit like a Makefile with a bunch of community-contributed bells and whistles written in JavaScript.
Jazz has become my go-to choice of musical accompaniment while working, offering an analog alternative to the usual electronic lineup. Generally I’ll tune in to KCSM 91.1 and have started compiling my favorite artists on Spotify in a playlist called a Warm Slice of Jazz (named for one on my favorite quips from comedian John Oliver (skip to 5:50).
Special thanks to Micah Ginnis and Peter Eames for sending some fantastic musical recommendations and Leonid Afremov for the portrait of Pharoah Sanders.
‘Tis the season for giving and this year was one for the record books. I participated in redditgifts, the largest online Secret Santa gifting extravaganza the industrialized world has ever known. The premise is infamous among the office crowd: you are assigned a stranger and given a bit of biographical information shared by that individual (including their reddit username and mailing address). You send that person a thoughtful gift and receive a gift from a different stranger who has been given a short bio about you.
Metaprogramming — writing code that generates other code — can be particularly useful when dealing with languages that are widely adopted yet lack advanced features. With the help of metalanguages like LESS and SCSS you can use advanced constructs (variables, looping, string formatting, etc.) to make your CSS DRYer and more fun to write.
Often in CSS you’ll find repetitive structures like the following:
The above rules are used to create 18 mahjong tiles (9 in each suit) represented by CSS rules .tile-0 through .tile-17. Here’s an example of what the tiles look like when rendered.
This Thanksgiving was spent with Kendall and my parents on the remote island of Culebra, Puerto Rico. We traded turkey and stuffing for mahi mahi and mafongo. The island was absolutely gorgeous and the snorkeling was world class. Check all the photos on the web album.
Sharing is Caring: Using JavaScript on the Frontend and the Backend
A major benefit of using a shared language on the browser and the server is a smaller amount of duplicate code in your codebase. Let’s assume you want to be able to share the file shared.js between the client and the server:
There are a number of libraries that can be used to facilitate this type of sharing including RequireJS, gemini, or node-browserify. If you’re looking to stay away from libraries here are two patterns for creating sharable JavaScript files that can be used on both the client and the server.
Emacs Initialization, Organization, and Configuration
A quality developer is constantly on the lookout for a quality tool. With a bit of poetic license on a phrase coined by Sackman, Erikson, and Grant:
There are order-of-magnitude differences among programming tools.
Although there are a number of tools in my belt, Emacs is my primary swiss army knife / operating system. I use Emacs for editing Python, Javascript, Lisp, Scala, Java, HTML, CSS, Markdown, and LaTeX. I use it for managing git repositories. It’s my psychologist and my blog editor.
Because you you should blog more.
– Charlotte Brontë
Because there’s no motivation like peer pressure.
– Joseph Stalin
Because doing things for beer is never a bad idea.
– Franz Kafka
Blogging consistently is challenge, especially when you’re staring at an empty text box and there’s a whole internet full of doge gifs to explore. Luckily we have Iron Blogger, the modern incarnation of the blogring / social club.
The Southwest Airlines boarding process has a rich and colorful history. Bucking the industry standard of providing assigned seats in different cabins, Southwest has historically offered an “open seating” policy that favors an assigned boarding order to determine who is first to enter the plane and choose a seat. Beginning 24 hours before a flight’s departure, passengers are arranged into groups (A1-A60, B1-B60, and C1-?) according to a formula determined by Southwest:
Wrangling Toy Applications with Supervisor and Nginx
I am a toymaker. Some toys are simple, others complex, and some are just plain wacky. What unites these toys are that they are:
Awesome
Stand alone applications that don’t share a common codebase
Written in a variety of languages
Showcasing, hosting, and monitoring applications can be difficult, especially if you want to have them all live under one domain or URL path (e.g. http://gleitzman.com/apps/appname). Whether you’re working in Python, Javascript, or Ruby you need a reverse-proxy that can receive requests and delegate to a specific application’s server. I’ve tried a number of techniques but ultimately landed with supervisor and nginx.
Reloading modules in Node.js can be a bit tricky. After initially importing a module, subsequent calls to require have no effect. Looking for something along the lines of Python’s reload command I’ve arrived at this solution that allows modules to be reloaded (as well as imported the first time) with the following require.reload command.
// Import a module
varmymodule=require('./mymodule')
// After making some changes to the module, reload it
mymodule=require.reload('./mymodule')
Reloading is accomplished by searching the cache for a specific module using require.searchCache and removing that module and its children with require.uncache. The real heavy lifting is done by the call to delete require.cache[mod.id]. Below is the script for starting a modified repl that includes the additional require commands by default.
MIDI.js: Playing Audio in the Browser with Javascript
“Everything old is new again.”
–Peter Allen
The evolution of the web browser is in many ways the repackaging and reintroduction of technologies that have existed on the desktop for decades. Consider WebGL replacing OpenGL with the help of the <canvas> tag and HTML5 video replacing ActionScript/Flash with the <video> element.
At the well-run Science Hack Day SF I was able to dive into these new browser technologies along with Jade and Rich to build Symphony of Satellites, an app that generates music based on the trajectories of satellites currently overhead. Using data calculated live from NORAD, musical notes ride and set as satellites appear and disappear over the horizon. The velocity of the satellite, its elevation, and other aspects of its trajectory determine the instrument, pitch, and rhythm of notes generated by that satellite and the visualization on the page. The promo video for the app is worth watching.
From time to time the need arises to use a Windows machine and CoRD is my client of choice on the Mac. It speaks the RDP protocol, is fast, and contains some nice tweaks like clipboard synchronization and the ability to connect to multiple machines at once. All in all a great client except for one Achilles heal of an issue – every time I switch back to CoRD with ⌘+Tab the Windows Start Menu is activated.
The team at Meteor is turning out a great product and last week’s Meteor Devshop did not disappoint. I met some interesting folks building a wide range of awesome Meteor apps.
Here is my lightning talk explaining the motivation for my Choose Your Own Adventure rotary phone and how Meteor helped me turn it into an app I could share with the world (my mom).
Having dabbled with a number of application launchers, I eventually settled on Alfred for its slick design and Powerpack features. Recently Alfred v2 introduced Workflows to automate anything and everything with the touch of a key.
Here’s a custom workflow for howdoi that displays answers via Growl and also copies the result to the clipboard.
When sharing URLs from a project with deep directories (Scala/Java) it can be a real pain to open github.com, pick a branch, and then click through src/com/blah/blah folders until you find the file. Instead, use this command-line Python script to generate a Github URL directly from a file or directory. Also included is an elisp function to generate URLs from Emacs.
As technology continues to roll toward a more standards-driven regime, a delightful bit of nostalgia can be gleaned from the rich and varied history of the chat application. Not unlike the lineage of the User-Agent string during the browser wars, Instant Messenge applications were written, rewritten, copied, and abandoned while efforts to standardize the protocols of the big three IM companies (AOL, Microsoft, and Yahoo!) foundered.
As I’ve mentioned before, the lovely folks over at The Fox is Black have been releasing a treasure trove of awesome desktop designs as a part of the Desktop Wallpaper Project.
There is little argument that GitHub has revolutionized the way open source projects are managed. Gone are the days of hunting down a project’s maintainer and negotiating needed changes in the hope that your email with attached patch file was accepted into the master branch (although some projects still require such pomp and circumstance). This generally opaque process was replaced by GitHub’s fork + pull request model. You might say that git itself contains a robust pull request system but GitHub added the special social sauce and dead-simple pull request generation system making it the lingua franca of the open source community.
Howdoi – Instant Coding Answers via the Command Line
One of my favorite collaborations to come out of the illustrious Oxidized Bismuth Blogger (OxBiz) ideation list is howdoi, a tool for instant coding answers via the command line.
The idea is simple – ask a question and get an answer.
$ howdoi format date bash
> DATE=`date +%Y-%m-%d`
Howdoi solves life’s little coding mysteries like the always frustrating command line flags for tar (as illustrated by XKCD).
The Sonoma Coast, nestled between powerful Pacific bluffs and mighty Redwoods, plays host to a bevy of wonderful hiking spots. The Sea Ranch has released a 2013 version of their Trails Map with references to hiking trails, beach access, tide pools, seal rookeries, and other points of interest. Check out the following hi-res map images if you’re headed up the coast.
While cleaning out a closet to post a few items on Yerdle I re-discovered a hard drive with a copy of my blog from 2004. At the time I was living in Tamano, Japan with three host families and studying as a first-year high school student. As I held the clunky drive in my hand a flood of memories rushed into my mind. I could smell the seaside and taste the takoyaki.
Set back from the glitz and glamour of the strip are the twin peaks of Sunrise and Frenchman Mountains. Hike off that hangover or just take a nice stroll for a long distance view of the Las Vegas.
Set back from the glitz and glamour of the strip are the twin peaks of Sunrise and Frenchman Mountains. Hike off that hangover or just take a nice stroll for a long distance view of the Las Vegas.
Liberating Google Voice: Placing and Receiving Calls from your Computer
I’m a big fan of Google Voice back from the days when they were called GrandCentral. Among the many niceties provided by the service are receiving voice messages as email, sending and receiving texts from your browser, and the ability to keep the same phone number forever.
One of my favorite Google Voice tricks is receiving and placing calls from the computer. The process used to be super simple using the now-defunct Gizmo5. Back in the day whenever someone called your Google Voice number the Gizmo app running on your computer you let you pick up the call. Placing calls from Gizmo was a snap and had the interesting side-effect of allowing for free calls from your computer. Google acquired Gizmo5 in 2009 and shut down the service in 2011, channeling the acquired technology into the current Google Voice Chat that allows you to place and receive free phone calls from Gmail.
While creating Yet Another Choose Your Own Adventure I took a detour into the world of computer-generated voices. As Chris Maury noted in his post, the quality of algorithmically generated voices is improving and I wanted to learn more about the state of the industry.
Pop quiz! Think of a computer generated voice you heard recently. Apple’s Siri? Portal’s GLaDOS? The Mac OS say command?
While GLaDOS was created by an actual human, say and Siri both have their roots in a company called Nuance which merged with Kurzweil’s ScanSoft in 2005. Apple acquired Nuance in 2012 and renamed one of the voices, Samantha, to Siri. You can hear more sample voices from Nuance and the general quality is quite good. I didn’t want to pick Siri as the Choose Your Own Adventure voice because she has become a bit too cliché. Commercial applications were either prohibitively expensive or lacked the proper API for a weekend hack so I dug into some of the research communities around text-to-speech (TTS) to find open source solutions.
Programming with Meteor has a bit of a learning curve but the included examples are an excellent place to start. Below are some thoughts are observations – follow along at home with the code at https://github.com/gleitz/meteorcyoa.
Software development affords a great deal of freedom that you won’t find in the physical sciences and engineering. Tolerances, non-ideal particles, and even the laws of physics fall away as you construct ever larger digital systems. As Hal Abelson noted in his seminal 6.001 lecture, “in building a large program there’s not that much difference between what [you] can build and what [you] can imagine.”
It is always refreshing, therefore, to escape the cerebral world of code and return to the reassuringly palpable realm of the physical. Hardware and electronics, although bound by the laws of Newton and Maxwell, are instantly accessible solely because they can be touched and held by the user.
Of all the online tools and gadgets to appear during the past decade, the TODO list manager is my favorite. I used to have difficulty remembering specific tasks but after writing everything down I tend to miss far fewer beats. Having tasks in an online form means your notes are with you wherever you go. A good task manager can help you reduce clutter and achieve zero inbox by getting tasks out of your email and into a scheduled, organized list. A great task manager can make you stop procrastinating altogether.
Emacs has wonderful Unicode support. Copy and paste text from a Word document and Emacs will happily preserve your smart quotes, ellipses, and em dashes. There isn’t a canonical way, however, to strip these “special” characters into their more sane ASCII counterparts.
The unix command tidy does a good job of converting Unicode characters but you are left with ugly HTML equivalents like € instead of the usual quote character. We’ll need an alternative for Emacs, preferably written in Emacs lisp.
The lovely folks over at The Fox is Black have been releasing a treasure trove of awesome desktop designs as a part of the Desktop Wallpaper Project. I found the webpage to be a little slow to load and there is unfortunately no way to download all backgrounds as a bundle. I wrote a little script to grab all the background in 1400x900.
Portland has a number of wonderful offerings, incl…
Portland has a number of wonderful offerings, including the most authentic Japanese Tea Garden I’ve seen in the US. The layout is traditional, the guides fantastic, and scenery thought-provoking. If you’re going to be in the area the garden is a must-see.
Filmmaker Alan Berliner is something of an obsessi…
Filmmaker Alan Berliner is something of an obsessive collector. Everywhere at Once pulls from his vast and random collection of films and sound to create a sense of purpose in the form of “synchronized symphony.”
In the years following the credit crisis, payment card companies and banks are bending over backward to offer fantastic sign-up bonuses to attract customers. These organizations offer lucrative airline and hotel miles as well as hard cash in the form of statement credits often for just signing up for a card or account. You might think these offers are too good to be true so I’ll reveal some of my best practices and tips for acquiring a bounty of miles without ruining your credit.
Hack of the Day: Javascript Transport via Chrome Extensions
In the beginning of a project it is common to cut corners to save time. Security is often the first to be sacrificed because you might not be dealing with terribly sensitive information and who really wants to hack your crowd-sourced “Netflix for knives” pinterest-clone, anyway?
However, there are some poor security decisions I’ve been alarmed to discover recently on a number of websites. These sites that I use and enjoy have made the cardinal sin of storing passwords in plain text in Javascript. This is a Bad Idea® for a number of reasons and no amount of https is going to save you.
If you’ve got ears and are headed to Burning Man this year I’ve got an early present for you. The Rockstar Librarian music guide is great but can be a bit much to wade through. I’ve condensed my favorite shows into the “Where’s Pup?” Music Guide 2012.
Along with a hearty love of fresh fish and small dishes, the Japanese have a rich set of sound effects. Here is a list of my favorites, including some gems like “guchi guchi” (a wet sound) and “jan jan” (tada!)
Hackers and Brunchers: Big Ideas from the Little I…
Hackers and Brunchers: Big Ideas from the Little Island
In the spirit of the Olympics, this Sunday Alameda played host to some of the best technologists, thinkers, and makers in the Bay Area for the first Hacker Brunch. An extension of Hacker Dinners, the brunch cast a wider net and included guests from as far as Germany.
On Saturday was the second meeting of OxBiz, a casual, improvisational ideas group. The photo is kickstarter-funded camping hammock strung up at the park.
LollapaYOUza: Your personalized guide to Lollapalooza
Christina Mercando and I made an app for Lollapalooza that learns about your tastes to recommend bands you would enjoy at the festival. We entered the application in the HackLolla competition and were awarded the Grand Prize, making LollapaYOUza the official fan app of Lollapalooza 2012.
You can give the app a spin at http://lollapaYOUza.com. We also made a funny video to promote the app. I hope it makes you smile:
Last week Lauren Eames gave me her original vinyl recording of Grammy Award Winning “The Elephant’s Child”, written by Rudyard Kipling and narrated by Jack Nicholson with music by Bobby McFerrin. Yes, it’s as awesome as it sounds.
Through a wonderful comedy of circumstances, Kendall and I were in the Alameda Independence Day parade this week representing Alameda Municipal Power and Tucker’s Ice Cream. Given the power company theme we dressed as Dr. Megavolt and Professor Zap.
As a newcomer to parades I was surprised how personal they feel. You expect to get on the back of a truck and wave to a thousand nameless people, but in reality you get the unique opportunity to stare directly, even deeply into the eyes of real people from your real neighborhood. There is a true energy there. The whole experience was wild and certainly recommended.
I’m a firm believer of substance over appellation but also believe that people tend to judge a book by its cover. Taken to its logical conclusion, the Apple Marketing Philosophy (as seen below) would dictate that every great product needs a great name.
Into the wilds of the web
Last year I released WikiMaze, a dungeon crawling trivia game powered by Wikipedia and based loosely on Encarta 95’s MindMaze. I’m quite happy with the result and owe many thanks to Ben Bronstein for the excellent illustrations. The only issue: all I could manage at the time of the game’s inception was a .ME domain. I contacted the owner of wikimaze.com multiple times but did not receive a response.
TardyParty: Automating Google Groups with Python and PHP
After months of excellent idea generation on Oxidized Bismuth Blogger (a mailing list for short-form musings and wacky business ideas) last week the OxBiz crew held its first meetup/hike in Redwood Regional Park. One idea that came out of the meetup was a weekly summary proclaiming who had submitted ideas that week and who had failed to post. This email would hopefully shame delinquent list members into posting more frequently.
As a species we’ve become increasingly proficient at acquiring and storing data. This elevated access and recall allows for the creation of companies both on and offline that appear to be omniscient. This power can be interpreted as “creepy” or even “magic”.
Levels of acceptable creepiness are quite nebulous any vary from person to person. One person’s Beacon (moderately creepy, in my opinion) might be another person’s Wifi snooping (not so creepy).
Dress up. Leave a false name. Be legendary…but don’t get caught. Art as crime; crime as art.
– Hakim Bey
Note: I’ve been challenged to write a blog post about Temporary Autonomous Zones, a book that is certainly worth your time. This post casts the tenants of TAZ into the future for a glimpse of what social chaos means for robot culture.
I do a lot of computing on the go. Be it trains, hackathons, hotels, or being stuck on the runway, internet connectivity is a requirement. I’ve tried a number of solutions throughout the years to stay connected. Long before the days of a “data plan” I was tethering my Dell Inspiron through a hacked Verizon KRZR K1M with a standalone GPS. It was a clunky simulacrum of the iPhone, but it worked (unfortunately, it would take another decade for that sort of technical prowess to be cool).
To understand the forces controlling the burgeoning ebook industry, which is projected to pull in more than $3.5 billion in 2012, we must first travel back to the roots of rap music.
The year: 1978
The place: Pasadena, California
Damon G. Riddick spent his early years DJing at parties in Pasadena while the west coast music scene erupted out of the galactic stardust that was B-Boying, beatboxing, DJing, graffiti art, and MCing. By the time Uncle Jamm’s Army put out “Dial-a-Freak”, the cities of Compton, Watts, and South Central had become strongholds of west coast rap.
A few quick observations of the Bay Area after moving from New York City.
You meet people from “the internet” in the grocery store and at parties. Amazing, and something that never happened in NYC. Perhaps more friendships in SF begin on the internet?
The SF music scene has much less quantity that NYC but makes up for it in quality. ASLI and Public Works are lifesavers in this department.
Everyone has a side project. Sometimes the side projects have side projects.
Immediate access to hiking and nature in SF is a big win. Loss of all night public transit & 3AM pizza is a loss.
A car is a must-have (unfortunately).
The Bay Area has physical manifestations of internet destinations. Whether it is stumbling on the Color office in Palo Alto or the Rapleaf sign in SF.
After the smashing success of Iron Blogger in San Francisco, a subset of bold and daring individuals have decided to start a parallel group, Oxidized Bismuth Blogger, with a focus on short-form musings – it could be a business idea, a cool hack, or just something mindblowing that fell out of your skull. Far too often great ideas fall through the cracks and OBB is here to catch them with a reassuring trust fall.
Sydney’s Harbour Bridge, along with the Opera House, is an icon of the city. Completed in 1932, the bridge provides a pleasant walk from Milson’s Point into the city proper. What interests me, however, is what lies underneath the trusses. Expansive parks with some of the best views of the Sydney skyline can be found on either side of the bridge, under the massive pillars that support the structure. Even more intriguing, the city has leased space to shops that are actually built intothe bridge itself. This effort of efficiency is impressive, especially compared to the dilapidated and often depressing scenes found beneath many of America’s bridges.
On a bit of a whim I have left my tiny island of Alameda for adventures in Sydney, Australia. A few observations:
Australians are extremely fit
While it has been reported that more than 60% of Australians are overweight, I don’t believe they are living in Sydney. Every day I see masses of runners, skateboarders, and bicyclists roaming the remarkably clean streets.
A large digital music library is both a blessing and a curse. Before the advent of Napster I would carefully scour AudioGalaxy looking for tracks to stuff into my Rio PMP300. There comes a point, however, when a music library becomes too big for its britches and you need to move to a client/server model.
Many services offer the ability to upload your tracks for remote listening. Lala did an excellent job of this before it was promptly purchased by Apple and killed in 2010. AudioGalaxy has also been reborn as a similar service, and even Google Music is testing the waters. The issue is that many of these services limit the number of tracks you can upload or have other silly issues (no support for FLAC, inability to stream to phones, etc). I am still hopeful that Spotify will come to the rescue, but in the meantime with a burgeoning music collection it was time for an alternative.
I’m a nut when it comes to tools and productivity. But lo! choose wisely, lest we become the tools of our tools.
Here is an abridged, alphabetical list of my favorites:
1Password ($) - Quit using the same password for every service and never type a username into a browser again. I was skeptical at first but this program delivered. Bonus points for the awesome browser extensions and Dropbox integration.
Airfoil ($) - Play audio across any number of devices or machines, in sync. The company essentially reverse-engineered Airplay to make it work everywhere.
Alfred ($/free) - The lovechild between Quicksilver and the command line, this app is best way to perform tasks and launch applications on a Mac. Totally scriptable, totally awesome.
Audio Hijack Pro ($) - Record system audio and boost output from tiny speakers.
Better Touch Tool (free) - Keyboard and magic mouse shortcuts. Replaced Alt+tab for me when switching between applications.
Calibre (free) - eBook manager and must-have application for the Kindle. I also use it to manage the PDFs I’m currently reading.
Dropbox ($/free) - I hesitated to put this on the list because it seems so obvious. I keep everything in Dropbox – my home folder, emacs configurations, projects, taxes, and backups.
Emacs (free) - My operating system of choice. If you’re on a Mac, get this version.
Flux (free) - A perfect companion for night-owl coders, this app makes the color of your computer’s display adapt to the time of day (warm at night and like sunlight during the day).
Hazel ($) - Folder actions on steroids.
iTerm2 (free) - A better Terminal for the Mac.
NetNewsWire (free) - My RSS reader of choice. Tight integration with Google Reader and Instapaper.
RememberTheMilk ($/free) - My task manager du jour, particularly because it runs everywhere (browser, phone, emacs, email, alfred). I’m trying to make the switch to Asana, and have already moved my work projects, but still use RTM for everyday tasks.
SABnzbd (free) - If you’re on usenet you need this app. Lots of features and a built-in web interface.
Spotify ($/free) - Everything Napster should have been. I wish you could upload music like Lala, but in combination with a home music server (see the next entry) it means you’ll have tunes wherever you are. Be sure to get the Developer build for API integration.
Subsonic ($/free) - For the unwieldy music collection, this app streams your audio and video to any browser or phone. Setup is a snap and the API is nice.
Telephone ($) - If you’ve got Google Voice, this app will notify you (on the computer) when your phone is ringing. You can also answer the call and start talking. This app used to be free but I only see a paid version in the App Store.
TotalFinder ($) - Tabs, copy/paste, and more for the Finder. Sounds trivial but I wonder how I lived without it.
TotalTerminal (free) - Quake-style drop down terminal window. Hawt.
uTorrent (free) - A lightweight, no-nonsense BitTorrent client. The built-in web interface is a nice touch.
VLC (free) - Still the best media player out there. Probably has a codec for 8-track and betamax.
XQuartz (free) - A better version of the X window system, with keyboard shortcuts that don’t get in my way.
After celebrating a couple years of not having to deal with the GridBagLayout, I’m dusting off the JVM to give Java another try. However, I’m not quite ready to leave Emacs for Eclipse (don’t mention the doppelgänger keyboard layout – it’s not the same).
Two features I miss from Eclipse are source code navigation and tight server integration. Especially when familiarizing yourself with a new codebase, jumping around within the source can be an excellent tool.
“Winter is coming.” – Eddard Stark, discussing his Comcast bill
Comcast is the worst. They suck. They support SOPA. They are political bullies. They cap their speeds. They are the worst company in America…but I got to have my cat photos.
While I scramble to find a less evil internet service provider in Oakland, I might as well save some $$$ on fees (Comcast’s bread and butter). These rules apply to internet (Xfinity) service but could very well apply to voice and television service as well (I suggest you stop watching TV and dump your landline but those are posts for another day).
Computer science education is a hot field, and rightly so. Even with the economy reeling, experienced computer scientists work two and three jobs to keep up with demand. According to the laws of Developernomics:
[T]he only thing potentially more valuable than a relationship with a great developer is a relationship with a survivalist who is good with things like guns, bunkers and cabins in woods
Barring a major catastrophe (and perhaps in spite of it), computer scientists will continue to demand a premium as technology reinvents entire sectors. No matter how staunchly opposed to a technological revolution, the realms of government, higher education, and even farming will eventually feel the touch of this steampunk Midas.
Recently I had the excellent opportunity to hang out and talk shop with Kyle Wild about the state of Computer Science, CS education, and software development environments. While the former are discussions for later posts, the latter will be part of a series elucidating the good parts of Emacs and Vim.
Parties on both sides of the holy war seem to get more distracted with partisan bickering than figuring out how to best get the code out of your head and into a computer. As an Emacs programmer, I’m interested in how I can incorporate the useful bits of Vim. Kyle, coming from the Vim world, wanted to more clearly understand the pros and cons of using one IDE over another before investing the time required to make the switch. However you currently code, I suggest looking over the shoulder of a friend using a different IDE – you’re bound to learn something.
Beatbeat recently released an article listing the 20 most hirable yet already employed developers and designers in the NYC area. Given the scarcity of tech talent on today’s market, these “poachable” employees were listed alongside a Ballpark Poachability Number (B.P.N.) that, as Foster Kamer explained, is “an index compiled from salaries known, either of The Poachables’ or those around them, and then from the kind of offer that could get them to budge; not what they’re paid, it’s what they could get paid. It’s basically a glorified, informed guesstimate.“
Bangladesh: A train or a bus is speeding away from a stop and attempts to board are likely to result in serious injury or death. The conductor on board holds out his hand and pulls you in.
USA: The train is due to depart at 14:10. It is 14:09 and your hero is on the platform alongside the train but the doors are closed. He runs desperately to the coach where the conductor has his door open, but then the train starts moving very slowly. No real risk of injury let alone death, but the conductor bars the way and your hero is unable to board.
With over 500K apps, the App Store gets a lot of love from developers. HTML5 is also a popular buzzword. However, even with all the hype around HTML5, I was surprised to discover it is still lacking an App Store~esque banner.
People have been sending lots of love and great feedback for AutomaticDJ, the passive music selection system that plays tunes from the Hunch API based on your face. I’ve released the code on GitHub and am looking forward to see what people can create.
Here is a video showing AutomaticDJ in action:
Note that you need not have any music likes (or any likes at all!) on your Facebook profile for this to work. That’s the magic of the Hunch API.
This, the 12th incarnation of Music Hack Day (brainchild of SoundCloud’s Dave Haynes) featured over 70 teams hacking around the clock on more than 20 APIs offered by a flock of cutting-edge startups (including my own beloved Hunch API, presented via Emacs).
I enjoy a good commit message as much as the next coder. (For the non-nerds in the audience, a commit message is a short description of the changes you made to the source code). At Hunch we found that greping through commit logs was a bit of a pain and instead wrote CommitBot, a script for audibly broadcasting commit messages. You can see it in action here:
A name is an extremely powerful device. From the Grimm Brother’s Rumpelstiltskin to He-Who-Must-Not-Be-Named, literary texts are filled with examples of the power of names.
The same principles hold in the world of computer science. When programming, once you’ve determined the name of an object you wield tremendous power over it. However, names can often be a burden. I can’t fathom how many times I’ve used the following construct:
Nice to See You – Recognizing Faces using Face.com
Last month, and to a small amount of fanfare, Face.com released an API for performing facial recognition on an arbitrary set of images. Most exciting is its support for recognizing friends on Facebook and Twitter.
Of all the 90’s sitcoms, there will always be a soft spot in my heart for Home Improvement. No, it wasn’t because of a crush on Pamela Anderson or JTT. Deep down I’m a tools guy.
There are all manner of tools and gizmos I’ve found useful for Getting Things Done. In another era I might have been a blacksmith or a disciple of Zhu Shijie. In this life, software is my trade and the bit is my bread and butter. I used to be an avid reader of Lifehacker and Mind Hacks before discovering it was much more rewarding to surround myself with reallygreatpeople in the industry.
Hunch is great for making decisions, but did you know it can also be a tool for learning about others? We’ve created a widget for bloggers (or anyone with a website) to understand more about their readers. Visitors can use the widget to see how they compare to other readers, and then there is a game at the end where Hunch tries to guess answers to additional questions. Give it a try:
This February, aside from being Black History and Library Lovers month, marks my entrance into NYC and a new career. After working as a consultant for the recommendations startup hunch.com for a few years, I have finally joined the superstar team as a full-time code ninja. If you have not used the site before I suggest you giveitatry.
Benjamin Gleitzman is a technologist, artist, and founder.
He is the CTO at Replicant AI. He is also a founder of the hacker collective Ruse Laboratories, creator of the The Algorithm Auction, originator of Pup's Pool Party, and producer at Sublimate NYC.
Gleitzman was a visiting researcher at Google Research in Mountain View, California where he built App Inventor for Android, a graphical programming language for creating Android phone applications that is now at the core of the MIT Center for Mobile Learning.
He is the founder of NextStep Tech, an organization teaching software engineering, creative thinking, and entrepreneurship to junior and high school students.
In his spare time he enjoys creating electronic music, discussing programming concepts, and playing WikiMaze, his remake of Encarta 95's classic trivia game.
He also posts useful bits of knowledge on gleitzman.com.