Skip navigation
Help

web version

warning: Creating default object from empty value in /var/www/vhosts/sayforward.com/subdomains/recorder/httpdocs/modules/taxonomy/taxonomy.pages.inc on line 33.
Original author: 
Cesar Torres


Tumblr Creative Director Peter Vidani

Cesar Torres

New York City noise blares right outside Tumblr’s office in the Flat Iron District in Manhattan. Once inside, the headquarters hum with a quiet intensity. I am surrounded by four dogs that employees have brought to the workspace today. Apparently, there are even more dogs lurking somewhere behind the perpendicular rows of desks. What makes the whole thing even spookier is that these dogs don’t bark or growl. It’s like someone’s told them that there are developers and designers at work, and somehow they’ve taken the cue.

I’m here to see Tumblr’s Creative Director Peter Vidani who is going to pull the curtain back on the design process and user experience at Tumblr. And when I say design process, I don’t just mean color schemes or typefaces. I am here to see the process of interaction design: how the team at Tumblr comes up with ideas for the user interface on its website and its mobile apps. I want to find out how those ideas are shaped into a final product by their engineering team.

Back in May, Yahoo announced it was acquiring Tumblr for $1.1 billion. Yahoo indicated that Tumblr would continue to operate independently, though we will probably see a lot of content crossover between the millions of blog posts hosted by Tumblr and Yahoo’s search engine technology. It’s a little known fact that Yahoo has provided some useful tools for UX professionals and developers over the years through their Design Pattern Library, which shares some of Yahoo’s most successful and time-tested UI touches and interactions with Web developers. It’s probably too early to tell if Tumblr’s UI elements will filter back into these libraries. In the meantime, I talked to Vidani about how Tumblr UI features come to life.

Read 9 remaining paragraphs | Comments

0
Your rating: None

Look at this incredible thing Ian Baker created. Look at it!

The PHP hammer

What you're seeing is not Photoshopped. This is an actual photo of a real world, honest to God double-clawed hammer. Such a thing exists. Isn't that amazing? And also, perhaps, a little disturbing?

That wondrous hammer is a delightful real-world acknowledgement of the epic blog entry PHP: A Fractal of Bad Design.

I can’t even say what’s wrong with PHP, because – okay. Imagine you have uh, a toolbox. A set of tools. Looks okay, standard stuff in there.

You pull out a screwdriver, and you see it’s one of those weird tri-headed things. Okay, well, that’s not very useful to you, but you guess it comes in handy sometimes.

You pull out the hammer, but to your dismay, it has the claw part on both sides. Still serviceable though, I mean, you can hit nails with the middle of the head holding it sideways.

You pull out the pliers, but they don’t have those serrated surfaces; it’s flat and smooth. That’s less useful, but it still turns bolts well enough, so whatever.

And on you go. Everything in the box is kind of weird and quirky, but maybe not enough to make it completely worthless. And there’s no clear problem with the set as a whole; it still has all the tools.

Now imagine you meet millions of carpenters using this toolbox who tell you “well hey what’s the problem with these tools? They’re all I’ve ever used and they work fine!” And the carpenters show you the houses they’ve built, where every room is a pentagon and the roof is upside-down. And you knock on the front door and it just collapses inwards and they all yell at you for breaking their door.

That’s what’s wrong with PHP.

Remember the immediate visceral reaction you had to the double-clawed hammer? That's exactly the reaction most sane programmers have to their first encounter with the web programming language PHP.

This has been going on for years. I published my contribution to the genre in 2008 with PHP Sucks, But It Doesn't Matter.

I'm no language elitist, but language design is hard. There's a reason that some of the most famous computer scientists in the world are also language designers. And it's a crying shame none of them ever had the opportunity to work on PHP. From what I've seen of it, PHP isn't so much a language as a random collection of arbitrary stuff, a virtual explosion at the keyword and function factory. Bear in mind this is coming from a guy who was weaned on BASIC, a language that gets about as much respect as Rodney Dangerfield. So I am not unfamiliar with the genre.

Except now it's 2012, and fellow programmers are still writing long screeds bemoaning the awfulness of PHP!

What's depressing is not that PHP is horribly designed. Does anyone even dispute that PHP is the worst designed mainstream "language" to blight our craft in decades? What's truly depressing is that so little has changed. Just one year ago, legendary hacker Jamie Zawinski had this to say about PHP:

I used to think that PHP was the biggest, stinkiest dump that the computer industry had taken on my life in a decade. Then I started needing to do things that could only be accomplished in AppleScript.

Is PHP so broken as to be unworkable? No. Clearly not. The great crime of PHP is its utter banality. Its continued propularity is living proof that quality is irrelevant; cheap and popular and everywhere always wins. PHP is the Nickelback of programming languages. And, yes, out of frustration with the status quo I may have recently referred to Rasmus Lerdorf, the father of PHP, as history's greatest monster. I've told myself a million times to stop exaggerating.

The hammer metaphor is apt, because at its core, this is about proper tooling. As presciently noted by Alex Papadimoulis:

A client has asked me to build and install a custom shelving system. I'm at the point where I need to nail it, but I'm not sure what to use to pound the nails in. Should I use an old shoe or a glass bottle?

How would you answer the question?

  1. It depends. If you are looking to pound a small (20lb) nail in something like drywall, you'll find it much easier to use the bottle, especially if the shoe is dirty. However, if you are trying to drive a heavy nail into some wood, go with the shoe: the bottle will shatter in your hand.
  2. There is something fundamentally wrong with the way you are building; you need to use real tools. Yes, it may involve a trip to the toolbox (or even to the hardware store), but doing it the right way is going to save a lot of time, money, and aggravation through the lifecycle of your product. You need to stop building things for money until you understand the basics of construction.

What we ought to be talking about is not how terrible PHP is – although its continued terribleness is a particularly damning indictment – but how we programmers can culturally displace a deeply flawed tool with a better one. How do we encourage new programmers to avoid picking up the double clawed hammer in favor of, well, a regular hammer?

This is not an abstract, academic concern to me. I'm starting a new open source web project with the goal of making the code as freely and easily runnable to the world as possible. Despite the serious problems with PHP, I was forced to consider it. If you want to produce free-as-in-whatever code that runs on virtually every server in the world with zero friction or configuration hassles, PHP is damn near your only option. If that doesn't scare you, then check your pulse, because you might be dead.

Everything goes with PHP sauce! Including crushing depression.

Therefore, I'd like to submit a humble suggestion to my fellow programmers. The next time you feel the urge to write Yet Another Epic Critique of PHP, consider that:

  1. We get it already. PHP is horrible, but it's used everywhere. Guess what? It was just as horrible in 2008. And 2005. And 2002. There's a pattern here, but it's subtle. You have to look very closely to see it. On second thought, never mind. You're probably not smart enough to figure it out.
  2. The best way to combat something as pervasively and institutionally awful as PHP is not to point out all its (many, many, many) faults, but to build compelling alternatives and make sure these alternatives are equally pervasive, as easy to set up and use as possible.

We've got a long way to go. One of the explicit goals of my next project is to do whatever we can to buff up a … particular … open source language ecosystem such that it can truly compete with PHP in ease of installation and deployment.

From my perspective, the point of all these "PHP is broken" rants is not just to complain, but to help educate and potentially warn off new coders starting new codebases. Some fine, even historic work has been done in PHP despite the madness, unquestionably. But now we need to work together to fix what is broken. The best way to fix the PHP problem at this point is to make the alternatives so outstanding that the choice of the better hammer becomes obvious.

That's the PHP Singularity I'm hoping for. I'm trying like hell to do my part to make it happen. How about you?

[advertisement] How are you showing off your awesome? Create a Stack Overflow Careers profile and show off all of your hard work from Stack Overflow, Github, and virtually every other coding site. Who knows, you might even get recruited for a great new position!

0
Your rating: None

For years, some people who wanted to store files on remote servers in the cloud have been emailing the files to their Gmail accounts, or uploading them to Google’s lightly used Google Docs online productivity suite, even if they had no intention of editing them there.

Now, Google is formally jumping into the cloud-based file storage and syncing business, offering a service called Google Drive, which will compete with products like Dropbox and others by offering lower prices and different features. It works on multiple operating systems, browsers and mobile devices, including those of Google’s competitors Apple and Microsoft. There are apps for Windows, Mac and mobile devices that automatically sync files with Google Drive.

[ See post to watch video ]

I’ve been testing Google Drive, which launches today, and I like it. It subsumes the editing and file-creation features of Google Docs, and replaces Google Docs (though any documents you have stored there carry over). In my tests — on a Mac, a Lenovo PC, a new iPad and the latest Samsung Android tablet — Google Drive worked quickly and well, and most of its features operated as promised. At launch, it’s available for Windows PCs, Macs and Android devices. The version for the iPhone and iPad is planned for release soon.

Google Drive, which can be found at drive.google.com, offers users 5 gigabytes of free storage, compared with 2 gigabytes free for the popular Dropbox, and equal to the free offering from another cloud storage and syncing service I like, SugarSync. That’s enough for thousands of typical documents, photos and songs.

Prices for additional storage drastically undercut Dropbox and SugarSync. For instance, 100 GB on Google Drive costs $4.99 a month. By contrast, 100 GB costs $14.99 monthly on SugarSync and $19.99 on Dropbox. Google Drive will offer huge capacities, in tiers, all the way up to 16 terabytes. (A terabyte is roughly 1,000 gigabytes.) And if you buy extra storage for Google Drive, your Gmail quota rises to 25 GB.

But one of Google’s biggest rivals isn’t standing still. Microsoft is expanding both the features and capacity of its little-known SkyDrive cloud storage service as well. That product started out as a free, fixed-capacity (25 gigabytes) online locker mostly for users of the stripped-down, cloud-based version of Microsoft Office, though it also has been available as an app for Windows Phone smartphones and for iPhones. It’s giving away even more free storage than Google — 7 GB, though that is a cut from what it used to offer free. It also is charging less than Google. For instance, you can add 100 gigabytes for $50 a year. And users of the old version get to keep their 25-gigabyte free allotment. I wasn’t able to test this new version of SkyDrive for this column. It also is offering syncing apps for Windows and Mac.

Google Drive is meant as an evolution of Google Docs. While you could previously upload a file to Google Docs using your Web browser, for Google Drive, the company is providing free apps for Mac and Windows that, like Dropbox, do this for you. They create special folders that sync with your cloud-based repository and with the Web version of the product. So, you can drag a file into these local folders on your computer and that file will be uploaded to your cloud account and will rapidly appear in the Web version of Google Drive, in the Google Drive folders on your other computers, and in the Google Drive apps on Android, iPhone and iPad devices. These local apps also sync any changes to the files you make.

One big difference between Dropbox and Google Drive is you can edit or create files in the latter, rather than merely storing or viewing them. This is because Google Drive includes the rudimentary word processor, spreadsheet, presentation and other apps that make up Google Docs.

But there is a catch. If your stored document is in a Microsoft Office format, you can only view it. To edit it, you have to click a command to convert the file to Google’s own formats, or choose a setting that converts Microsoft Office files when uploaded. But this latter feature only works when uploading from the website.

Google Drive also is missing some features of SugarSync I like. The latter doesn’t require you to place files in a special folder; it syncs the folders you already use on your PC and Mac. Also, unlike SugarSync, Google Drive doesn’t let you email files directly into your cloud locker.

Google Drive allows you to share files and folders, and collaborate with others. You can also email files as attachments. People with whom you share files can be allowed different rights: To view, comment, or edit them. You can also keep the files private.

Because Google has run into hot water over keeping users’ information private, some people may be reluctant to trust their files to Google Drive. But the company insists that, while it does process and store your files, no human can see them and, at least today, the files aren’t used to target advertising at users. The company notes no file can be placed in Google Drive unless the user wants it there.

The service does a very good job of searching files, even finding words inside PDF or scanned documents. The company claims it can find images when you type in words describing them, like “bridge” or “mountain”—even if those words don’t appear in the image’s file name. But I found this mostly worked with photos of famous places or people Google has collected via its Google Goggles product. Google Drive failed to find images with generic file names on almost all of my own pictures, even when they included things like mountains or other common objects.

Google Drive did a good job in my tests with videos. It converts nearly every common video format into a format it can play, right inside its website. This process can take some time. While Google Drive can store music, it can’t play it directly via its website.

Google’s new service also works with third-party document creation and editing apps that are built to work with it. I used one, called Balsamiq Mockups, to create a quick wire-frame diagram.

I can recommend Google Drive to consumers looking for cloud-based storage, with the added bonus of integrated editing, at lower prices. But the new Microsoft SkyDrive also seems worth a try.

Email Walt at mossberg@wsj.com.

0
Your rating: None

A post mortem of a top down shooter built in Unity, created by a group of 15 students across multiple disciplines.

0
Your rating: None


There's lots to share about Philadelphia based Cipher Prime today! Auditorium will soon be downloadable for PC and Mac, a sequel to one of the team's IPs was teased, and gameplay of their IGF 2012 entry, Splice, was revealed. A local journalist stopped by Cipher Prme's HQ and captured the above footage of Splice.

The interviewer sheds some light on the gameplay of the new puzzler:
"Splice challenges gamers to rip apart and piece together pill-like structures into their corresponding outlines, forming bacteria-like shapes, lining up and snapping together with satisfying clicks, gorgeous color palettes and smooth animations. Players are rewarded if a completion takes less than or the exact amount of required 'splices' per puzzle, the solved configuration disappearing in the background, floating like the prokaryotic micro-organisms that inspired the game's design."

In the interview, developer Dain Saint expressed his idea behind Splice was to try and capture "this feeling of macro and micro... this feeling of not knowing whether or not you were working with something really small or something really big. And this played out naturally with our ambient style game-play."

Splice has no set release date, but it will be out for both Mac and PC. Another Mac and PC title is set to arrive soon from Cipher Prime, discussed after the jump.

After a successful launch in late November with Fractal on Steam, the team has shared that Auditorium is also heading to Steam and the team's store in the next few weeks. Auditorium (the base-game is playable here) is a musical puzzler of sorts, where you bend streams of light particles with various mechanisms to fill audio containers and make music.

The good news is if you paid to unlock the full web-based Auditorium already, you get the downloadable version free. The bad news is that there's no new content. The web version will still exist, but it is moving to the team's main website so they can cut down on server fees.

Lastly, Cipher Prime says that they will be launching a KickStarter campaign soon for a sequel... "a bigger, better, multiplayer one!" I've a pretty good guess that it's either Auditorium 2 or Fractal 2. Which would you prefer to see?

0
Your rating: None