Wednesday, January 04, 2012

Head on over to the new old blog

Hello readers of this blog. I decided to consolidate so I am now posting at blog.danielsjourney.com -- head over there and update your subscriptions, etc...thanks!

Friday, April 15, 2011

Shit Crayons


Ian Bogost makes a scathing critique of social games:
Several years ago, Chaim Gingold gave us the useful concept of the Magic Crayon. A magic crayon is a tool that facilitates creativity in a way that wouldn't otherwise be possible. A magic crayon lets its users breathe life into things.

Some would like to think that all crayons are magic ones. That just any old thing can conjure. But that's not true. The magic crayon has a shadow side.

Some barriers are benign, but others are insidious...

Inspirations like that are not magic crayons, but shit crayons...

Even if creativity comes from constraint, there's constraint and there's incarceration. A despot in a sorcerer's hat does not deserve praise for inciting desperate resilience.

Tuesday, March 15, 2011

Life is too short to make shitty software

The other day I wrote:

"What we do is make software. And software is best made by humans who understand each other (and by extension understand the people who use their software). Unless they’re miraculously made up of such humans, organizations make shitty software."

And I just had some more thoughts about that:

I don't want to make or work on software that sucks anymore. Life is too short to work on something that is shit to begin with. Just because a piece of software improves your process or workflow over the paper version you used in the 80's does not mean that it is not shitty software. Just because a piece of software is better than its competition in X, Y and Z ways does not mean that it is not shitty software. Just because a piece of software just like its competition except in that one way you need it to be different does not mean it's not shitty software.

If we are to take our craft seriously, to consider ourselves worthy of our work, to join in a lineage of artisans and, most importantly, enjoy ourselves while we work and work in a way worthy of the life we have been given, then we must make software that is a delight to use, that makes our customer's lives not just seem to be easier, but actually brings them joy in their lives.

It's not good enough to add the features they want or fix the bug they are complaining about or improve the workflow that is still--despite your wonderful technology--a total mess and waste of their precious time.

The problem is most of our "users"...and what a terrible word for these people, these people we have a (for the most part) unseeing yet terribly intimate relationship with...but "customer" is also a horrible word! A customer is someone you exchange money for goods with, not someone who interacts with your product every day and alternatively praises and curses you in abstentia, who scours the internet for advice on how to use your product, who navigates some joyless "customer service" experience in order to better use your shitty product. Usually, the only way the term "user" applies to those who use our software is in its similarity to "drug user"--they have no choice but to use our product, despite a more abundant life calling out to them from outside the boundaries of this myopic experience.

...The problem is most of The People Using Our Software are within an even larger set of boundaries: rules, expectations, norms, mores, groupthink, culture, ignorance...part of the reason we make shitty software is because we live in a frequently shitty world.

The other day I was riding in a group ride on the service road along I-30 in east Dallas and I was looking at all the shit along the road there and I thought of this video:

America Is F*cked.......(Graphically at least) from Jess Gibson on Vimeo.


I don't want this to be a Jerry Maguire mission statement, I don't want this to be a Fight Club deconstruction of society. I don't want to make any more movie references. I just want to make great software and I want to be empowered to do so.

I'm not even going to proof this post. I'm just going to put it out there as it is, incomplete and probably more than a little incoherent...but I'd love to hear what you have to say about this, too.

Saturday, March 12, 2011

Good Writing is Good

Maciej Ceglowski is one of the proprietors of Pinboard and also an amazing writer. His recent post describing technical aspects of the great exodus from Delicious (to Pinboard) has too many gems to capture them all, but here are a couple in case you need convincing when it comes to reading technical blog posts:
Before this moment, our relationship to Delicious had been that of a tick to an elephant. We were a niche site and in the course of eighteen months had siphoned off about six thousand users from our massive competitor, a pace I was was very happy with and hoped to sustain through 2011. But now the Senior Vice President for Bad Decisions at Yahoo had decided to give us a little help.
...
We had always prided ourself on being a minimalist website. But the experience for new users now verged on Zen-like. After paying the signup fee, a new user would upload her delicious bookmarks, see a message that the upload was pending, and... that was it. It was possible to add bookmarks by hand, but there was no tag cloud, no tag auto-completion, no suggested tags for URLs, the aggregate bookmark counts on the profile page were all wrong, and there was no way to search bookmarks less than a day old. This was a lot to ask of people who were already skittish about online bookmarking. A lot of my time was spent reassuring new users that their data was safe and that their money was not winging its way to the Cayman Islands.
That post led me back to idlewords.com to which I was already subscribed, it turns out, but I clicked a random link and read Dabblers and Blowhards a brilliant critique of a book I have actually read:
It's surprisingly hard to pin Paul Graham down on the nature of the special bond he thinks hobbyist programmers and painters share. In his essays he tends to flit from metaphor to metaphor like a butterfly, never pausing long enough to for a suspicious reader to catch up with his chloroform jar. The closest he comes to a clear thesis statement is at the beginning "Hackers and Painters":
"[O]f all the different types of people I've known, hackers and painters are among the most alike. What hackers and painters have in common is that they're both makers."
To which I'd add, what hackers and painters don't have in common is everything else. The fatuousness of the parallel becomes obvious if you think for five seconds about what computer programmers and painters actually do.
  • Computer programmers cause a machine to perform a sequence of transformations on electronically stored data.
  • Painters apply colored goo to cloth using animal hairs tied to a stick.
...it goes on in similar fashion, you should go read it, especially if you've read Hackers & Painters.

Friday, January 21, 2011

New danielsjourney

Usually a redesign of a one-page site of mine doesn't warrant a blog post, but this story is a little bit more interesting, mostly because of the work it built on. I haven't really told the story of a design before. I'm curious how this will pan out.


I was in my RSS reader last night after an ill-advised after-dinner coffee and saw Naz's post on Weightshift about the personal page...meme? Can we call it that? I had long since moved to a single-serving homepage w/ some text and an image. In the meantime about.me made it a big deal. (Nevermind that Dallas-based Magnt had a better offering since long ago.)

But let's face it, Naz's, and his imitators', looked better. And most importantly, he posted the source on Github. That meant that seconds later I had my own copy of his source on my computer and started replacing his images and text with my own.

It used a script called backstretch to position and size the image, also on Github, which I also forked and modified for my uses. Since I had already decided to use a wedding picture, I wanted to try and at least create two layers so the field grass could superimpose the text box. The original backstretch script could only accomodate one image which it threw far into the back of the document model. That was easily fixed in just a couple lines of code.

That got me thinking about the awesome Github 404 page. Maybe I could parallax the grass! Well I tried applying the parallax plugin to the elements in question and no dice. I tried a new page that didn't use backstretch and applying the parallax plugin there--still no dice. Last night I decided to stick to just the two layers--if someone had a window sized just right, they would notice the grass popping up over the bottom of the box.

Of course this morning I couldn't let it be! I read most of the parallax code and while it was pretty much what I expected, its need to accomodate for all manner of circumstances made it overly complex to just copy and paste to fit my needs. I ended up just hand-coding some simple code that moves the grass in the direction you move your mouse, after doing a single left-right sway once on page load just for good measure.

I'm far too pleased with the end result. Now I am considering trying to get the foreground grass to actually bend as it moves...in the meantime if you haven't you can check it out.

Thursday, January 06, 2011

WWIC: Why Wasn't I Consulted

Ftrain: The Web Is a Customer Service Medium. Paul Ford has been writing on the web longer than most and as usual this piece is excellent:
What sums it up best, to me, is this image published on the blog Kotaku (if you know where the image originates please let me know). The image was posted as a comment on a blog post linking to an article about British computer-industry millionaire Clive Sinclair marrying a younger woman. Here is the image:


Consider what that cartoon means in that context: It implies that the commenter feels—with some irony and self-awareness, I'm sure—that his opinion, in some way, is relevant to the question of whether Clive Sinclair should marry a particular woman. This is, for many obvious reasons, completely insane. And yet there was an image already sketched and available to that commenter so that he could express this exact sentiment of choosing not to be outraged at a situation he read about on the Internet. WWIC in action.

Tuesday, December 21, 2010

Tableau

Via BERG: "John Kestner’s Tableau is a nightstand that drops photos it 'sees' in its Twitter feed into its drawer, to be discovered by its owner."



John Kestner is part of the Information Ecology team at the MIT Media Lab, so of course I'm going to gush a bit, but check out some videos of his other projects as well as the rest of his portfolio.

I'm particarly interested in things like the Daydar personal productivity framework.

Wednesday, October 06, 2010

Good design is as little design as possible



Dieter Rams: ten principles for good design
Good design is as little design as possible

Less, but better – because it concentrates on the essential aspects, and the products are not burdened with non-essentials.
There might be more than one school of thought in design, but there is only one school of thought that is right.

Wednesday, August 04, 2010

Minutes to learn. A lifetime to master.

Take a step and a half backward. Tilt your head to one side. Un-focus your eyes. Close one of them. Scrunch up your face. This sort of dance may seem ridiculous. And yet it's absolutely critical to the process of creation; contemplation. You see this choreography from sculptors at work. We need more of it in software development.

And these instruments ought to be accessible to children as well. Look at the piano for example. An uninstructed child will discover on their own that the keyboard's x-axis relates to pitch, force relates to volume, and if their little legs are long enough they can experiment with sustain. Minutes to learn (albeit badly). A lifetime to master. That's a good goal for new computing tools: intuitive enough to jump in on, but with room to evolve real skill and elegance.
Stewart Smith on The Setup